From bcc74d8c87fca16a3a4059b4db48280957f7be96 Mon Sep 17 00:00:00 2001 From: Carlos Date: Thu, 14 Mar 2024 22:38:17 +0100 Subject: [PATCH] Bump semver for py3.10 and fix DeprecationWarning: Function semver.match is deprecated and other semver warnings --- fixed-requirements.txt | 2 +- requirements.txt | 2 +- st2common/requirements.txt | 2 +- .../st2common/expressions/functions/version.py | 18 +++++++++--------- st2common/st2common/util/versioning.py | 4 ++-- .../actions/workflows/__init__.py | 0 6 files changed, 14 insertions(+), 14 deletions(-) delete mode 100644 st2tests/st2tests/fixtures/packs/dummy_pack_23/actions/workflows/__init__.py diff --git a/fixed-requirements.txt b/fixed-requirements.txt index 7ca828bd1e..038a925614 100644 --- a/fixed-requirements.txt +++ b/fixed-requirements.txt @@ -61,7 +61,7 @@ redis==4.1.4 requests[security]==2.25.1 retrying==1.3.3 routes==2.4.1 -semver==2.13.0 +semver==3.0.2 six==1.13.0 argparse==1.12.2 # 202403: Bumped to latest for py3.10 support diff --git a/requirements.txt b/requirements.txt index e1f9057f62..552df25e6b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -63,7 +63,7 @@ rednose requests[security]==2.25.1 retrying==1.3.3 routes==2.4.1 -semver==2.13.0 +semver==3.0.2 simplejson six==1.13.0 sseclient-py==1.7 diff --git a/st2common/requirements.txt b/st2common/requirements.txt index 5f03ca768f..d866ad19e5 100644 --- a/st2common/requirements.txt +++ b/st2common/requirements.txt @@ -39,7 +39,7 @@ redis==4.1.4 requests[security]==2.25.1 retrying==1.3.3 routes==2.4.1 -semver==2.13.0 +semver==3.0.2 six==1.13.0 st2-rbac-backend@ git+https://github.com/StackStorm/st2-rbac-backend.git@master tenacity>=3.2.1,<7.0.0 diff --git a/st2common/st2common/expressions/functions/version.py b/st2common/st2common/expressions/functions/version.py index 825d5965e3..bf61c32e80 100644 --- a/st2common/st2common/expressions/functions/version.py +++ b/st2common/st2common/expressions/functions/version.py @@ -28,36 +28,36 @@ def version_compare(value, pattern): - return semver.compare(value, pattern) + return semver.Version.parse(value).compare(pattern) def version_more_than(value, pattern): - return semver.compare(value, pattern) == 1 + return version_compare(value, pattern) == 1 def version_less_than(value, pattern): - return semver.compare(value, pattern) == -1 + return version_compare(value, pattern) == -1 def version_equal(value, pattern): - return semver.compare(value, pattern) == 0 + return version_compare(value, pattern) == 0 def version_match(value, pattern): - return semver.match(value, pattern) + return semver.Version.parse(value).match(pattern) def version_bump_major(value): - return semver.bump_major(value) + return str(semver.Version.parse(value).bump_major()) def version_bump_minor(value): - return semver.bump_minor(value) + return str(semver.Version.parse(value).bump_minor()) def version_bump_patch(value): - return semver.bump_patch(value) + return str(semver.Version.parse(value).bump_patch()) def version_strip_patch(value): - return "{major}.{minor}".format(**semver.parse(value)) + return "{major}.{minor}".format(**semver.Version.parse(value)) diff --git a/st2common/st2common/util/versioning.py b/st2common/st2common/util/versioning.py index 89da24f174..d280587a1d 100644 --- a/st2common/st2common/util/versioning.py +++ b/st2common/st2common/util/versioning.py @@ -65,7 +65,7 @@ def complex_semver_match(version, version_specifier): if len(split_version_specifier) == 1: # No comma, we can do a simple comparision - return semver.match(version, version_specifier) + return semver.Version.parse(version).match(version_specifier) else: # Compare part by part for version_specifier_part in split_version_specifier: @@ -74,7 +74,7 @@ def complex_semver_match(version, version_specifier): if not version_specifier_part: continue - if not semver.match(version, version_specifier_part): + if not semver.Version.parse(version).match(version_specifier_part): return False return True diff --git a/st2tests/st2tests/fixtures/packs/dummy_pack_23/actions/workflows/__init__.py b/st2tests/st2tests/fixtures/packs/dummy_pack_23/actions/workflows/__init__.py deleted file mode 100644 index e69de29bb2..0000000000