Hydro-Quebec-API-Wrapper 3.1.2__tar.gz → 3.2.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 (102) hide show
  1. hydro_quebec_api_wrapper-3.2.0/.devcontainer/devcontainer.json +10 -0
  2. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/.gitlab-ci.yml +9 -11
  3. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/.pre-commit-config.yaml +8 -8
  4. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/.pylintrc +1 -1
  5. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/Hydro_Quebec_API_Wrapper.egg-info/PKG-INFO +6 -1
  6. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/Hydro_Quebec_API_Wrapper.egg-info/SOURCES.txt +1 -0
  7. hydro_quebec_api_wrapper-3.2.0/Hydro_Quebec_API_Wrapper.egg-info/requires.txt +5 -0
  8. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/PKG-INFO +6 -1
  9. hydro_quebec_api_wrapper-3.2.0/conflict_test_requirements.txt +1 -0
  10. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/examples/hydro.py +3 -1
  11. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/account.py +1 -0
  12. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/consts.py +1 -0
  13. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/__init__.py +1 -0
  14. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/common.py +1 -0
  15. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/contract_d.py +1 -0
  16. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/contract_d_cpc.py +1 -0
  17. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/contract_dpc.py +1 -0
  18. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/contract_dt.py +1 -0
  19. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/contract_m.py +1 -0
  20. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/contract_m_gdp.py +1 -0
  21. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/contract_residential.py +1 -0
  22. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/contract/outage.py +1 -0
  23. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/customer.py +1 -0
  24. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/diagnostic.py +1 -0
  25. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/hydro_api/cache.py +1 -0
  26. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/hydro_api/client.py +1 -0
  27. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/hydro_api/consts.py +26 -25
  28. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/logger.py +1 -0
  29. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/cpc/consts.py +1 -0
  30. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/cpc/handler.py +1 -0
  31. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/cpc/peak.py +1 -0
  32. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/dpc/consts.py +1 -0
  33. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/dpc/handler.py +1 -0
  34. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/dpc/peak.py +1 -0
  35. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/timerange.py +1 -0
  36. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/__init__.py +1 -0
  37. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/account.py +1 -0
  38. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/common.py +1 -0
  39. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/consump.py +1 -0
  40. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/contract.py +1 -0
  41. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/cpc.py +1 -0
  42. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/dpc.py +1 -0
  43. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/dt.py +1 -0
  44. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/types/outage.py +1 -0
  45. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/webuser.py +1 -0
  46. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/pyproject.toml +3 -3
  47. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/renovate.json5 +7 -3
  48. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/setup.cfg +3 -3
  49. hydro_quebec_api_wrapper-3.2.0/test_requirements.txt +14 -0
  50. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/conftest.py +1 -0
  51. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/subtest_common.py +1 -0
  52. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/subtest_contract_d.py +1 -0
  53. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/subtest_contract_d_cpc.py +1 -0
  54. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/subtest_contract_dpc.py +1 -0
  55. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/subtest_contract_dt.py +1 -0
  56. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/subtest_contract_m.py +1 -0
  57. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/subtest_contract_m_gdp.py +1 -0
  58. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/test_basic.py +1 -0
  59. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/test_timerange.py +1 -0
  60. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/tools.py +1 -0
  61. Hydro-Quebec-API-Wrapper-3.1.2/Hydro_Quebec_API_Wrapper.egg-info/requires.txt +0 -5
  62. Hydro-Quebec-API-Wrapper-3.1.2/conflict_test_requirements.txt +0 -1
  63. Hydro-Quebec-API-Wrapper-3.1.2/test_requirements.txt +0 -14
  64. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/.coveragerc +0 -0
  65. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/.flake8 +0 -0
  66. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/.gitignore +0 -0
  67. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/Hydro_Quebec_API_Wrapper.egg-info/dependency_links.txt +0 -0
  68. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/Hydro_Quebec_API_Wrapper.egg-info/entry_points.txt +0 -0
  69. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/Hydro_Quebec_API_Wrapper.egg-info/top_level.txt +0 -0
  70. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/LICENSE +0 -0
  71. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/MANIFEST.in +0 -0
  72. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/README.md +0 -0
  73. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/config.default.yaml +0 -0
  74. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/Makefile +0 -0
  75. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/make.bat +0 -0
  76. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/_static/custom.css +0 -0
  77. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/_static/hydroqc-logo-128.png +0 -0
  78. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/_static/hydroqc-logo.svg +0 -0
  79. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/conf.py +0 -0
  80. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/external/description-des-codes-interruption.pdf +0 -0
  81. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/index.rst +0 -0
  82. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/hydroqc.contract.rst +0 -0
  83. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/hydroqc.hydro_api.rst +0 -0
  84. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/hydroqc.peak.cpc.rst +0 -0
  85. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/hydroqc.peak.dpc.rst +0 -0
  86. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/hydroqc.peak.rst +0 -0
  87. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/hydroqc.rst +0 -0
  88. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/hydroqc.types.rst +0 -0
  89. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/reference/modules.rst +0 -0
  90. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/docs/source/todo.rst +0 -0
  91. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/__init__.py +0 -0
  92. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/error.py +0 -0
  93. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/hydro_api/__init__.py +0 -0
  94. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/__init__.py +0 -0
  95. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/cpc/__init__.py +0 -0
  96. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/peak/dpc/__init__.py +0 -0
  97. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/py.typed +0 -0
  98. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/hydroqc/utils.py +0 -0
  99. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/logo/hydroqc-logo-128.png +0 -0
  100. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/logo/hydroqc-logo.svg +0 -0
  101. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tests/__init__.py +0 -0
  102. {Hydro-Quebec-API-Wrapper-3.1.2 → hydro_quebec_api_wrapper-3.2.0}/tox.ini +0 -0
@@ -0,0 +1,10 @@
1
+ {
2
+ "name": "hydroqc",
3
+ "image": "registry.gitlab.com/hydroqc/hydroqc-base-container/3.11:latest",
4
+ "features": {
5
+ "ghcr.io/msclock/features/gitlab-ci-local:0": {
6
+ "version": "latest"
7
+ }
8
+ },
9
+ "remoteUser": "devcontainer"
10
+ }
@@ -30,10 +30,9 @@ renovate-config-validator:
30
30
  test:
31
31
  stage: test
32
32
  tags:
33
- - hydroqc
34
- image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.11@sha256:c2f84259e74c1bbd73497ee0d5a71fb5d8f8ff68befdd90f2f5e9b282da0f709
33
+ - hydroqc
34
+ image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.12@sha256:b66812346075aabc0ee6cf452d734c28589bbe97a82c179b0a95d3a95c04ad41
35
35
  script:
36
- - pip install tox
37
36
  - tox -e pylint,flake8,pydocstyle,typing,black,deps-conflict --parallel auto
38
37
  - cat mypy-txt-report/index.txt
39
38
  artifacts:
@@ -68,11 +67,11 @@ test:
68
67
 
69
68
  .private_test_script: &private_test_script
70
69
  stage: private_tests
71
- tags:
72
- - hydroqc
73
- image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.11@sha256:c2f84259e74c1bbd73497ee0d5a71fb5d8f8ff68befdd90f2f5e9b282da0f709
70
+ # Run on shared runners to lighten the load on the private runners
71
+ # tags:
72
+ # - hydroqc
73
+ image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.12@sha256:b66812346075aabc0ee6cf452d734c28589bbe97a82c179b0a95d3a95c04ad41
74
74
  script:
75
- #- apt update && apt install -y jq unzip curl
76
75
  - >
77
76
  OUTPUT=$(curl
78
77
  --globoff
@@ -258,11 +257,10 @@ private_tests_done:
258
257
  stage: private_tests_done
259
258
  tags:
260
259
  - hydroqc
261
- image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.11@sha256:c2f84259e74c1bbd73497ee0d5a71fb5d8f8ff68befdd90f2f5e9b282da0f709
260
+ image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.12@sha256:b66812346075aabc0ee6cf452d734c28589bbe97a82c179b0a95d3a95c04ad41
262
261
  script:
263
262
  #- apt-get update && apt-get install --no-install-recommends -y python3.10 python3-venv python3-pip --no-install-recommends git
264
263
  - echo "Private Tests done"
265
- - pip install tox
266
264
  - find .
267
265
  - mv -v hydroqc/.coverage* .
268
266
  - mv -v hydroqc/*.xml .
@@ -301,7 +299,7 @@ package:
301
299
  stage: test
302
300
  tags:
303
301
  - hydroqc
304
- image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.11@sha256:c2f84259e74c1bbd73497ee0d5a71fb5d8f8ff68befdd90f2f5e9b282da0f709
302
+ image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.12@sha256:b66812346075aabc0ee6cf452d734c28589bbe97a82c179b0a95d3a95c04ad41
305
303
  script:
306
304
  # Build a package with a version based on the commmit short sha
307
305
  - pip install --upgrade pip
@@ -331,7 +329,7 @@ promote2pypi:
331
329
  stage: pypi
332
330
  tags:
333
331
  - hydroqc
334
- image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.11@sha256:c2f84259e74c1bbd73497ee0d5a71fb5d8f8ff68befdd90f2f5e9b282da0f709
332
+ image: registry.gitlab.com/hydroqc/hydroqc-base-container/3.12@sha256:b66812346075aabc0ee6cf452d734c28589bbe97a82c179b0a95d3a95c04ad41
335
333
  script:
336
334
  # TODO: try to pull the good package from gitlab pypi repo
337
335
  # then change the version (promote)
@@ -1,6 +1,6 @@
1
1
  repos:
2
2
  - repo: https://github.com/pre-commit/pre-commit-hooks
3
- rev: v4.5.0
3
+ rev: v4.6.0
4
4
  hooks:
5
5
  - id: trailing-whitespace
6
6
  - id: end-of-file-fixer
@@ -16,13 +16,13 @@ repos:
16
16
  - id: check-ast
17
17
 
18
18
  - repo: https://github.com/psf/black
19
- rev: 23.12.0
19
+ rev: 24.4.2
20
20
  hooks:
21
21
  - id: black
22
22
  language_version: python3
23
23
 
24
24
  - repo: https://github.com/PyCQA/flake8/
25
- rev: 6.1.0
25
+ rev: 7.0.0
26
26
  hooks:
27
27
  - id: flake8
28
28
  additional_dependencies: [flake8-docstrings]
@@ -40,15 +40,15 @@ repos:
40
40
  - id: doc8
41
41
 
42
42
  - repo: https://github.com/pre-commit/mirrors-mypy
43
- rev: v1.7.1
43
+ rev: v1.10.0
44
44
  hooks:
45
45
  - id: mypy
46
46
  args: [--strict, --pretty, --show-error-codes]
47
47
  additional_dependencies:
48
- - "types-pytz==2023.3.1.1"
49
- - "types-PyYAML==6.0.12.12"
50
- - "types-python-dateutil==2.8.19.14"
48
+ - "types-pytz==2024.1.0.20240417"
49
+ - "types-PyYAML==6.0.12.20240311"
50
+ - "types-python-dateutil==2.9.0.20240316"
51
51
  - "pytest-stub==1.1.0"
52
- - "aiohttp==3.9.1"
52
+ - "aiohttp==3.9.5"
53
53
  - "aiocache==0.12.2"
54
54
  - "pkce==1.0.3"
@@ -276,7 +276,7 @@ int-import-graph=
276
276
 
277
277
  # Exceptions that will emit a warning when being caught. Defaults to
278
278
  # "Exception"
279
- overgeneral-exceptions=Exception
279
+ overgeneral-exceptions=builtins.Exception
280
280
 
281
281
  max-nested-blocks=7
282
282
  max-bool-expr=10
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: Hydro-Quebec-API-Wrapper
3
- Version: 3.1.2
3
+ Version: 3.2.0
4
4
  Summary: A wrapper library to access hydro quebec API and more
5
5
  Home-page: https://hydroqc.ca
6
6
  Author-email: Hydroqc Team <info@hydroqc.ca>
@@ -15,6 +15,11 @@ Classifier: Operating System :: OS Independent
15
15
  Requires-Python: >=3.10.0
16
16
  Description-Content-Type: text/markdown
17
17
  License-File: LICENSE
18
+ Requires-Dist: aiohttp==3.9.5
19
+ Requires-Dist: python-dateutil==2.9.0.post0
20
+ Requires-Dist: pytz==2024.1
21
+ Requires-Dist: aiocache==0.12.2
22
+ Requires-Dist: pkce==1.0.3
18
23
 
19
24
  # HydroQC - Hydro Quebec API wrapper
20
25
 
@@ -14,6 +14,7 @@ renovate.json5
14
14
  setup.cfg
15
15
  test_requirements.txt
16
16
  tox.ini
17
+ .devcontainer/devcontainer.json
17
18
  Hydro_Quebec_API_Wrapper.egg-info/PKG-INFO
18
19
  Hydro_Quebec_API_Wrapper.egg-info/SOURCES.txt
19
20
  Hydro_Quebec_API_Wrapper.egg-info/dependency_links.txt
@@ -0,0 +1,5 @@
1
+ aiohttp==3.9.5
2
+ python-dateutil==2.9.0.post0
3
+ pytz==2024.1
4
+ aiocache==0.12.2
5
+ pkce==1.0.3
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: Hydro-Quebec-API-Wrapper
3
- Version: 3.1.2
3
+ Version: 3.2.0
4
4
  Summary: A wrapper library to access hydro quebec API and more
5
5
  Home-page: https://hydroqc.ca
6
6
  Author-email: Hydroqc Team <info@hydroqc.ca>
@@ -15,6 +15,11 @@ Classifier: Operating System :: OS Independent
15
15
  Requires-Python: >=3.10.0
16
16
  Description-Content-Type: text/markdown
17
17
  License-File: LICENSE
18
+ Requires-Dist: aiohttp==3.9.5
19
+ Requires-Dist: python-dateutil==2.9.0.post0
20
+ Requires-Dist: pytz==2024.1
21
+ Requires-Dist: aiocache==0.12.2
22
+ Requires-Dist: pkce==1.0.3
18
23
 
19
24
  # HydroQC - Hydro Quebec API wrapper
20
25
 
@@ -0,0 +1 @@
1
+ mqtt-hass-base==4.3.0
@@ -65,7 +65,9 @@ async def async_func():
65
65
  print(data)
66
66
  data = await contract.get_annual_consumption()
67
67
  print(data)
68
- data = await contract.get_daily_consumption(date.fromisoformat("2022-01-10"), date.fromisoformat("2022-01-20"))
68
+ data = await contract.get_daily_consumption(
69
+ date.fromisoformat("2022-01-10"), date.fromisoformat("2022-01-20")
70
+ )
69
71
  print(data)
70
72
 
71
73
 
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec Account Module."""
2
+
2
3
  from hydroqc.contract.common import Contract
3
4
  from hydroqc.error import HydroQcError
4
5
  from hydroqc.hydro_api.client import HydroClient
@@ -1,4 +1,5 @@
1
1
  """Hydroqc Consts."""
2
+
2
3
  from dateutil import tz
3
4
 
4
5
  # Always get the time using HydroQuebec Local Time
@@ -1,4 +1,5 @@
1
1
  """Contracts module."""
2
+
2
3
  from hydroqc.contract.common import ContractFallBack
3
4
  from hydroqc.contract.contract_d import ContractD
4
5
  from hydroqc.contract.contract_d_cpc import ContractDCPC
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  import functools
3
4
  import logging
4
5
  from abc import ABC
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  from hydroqc.contract.contract_residential import ContractResidential
3
4
  from hydroqc.hydro_api.client import HydroClient
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  from hydroqc.contract.contract_d import ContractD
3
4
  from hydroqc.hydro_api.client import HydroClient
4
5
  from hydroqc.peak.cpc.handler import CPCPeakHandler
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  from collections.abc import Callable
3
4
  from datetime import date
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  from hydroqc.contract.common import check_annual_data_present, check_period_data_present
3
4
  from hydroqc.contract.contract_residential import ContractResidential
4
5
  from hydroqc.hydro_api.client import HydroClient
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  from collections.abc import Iterator
3
4
  from datetime import date
4
5
  from io import StringIO
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  from hydroqc.contract.contract_m import ContractM
3
4
  from hydroqc.hydro_api.client import HydroClient
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec contract module."""
2
+
2
3
  from collections.abc import Iterator
3
4
  from datetime import date
4
5
  from io import StringIO
@@ -5,6 +5,7 @@ See:
5
5
  * https://infopannes.solutions.hydroquebec.com/statut-adresse/
6
6
  * https://www.hydroquebec.com/data/loi-sur-acces/pdf/description-des-codes-interruption.pdf
7
7
  """
8
+
8
9
  import datetime
9
10
  import logging
10
11
 
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec customer module."""
2
+
2
3
  import logging
3
4
 
4
5
  from hydroqc import contract as contractModule
@@ -1,4 +1,5 @@
1
1
  """Diagnostic module to help users to send debug to devs."""
2
+
2
3
  import argparse
3
4
  import asyncio
4
5
  import copy
@@ -1,4 +1,5 @@
1
1
  """Custon cache module."""
2
+
2
3
  import functools
3
4
  from collections.abc import Callable
4
5
  from typing import ParamSpec, TypeVar, cast
@@ -1,4 +1,5 @@
1
1
  """HydroQc Client Module."""
2
+
2
3
  import base64
3
4
  import csv
4
5
  import json
@@ -4,14 +4,15 @@
4
4
 
5
5
  avoid all the /portail/ URLs
6
6
  """
7
+
7
8
  # Always get the time using HydroQuebec Local Time
8
9
  REQUESTS_TIMEOUT = 30
9
10
  REQUESTS_TTL = 1
10
11
 
11
12
  HOST_LOGIN = "https://connexion.solutions.hydroquebec.com"
12
13
  HOST_SESSION = "https://session.hydroquebec.com"
13
- HOST_SERVICES = "https://cl-services.solutions.hydroquebec.com"
14
- HOST_SPRING = "https://cl-ec-lsw.solutions.hydroquebec.com"
14
+ HOST_SERVICES = "https://services-cl.solutions.hydroquebec.com"
15
+ # HOST_SPRING = "https://cl-ec-lsw.solutions.hydroquebec.com"
15
16
  HOST_RB_SOL = "https://rb.solutions.hydroquebec.com"
16
17
  HOST_OUTAGES = "https://services-bs.solutions.hydroquebec.com"
17
18
 
@@ -44,82 +45,82 @@ CHECK_SESSION_URL = f"{HOST_LOGIN}/hqam/oauth2/connect/checkSession"
44
45
 
45
46
  SECURITY_URL = f"{HOST_SESSION}/config/security.json"
46
47
  SESSION_REFRESH_URL = f"{HOST_SESSION}/oauth2/callback/silent-refresh"
47
- LOGIN_URL_6 = f"{HOST_SERVICES}/web/prive/api/v3_0/conversion/codeAcces"
48
+ LOGIN_URL_6 = f"{HOST_SERVICES}/wsapi/web/prive/api/v3_0/conversion/codeAcces"
48
49
 
49
50
  # Initialization uri
50
- RELATION_URL = f"{HOST_SERVICES}/web/prive/api/v1_0/relations"
51
+ RELATION_URL = f"{HOST_SERVICES}/wsapi/web/prive/api/v1_0/relations"
51
52
 
52
53
  FLEXD_DATA_URL = (
53
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
54
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
54
55
  "resourceObtenirDonneesMoisHiverFlex"
55
56
  )
56
- FLEXD_PEAK_URL = f"{HOST_RB_SOL}/portraitweb/api/v3_0/conso"
57
+ FLEXD_PEAK_URL = f"{HOST_SERVICES}/conso/portraitweb/api/v3_0/conso"
57
58
  CONSO_CSV_URL = (
58
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
59
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
59
60
  "resourceTelechargerDonneesConsommation"
60
61
  )
61
62
  CONSO_OVERVIEW_CSV_URL = (
62
- f"{HOST_SPRING}/portail/en/group/clientele/portrait-de-consommation/"
63
+ f"{HOST_SERVICES}/lsw/portail/en/group/clientele/portrait-de-consommation/"
63
64
  "resourceTelechargerPeriodesFacturation"
64
65
  )
65
66
 
66
67
  # TODO avoid all the /portail/ URLs
67
- SESSION_URL = f"{HOST_SPRING}/portail/prive/maj-session/"
68
+ SESSION_URL = f"{HOST_SERVICES}/lsw/portail/prive/maj-session/"
68
69
  # TODO avoid all the /portail/ URLs
69
- CONTRACT_HTML_URL = f"{HOST_SPRING}/portail/fr/group/clientele/gerer-mon-compte"
70
+ CONTRACT_HTML_URL = f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/gerer-mon-compte"
70
71
  #
71
- INFOBASE_URL = f"{HOST_SERVICES}/web/prive/api/v3_0/partenaires/infoBase"
72
+ INFOBASE_URL = f"{HOST_SERVICES}/wsapi/web/prive/api/v3_0/partenaires/infoBase"
72
73
  CONTRACT_SUMMARY_URL = (
73
- f"{HOST_SERVICES}/web/prive/api/v3_0/partenaires/"
74
+ f"{HOST_SERVICES}/wsapi/web/prive/api/v3_0/partenaires/"
74
75
  "calculerSommaireContractuel?indMAJNombres=true"
75
76
  )
76
- CONTRACT_LIST_URL = f"{HOST_SERVICES}/web/prive/api/v3_0/partenaires/contrats"
77
- # CONTRACT_URL_4 = (f"{HOST_SERVICES}/web/prive/api/v3_0/partenaires/"
78
- # "calculerSommaireContractuel")
77
+ CONTRACT_LIST_URL = f"{HOST_SERVICES}/wsapi/web/prive/api/v3_0/partenaires/contrats"
79
78
 
80
- CUSTOMER_INFO_URL = f"{HOST_SERVICES}/web/prive/api/v3_0/partenaires/infoCompte"
79
+ CUSTOMER_INFO_URL = f"{HOST_SERVICES}/wsapi/web/prive/api/v3_0/partenaires/infoCompte"
81
80
 
82
81
  # TODO avoid all the /portail/ URLs
83
- PORTRAIT_URL = f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation"
82
+ PORTRAIT_URL = (
83
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation"
84
+ )
84
85
  # TODO avoid all the /portail/ URLs
85
86
  PERIOD_DATA_URL = (
86
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
87
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
87
88
  "resourceObtenirDonneesPeriodesConsommation"
88
89
  )
89
90
 
90
91
  # TODO avoid all the /portail/ URLs
91
92
  ANNUAL_DATA_URL = (
92
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
93
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
93
94
  "resourceObtenirDonneesConsommationAnnuelles"
94
95
  )
95
96
 
96
97
  # TODO avoid all the /portail/ URLs
97
98
  MONTHLY_DATA_URL = (
98
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
99
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
99
100
  "resourceObtenirDonneesConsommationMensuelles"
100
101
  )
101
102
 
102
103
  # TODO avoid all the /portail/ URLs
103
104
  DAILY_CONSUMPTION_API_URL = (
104
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
105
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
105
106
  "resourceObtenirDonneesQuotidiennesConsommation"
106
107
  )
107
108
 
108
109
  # TODO avoid all the /portail/ URLs
109
110
  HOURLY_CONSUMPTION_API_URL = (
110
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
111
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
111
112
  "resourceObtenirDonneesConsommationHoraires"
112
113
  )
113
114
  # TODO avoid all the /portail/ URLs
114
115
  HOURLY_DATA_URL_2 = (
115
- f"{HOST_SPRING}/portail/fr/group/clientele/portrait-de-consommation/"
116
+ f"{HOST_SERVICES}/lsw/portail/fr/group/clientele/portrait-de-consommation/"
116
117
  "resourceObtenirDonneesMeteoHoraires" # not used
117
118
  )
118
119
 
119
120
  # CPC
120
121
  GET_CPC_API_URL = (
121
- f"{HOST_SERVICES}/web/prive/api/v3_0/tarificationDynamique/creditPointeCritique"
122
+ f"{HOST_SERVICES}/wsapi/web/prive/api/v3_0/tarificationDynamique/"
123
+ "creditPointeCritique"
122
124
  )
123
-
124
125
  # IS PORTAL RUNNING
125
126
  IS_HYDRO_PORTAL_UP_URL = f"{HOST_SESSION}/portail/fr/group/clientele/gerer-mon-compte"
@@ -1,4 +1,5 @@
1
1
  """Logging module."""
2
+
2
3
  import logging
3
4
 
4
5
  from hydroqc.consts import LOGGING_LEVELS
@@ -1,4 +1,5 @@
1
1
  """Constants module for CPC."""
2
+
2
3
  # from typing import Literal
3
4
  import datetime
4
5
 
@@ -1,4 +1,5 @@
1
1
  """CPC processing."""
2
+
2
3
  import datetime
3
4
  import logging
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Class describing a period."""
2
+
2
3
  import datetime
3
4
 
4
5
  from hydroqc.error import HydroQcCPCPeakError
@@ -1,4 +1,5 @@
1
1
  """Constants module for winter credits."""
2
+
2
3
  # from typing import Literal
3
4
  import datetime
4
5
 
@@ -1,4 +1,5 @@
1
1
  """DPC processing."""
2
+
2
3
  import datetime
3
4
  import logging
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Class describing a period."""
2
+
2
3
  import datetime
3
4
 
4
5
  from hydroqc.peak.dpc.consts import DEFAULT_PRE_HEAT_DURATION
@@ -1,4 +1,5 @@
1
1
  """Class describing an interval of time."""
2
+
2
3
  import datetime
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Hydroqc custom types."""
2
+
2
3
  from hydroqc.types.account import (
3
4
  AccountContractSummaryTyping,
4
5
  AccountTyping,
@@ -1,4 +1,5 @@
1
1
  """Info account json output formats."""
2
+
2
3
  # pylint: disable=invalid-name
3
4
  from typing import Any, TypedDict
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Common types."""
2
+
2
3
  # pylint: disable=invalid-name
3
4
  from enum import Enum
4
5
  from typing import TypedDict
@@ -1,4 +1,5 @@
1
1
  """Hydroqc custom types."""
2
+
2
3
  # pylint: disable=invalid-name
3
4
  from typing import TypedDict
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Contract json output formats."""
2
+
2
3
  # pylint: disable=invalid-name
3
4
  from typing import TypedDict
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Hydroqc custom types."""
2
+
2
3
  from typing import TypedDict
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Hydroqc DPC types."""
2
+
2
3
  # pylint: disable=invalid-name
3
4
  from typing import TypedDict
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Hydroqc custom types."""
2
+
2
3
  # pylint: disable=invalid-name
3
4
  from typing import TypedDict
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Outage output formats."""
2
+
2
3
  # pylint: disable=invalid-name
3
4
  from enum import Enum, IntEnum
4
5
  from typing import TypedDict
@@ -1,4 +1,5 @@
1
1
  """Hydroquebec webuser module."""
2
+
2
3
  import logging
3
4
 
4
5
  from hydroqc.customer import Customer
@@ -1,8 +1,8 @@
1
1
  [build-system]
2
2
  requires = [
3
- "setuptools==65.6.3",
4
- "setuptools_scm[toml]==7.1.0",
5
- "wheel==0.38.4",
3
+ "setuptools==69.5.1",
4
+ "setuptools_scm[toml]==8.1.0",
5
+ "wheel==0.43.0",
6
6
  ]
7
7
  build-backend = "setuptools.build_meta"
8
8
 
@@ -1,8 +1,12 @@
1
1
  {
2
2
  "$schema": "https://docs.renovatebot.com/renovate-schema.json",
3
- "extends": ["config:recommended", ":dependencyDashboard", ":gitSignOff"],
3
+ "extends": [
4
+ "config:recommended",
5
+ ":dependencyDashboard",
6
+ ":disableRateLimiting",
7
+ ":gitSignOff"],
4
8
  "branchPrefix": "renovate-",
5
- "platform": "gitlab",
9
+ "platformAutomerge": true,
6
10
  "pre-commit": {"enabled": true},
7
11
  "customManagers": [
8
12
  {
@@ -129,7 +133,7 @@
129
133
  "matchDatasources": ["docker"],
130
134
  "automerge": true,
131
135
  "ignoreTests": false,
132
- "automergeType": "pr",
136
+ "automergeType": "branch",
133
137
  "matchUpdateTypes": ["digest"]
134
138
  }
135
139
  ]
@@ -3,9 +3,9 @@ url = https://hydroqc.ca
3
3
 
4
4
  [options]
5
5
  install_requires =
6
- aiohttp==3.9.1
7
- python-dateutil==2.8.2
8
- pytz==2023.3.post1
6
+ aiohttp==3.9.5
7
+ python-dateutil==2.9.0.post0
8
+ pytz==2024.1
9
9
  aiocache==0.12.2
10
10
  pkce==1.0.3
11
11
 
@@ -0,0 +1,14 @@
1
+ flake8==7.0.0
2
+ pydocstyle==6.3.0
3
+ parameterized==0.9.0
4
+ pylint==3.1.0
5
+ pytest==8.2.0
6
+ pytest-cov==5.0.0
7
+ pytest-asyncio==0.23.6
8
+ black==24.4.2
9
+ mypy==1.10.0
10
+ types-pytz==2024.1.0.20240417
11
+ types-PyYAML==6.0.12.20240311
12
+ types-python-dateutil==2.9.0.20240316
13
+ pyright==1.1.362
14
+ lxml==5.2.1
@@ -1,4 +1,5 @@
1
1
  """pytest configuration file."""
2
+
2
3
  import typing
3
4
 
4
5
 
@@ -1,4 +1,5 @@
1
1
  """Basics tests for hydroqc."""
2
+
2
3
  import asyncio
3
4
  import datetime
4
5
  import typing
@@ -1,4 +1,5 @@
1
1
  """Contract D tests module."""
2
+
2
3
  import pytest
3
4
 
4
5
  from hydroqc.contract import ContractD
@@ -1,4 +1,5 @@
1
1
  """Contract D CPC tests module."""
2
+
2
3
  import datetime
3
4
 
4
5
  import pytest
@@ -1,4 +1,5 @@
1
1
  """Contract DPC tests module."""
2
+
2
3
  import datetime
3
4
 
4
5
  import pytest
@@ -1,4 +1,5 @@
1
1
  """Contract DT tests module."""
2
+
2
3
  from types import NoneType
3
4
 
4
5
  import pytest
@@ -1,4 +1,5 @@
1
1
  """Contract M tests module."""
2
+
2
3
  import pytest
3
4
 
4
5
  from hydroqc.contract import ContractM
@@ -1,4 +1,5 @@
1
1
  """Contract M GDP tests module."""
2
+
2
3
  import pytest
3
4
 
4
5
  from hydroqc.contract import ContractMGDP
@@ -1,4 +1,5 @@
1
1
  """Basics tests for hydroqc."""
2
+
2
3
  import parameterized # type: ignore
3
4
 
4
5
  from .subtest_common import SubTestCommon
@@ -1,4 +1,5 @@
1
1
  """TimeRange tests for hydroqc."""
2
+
2
3
  import datetime
3
4
 
4
5
  import pytest
@@ -1,4 +1,5 @@
1
1
  """Test tools."""
2
+
2
3
  import datetime
3
4
  import functools
4
5
  import os
@@ -1,5 +0,0 @@
1
- aiohttp==3.9.1
2
- python-dateutil==2.8.2
3
- pytz==2023.3.post1
4
- aiocache==0.12.2
5
- pkce==1.0.3
@@ -1 +0,0 @@
1
- mqtt-hass-base==4.2.5
@@ -1,14 +0,0 @@
1
- flake8==6.1.0
2
- pydocstyle==6.3.0
3
- parameterized==0.9.0
4
- pylint==3.0.3
5
- pytest==7.4.3
6
- pytest-cov==4.1.0
7
- pytest-asyncio==0.23.2
8
- black==23.12.0
9
- mypy==1.7.1
10
- types-pytz==2023.3.1.1
11
- types-PyYAML==6.0.12.12
12
- types-python-dateutil==2.8.19.14
13
- pyright==1.1.341
14
- lxml==4.9.3