log configmix/config.py @ 711:6557cf9ecea5

age author description
Tue, 15 Aug 2023 15:09:11 +0200 Franz Glasner FIX: When using attribute access for configurations the values are interpolated since long ago: fix the docu and add a test for that behaviour
Tue, 15 Aug 2023 11:14:51 +0200 Franz Glasner Allow also "," characters to act as a separator within a filter-chain.
Tue, 15 Aug 2023 10:41:22 +0200 Franz Glasner Rename internal variable FILTER_SEPARATOR_REV -> FILTER_SEPARATOR_2
Tue, 15 Aug 2023 09:34:49 +0200 Franz Glasner FIX: Parsing a filter chain for the new filter-only expansions: parse them backwards and use "," as filter-chain separator here.
Mon, 14 Aug 2023 09:31:27 +0200 Franz Glasner Begin implementation of filter-only expansions (recursive with respect to expansion)
Sun, 13 Aug 2023 16:14:39 +0200 Franz Glasner Typo in docs
Sat, 10 Jun 2023 21:38:13 +0200 Franz Glasner Because Configuration.getvarl() expands references internally already extra handling of references in .jailed() is not needed
Sat, 10 Jun 2023 11:48:15 +0200 Franz Glasner Docs
Fri, 09 Jun 2023 09:24:41 +0200 Franz Glasner Begin "ref:" support for jails.
Thu, 08 Jun 2023 22:14:30 +0200 Franz Glasner FIX: Typo in docs
Fri, 03 Jun 2022 02:17:12 +0200 Franz Glasner Implement iteration support that yields properly jailed configurations for each container item v0.21
Mon, 30 May 2022 09:31:29 +0200 Franz Glasner Enable indexed access to lists in the configuration using an access path string representation like "~NNN~"
Sun, 29 May 2022 15:32:54 +0200 Franz Glasner Docstring: be more accurate now in ".jailed()"
Fri, 13 May 2022 07:51:40 +0200 Franz Glasner __len__() for jails also now internally expands: this is for consistency with __bool__ when applyint to non-container jails (which are possible)
Fri, 11 Mar 2022 01:53:08 +0100 Franz Glasner Allow to disable the internal caching in configmix.
Sat, 05 Mar 2022 14:17:37 +0100 Franz Glasner Style: remove trailing semicolon in Python script
Fri, 04 Mar 2022 17:35:27 +0100 Franz Glasner The ``{{::DEL::}}`` is not subject to interpolation any more.
Wed, 12 Jan 2022 00:44:02 +0100 Franz Glasner C-implementations of Configuration.getvarl_s() and Configuration.getvar()
Tue, 11 Jan 2022 02:50:17 +0100 Franz Glasner C-implementations for Configuration.getvarl() and Configuration.getvar_s()
Sun, 09 Jan 2022 21:04:11 +0100 Franz Glasner Adjust copyright year (the end) to 2022
Mon, 03 Jan 2022 00:11:41 +0100 Franz Glasner Implement a C-version of Configuration.interpolate_variables
Sun, 02 Jan 2022 20:43:24 +0100 Franz Glasner Do not rstrip() the remaining variable name when parsing out filters from variable names
Sun, 02 Jan 2022 20:40:09 +0100 Franz Glasner Provide a C implementation of configmix.config._split_filters.
Sun, 02 Jan 2022 16:05:35 +0100 Franz Glasner Try to interpolate only if the length of the source string exceeds a minimum length
Sun, 02 Jan 2022 02:04:07 +0100 Franz Glasner Provide a C-implementation of configmix.config.quote() also: fast_quote
Sat, 01 Jan 2022 21:38:46 +0100 Franz Glasner FIX: Assign to _JailedConfiguration._path_string only if not yet done
Sat, 01 Jan 2022 18:01:32 +0100 Franz Glasner Added also a fast C-implementation of configmix.config._split_ns
Fri, 31 Dec 2021 21:24:16 +0100 Franz Glasner Add an optional C-implementation for configmix.config.unquote and configmix.config.pathstr2path.
Wed, 29 Dec 2021 13:33:11 +0100 Franz Glasner Docs for _split_ns() and _split_filters()
Tue, 28 Dec 2021 19:22:28 +0100 Franz Glasner _split_ns() and _split_filters() are now module-globals
Tue, 28 Dec 2021 17:28:19 +0100 Franz Glasner Refactor: the parsing of the quoted and dot-separated path string is put into a function that handles also empty inputs properly
Mon, 20 Dec 2021 22:31:58 +0100 Franz Glasner Optimize jailed configuration somewhat: do not append empty tuples
Mon, 20 Dec 2021 14:33:54 +0100 Franz Glasner FIX: Handle non-cacheable interpolations properly.
Mon, 20 Dec 2021 14:33:09 +0100 Franz Glasner Docs
Mon, 20 Dec 2021 13:39:11 +0100 Franz Glasner Apply None and Empty interpolation filters only on KeyErrors
Mon, 20 Dec 2021 13:12:14 +0100 Franz Glasner Implement a simple interpolation cache for text types
Mon, 20 Dec 2021 12:45:48 +0100 Franz Glasner Rename internal cache from __cache to __lookup_cache
Mon, 20 Dec 2021 12:43:17 +0100 Franz Glasner Change Configuration.expand_variable() to Configuration.interpolate_variables()
Mon, 20 Dec 2021 02:00:03 +0100 Franz Glasner Implement Configuration.getvar_s() by using Configuration.getvarl() instead of Configuration.getvar().
Sun, 19 Dec 2021 19:01:43 +0100 Franz Glasner Configuration._split_filters() now does the special filter check for None and Empty also
Sun, 19 Dec 2021 18:51:27 +0100 Franz Glasner Formatting of NameErrors in ._apply_filters(): put "name" into a tuple explicitely
Sun, 19 Dec 2021 18:37:37 +0100 Franz Glasner Docs
Sun, 19 Dec 2021 16:33:31 +0100 Franz Glasner Remove unneeded "default" keyword argument for Configuration._lookupref() and Configuration.expand_ref_uri()
Sun, 19 Dec 2021 16:04:40 +0100 Franz Glasner Implement Configuration.items() and Configuration.values() without interpolating the values
Sun, 19 Dec 2021 14:36:18 +0100 Franz Glasner FIX: Do not filter-out all False values then interpolating (zero int, boolean False)
Sun, 19 Dec 2021 14:10:28 +0100 Franz Glasner Performance: compute the length of the constant input strinc only once and compute the new rest earlier and use the computed value also in comparisons
Sun, 19 Dec 2021 10:38:20 +0100 Franz Glasner str.join(): use a list comprehension instead of a generator expression for performance reasons
Sun, 19 Dec 2021 10:35:06 +0100 Franz Glasner Remove a temporary variable usage
Sat, 18 Dec 2021 18:44:21 +0100 Franz Glasner Using generator expressions to directly create tuples is a not so good idea performance-wise.
Sat, 18 Dec 2021 18:41:11 +0100 Franz Glasner FIX: Some other lists that need to converted to tuples
Sat, 18 Dec 2021 18:36:50 +0100 Franz Glasner FIX: Convert a list ito a tuple before appending it to another tuple
Sat, 18 Dec 2021 11:19:51 +0100 Franz Glasner Docs
Sat, 18 Dec 2021 11:06:34 +0100 Franz Glasner Implement clear_cache() for the configuration
Sat, 18 Dec 2021 02:35:42 +0100 Franz Glasner .lstrip() seems to be a little bit faster than .rstrip() when testing whether quoting is needed
Sat, 18 Dec 2021 01:49:48 +0100 Franz Glasner Use generator comprehensions where possible instead of list comprehensions that are converted to tuples
Sat, 18 Dec 2021 01:26:41 +0100 Franz Glasner Make quote() and unquote() module globals and also export from configmix
Sat, 18 Dec 2021 01:03:49 +0100 Franz Glasner "quote()" and "unquote()" are now static methods
Sat, 18 Dec 2021 00:43:36 +0100 Franz Glasner Configuration._lookupvar() now uses an internal cache (positive and negative).
Fri, 17 Dec 2021 23:53:38 +0100 Franz Glasner Optimize .substitute_variables_in_obj: use dict.items() to avoid one dict lookup
Fri, 17 Dec 2021 19:34:38 +0100 Franz Glasner Performance: module-level variable lookup is much faster (similar to local) than class-level (either via CLASS.VARIABLE or self.VARIABLE).