dotenvmodel 0.6.2__tar.gz → 1.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/CHANGELOG.md +31 -0
  2. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/PKG-INFO +158 -110
  3. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/README.md +155 -107
  4. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/__init__.py +16 -2
  5. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/caching.py +97 -30
  6. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/config.py +453 -78
  7. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/describe/formatters.py +229 -38
  8. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/describe/renderers.py +16 -6
  9. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/fields.py +336 -9
  10. dotenvmodel-1.0.0/dotenvmodel/loading.py +578 -0
  11. dotenvmodel-1.0.0/dotenvmodel/metaclass.py +324 -0
  12. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/types.py +39 -0
  13. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/validation.py +18 -4
  14. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/pyproject.toml +22 -5
  15. dotenvmodel-0.6.2/.github/CODEOWNERS +0 -1
  16. dotenvmodel-0.6.2/.github/ISSUE_TEMPLATE/bug_report.md +0 -33
  17. dotenvmodel-0.6.2/.github/ISSUE_TEMPLATE/feature_request.md +0 -21
  18. dotenvmodel-0.6.2/.github/dependabot.yml +0 -13
  19. dotenvmodel-0.6.2/.github/pull_request_template.md +0 -23
  20. dotenvmodel-0.6.2/.github/workflows/ci.yml +0 -140
  21. dotenvmodel-0.6.2/.github/workflows/docs.yml +0 -56
  22. dotenvmodel-0.6.2/.github/workflows/publish.yml +0 -89
  23. dotenvmodel-0.6.2/.github/workflows/release-please.yml +0 -34
  24. dotenvmodel-0.6.2/.python-version +0 -1
  25. dotenvmodel-0.6.2/.release-please-manifest.json +0 -3
  26. dotenvmodel-0.6.2/CODE_OF_CONDUCT.md +0 -127
  27. dotenvmodel-0.6.2/CONTRIBUTING.md +0 -381
  28. dotenvmodel-0.6.2/Makefile +0 -46
  29. dotenvmodel-0.6.2/SECURITY.md +0 -30
  30. dotenvmodel-0.6.2/docs/api-reference/caching.md +0 -7
  31. dotenvmodel-0.6.2/docs/api-reference/coercion.md +0 -5
  32. dotenvmodel-0.6.2/docs/api-reference/config.md +0 -5
  33. dotenvmodel-0.6.2/docs/api-reference/constants.md +0 -5
  34. dotenvmodel-0.6.2/docs/api-reference/describe-formatters.md +0 -5
  35. dotenvmodel-0.6.2/docs/api-reference/describe-renderers.md +0 -5
  36. dotenvmodel-0.6.2/docs/api-reference/describe.md +0 -5
  37. dotenvmodel-0.6.2/docs/api-reference/dotenvmodel.md +0 -31
  38. dotenvmodel-0.6.2/docs/api-reference/exceptions.md +0 -5
  39. dotenvmodel-0.6.2/docs/api-reference/fields.md +0 -5
  40. dotenvmodel-0.6.2/docs/api-reference/loading.md +0 -5
  41. dotenvmodel-0.6.2/docs/api-reference/logging-config.md +0 -5
  42. dotenvmodel-0.6.2/docs/api-reference/metaclass.md +0 -5
  43. dotenvmodel-0.6.2/docs/api-reference/types.md +0 -5
  44. dotenvmodel-0.6.2/docs/api-reference/validation.md +0 -5
  45. dotenvmodel-0.6.2/docs/changelog.md +0 -36
  46. dotenvmodel-0.6.2/docs/examples/complete-app.md +0 -354
  47. dotenvmodel-0.6.2/docs/getting-started/installation.md +0 -54
  48. dotenvmodel-0.6.2/docs/getting-started/quick-start.md +0 -186
  49. dotenvmodel-0.6.2/docs/guides/configuration-docs.md +0 -340
  50. dotenvmodel-0.6.2/docs/guides/error-handling.md +0 -277
  51. dotenvmodel-0.6.2/docs/guides/fields.md +0 -262
  52. dotenvmodel-0.6.2/docs/guides/loading.md +0 -301
  53. dotenvmodel-0.6.2/docs/guides/logging.md +0 -205
  54. dotenvmodel-0.6.2/docs/guides/prefixes.md +0 -152
  55. dotenvmodel-0.6.2/docs/guides/types.md +0 -540
  56. dotenvmodel-0.6.2/docs/guides/validation.md +0 -518
  57. dotenvmodel-0.6.2/docs/index.md +0 -135
  58. dotenvmodel-0.6.2/dotenvmodel/loading.py +0 -187
  59. dotenvmodel-0.6.2/dotenvmodel/metaclass.py +0 -152
  60. dotenvmodel-0.6.2/examples/advanced_types.py +0 -131
  61. dotenvmodel-0.6.2/examples/basic_usage.py +0 -67
  62. dotenvmodel-0.6.2/examples/describe_documentation.py +0 -176
  63. dotenvmodel-0.6.2/examples/generate_env_example.py +0 -75
  64. dotenvmodel-0.6.2/examples/logging_example.py +0 -112
  65. dotenvmodel-0.6.2/mkdocs.yml +0 -129
  66. dotenvmodel-0.6.2/release-please-config.json +0 -32
  67. dotenvmodel-0.6.2/tests/__init__.py +0 -0
  68. dotenvmodel-0.6.2/tests/conftest.py +0 -83
  69. dotenvmodel-0.6.2/tests/test_basic.py +0 -424
  70. dotenvmodel-0.6.2/tests/test_cached.py +0 -1082
  71. dotenvmodel-0.6.2/tests/test_coercion.py +0 -492
  72. dotenvmodel-0.6.2/tests/test_collection_validators.py +0 -203
  73. dotenvmodel-0.6.2/tests/test_defaults_coercion.py +0 -245
  74. dotenvmodel-0.6.2/tests/test_describe.py +0 -2281
  75. dotenvmodel-0.6.2/tests/test_edge_adoption.py +0 -161
  76. dotenvmodel-0.6.2/tests/test_edge_datetime.py +0 -173
  77. dotenvmodel-0.6.2/tests/test_edge_describe_output.py +0 -144
  78. dotenvmodel-0.6.2/tests/test_edge_enum.py +0 -245
  79. dotenvmodel-0.6.2/tests/test_edge_field_options.py +0 -133
  80. dotenvmodel-0.6.2/tests/test_edge_numbers.py +0 -188
  81. dotenvmodel-0.6.2/tests/test_edge_path_options.py +0 -89
  82. dotenvmodel-0.6.2/tests/test_edge_strings.py +0 -172
  83. dotenvmodel-0.6.2/tests/test_empty_collection_items.py +0 -124
  84. dotenvmodel-0.6.2/tests/test_empty_strings.py +0 -144
  85. dotenvmodel-0.6.2/tests/test_enum.py +0 -531
  86. dotenvmodel-0.6.2/tests/test_errors.py +0 -327
  87. dotenvmodel-0.6.2/tests/test_field_constraints.py +0 -118
  88. dotenvmodel-0.6.2/tests/test_future_annotations.py +0 -140
  89. dotenvmodel-0.6.2/tests/test_inheritance.py +0 -129
  90. dotenvmodel-0.6.2/tests/test_json.py +0 -165
  91. dotenvmodel-0.6.2/tests/test_json_and_optional.py +0 -310
  92. dotenvmodel-0.6.2/tests/test_loading.py +0 -243
  93. dotenvmodel-0.6.2/tests/test_logging_config.py +0 -254
  94. dotenvmodel-0.6.2/tests/test_nested_config.py +0 -238
  95. dotenvmodel-0.6.2/tests/test_post_load.py +0 -541
  96. dotenvmodel-0.6.2/tests/test_prefix.py +0 -234
  97. dotenvmodel-0.6.2/tests/test_reload.py +0 -334
  98. dotenvmodel-0.6.2/tests/test_secret_redaction.py +0 -633
  99. dotenvmodel-0.6.2/tests/test_secretstr_security.py +0 -132
  100. dotenvmodel-0.6.2/tests/test_string_affixes.py +0 -310
  101. dotenvmodel-0.6.2/tests/test_strip.py +0 -558
  102. dotenvmodel-0.6.2/tests/test_strip_integration.py +0 -124
  103. dotenvmodel-0.6.2/tests/test_types.py +0 -363
  104. dotenvmodel-0.6.2/tests/test_union_types.py +0 -83
  105. dotenvmodel-0.6.2/tests/test_url_dsn.py +0 -273
  106. dotenvmodel-0.6.2/tests/test_url_password_decoding.py +0 -87
  107. dotenvmodel-0.6.2/tests/test_url_unquote.py +0 -141
  108. dotenvmodel-0.6.2/tests/test_urls.py +0 -262
  109. dotenvmodel-0.6.2/tests/test_validator.py +0 -765
  110. dotenvmodel-0.6.2/uv.lock +0 -1105
  111. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/.gitignore +0 -0
  112. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/LICENSE +0 -0
  113. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/_constants.py +0 -0
  114. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/_redaction.py +0 -0
  115. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/coercion.py +0 -0
  116. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/describe/__init__.py +0 -0
  117. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/exceptions.py +0 -0
  118. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/logging_config.py +0 -0
  119. {dotenvmodel-0.6.2 → dotenvmodel-1.0.0}/dotenvmodel/py.typed +0 -0
@@ -5,6 +5,37 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.0.0](https://github.com/AZX-PBC-OSS/dotenvmodel/compare/v0.6.3...v1.0.0) (2026-08-31)
9
+
10
+
11
+ ### ⚠ BREAKING CHANGES
12
+
13
+ * a string default containing ${VAR} text resolves at load time instead of being taken literally; an unset reference yields "" where the raw ${...} text was kept before.
14
+ * load()/reload()/cached() no longer mutate os.environ — call python-dotenv load_dotenv() yourself if you relied on injection. override default flipped True -> False; real env vars now beat .env files unless override=True or DOTENV_OVERRIDE=true. load_env_files() removed in favor of read_env_files(), a pure reader returning a DotenvLayer (later file wins, bare keys left unset like load_dotenv()). loaded_with() returns LoadParams instead of a 3-tuple and raises RuntimeError on instances never loaded from the environment. boolean load params are now bool | None with DOTENV_OVERRIDE/DOTENV_READ_DOTFILES/DOTENV_LOAD_LOCAL env-var overrides (unrecognized values warn and fall back to the default). .local files are skipped by default when env is test (case-insensitive) — extending the Next.js/dotenv-flow rule, which skips only .env.local in test, to all .local files, because a gitignored .env.test.local must not decide test outcomes either (load_local=True or DOTENV_LOAD_LOCAL=true restores them).
15
+
16
+ ### Features
17
+
18
+ * field_validator decorator with before and after modes ([#65](https://github.com/AZX-PBC-OSS/dotenvmodel/issues/65)) ([f50b97d](https://github.com/AZX-PBC-OSS/dotenvmodel/commit/f50b97dd08521f07a50905e3f4ff000483be6bd5))
19
+ * interpolate references in string defaults ([#62](https://github.com/AZX-PBC-OSS/dotenvmodel/issues/62)) ([27ec71d](https://github.com/AZX-PBC-OSS/dotenvmodel/commit/27ec71d074e5ce4baebfc51db5f7d9ac4911b362))
20
+ * resolve config without mutating os.environ ([#60](https://github.com/AZX-PBC-OSS/dotenvmodel/issues/60)) ([15b6386](https://github.com/AZX-PBC-OSS/dotenvmodel/commit/15b6386fe93b3f6451f6f80c022b5d371aad73e4))
21
+
22
+
23
+ ### Bug Fixes
24
+
25
+ * compare unwrapped secrets against choices ([#63](https://github.com/AZX-PBC-OSS/dotenvmodel/issues/63)) ([c7abdeb](https://github.com/AZX-PBC-OSS/dotenvmodel/commit/c7abdeb1fabeb2a7948b718de28ee9a2d0b7f672))
26
+
27
+
28
+ ### Continuous Integration
29
+
30
+ * pin actions, gate publishing, trim permissions, lock the sdist ([#64](https://github.com/AZX-PBC-OSS/dotenvmodel/issues/64)) ([1c382b3](https://github.com/AZX-PBC-OSS/dotenvmodel/commit/1c382b3eff0e82f2b6c33140bb2753350076c24c))
31
+
32
+ ## [0.6.3](https://github.com/AZX-PBC-OSS/dotenvmodel/compare/v0.6.2...v0.6.3) (2026-07-28)
33
+
34
+
35
+ ### Bug Fixes
36
+
37
+ * reload() must update the instance's recorded load arguments ([#56](https://github.com/AZX-PBC-OSS/dotenvmodel/issues/56)) ([a293461](https://github.com/AZX-PBC-OSS/dotenvmodel/commit/a2934612da52130cc539be65bd1fe196a4381dde))
38
+
8
39
  ## [0.6.2](https://github.com/AZX-PBC-OSS/dotenvmodel/compare/v0.6.1...v0.6.2) (2026-07-28)
9
40
 
10
41