Mercurial > hgrepos > Python > libs > ConfigMix
annotate docs/changes.rst @ 437:bbc5b64e137a
- Dict-level access to a configuration key now does variable interpolation.
- Basic dict-level access for jailed configurations
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Fri, 10 Dec 2021 01:33:37 +0100 |
| parents | ce7aea9eac4a |
| children | 45ad19fe1e5b |
| rev | line source |
|---|---|
|
192
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
1 .. -*- coding: utf-8; mode: rst; -*- |
| 91 | 2 |
| 3 ========= | |
| 4 Changes | |
| 5 ========= | |
| 6 | |
|
111
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
7 All major changes over the versions are listed here. For breaking |
| 91 | 8 changes have a look at :ref:`api-changes`, they are listed there in |
| 9 detail. | |
| 10 | |
| 11 .. include:: ../CHANGES.txt | |
| 12 | |
| 13 | |
| 14 .. _api-changes: | |
| 15 | |
|
111
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
16 Breaking Changes |
|
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
17 ================ |
|
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
18 |
|
437
bbc5b64e137a
- Dict-level access to a configuration key now does variable interpolation.
Franz Glasner <fzglas.hg@dom66.de>
parents:
344
diff
changeset
|
19 0.19 |
|
bbc5b64e137a
- Dict-level access to a configuration key now does variable interpolation.
Franz Glasner <fzglas.hg@dom66.de>
parents:
344
diff
changeset
|
20 ---- |
|
bbc5b64e137a
- Dict-level access to a configuration key now does variable interpolation.
Franz Glasner <fzglas.hg@dom66.de>
parents:
344
diff
changeset
|
21 |
|
bbc5b64e137a
- Dict-level access to a configuration key now does variable interpolation.
Franz Glasner <fzglas.hg@dom66.de>
parents:
344
diff
changeset
|
22 - Dict-level access to a configuraiton now does variable interpolation |
|
bbc5b64e137a
- Dict-level access to a configuration key now does variable interpolation.
Franz Glasner <fzglas.hg@dom66.de>
parents:
344
diff
changeset
|
23 |
|
bbc5b64e137a
- Dict-level access to a configuration key now does variable interpolation.
Franz Glasner <fzglas.hg@dom66.de>
parents:
344
diff
changeset
|
24 |
| 344 | 25 0.14 |
|
303
2a2f5b86fe34
Move some important public constants into the .constants sub-module
Franz Glasner <fzglas.hg@dom66.de>
parents:
261
diff
changeset
|
26 ---- |
|
2a2f5b86fe34
Move some important public constants into the .constants sub-module
Franz Glasner <fzglas.hg@dom66.de>
parents:
261
diff
changeset
|
27 |
| 333 | 28 - Allow quoting of variable and namespace names |
|
320
98490375d90c
Allow variable name quoting to be used in .getvar() and .getvar_s() and references
Franz Glasner <fzglas.hg@dom66.de>
parents:
303
diff
changeset
|
29 |
|
303
2a2f5b86fe34
Move some important public constants into the .constants sub-module
Franz Glasner <fzglas.hg@dom66.de>
parents:
261
diff
changeset
|
30 - Move some important public constants from :py:mod:`configmix` into |
|
2a2f5b86fe34
Move some important public constants into the .constants sub-module
Franz Glasner <fzglas.hg@dom66.de>
parents:
261
diff
changeset
|
31 the :py:mod:`configmix.constants` module. |
|
2a2f5b86fe34
Move some important public constants into the .constants sub-module
Franz Glasner <fzglas.hg@dom66.de>
parents:
261
diff
changeset
|
32 |
|
320
98490375d90c
Allow variable name quoting to be used in .getvar() and .getvar_s() and references
Franz Glasner <fzglas.hg@dom66.de>
parents:
303
diff
changeset
|
33 These are technically a breaking changes while the author does not |
|
98490375d90c
Allow variable name quoting to be used in .getvar() and .getvar_s() and references
Franz Glasner <fzglas.hg@dom66.de>
parents:
303
diff
changeset
|
34 believe that any of the current clients is affected by both changes. |
|
303
2a2f5b86fe34
Move some important public constants into the .constants sub-module
Franz Glasner <fzglas.hg@dom66.de>
parents:
261
diff
changeset
|
35 |
|
2a2f5b86fe34
Move some important public constants into the .constants sub-module
Franz Glasner <fzglas.hg@dom66.de>
parents:
261
diff
changeset
|
36 |
|
261
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
37 0.9 |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
38 --- |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
39 |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
40 - Do not set "root", "self" and "here" variables any more. This |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
41 hinders proper automatic configuration on some PyPy configurations |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
42 when using `genapplib`. |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
43 |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
44 While technically a breaking change no known client is known to |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
45 rely on the previous behaviour. |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
46 |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
47 Any only the INI-parser did set this variables automatically. |
|
b84f8060d54c
More elaborated changelog for the last change.
Franz Glasner <fzglas.hg@dom66.de>
parents:
253
diff
changeset
|
48 |
|
252
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
49 |
| 253 | 50 0.8 |
|
252
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
51 --- |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
52 |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
53 - Do not implicitely convert a configuration value to text if the |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
54 value is the result of just a variable expansion. |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
55 |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
56 While technically a breaking change no known client is known to rely |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
57 on the previous behaviour. |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
58 |
|
42a6d59cf2ad
Put a note about the latest breaking change into the appropriate documentation section also
Franz Glasner <fzglas.hg@dom66.de>
parents:
215
diff
changeset
|
59 |
|
176
24a05dae0e76
FIX: Document the breaking change in the upcoming v0.7 in the chapter for "Breaking Changes" also
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
160
diff
changeset
|
60 0.7 |
|
24a05dae0e76
FIX: Document the breaking change in the upcoming v0.7 in the chapter for "Breaking Changes" also
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
160
diff
changeset
|
61 --- |
|
24a05dae0e76
FIX: Document the breaking change in the upcoming v0.7 in the chapter for "Breaking Changes" also
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
160
diff
changeset
|
62 |
|
201
24f4ab79a3ab
FIX: Docu: "Overhowl" -> "Overhaul".
Franz Glasner <fzglas.hg@dom66.de>
parents:
192
diff
changeset
|
63 - A major overhaul of how filename extensions are associated with loaders |
|
192
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
64 has been done: |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
65 |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
66 + Filename extensions in :mod:`fnmatch` style are associated with |
|
205
344da17f01e3
Doc: wording in "Changes"
Franz Glasner <fzglas.hg@dom66.de>
parents:
201
diff
changeset
|
67 file-mode strings. |
|
344da17f01e3
Doc: wording in "Changes"
Franz Glasner <fzglas.hg@dom66.de>
parents:
201
diff
changeset
|
68 |
|
344da17f01e3
Doc: wording in "Changes"
Franz Glasner <fzglas.hg@dom66.de>
parents:
201
diff
changeset
|
69 These file-mode strings are associated with loader |
|
344da17f01e3
Doc: wording in "Changes"
Franz Glasner <fzglas.hg@dom66.de>
parents:
201
diff
changeset
|
70 functions separately via the mapping :py:data:`configmix.mode_loaders`. |
|
192
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
71 |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
72 + :py:func:`configmix.set_assoc`, :py:func:`configmix.get_assoc`, |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
73 :py:func:`configmix.clear_assoc` and |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
74 :py:func:`configmix.get_default_assoc` are the new names for the old |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
75 `set_loader()`, `get_loader()`, `clear_loader()` and |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
76 `get_default_loader()` functions. |
|
205
344da17f01e3
Doc: wording in "Changes"
Franz Glasner <fzglas.hg@dom66.de>
parents:
201
diff
changeset
|
77 They are used for associating :mod:`fnmatch` style filename patterns |
|
344da17f01e3
Doc: wording in "Changes"
Franz Glasner <fzglas.hg@dom66.de>
parents:
201
diff
changeset
|
78 to file-mode strings. Previously they associated loader functions |
|
344da17f01e3
Doc: wording in "Changes"
Franz Glasner <fzglas.hg@dom66.de>
parents:
201
diff
changeset
|
79 directly. |
|
192
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
80 |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
81 + :py:func:`configmix.set_assoc` now requires a :mod:`fnmatch` style |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
82 pattern instead of just a file extension string (i.e. a plain trailer). |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
83 The previons dictionary with mapping from filename extensions to loader |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
84 callables is now a list of tuples containing the :mod:`fnmatch` style |
|
46c7d872db83
Changelog: note the latest refactorings
Franz Glasner <fzglas.hg@dom66.de>
parents:
176
diff
changeset
|
85 pattern and the corresponding loader callable. |
|
176
24a05dae0e76
FIX: Document the breaking change in the upcoming v0.7 in the chapter for "Breaking Changes" also
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
160
diff
changeset
|
86 |
|
24a05dae0e76
FIX: Document the breaking change in the upcoming v0.7 in the chapter for "Breaking Changes" also
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
160
diff
changeset
|
87 |
|
111
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
88 0.6 |
|
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
89 --- |
| 91 | 90 |
|
111
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
91 - :py:func:`configmix.safe_merge` does now a deepcopy of all source |
| 160 | 92 configurations when merging. Changes in configuration instances |
| 93 afterwards will not be reflected in the merged configuration any | |
| 94 more. | |
|
111
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
95 |
|
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
96 The public signature of :py:func:`configmix.safe_merge` has *not* |
|
d51a18e5b0e3
Reimplement configmix.safe_merge() do to a deepcopy of all source configurations when merging.
Franz Glasner <hg@dom66.de>
parents:
91
diff
changeset
|
97 changed. |
|
120
ba5970a2dcef
The default file encoding when reading INI style files with configmix.ini.load() is now "UTF-8".
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
111
diff
changeset
|
98 |
|
ba5970a2dcef
The default file encoding when reading INI style files with configmix.ini.load() is now "UTF-8".
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
111
diff
changeset
|
99 - The default file encoding when reading INI style files with |
|
ba5970a2dcef
The default file encoding when reading INI style files with configmix.ini.load() is now "UTF-8".
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
111
diff
changeset
|
100 :py:func:`configmix.ini.load` is now "UTF-8". Previously it was undefined |
|
ba5970a2dcef
The default file encoding when reading INI style files with configmix.ini.load() is now "UTF-8".
Franz Glasner <f.glasner@feldmann-mg.com>
parents:
111
diff
changeset
|
101 and therefore dependent on the user's locale. |
