python-openevse-http 1.0.2__tar.gz → 1.1.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 (70) hide show
  1. {python_openevse_http-1.0.2/python_openevse_http.egg-info → python_openevse_http-1.1.0}/PKG-INFO +1 -1
  2. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/utils.py +3 -1
  3. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0/python_openevse_http.egg-info}/PKG-INFO +1 -1
  4. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_client.py +14 -1
  5. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.github/dependabot.yml +0 -0
  6. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.github/release-drafter.yml +0 -0
  7. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.github/workflows/autolabeler.yml +0 -0
  8. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.github/workflows/links.yml +0 -0
  9. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.github/workflows/publish-to-pypi.yml +0 -0
  10. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.github/workflows/release-drafter.yml +0 -0
  11. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.github/workflows/test.yml +0 -0
  12. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.gitignore +0 -0
  13. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.pre-commit-config.yaml +0 -0
  14. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/.yamllint +0 -0
  15. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/EXTERNAL_SESSION.md +0 -0
  16. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/LICENSE +0 -0
  17. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/README.md +0 -0
  18. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/codecov.yml +0 -0
  19. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/example_external_session.py +0 -0
  20. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/__init__.py +0 -0
  21. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/__main__.py +0 -0
  22. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/client.py +0 -0
  23. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/commands.py +0 -0
  24. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/const.py +0 -0
  25. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/exceptions.py +0 -0
  26. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/managers.py +0 -0
  27. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/properties.py +0 -0
  28. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/py.typed +0 -0
  29. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/sensors.py +0 -0
  30. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/openevsehttp/websocket.py +0 -0
  31. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/pyproject.toml +0 -0
  32. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/python_openevse_http.egg-info/SOURCES.txt +0 -0
  33. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/python_openevse_http.egg-info/dependency_links.txt +0 -0
  34. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/python_openevse_http.egg-info/not-zip-safe +0 -0
  35. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/python_openevse_http.egg-info/requires.txt +0 -0
  36. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/python_openevse_http.egg-info/top_level.txt +0 -0
  37. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/requirements.txt +0 -0
  38. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/requirements_lint.txt +0 -0
  39. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/requirements_test.txt +0 -0
  40. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/setup.cfg +0 -0
  41. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/setup.py +0 -0
  42. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/__init__.py +0 -0
  43. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/common.py +0 -0
  44. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/conftest.py +0 -0
  45. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/github_v2.json +0 -0
  46. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/github_v4.json +0 -0
  47. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v2_json/config.json +0 -0
  48. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v2_json/status.json +0 -0
  49. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/config-broken-semver.json +0 -0
  50. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/config-broken.json +0 -0
  51. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/config-dev.json +0 -0
  52. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/config-extra-version.json +0 -0
  53. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/config-new.json +0 -0
  54. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/config-unknown-semver.json +0 -0
  55. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/config.json +0 -0
  56. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/schedule.json +0 -0
  57. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/status-broken.json +0 -0
  58. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/status-new.json +0 -0
  59. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/v4_json/status.json +0 -0
  60. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/fixtures/websocket.json +0 -0
  61. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_commands.py +0 -0
  62. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_external_session.py +0 -0
  63. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_main_edge_cases.py +0 -0
  64. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_managers.py +0 -0
  65. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_mixins.py +0 -0
  66. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_properties.py +0 -0
  67. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_sensors.py +0 -0
  68. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_shaper.py +0 -0
  69. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tests/test_websocket.py +0 -0
  70. {python_openevse_http-1.0.2 → python_openevse_http-1.1.0}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python_openevse_http
3
- Version: 1.0.2
3
+ Version: 1.1.0
4
4
  Summary: Python wrapper for OpenEVSE HTTP API
5
5
  Home-page: https://github.com/firstof9/python-openevse-http
6
6
  Download-URL: https://github.com/firstof9/python-openevse-http
@@ -32,7 +32,9 @@ def get_awesome_version(version: str) -> AwesomeVersion:
32
32
  # We use custom word boundary checks to avoid false positives like 'domain' matching 'main'
33
33
  # or 'webmaster' matching 'master'.
34
34
  is_dev = False
35
- if re.search(
35
+ if re.search(r"[^/]+/[^_]+_[a-fA-F0-9]{6,40}_modified$", version, re.IGNORECASE):
36
+ is_dev = True
37
+ elif re.search(
36
38
  r"(?:^|[^a-zA-Z0-9])(master|main)(?:[^a-zA-Z0-9]|$)", version, re.IGNORECASE
37
39
  ):
38
40
  is_dev = True
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python_openevse_http
3
- Version: 1.0.2
3
+ Version: 1.1.0
4
4
  Summary: Python wrapper for OpenEVSE HTTP API
5
5
  Home-page: https://github.com/firstof9/python-openevse-http
6
6
  Download-URL: https://github.com/firstof9/python-openevse-http
@@ -671,14 +671,27 @@ async def test_version_check_dev_branches():
671
671
  charger._config = {"version": "feature_1A2B3C"}
672
672
  assert charger._version_check("2.0.0") is True
673
673
 
674
+ # Local dev build templates (category/branch_hash_modified) - treated as dev, returns True
675
+ charger._config = {
676
+ "version": "local_feature/gui-nightshift-default_2bcdf1d0_modified"
677
+ }
678
+ assert charger._version_check("2.0.0") is True
679
+
680
+ charger._config = {"version": "custom_branch/my-feature_abc123_modified"}
681
+ assert charger._version_check("2.0.0") is True
682
+
674
683
  # False positives containing 'main' or 'master' but not at word boundaries,
675
- # or ending in 6-char hashes without dev keywords should fail version check
684
+ # ending in 6-char hashes without dev keywords, or other non-matching modified strings
685
+ # — should fail version check
676
686
  charger._config = {"version": "domain_abc123"}
677
687
  assert charger._version_check("2.0.0") is False
678
688
 
679
689
  charger._config = {"version": "webmaster_def456"}
680
690
  assert charger._version_check("2.0.0") is False
681
691
 
692
+ charger._config = {"version": "unmodified"}
693
+ assert charger._version_check("2.0.0") is False
694
+
682
695
  # Pre-release (rc) version — should fail when checking against a newer target
683
696
  charger._config = {"version": "4.1.2_rc1"}
684
697
  assert charger._version_check("5.0.0") is False