python-openevse-http 1.0.2__tar.gz → 1.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.
- {python_openevse_http-1.0.2/python_openevse_http.egg-info → python_openevse_http-1.2.0}/PKG-INFO +1 -1
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/utils.py +3 -1
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0/python_openevse_http.egg-info}/PKG-INFO +1 -1
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/requirements_lint.txt +1 -1
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_client.py +17 -1
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/dependabot.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/release-drafter.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/workflows/autolabeler.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/workflows/links.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/workflows/publish-to-pypi.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/workflows/release-drafter.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/workflows/test.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.gitignore +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.pre-commit-config.yaml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.yamllint +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/EXTERNAL_SESSION.md +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/LICENSE +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/README.md +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/codecov.yml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/example_external_session.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/__init__.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/__main__.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/client.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/commands.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/const.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/exceptions.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/managers.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/properties.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/py.typed +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/sensors.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/openevsehttp/websocket.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/pyproject.toml +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/SOURCES.txt +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/dependency_links.txt +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/not-zip-safe +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/requires.txt +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/top_level.txt +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/requirements.txt +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/requirements_test.txt +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/setup.cfg +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/setup.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/__init__.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/common.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/conftest.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/github_v2.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/github_v4.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v2_json/config.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v2_json/status.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-broken-semver.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-broken.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-dev.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-extra-version.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-new.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-unknown-semver.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/schedule.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/status-broken.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/status-new.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/status.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/websocket.json +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_commands.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_external_session.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_main_edge_cases.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_managers.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_mixins.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_properties.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_sensors.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_shaper.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/test_websocket.py +0 -0
- {python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tox.ini +0 -0
|
@@ -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"_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
|
|
@@ -671,14 +671,30 @@ 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
|
+
# Suffix matching for _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
|
+
|
|
683
|
+
charger._config = {"version": "main_modified"}
|
|
684
|
+
assert charger._version_check("2.0.0") is True
|
|
685
|
+
|
|
674
686
|
# False positives containing 'main' or 'master' but not at word boundaries,
|
|
675
|
-
#
|
|
687
|
+
# ending in 6-char hashes without dev keywords, or other non-matching modified strings
|
|
688
|
+
# — should fail version check
|
|
676
689
|
charger._config = {"version": "domain_abc123"}
|
|
677
690
|
assert charger._version_check("2.0.0") is False
|
|
678
691
|
|
|
679
692
|
charger._config = {"version": "webmaster_def456"}
|
|
680
693
|
assert charger._version_check("2.0.0") is False
|
|
681
694
|
|
|
695
|
+
charger._config = {"version": "unmodified"}
|
|
696
|
+
assert charger._version_check("2.0.0") is False
|
|
697
|
+
|
|
682
698
|
# Pre-release (rc) version — should fail when checking against a newer target
|
|
683
699
|
charger._config = {"version": "4.1.2_rc1"}
|
|
684
700
|
assert charger._version_check("5.0.0") is False
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/workflows/publish-to-pypi.yml
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/.github/workflows/release-drafter.yml
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/not-zip-safe
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/python_openevse_http.egg-info/requires.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v2_json/config.json
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v2_json/status.json
RENAMED
|
File without changes
|
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-broken.json
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-dev.json
RENAMED
|
File without changes
|
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config-new.json
RENAMED
|
File without changes
|
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/config.json
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/schedule.json
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/status-broken.json
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/status-new.json
RENAMED
|
File without changes
|
{python_openevse_http-1.0.2 → python_openevse_http-1.2.0}/tests/fixtures/v4_json/status.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|