tariffkit 0.2.0__tar.gz → 0.2.1__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 (109) hide show
  1. {tariffkit-0.2.0 → tariffkit-0.2.1}/CHANGELOG.md +18 -1
  2. {tariffkit-0.2.0 → tariffkit-0.2.1}/PKG-INFO +6 -1
  3. {tariffkit-0.2.0 → tariffkit-0.2.1}/README.md +5 -0
  4. {tariffkit-0.2.0 → tariffkit-0.2.1}/pyproject.toml +1 -1
  5. {tariffkit-0.2.0 → tariffkit-0.2.1}/.gitignore +0 -0
  6. {tariffkit-0.2.0 → tariffkit-0.2.1}/LICENSE +0 -0
  7. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/__init__.py +0 -0
  8. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/account/__init__.py +0 -0
  9. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/account/cli.py +0 -0
  10. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/account/errors.py +0 -0
  11. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/account/model.py +0 -0
  12. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/account/rates.py +0 -0
  13. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/account/repository.py +0 -0
  14. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/billing/__init__.py +0 -0
  15. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/billing/engine.py +0 -0
  16. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/billing/ledger.py +0 -0
  17. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/billing/models.py +0 -0
  18. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/billing/netting.py +0 -0
  19. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/billing/trueup.py +0 -0
  20. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/cca.py +0 -0
  21. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/cli.py +0 -0
  22. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/config.py +0 -0
  23. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/__init__.py +0 -0
  24. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/cca/mce/2023-01-01.toml +0 -0
  25. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/cca/mce/2026-04-01.toml +0 -0
  26. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/export/pge/acc_plus/2023-04-15.toml +0 -0
  27. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/export/pge/nbt00.json.gz +0 -0
  28. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/export/pge/nbt23.json.gz +0 -0
  29. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/export/pge/nbt24.json.gz +0 -0
  30. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/export/pge/nbt25.json.gz +0 -0
  31. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/export/pge/nbt26.json.gz +0 -0
  32. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/holidays.toml +0 -0
  33. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/manifest.json +0 -0
  34. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/nsc/pge.toml +0 -0
  35. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/eelec/2025-01-01.toml +0 -0
  36. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/eelec/2025-03-01.toml +0 -0
  37. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/eelec/2025-09-01.toml +0 -0
  38. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/eelec/2026-01-01.toml +0 -0
  39. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/eelec/2026-03-01.toml +0 -0
  40. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/etouc/2025-01-01.toml +0 -0
  41. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/etouc/2025-03-01.toml +0 -0
  42. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/etouc/2025-09-01.toml +0 -0
  43. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/etouc/2026-01-01.toml +0 -0
  44. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/etouc/2026-03-01.toml +0 -0
  45. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/ev2a/2025-01-01.toml +0 -0
  46. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/ev2a/2025-03-01.toml +0 -0
  47. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/ev2a/2025-09-01.toml +0 -0
  48. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/ev2a/2026-01-01.toml +0 -0
  49. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tariff/pge/ev2a/2026-03-01.toml +0 -0
  50. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tax/ca_energy_resources/2025-01-01.toml +0 -0
  51. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/tax/ca_energy_resources/2026-01-01.toml +0 -0
  52. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/data/versioned.py +0 -0
  53. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/engine.py +0 -0
  54. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/errors.py +0 -0
  55. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/export/__init__.py +0 -0
  56. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/export/nbt.py +0 -0
  57. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/interop/__init__.py +0 -0
  58. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/interop/emhass.py +0 -0
  59. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/interop/predbat.py +0 -0
  60. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/interop/slots.py +0 -0
  61. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/models.py +0 -0
  62. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/mqtt/__init__.py +0 -0
  63. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/mqtt/discovery.py +0 -0
  64. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/mqtt/publisher.py +0 -0
  65. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/__init__.py +0 -0
  66. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/pge/__init__.py +0 -0
  67. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/pge/reconcile.py +0 -0
  68. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/pge/statements/__init__.py +0 -0
  69. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/pge/statements/errors.py +0 -0
  70. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/pge/statements/model.py +0 -0
  71. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/pge/statements/ocr.py +0 -0
  72. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/providers/pge/statements/parse.py +0 -0
  73. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/py.typed +0 -0
  74. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/secrets.py +0 -0
  75. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/sources/__init__.py +0 -0
  76. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/sources/greenbutton.py +0 -0
  77. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/sources/homeassistant.py +0 -0
  78. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/sources/influx.py +0 -0
  79. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/sources/pge.py +0 -0
  80. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/tariff/__init__.py +0 -0
  81. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/tariff/retail.py +0 -0
  82. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/timeutil.py +0 -0
  83. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/web/__init__.py +0 -0
  84. {tariffkit-0.2.0 → tariffkit-0.2.1}/src/tariffkit/web/app.py +0 -0
  85. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/conftest.py +0 -0
  86. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/fixtures/nbt_golden_rows.jsonl +0 -0
  87. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/fixtures/statements/synthetic_cca_ratechange.txt +0 -0
  88. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_account.py +0 -0
  89. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_account_cli.py +0 -0
  90. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_billing.py +0 -0
  91. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_eelec.py +0 -0
  92. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_engine.py +0 -0
  93. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_ev2a.py +0 -0
  94. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_export_golden.py +0 -0
  95. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_integrations.py +0 -0
  96. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_interop.py +0 -0
  97. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_ledger.py +0 -0
  98. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_mce.py +0 -0
  99. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_mqtt_publisher.py +0 -0
  100. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_pge_reconcile.py +0 -0
  101. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_pge_statements.py +0 -0
  102. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_private_config.py +0 -0
  103. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_schedules.py +0 -0
  104. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_sources_greenbutton.py +0 -0
  105. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_sources_ha.py +0 -0
  106. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_sources_influx.py +0 -0
  107. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_sources_pge.py +0 -0
  108. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_trueup.py +0 -0
  109. {tariffkit-0.2.0 → tariffkit-0.2.1}/tests/test_versioned.py +0 -0
@@ -5,6 +5,22 @@ All notable changes to this project are documented here. This project follows
5
5
 
6
6
  ## [Unreleased]
7
7
 
8
+ ## [0.2.1] - 2026-08-16
9
+
10
+ ### Added
11
+ - **HACS releases now include a deterministic `tariffkit.zip` integration
12
+ artifact.** HACS installs only the tracked component files, rooted directly
13
+ in the integration directory, while the release pipeline validates the ZIP
14
+ against its source, checksums it with the Python distributions, and attaches
15
+ all artifacts before immutable publication. Dedicated HACS and hassfest
16
+ checks also gate integration changes and prepare TariffKit for default-store
17
+ submission.
18
+
19
+ ### Fixed
20
+ - Home Assistant action descriptions now follow hassfest's current service
21
+ schema: icons live in `icons.json`, target metadata is explicit, and the
22
+ config-entry-only YAML schema is declared.
23
+
8
24
  ## [0.2.0] - 2026-08-16
9
25
 
10
26
  ### Added
@@ -168,5 +184,6 @@ Initial release.
168
184
  - Holiday calendars are extracted per vintage from the source data rather than
169
185
  recomputed, because the vintage files disagree in far-future years.
170
186
 
171
- [Unreleased]: https://github.com/eman/tariffkit/compare/v0.2.0...HEAD
187
+ [Unreleased]: https://github.com/eman/tariffkit/compare/v0.2.1...HEAD
188
+ [0.2.1]: https://github.com/eman/tariffkit/releases/tag/v0.2.1
172
189
  [0.2.0]: https://github.com/eman/tariffkit/releases/tag/v0.2.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: tariffkit
3
- Version: 0.2.0
3
+ Version: 0.2.1
4
4
  Summary: Offline electricity tariff pricing, billing, and integration tools
5
5
  Project-URL: Homepage, https://github.com/eman/tariffkit
6
6
  Project-URL: Documentation, https://github.com/eman/tariffkit#documentation
@@ -134,6 +134,11 @@ pip install 'tariffkit[statements]' # + reading local PG&E statement PDFs
134
134
  pip install 'tariffkit[all]'
135
135
  ```
136
136
 
137
+ The Home Assistant custom component is also available through HACS as a custom
138
+ repository while its default-store submission is reviewed:
139
+
140
+ [![Open your Home Assistant instance and add the TariffKit repository to HACS](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=eman&repository=tariffkit&category=integration)
141
+
137
142
  ## CLI
138
143
 
139
144
  ```bash
@@ -89,6 +89,11 @@ pip install 'tariffkit[statements]' # + reading local PG&E statement PDFs
89
89
  pip install 'tariffkit[all]'
90
90
  ```
91
91
 
92
+ The Home Assistant custom component is also available through HACS as a custom
93
+ repository while its default-store submission is reviewed:
94
+
95
+ [![Open your Home Assistant instance and add the TariffKit repository to HACS](https://my.home-assistant.io/badges/hacs_repository.svg)](https://my.home-assistant.io/redirect/hacs_repository/?owner=eman&repository=tariffkit&category=integration)
96
+
92
97
  ## CLI
93
98
 
94
99
  ```bash
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "tariffkit"
7
- version = "0.2.0"
7
+ version = "0.2.1"
8
8
  description = "Offline electricity tariff pricing, billing, and integration tools"
9
9
  readme = "README.md"
10
10
  license = "MIT"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes