- refactor: rename load_updates_from_file to load_from_data_file
BREAKING CHANGE: load_updates_from_file not available anymore, use
load_from_data_file now (4bd518e
)
- ci: add conventional-commits to pre-commit (
7b2a866
)
- feat(node): add ability to freeze and hash configs (
98fb9b1
)
- chore: add pre-commit (
0fad87a
)
- ci: add black and isort (
1228682
)
- docs(README): fix usage list and add info about extra functionality (
32efd5d
)
- feat: allow saving of staticly init configs (
7d16f65
)
- feat(node): add ability to load changes from yaml and json (
22e1c20
)
- docs(README.md): Fix PyPI version badge (
e55b88f
)
- fix(node.py): fix type for load_or_static (
33866cc
)
- refactor: change how cfg variable in config files are initialised to make it easier to parse and less restrictive
BREAKING CHANGE: cfg = CN(cfg)
is no longer allowed, use cfg = schema.init_cfg()
or cfg = cfg.clone()
(a171ed7
)
- refactor: change to use 'schema' as variable name for cfg schema
BREAKING CHANGE: Now only initialised config can be imported as cfg (488109e
)
-
feat(utils.py): Add warning when extending config file without clone and add tests (
6ea200d
) -
feat(node.py): Add new_allowed as a property (
f5d7a0c
)
- fix(pyproject.toml): Add missing isort dependency (
d7ed00f
)
- feat(node.py): Add helper function propagate_changes (
d125652
)
- ci(test_and_version.yml): add codecov (
788a290
)
-
docs(README.md): Add python version and pypi package version badges (
171c2a4
) -
docs(README.md): add codecov badge (
b14a352
)
- fix(transforms.py): Fix loading of empty string in LoadFromEnvVars (
2d3b144
)
- chore(test_good.py): Ignore false positive rule (
6740f4b
)
- feat(transforms.py): Add transform to load from AWS Secrets Manager (
ce5580f
)
- style: Format with ruff (
32a2e2e
)
- test(pyproject.toml): add 'aws' extra to dev extra (
736fd2f
)
- docs(README.md): Lint markdown (
382b95f
)
- feat(transforms.py): Add transform for AWSAppConfig (
5aee69f
)
- refactor(node.py): improve type annotations (
b7dfa4e
)
- feat(node.py): Properly implement .update() and add tests (
9b57103
)
- fix(pyproject.toml): Decrease minimum python version back to 3.9 (
22fe49c
)
- style: add style configurations and format various files (
d137094
)
-
docs(README.md): Shorten dev section (
7ca625f
) -
docs(README.md): Update links (
1d6f497
) -
docs(REAMDME.md): Add acknowledgements (
4db26fa
) -
docs(README.md): Add info about commitizen (
bf445e3
)
- feat(node.py): add load_or_static helper method (
be203e4
)
- chore(pyproject.toml): Add maintainers section (
d1a6344
)
-
docs(README.md): Add note about ruff (
8acd18b
) -
docs(README.md): Add note about commit messages (
82f1b40
) -
docs(README.md): Update badge (
2a2e7ad
)
- fix: Clean-up (
57fdc3e
)
- chore: Rename to rizhiy-cfg as cfg is taken on PyPI
BREAKING CHANGE: Rename (e5050b5
)
- feat: Rename package to cfg
BREAKING CHANGE: Rename package to cfg (86d47d5
)
- chore(test_and_publish.yml): Add publish step
chore(test_and_publish.yml): Set up automatic version update
chore(pyproject.toml): Trying to fix install
chore(test_and_publish.yml): Fix step name
chore(pyproject.toml): Try pushing release without token
chore(test_and_publish.yml): Try simple push
chore(test_and_publish.yml): Add write permissions
chore(publish.yml): Move publish into separate workflow and update rules
chore(test_and_version.yml): Use PAT
chore(workflows): Update conditions and variables
chore(workflows): Update tag rules
chore: Debugging skipped step
chore(workflows): Filter whole workflows by tag
chore(workflows): Try match on commit message
chore(publish.yml): Add FLIT_USERNAME
chore(test_and_version.yml): Downgrade semantic-release version
chore(test_and_version.yml): Add semantic release (2f455fe
)
-
chore(test.yml): Add ruff to github actions (
1d53cac
) -
chore: Fix ruff errors in the main package (
bc51574
) -
chore: Add ruff rules and fix errors in tests (
943937d
) -
chore(pyproject.toml): Define ruff rules (
b4385e6
) -
chore(python-package.yml): Fix test install (
aaae76f
) -
chore(python-package.yml): Add pytest on CI (
c8b4462
)
- docs(README.md): Update (
e993ad5
)
- 3.1.2
Feature
-
helpers.py: Add mkdir and base_dir options to get_output_dir (68e2e91) (
0af1f25
) -
imp(helpers.py): Add mkdir and base_dir options to get_output_dir (
68e2e91
)
- 3.1.1
Feature
-
node.py: Freeze schema of assigned nodes if parent schema is frozen (553846b) (
6b03907
) -
imp(node.py): Freeze schema of assigned nodes if parent schema is frozen (
553846b
)
- feat(helpers.py): Add helper function to get path of the output dir for configs (
c46018f
)
- 3.1.0
Feature
- helpers.py: Add helper function to get path of the output dir for configs (c46018f) (
77ea447
)
- 3.0.0
Feature
- node.py: Change static_init() to return cfg rather than modify in-place (1f8345f)
Breaking
-
cfg.static_init() now returns the initialised config rather than initialising in-place. (1f8345f) (
0f836c2
) -
imp(node.py): Change static_init() to return cfg rather than modify in-place
BREAKING CHANGE: cfg.static_init() now returns the initialised config
rather than initialising in-place. (1f8345f
)
- feat(node.py): Add static_init() (
b6d86ff
)
-
test(.gitlab-ci.yml): Remove check-yamlfix, since it is now in template (
cf21b6a
) -
test(requirements_frozen.txt): Update (
80d8e3e
) -
test(pyproject.toml): Change tests to test (
9d42d26
)
- 2.3.0
Feature
-
node.py: Add static_init() (b6d86ff)
-
transforms.py: Expand user if path is provided as a string in LoadFromFile (529f088) (
4e64a46
) -
imp(transforms.py): Expand user if path is provided as a string in LoadFromFile (
529f088
)
- fix(.gitlab-ci.yml): Update to gitlab.com template (
ea795fd
)
- test(requirements_frozen.txt): Update to use gitlab.com index (
790de36
)
- 2.2.1
Fix
- .gitlab-ci.yml: Update to gitlab.com template (ea795fd) (
abea5ff
)
- feat(node.py): Allow re-assigning empty node to another node (
99eef8e
)
- 2.2.0
Feature
-
node.py: Allow re-assigning empty node to another node (99eef8e)
-
leaf.py: Add type of wrong value to error message (df88398) (
68973dc
) -
imp(leaf.py): Add type of wrong value to error message (
df88398
)
- 2.1.2
Feature
-
Change to dynamically calculating full_key (ccf5eff) (
f76eb85
) -
imp: Change to dynamically calculating full_key (
ccf5eff
)
-
chore: mypy config (
23e4989
) -
chore: enable doctest modules through pytest config (
b279a61
) -
chore:
py.typed
,yamlfix
, updated pins (29ac016
) -
chore: flit-based packaging (
c874945
)
- style: Format (
ffba55a
)
- 2.1.1
Feature
-
node.py: Add warning regarding transforming without freezing schema (fa01135) (
ba1d6c2
) -
imp(node.py): Add warning regarding transforming without freezing schema (
fa01135
) -
Merge branch 'refactor_style_fixes' into 'master'
refactor: flake8-guided style fixes
See merge request utilities/ntc!46 (2a331b7
)
- Merge branch 'chore_refactor1' into 'master'
chore: py.typed
, yamlfix
, updated pins, pytest config
See merge request utilities/ntc!45 (f21f0a9
)
- Merge branch 'typing_basic_containers' into 'master'
refactor: use basic containers for typing
See merge request utilities/ntc!44 (6faa0c0
)
- Merge branch 'hhell/stuff' into 'master'
chore: flit-based packaging
See merge request utilities/ntc!42 (c6f8f54
)
- chore: fix for
ntu
->nt-dev
(b7fa8ac
)
- feat: support basic
typing
containers as leaf types (579b1ea
)
- test: mypy (
8143e24
)
- 2.1.0
Feature
-
Support basic
typing
containers as leaf types (579b1ea) (10c21c2
) -
Merge branch 'hhell/stuff1c' into 'master'
feat: support basic typing
containers as leaf types
See merge request utilities/ntc!43 (4c19ea0
)
- Merge branch 'hhell/mypy3' into 'master'
test: mypy
See merge request utilities/ntc!41 (a02aac9
)
- Merge branch 'hhell/testsfix' into 'master'
chore: fix for ntu
-> nt-dev
See merge request utilities/ntc!39 (7428c1c
)
- 2.0.4
Feature
-
node.py: Allow setting custom root name (9e8ed29)
-
node: Take all directories under
config/
as part of the name (59935ef) (8a094e8
) -
Merge branch 'hhell/stuff' into 'master'
imp(node): take all directories under config/
as part of the name
See merge request utilities/ntc!34 (94b4aca
)
-
imp(node.py): Allow setting custom root name (
9e8ed29
) -
imp(node): take all directories under
config/
as part of the name (59935ef
) -
Merge branch 'hhell/stuff' into 'master'
chore(tests): whitelist doctest-modules
See merge request utilities/ntc!33 (47d9044
)
- Merge branch 'hhell/stuff' into 'master'
chore(tests): updated gitlab config
See merge request utilities/ntc!32 (b26f201
)
- chore(tests): tests/requirements_frozen (
88d7dc7
)
- 2.0.3
Feature
-
utils: A better error message in
_load_module
(efbddd6) (80f868a
) -
Merge branch 'hhell/stuff2' into 'master'
imp(utils): a better error message in _load_module
See merge request utilities/ntc!31 (f023177
)
- Merge branch 'hhell/stuff' into 'master'
chore(tests): tests/requirements_frozen
See merge request utilities/ntc!30 (a7dfdbf
)
- imp(utils): a better error message in
_load_module
(efbddd6
)
- chore(tests): use the new include for tests (
2e8d0e3
)
- fix(tests): fix the tests/data ignoring (
8d87090
)
- 2.0.2
Fix
-
tests: Fix the tests/data ignoring (8d87090) (
b8c0efc
) -
Merge branch 'hhell/stuff' into 'master'
fix(tests): fix the tests/data ignoring
See merge request utilities/ntc!29 (cefd039
)
- Merge branch 'hhell/stuff' into 'master'
chore(tests): use the new include for tests
See merge request utilities/ntc!28 (a4d3951
)
- fix(tests): fix for
--doctest-modules
(7c5a306
)
- 2.0.1
Fix
-
tests: Fix for
--doctest-modules
(7c5a306) (e4e6033
) -
Merge branch 'hhell/stuff' into 'master'
fix(tests): fix for --doctest-modules
See merge request utilities/ntc!27 (3baec38
)
- refactor(transforms): remove function-wrappers of transform classes
BREAKING CHANGE: deprecation cleanup (3b2c1bc
)
- chore(ntc): setup.cfg (
3d0211b
)
- 2.0.0
Breaking
-
deprecation cleanup (3b2c1bc) (
3e5d7d5
) -
Merge branch 'hhell/stuff' into 'master'
refactor(transforms): remove function-wrappers of transform classes
See merge request utilities/ntc!26 (ecdc69a
)
- 1.3.1
Feature
-
transforms: Class-based transforms for better introspectability (4cac80f) (
7f7953f
) -
Merge branch 'hhell/stuff' into 'master'
imp(transforms): class-based transforms for better introspectability
See merge request utilities/ntc!25 (7e72773
)
- imp(transforms): class-based transforms for better introspectability (
4cac80f
)
- feat(transforms):
load_from_envvars
(8b185a2
)
- 1.3.0
Feature
-
transforms:
load_from_envvars
(8b185a2) -
transforms:
load_from_key_value
minor improvements (e0dd6c8) (74f48b6
) -
Merge branch 'hhell/stuff' into 'master'
imp(transforms): load_from_key_value
minor improvements, load_from_envvars
See merge request utilities/ntc!24 (1443fff
)
- imp(transforms):
load_from_key_value
minor improvements (e0dd6c8
)
- feat(transforms): load_from_key_value (
e7eed25
)
- refactor(transforms): Minor value adjustment (
05531e7
)
- 1.2.0
Feature
-
transforms: Load_from_key_value (e7eed25) (
0b48d9e
) -
Merge branch 'hhell/stuff' into 'master'
feat(transforms): load_from_key_value
See merge request utilities/ntc!23 (593486c
)
- docs(README.md): Update budges (
8602ee0
)
- 1.1.3
Feature
- node.py: Allow saving list of int, float or str (4f63f2c)
Documentation
-
README.md: Update budges (8602ee0) (
5ef5031
) -
imp(node.py): Allow saving list of int, float or str (
4f63f2c
)
- chore: Remove unused logger (
51745da
)
- docs(README.md): add description example (
ecc4a10
)
- refactor(all): rename module-level logger to LOGGER (
c67cf2e
)
- 1.1.2
Feature
- node.py: Make get_raw() a public method and add test for full key on node assignment (fa3197b)
Documentation
-
README.md: Add description example (ecc4a10) (
07997c2
) -
imp(node.py): Make get_raw() a public method and add test for full key on node assignment (
fa3197b
) -
Merge branch 'hhell/refactor' into 'master'
refactor(all): rename module-level logger to LOGGER
See merge request utilities/ntc!22 (c78f2a6
)
- 1.1.1
Feature
-
node.py: Add pathlib.PosixPath to safe save types (96b1c84) (
28a7023
) -
imp(node.py): Add pathlib.PosixPath to safe save types (
96b1c84
)
- feat(interface.py): Add CfgSavable class so that user classes can be saved (
d57ea1a
)
- 1.1.0
Feature
- interface.py: Add CfgSavable class so that user classes can be saved (d57ea1a) (
d636ee7
)
- fix(node.py): Fix saving with clone (
5ef9cde
)
- 1.0.2
Fix
- node.py: Fix saving with clone (5ef9cde) (
150b257
)
- fix(node.py): Only print last line in _module (
8980f1f
)
- 1.0.1
Fix
- node.py: Only print last line in _module (8980f1f) (
4a68825
)
- feat: Allow changing simple types before saving
BREAKING CHANGE: Remove "freezing" functionality (1231ed8
)
- 1.0.0
Feature
- Allow changing simple types before saving (1231ed8)
Breaking
- Remove "freezing" functionality (1231ed8) (
d56857d
)
-
chore(node.py): Add full key to reduce error (
ba95122
) -
chore(.gitlab-ci.yml): Correct test run condition (
9e2d5fd
)
- fix(transforms.py): Add default loader to load_from_file (
07901b3
)
- test(.gitlab-ci.yml): Update to new template (
887d3db
)
- 0.14.3
Fix
- transforms.py: Add default loader to load_from_file (07901b3) (
664ea59
)
- fix(transforms.py): Fix load_from_file and add tests (
e47e809
)
- 0.14.2
Fix
- transforms.py: Fix load_from_file and add tests (e47e809) (
31e03c1
)
- fix(transforms.py): Add missing file handling (
6fd373d
)
- 0.14.1
Fix
- transforms.py: Add missing file handling (6fd373d) (
1bfd6b4
)
- feat(transforms.py): Add load_from_file transform (
8834c43
)
- style(transforms.py): Format (
9918263
)
- 0.14.0
Feature
- transforms.py: Add load_from_file transform (8834c43) (
45af651
)
- chore: use base gitlab-ci (
7bf71e0
)
- feat(node.py): add clear() (
5059c2d
)
- refactor(node.py): Change new_allowed logic (
bc771a8
)
- 0.13.0
Feature
-
node.py: Add clear() (5059c2d) (
97cf6ab
) -
Merge branch 'ci/use-common-gitlab-ci' into 'master'
chore: use base gitlab-ci
See merge request utilities/ntc!21 (841af5c
)
-
chore(init.py): Version bump (
3c8cd46
) -
chore(init.py): Version bump (
bb64570
) -
chore: add leaf path to error (
7638a2b
)
-
feat: write specific type in error (
5677999
) -
feat: make meaningful errors for subclass (
cd57231
) -
feat(description): nesting inheritance (
ade781f
) -
feat: add description field (
0f4a9e7
) -
feat(ci): automate semantic release (
d1e35a6
) -
feat: Add pickle functionality (
dd0f71e
) -
feat: helpful errors (
1f601eb
) -
feat: remove type set on assignment (
d3ed0d7
) -
feat: ntu format command (
92df972
) -
feat: organise tests (
adae61f
) -
feat: add docs (
1e1e805
) -
feat: Add tests and remove unused code (
9237242
) -
feat: validators, transformers (
233edc3
) -
feat: load file (
51677c6
) -
feat: clone method (
93782c4
) -
feat: required config leaf (
a3ecea0
) -
feat: add str magic (
9b3c406
)
-
fix(test_bad.py): Fix bad leaf name (
280db94
) -
fix(node.py): Fix CN(new_allowed=True) (
9fe1c70
) -
fix: format (
bedf2f1
)
- refactor: decompose set_new method (
99fffa5
)
- style(leaf.py): Adjust error message (
0eade03
)
-
test: add missing files (
5186920
) -
test(description): change configs structure (
acd60c3
) -
test(good): multiple inheritance loads (
13298ef
)
- Merge branch 'feat/specific-class-in-errors' into 'master'
feat: write specific type in error
See merge request utilities/ntc!20 (0bb18dc
)
- Merge branch 'feat/improve-errors-text' into 'master'
feat: make meaningful errors for subclass
See merge request utilities/ntc!19 (0a9d9cf
)
- Merge branch 'feat/leaf-description' into 'master'
feat: add description field
See merge request utilities/ntc!18 (b843a63
)
- Merge branch 'test/multiple-loadings' into 'master'
test(good): multiple inheritance loads
See merge request utilities/ntc!17 (2db7166
)
- Revert "feat(ci): automate semantic release"
This reverts commit d1e35a6beeab758a69c66a136a68c9448973e864. (4861a8f
)
-
fix[node.py]: Fix partial in node leaf_spec (
9f74abd
) -
feat[leaf.py]: Added checks to work with functools.partial (
4b950ed
) -
0.11.0
Feature
-
Automate semantic release (d1e35a6) (
291d8fa
) -
Merge branch 'feat/semantic-release' into 'master'
feat(ci): automate semantic release
See merge request utilities/ntc!16 (1d81a8c
)
-
0.10.0 (
481fe6a
) -
refactor[node.py]: Change clone() to inherit(), clone() now just clones (
6bd74ed
) -
chore[init.py]: Version bump (
889fd30
) -
Merge branch 'master' of 192.168.135.11:utilities/ntc (
e9e58aa
) -
Merge branch 'feat/assert-to-val-error' into 'master'
feat[node]: validation error instead of assertion
See merge request utilities/ntc!15 (d3ecbcc
)
-
feat[node]: validation error instead of assertion (
4237d62
) -
Merge branch 'feat/ntu-setup-utils' into 'master'
feat[setup]: use ntu setup utils
See merge request utilities/ntc!14 (1e9c606
)
-
feat[setup]: use ntu setup utils (
37e38e6
) -
Merge branch 'feat/helpful-errors' into 'master'
feat: helpful errors
See merge request utilities/ntc!13 (30a1e7c
)
- Merge branch 'master' into 'feat/helpful-errors'
ntc/leaf.py (8910b13
)
-
chore[node.py]: Change full_key to start with 'cfg' (
9eabdf7
) -
feat[leaf.py]: Add more flexible specification and fix clone (
b7c17d5
) -
func return type (
591eaf9
) -
child_full_key; f-string; version (
f6fb8bc
) -
change error text (
8cb9ccd
) -
store full_key (
6b5d134
) -
Merge branch 'feat/dont-convert-types' into 'master'
feat: remove type set on assignment
See merge request utilities/config!12 (978ddd0
)
- Merge branch 'feat/ntu-format-command' into 'master'
feat: ntu format command
See merge request utilities/config!11 (bd4c66d
)
-
refactor[node.py]: Make plain value to be set as required (
fdfd9b2
) -
Merge branch 'feat/use-ntu' into 'master'
feat[ci]: use ntu
See merge request utilities/config!9 (0e6e1fc
)
-
feat[ci]: use ntu (
1b012dc
) -
fix[config.py]: Fix handling of required subclass leaf_spec and add tests (
150def7
) -
feat[config.py]: Make SchemaErrors messages more descriptive (
0b3eb7f
) -
chore[tests]: Rename test_config.py to test_node.py (
520ec85
) -
fix[config.py]: Fix leaf creation for required spec (
e0e8eb7
) -
refactor[config.py]: Change how config is loaded and import rules (
4075acf
) -
Merge branch 'feat/organise-tests' into 'master'
feat: organise tests
See merge request utilities/config!8 (80b6c88
)
-
docs[README.md]: Improve instructions (
913e50a
) -
feat[config.py]: Add hooks (
992e9be
) -
Merge branch 'feat/readme' into 'master'
feat: add docs
See merge request utilities/config!7 (58f1226
)
-
feat[config.py]: Allow passing leaf type directly to CfgNode (
51f9bfe
) -
chore[config.py]: Remove impossible case (
c261bda
) -
chore[tests]: Make bad tests more uniform (
010ec74
) -
refactor[config.py]: Change how transoforms and validators are added (
01ffe64
) -
chore[init.py]: Version bump (
d4f4d1c
) -
chore[config.py]: Rename transformers to transforms (
d2f91c4
) -
feat[config.py]: Adjust transform and validate (
88c6108
) -
chore[.gitingore]: Add test config (
4539b9d
) -
Merge branch 'feat/validators-transformers' into 'master'
feat: validators, transformers
See merge request utilities/config!6 (d475495
)
-
chore[test_files.py]: Add test for transform and validate (
9fb912a
) -
feat[config.py]: Add subclass option to CfgLeaf (
aa1ce34
) -
feat[config.py]: Add initialisation from dict (
e83cec3
) -
feat[config.py]: Add dict functionality (
8ee8ea9
) -
change author's info (
73bcb6e
) -
Merge branch 'feat/load-file' into 'master'
feat: load file
See merge request utilities/config!5 (5ddda21
)
-
freeze in test_save_unfrozen (
d1ef56e
) -
new_allowed key (
974b6d4
) -
some renaming (
f2305b2
) -
check was_unfrozen; separate errors module; import resolve (
cb885d4
) -
some (
e74a36e
) -
base config and save (
2c94298
) -
fix (
d21e149
) -
fix (
ded42e8
) -
chore[tests]: Update (
d5c04bb
) -
refactor[base_cfg.py]: Change to to function (
52ff270
) -
fix[test_files.py]: Fix test_node (
7c38917
) -
feat[tests]: Add test for node restriction (
657efff
) -
chore[tests]: Add test for bad attribute (
0755130
) -
Merge branch 'master' of 192.168.135.11:utilities/config (
6fdedce
) -
feat[tests]: Add file tests (
f7971d8
) -
Merge branch 'feat/deep-clone' into 'master'
feat: clone method
See merge request utilities/config!4 (6c478b1
)
- Merge branch 'feat/required-field' into 'master'
feat: required config leaf
See merge request utilities/config!3 (0dd2d1b
)
- Merge branch 'feat/print-beauty' into 'master'
feat: add str magic
See merge request utilities/config!2 (aba0784
)
- Merge branch 'feat/config-framework' into 'master'
feat config: rough first version
See merge request utilities/config!1 (901f8ae
)