| Tue, 21 Dec 2021 09:44:22 +0100 |
Franz Glasner |
>>>>> Added tag v0.20 for changeset 16f077229ec2
|
| Tue, 21 Dec 2021 09:44:16 +0100 |
Franz Glasner |
+++++ v0.20
v0.20
|
| Tue, 21 Dec 2021 09:43:34 +0100 |
Franz Glasner |
Changelog
|
| Mon, 20 Dec 2021 22:46:08 +0100 |
Franz Glasner |
Perf script: "once" -> "one"
|
| Mon, 20 Dec 2021 22:45:24 +0100 |
Franz Glasner |
Add timing for non-cached interpolations: using the PY: namespace
|
| 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:53:32 +0100 |
Franz Glasner |
Docs
|
| 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:47:48 +0100 |
Franz Glasner |
Changelog
|
| 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 14:05:14 +0100 |
Franz Glasner |
Move convenient output from the performance script and command line arguments to select all or some performance numbers
|
| 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:20:41 +0100 |
Franz Glasner |
More detailed quoting/unquoting performance: with and without outer split
|
| 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:36:30 +0100 |
Franz Glasner |
Measure quote/unquote performance
|
| 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:26:13 +0100 |
Franz Glasner |
Another timing for interpolating a single string completely
|
| 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).
|
| Sat, 18 Dec 2021 00:00:36 +0100 |
Franz Glasner |
FIX: performance test script: make all args unicode
|
| 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 23:53:11 +0100 |
Franz Glasner |
A script to measure some basic performance characteristics of configmix.
|
| 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).
|
| Fri, 17 Dec 2021 19:24:54 +0100 |
Franz Glasner |
Test-script for checking the costs of different variable lookup methods
|
| Fri, 17 Dec 2021 18:58:06 +0100 |
Franz Glasner |
Remove default (i.e. all keyword arguments) from .expand_if_reference() because no-one uses it
|
| Fri, 17 Dec 2021 17:38:17 +0100 |
Franz Glasner |
FIX: Tests when calling getfirstNNNl() and friends properly
|
| Fri, 17 Dec 2021 16:56:31 +0100 |
Franz Glasner |
Remove repeated type(obj) calls
|
| Fri, 17 Dec 2021 16:37:26 +0100 |
Franz Glasner |
Reorder type comparisons by usage
|
| Fri, 17 Dec 2021 16:28:09 +0100 |
Franz Glasner |
Remove unused keyword params for ._lookupvar().
|
| Fri, 17 Dec 2021 16:17:17 +0100 |
Franz Glasner |
Simplify logic by not using many negations
|
| Fri, 17 Dec 2021 16:06:49 +0100 |
Franz Glasner |
Instead of using u(str(v)) use specialized functions for PY2 and PY3
|
| Fri, 17 Dec 2021 15:56:53 +0100 |
Franz Glasner |
More unittests for interpolation
|
| Fri, 17 Dec 2021 15:56:33 +0100 |
Franz Glasner |
Use the new contant _EMPTY_STR where appropriate
|
| Fri, 17 Dec 2021 15:55:51 +0100 |
Franz Glasner |
Avoid repeaded string concatenations in .expand_variable(): use a list of string parts and proper indexes into the source string
|
| Fri, 17 Dec 2021 14:14:36 +0100 |
Franz Glasner |
Optimize .quote() by using str.translate() instead of repeatedly calling str.replace()
|
| Fri, 17 Dec 2021 13:53:25 +0100 |
Franz Glasner |
Remove unneeded __future__ import because we are on Python 2.6+
|
| Fri, 17 Dec 2021 13:12:19 +0100 |
Franz Glasner |
Use a quick-check for .quote() if no quoting is needed
|
| Fri, 17 Dec 2021 12:49:07 +0100 |
Franz Glasner |
Because we are Pytho 2.6+ remove some compatibility code for pre-Python 2.6
|
| Fri, 17 Dec 2021 11:52:56 +0100 |
Franz Glasner |
Optimize .unquote(): instead of doing string comparisone do this with characters
|
| Fri, 17 Dec 2021 11:46:36 +0100 |
Franz Glasner |
Avoid some repeated string/unicode conversions for constants used by quoting
|
| Fri, 17 Dec 2021 11:42:47 +0100 |
Franz Glasner |
Optimize .unquote() by aliasing some methods to locals and avoiding the first append call
|
| Fri, 17 Dec 2021 11:09:14 +0100 |
Franz Glasner |
Optimize ._split_filters() for the most common case of no-filters: use s.partition() first
|
| Fri, 17 Dec 2021 10:57:59 +0100 |
Franz Glasner |
Optimize ._split_ns(): use str.partition() if possible instead of str.split(n, 1)
|
| Thu, 16 Dec 2021 09:31:32 +0100 |
Franz Glasner |
===== Added signature for changeset db783818a672
|
| Thu, 16 Dec 2021 09:30:52 +0100 |
Franz Glasner |
>>>>> Added tag v0.19.2 for changeset 89bbb66aff02
|
| Thu, 16 Dec 2021 09:30:43 +0100 |
Franz Glasner |
+++++ v0.19.2
v0.19.2
|
| Thu, 16 Dec 2021 09:30:02 +0100 |
Franz Glasner |
Changelog: wording
|
| Thu, 16 Dec 2021 09:27:39 +0100 |
Franz Glasner |
Changelog
|
| Thu, 16 Dec 2021 09:19:50 +0100 |
Franz Glasner |
Docs
|
| Thu, 16 Dec 2021 09:15:18 +0100 |
Franz Glasner |
Index list-access for jailed configurations: be more generic by calling also __getitem__ in the base
|
| Wed, 15 Dec 2021 22:59:05 +0100 |
Franz Glasner |
len-support for jailed configurations: implement a proper __len__() method
|
| Wed, 15 Dec 2021 09:34:16 +0100 |
Franz Glasner |
===== Added signature for changeset 4e9ebc4da020
|
| Wed, 15 Dec 2021 09:34:00 +0100 |
Franz Glasner |
>>>>> Added tag v0.19.1 for changeset b6f2450c782c
|
| Wed, 15 Dec 2021 09:33:48 +0100 |
Franz Glasner |
+++++ v0.19.1
v0.19.1
|
| Wed, 15 Dec 2021 09:24:05 +0100 |
Franz Glasner |
Enable documentation of some special methods (dunder) for jailed configurations
|
| Wed, 15 Dec 2021 09:21:39 +0100 |
Franz Glasner |
Changelog
|
| Wed, 15 Dec 2021 09:14:17 +0100 |
Franz Glasner |
Tests for index-based list-style access for jails that are lists and not dicts
|
| Wed, 15 Dec 2021 09:10:01 +0100 |
Franz Glasner |
Proper boolean context for jailed configurations: __bool__()/__nonzero__()
|
| Wed, 15 Dec 2021 08:48:37 +0100 |
Franz Glasner |
Implement proper iteration support for jailed configurations
|
| Wed, 15 Dec 2021 01:01:07 +0100 |
Franz Glasner |
Tests: test for iterating the keys of a configuration
|
| Wed, 15 Dec 2021 00:51:10 +0100 |
Franz Glasner |
FIX: unittest: duplicate name of test-method removed
|
| Wed, 15 Dec 2021 00:48:50 +0100 |
Franz Glasner |
Add a test for proper exception formatting when .rebind() raises a KeyError
|
| Wed, 15 Dec 2021 00:17:27 +0100 |
Franz Glasner |
"yield" is only supported for older Python versions if "generators" are imported from __future__
|
| Tue, 14 Dec 2021 15:00:45 +0100 |
Franz Glasner |
>>>>> Added tag v0.19.1b1 for changeset 60ac94b64138
|
| Tue, 14 Dec 2021 15:00:34 +0100 |
Franz Glasner |
+++++ v0.19.1b1
v0.19.1b1
|
| Tue, 14 Dec 2021 14:58:45 +0100 |
Franz Glasner |
Changelog
|
| Tue, 14 Dec 2021 14:56:41 +0100 |
Franz Glasner |
Changelog: wording
|
| Tue, 14 Dec 2021 14:35:39 +0100 |
Franz Glasner |
Make exception formatting more robuts: pack all %-style formatting args explicitely into tuples
|
| Tue, 14 Dec 2021 14:28:10 +0100 |
Franz Glasner |
FIX: KeyError formatting.
|
| Sat, 11 Dec 2021 19:56:35 +0100 |
Franz Glasner |
Attribute-style access for jailed configurations
|
| Fri, 10 Dec 2021 12:00:24 +0100 |
Franz Glasner |
Typo in changelog: missing `)'
|
| Fri, 10 Dec 2021 09:29:11 +0100 |
Franz Glasner |
===== Added signature for changeset 9c270886c677
|
| Fri, 10 Dec 2021 09:29:00 +0100 |
Franz Glasner |
>>>>> Added tag v0.19 for changeset 7ff4ee40b36c
|
| Fri, 10 Dec 2021 09:28:54 +0100 |
Franz Glasner |
+++++ v0.19
v0.19
|
| Fri, 10 Dec 2021 09:27:47 +0100 |
Franz Glasner |
FIX: Merge properly when the configuration's __getitem__ do now interpolate: prohibit duplicate interpolation and interpolation while merging
|
| Fri, 10 Dec 2021 03:00:11 +0100 |
Franz Glasner |
Add proper .get() support for jailed and unjailed configurations
|
| Fri, 10 Dec 2021 02:20:54 +0100 |
Franz Glasner |
FIX: Handle "list"-type keys in __contains__ and __getitem__ properly: convert to tuples for contatenation with tuple
|
| Fri, 10 Dec 2021 02:18:16 +0100 |
Franz Glasner |
Optimize __getitem__() in jailed configurations: call base directly
|
| Fri, 10 Dec 2021 02:15:00 +0100 |
Franz Glasner |
Optimized __contains__() implementation for jailed and unjailed configurations
|
| Fri, 10 Dec 2021 01:44:12 +0100 |
Franz Glasner |
Style
|
| Fri, 10 Dec 2021 01:33:37 +0100 |
Franz Glasner |
- Dict-level access to a configuration key now does variable interpolation.
|
| Fri, 10 Dec 2021 01:05:34 +0100 |
Franz Glasner |
===== Added signature for changeset 9200fd194256
|
| Fri, 10 Dec 2021 01:05:16 +0100 |
Franz Glasner |
>>>>> Added tag v0.18.1 for changeset fa08713a4992
|
| Fri, 10 Dec 2021 01:05:06 +0100 |
Franz Glasner |
+++++ v0.18.1
v0.18.1
|
| Fri, 10 Dec 2021 01:04:15 +0100 |
Franz Glasner |
Changelog
|
| Thu, 09 Dec 2021 22:51:10 +0100 |
Franz Glasner |
Proper "repr()" for a jailed configuration: put the root path into the output
|
| Thu, 09 Dec 2021 22:50:26 +0100 |
Franz Glasner |
FIX: Missing date in changelog
|
| Thu, 09 Dec 2021 13:04:06 +0100 |
Franz Glasner |
>>>>> Added tag v0.18.1b1 for changeset 5b928606fa00
|
| Thu, 09 Dec 2021 13:03:56 +0100 |
Franz Glasner |
+++++ v0.18.1b1
v0.18.1b1
|
| Thu, 09 Dec 2021 13:02:17 +0100 |
Franz Glasner |
FIX: Allow jailed configurations to use correctly use base configurations that use a different "default" marker object.
|
| Tue, 07 Dec 2021 15:43:09 +0100 |
Franz Glasner |
Test the base of sub-jails
|
| Tue, 07 Dec 2021 09:38:33 +0100 |
Franz Glasner |
Docs: more on jails and sub-jails
|
| Tue, 07 Dec 2021 09:27:44 +0100 |
Franz Glasner |
Docs: jails hold strong references to the unjailed base configuration
|
| Tue, 07 Dec 2021 09:23:38 +0100 |
Franz Glasner |
Introduction into sub-jails
|
| Thu, 02 Dec 2021 09:32:01 +0100 |
Franz Glasner |
===== Added signature for changeset 82dabdb78358
|
| Thu, 02 Dec 2021 09:31:34 +0100 |
Franz Glasner |
>>>>> Added tag v0.18 for changeset 7193d900978b
|
| Thu, 02 Dec 2021 09:31:22 +0100 |
Franz Glasner |
+++++ v0.18
v0.18
|
| Thu, 02 Dec 2021 09:23:19 +0100 |
Franz Glasner |
Docs: wording
|
| Thu, 02 Dec 2021 09:22:22 +0100 |
Franz Glasner |
Allow the empty variable name to retrieve the root configuration object
|
| Thu, 02 Dec 2021 01:24:53 +0100 |
Franz Glasner |
Implement .getkeysl() and .getkeys() for configuration objects that iterate over all the keys of a configuration value
|
| Wed, 01 Dec 2021 23:10:20 +0100 |
Franz Glasner |
Implement sub-jails: allow to get a jailed configuration from a jail
|