timmy
43d12526d9
Fix pathlib on 3.13
2026-02-09 18:10:59 -08:00
timmy
e63b8dc511
Remove python3.9 code
2026-02-09 18:10:59 -08:00
timmy
dd56ced241
Upgrade pre-commit
2026-02-09 18:04:35 -08:00
timmy
239152e0f6
Update github actions
2025-11-03 17:53:31 -08:00
timmy
68bdce33d3
Drop python 3.9
2025-11-03 17:43:34 -08:00
timmy
ba1c12a575
pre-commit
2025-08-30 20:40:46 -07:00
timmy
d284039f12
Update pre-commit
2025-08-30 20:26:32 -07:00
timmy
5fc7a5173d
Update tests
...
Remove python3.8 leftovers
Add prog to create_argparser
Remove metavar usage from BooleanOptionalAction
2025-08-30 20:26:18 -07:00
timmy
ecda6fe610
Extract arguments for generic types
2025-08-30 20:07:43 -07:00
timmy
cfc55b7366
Drop python 3.8
2025-05-01 17:13:07 -07:00
timmy
6b158ca495
Handle lists of Enum
2025-05-01 17:01:34 -07:00
timmy
f1735c879d
Don't inherit from argparse Namespace
2024-06-06 19:33:07 -07:00
timmy
8d772c6513
Improve types
2024-05-20 15:09:33 -07:00
timmy
73552e0dd2
Improve Generic list and set typing
2024-05-19 14:11:18 -07:00
timmy
58daa4b274
Fix deduplication
2024-05-18 16:46:44 -07:00
timmy
43f6bf1eac
Improve type detection
2024-05-18 15:49:32 -07:00
timmy
eca7be0c51
Set optional None types
2024-05-18 13:03:50 -07:00
timmy
709aec31f0
Merge branch 'pre-commit-ci-update-config'
2024-04-29 19:12:57 -07:00
timmy
a3eb2f8e31
Fix metavar deprecation on BooleanOptionAction
2024-04-29 19:12:48 -07:00
timmy
c588fc891e
Support type generation for dicts an addition to namespaces
2024-02-22 19:15:47 -08:00
timmy
1ce6079285
Fix pre-commit
2024-02-22 19:14:45 -08:00
timmy
7c748f6815
Merge branch 'pre-commit-ci-update-config'
2024-02-22 14:44:51 -08:00
timmy
8d5b30546e
Improve type guessing for generic Sequence types
2024-02-22 14:42:07 -08:00
timmy
d30e73a679
Do not add duplicate settings when generating a namespace
2023-12-17 18:26:57 -08:00
timmy
fc2a175e5b
Fix normalization of settings using a custom dest
2023-12-17 16:09:41 -08:00
timmy
4c385667e8
Fix settings being overwritten when using the same dest attribute
2023-12-16 16:51:00 -08:00
timmy
9ffefb3e21
Fix readme example
2023-11-19 00:20:43 -08:00
timmy
23d0139144
Map argparse --help output to python versions
2023-11-19 00:14:06 -08:00
timmy
0c49b9309d
Persist unknown groups
2023-11-18 23:58:18 -08:00
timmy
ccacca1b32
Improve generated namespace
...
Improve formatting of namespace
Allow _guess_type to return any string
Add tests
2023-11-18 23:31:24 -08:00
timmy
2c79e62765
Fix exported names
2023-11-18 12:43:53 -08:00
timmy
101eef56ca
Sanitize group names
2023-09-04 18:32:14 -05:00
timmy and GitHub
0301e1698c
Merge pull request #5 from lordwelch/pre-commit-ci-update-config
...
[pre-commit.ci] pre-commit autoupdate
2023-08-15 07:43:05 -07:00
timmy
4c41e6f588
Use a custom class for typing
...
Add support for nargs to default to list[str]
2023-06-09 15:41:18 -07:00
timmy
b599097cc1
Adds a function to generate a class for typing a namespace
2023-06-08 22:54:36 -07:00
timmy
8af75d3962
Update docstrings and ensure parameters are consistent
2023-06-08 21:44:07 -07:00
timmy
e57ee25a60
Make get_namespace consistent with normalize_config
2023-06-08 21:44:07 -07:00
timmy and GitHub
3ed9571156
Merge pull request #2 from lordwelch/pre-commit-ci-update-config
...
[pre-commit.ci] pre-commit autoupdate
2023-05-06 09:32:31 -07:00
timmy
78ac274e31
Include pyproject.toml
2023-04-26 15:32:06 -07:00
timmy
05c2196fcf
Update minimum requirements for typing-extensions
2023-04-26 15:04:57 -07:00
timmy
e2ff779c30
Add py.typed
2023-04-25 00:13:51 -07:00
timmy and GitHub
e9d0e874f3
Merge pull request #1 from lordwelch/pre-commit-ci-update-config
...
[pre-commit.ci] pre-commit autoupdate
2023-04-24 23:20:57 -07:00
timmy
ea5be60c63
Add un-committed fix and version bump
2023-02-20 02:07:35 -08:00
timmy
391f65c71f
Version Bump
2023-02-20 02:01:02 -08:00
timmy
ba645eb7c6
Implement qoc fixes
...
Fix fstring
Add comments explaining execution of normalize_config with defaults arg
Fix not removing file or cmdline settings in persistent groups
Fix a bug in get_namespace when config is a namespace
Add additional tests
2023-02-20 01:59:40 -08:00
timmy
69800f01b6
Version Bump
2023-02-19 22:22:45 -08:00
timmy
b2eaa12a0e
Upgrade pre-commit
2023-02-19 22:21:05 -08:00
timmy
fe7c821605
Add a display_name attribute to Setting
2023-02-19 18:39:35 -08:00
timmy
d07cf9949b
Allow adding settings to existing groups
...
Calling add_group or add_persistent_group twice will add any new
settings defined.
Raise a ValueError if add_group or add_persistent_group is called during
a call to add_group or add_persistent_group.
2023-02-19 18:07:14 -08:00
timmy
41cf2dc7cd
Version Bump
2023-01-31 19:35:35 -08:00
timmy
577b43c4e8
Fix regression with settings with a '-'
2023-01-31 19:35:10 -08:00
timmy
983fe782a3
Version Bump
2023-01-31 19:19:04 -08:00
timmy
d2326eadb9
Add support for persistent setting groups
...
Persistent setting groups allow settings that are not declared to
survive normalization and other operations that would normally remove
any unknown keys in a group.
Calling normalize or get_namespace with persistent=False will remove
unknown keys even from persistent groups.
Currently the only way to retrieve the defaults for a config and
preserve unknown keys is to manually get the defaults and update each
existing group with the default values.
2023-01-31 19:18:09 -08:00
timmy
c3976c2fb5
Version Bump
2022-12-15 19:00:40 -08:00
timmy
38e42bf3f9
Make most functions work off of Config objects and Values/Namespace objects
...
Used Generic for better typing
Backported BooleanOptionalAction for tests on Python 3.8
Remove merge support in normalize_config
Add test to validate that the example works
2022-12-15 18:53:29 -08:00
timmy
eb0b6ec0fe
Initial Commit
2022-12-14 20:57:57 -08:00