From ab396bf98274e1e64811c1f40c7beb77b530ab4e Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 10 Mar 2024 19:50:24 +0100 Subject: [PATCH 1/3] Apply ruff/pyupgrade issue UP030 UP030 Use implicit references for positional format fields --- pyproject.toml | 1 - tests/test_markers.py | 6 ++---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index fed706aa..9259eae9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -83,7 +83,6 @@ ignore = [ "N818", "RUF003", "RUF012", - "UP030", "UP032", # https://docs.astral.sh/ruff/formatter/#conflicting-lint-rules "W191", diff --git a/tests/test_markers.py b/tests/test_markers.py index 775b51fd..a9eda7f6 100644 --- a/tests/test_markers.py +++ b/tests/test_markers.py @@ -105,10 +105,8 @@ def test_matches_expected(self): iver = "{0.major}.{0.minor}.{0.micro}".format(sys.implementation.version) if sys.implementation.version.releaselevel != "final": - iver = "{0}{1[0]}{2}".format( - iver, - sys.implementation.version.releaselevel, - sys.implementation.version.serial, + iver = ( + f"{iver}{sys.implementation.version.releaselevel[0]}{sys.implementation.version.serial}" ) assert environment == { From 55deaef8d7d5fd40c58cd131661e26e7020b6522 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Wed, 8 May 2024 19:55:30 +0200 Subject: [PATCH 2/3] Apply ruff/pyupgrade rule UP031 UP031 Use format specifiers instead of percent format --- src/packaging/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/packaging/__init__.py b/src/packaging/__init__.py index 9c054695..23e2e206 100644 --- a/src/packaging/__init__.py +++ b/src/packaging/__init__.py @@ -12,4 +12,4 @@ __email__ = "donald@stufft.io" __license__ = "BSD-2-Clause or Apache-2.0" -__copyright__ = "2014 %s" % __author__ +__copyright__ = f"2014 {__author__}" From 4a7ba1d04068d1331aad6da1cb87f608b160a200 Mon Sep 17 00:00:00 2001 From: Dimitri Papadopoulos <3234522+DimitriPapadopoulos@users.noreply.github.com> Date: Sun, 10 Mar 2024 20:12:02 +0100 Subject: [PATCH 3/3] Apply ruff/pyupgrade rule UP032 UP032 Use f-string instead of `format` call --- src/packaging/markers.py | 2 +- src/packaging/tags.py | 36 +++++++++++++----------------------- tests/test_markers.py | 9 +++++++-- tests/test_tags.py | 4 +--- 4 files changed, 22 insertions(+), 29 deletions(-) diff --git a/src/packaging/markers.py b/src/packaging/markers.py index 4c959e71..49d2ffa1 100644 --- a/src/packaging/markers.py +++ b/src/packaging/markers.py @@ -232,7 +232,7 @@ def _evaluate_markers(markers: MarkerList, environment: dict[str, str]) -> bool: def format_full_version(info: sys._version_info) -> str: - version = "{0.major}.{0.minor}.{0.micro}".format(info) + version = f"{info.major}.{info.minor}.{info.micro}" kind = info.releaselevel if kind != "final": version += kind[0] + str(info.serial) diff --git a/src/packaging/tags.py b/src/packaging/tags.py index c21b5b69..d28e0262 100644 --- a/src/packaging/tags.py +++ b/src/packaging/tags.py @@ -235,9 +235,8 @@ def cpython_tags( if use_abi3: for minor_version in range(python_version[1] - 1, 1, -1): for platform_ in platforms: - interpreter = "cp{version}".format( - version=_version_nodot((python_version[0], minor_version)) - ) + version = _version_nodot((python_version[0], minor_version)) + interpreter = f"cp{version}" yield Tag(interpreter, "abi3", platform_) @@ -435,24 +434,22 @@ def mac_platforms( if (10, 0) <= version and version < (11, 0): # Prior to Mac OS 11, each yearly release of Mac OS bumped the # "minor" version number. The major version was always 10. + major_version = 10 for minor_version in range(version[1], -1, -1): - compat_version = 10, minor_version + compat_version = major_version, minor_version binary_formats = _mac_binary_formats(compat_version, arch) for binary_format in binary_formats: - yield "macosx_{major}_{minor}_{binary_format}".format( - major=10, minor=minor_version, binary_format=binary_format - ) + yield f"macosx_{major_version}_{minor_version}_{binary_format}" if version >= (11, 0): # Starting with Mac OS 11, each yearly release bumps the major version # number. The minor versions are now the midyear updates. + minor_version = 0 for major_version in range(version[0], 10, -1): - compat_version = major_version, 0 + compat_version = major_version, minor_version binary_formats = _mac_binary_formats(compat_version, arch) for binary_format in binary_formats: - yield "macosx_{major}_{minor}_{binary_format}".format( - major=major_version, minor=0, binary_format=binary_format - ) + yield f"macosx_{major_version}_{minor_version}_{binary_format}" if version >= (11, 0): # Mac OS 11 on x86_64 is compatible with binaries from previous releases. @@ -462,25 +459,18 @@ def mac_platforms( # However, the "universal2" binary format can have a # macOS version earlier than 11.0 when the x86_64 part of the binary supports # that version of macOS. + major_version = 10 if arch == "x86_64": for minor_version in range(16, 3, -1): - compat_version = 10, minor_version + compat_version = major_version, minor_version binary_formats = _mac_binary_formats(compat_version, arch) for binary_format in binary_formats: - yield "macosx_{major}_{minor}_{binary_format}".format( - major=compat_version[0], - minor=compat_version[1], - binary_format=binary_format, - ) + yield f"macosx_{major_version}_{minor_version}_{binary_format}" else: for minor_version in range(16, 3, -1): - compat_version = 10, minor_version + compat_version = major_version, minor_version binary_format = "universal2" - yield "macosx_{major}_{minor}_{binary_format}".format( - major=compat_version[0], - minor=compat_version[1], - binary_format=binary_format, - ) + yield f"macosx_{major_version}_{minor_version}_{binary_format}" def _linux_platforms(is_32bit: bool = _32_BIT_INTERPRETER) -> Iterator[str]: diff --git a/tests/test_markers.py b/tests/test_markers.py index a9eda7f6..e8bc5ea9 100644 --- a/tests/test_markers.py +++ b/tests/test_markers.py @@ -103,10 +103,15 @@ class TestDefaultEnvironment: def test_matches_expected(self): environment = default_environment() - iver = "{0.major}.{0.minor}.{0.micro}".format(sys.implementation.version) + iver = ( + f"{sys.implementation.version.major}." + f"{sys.implementation.version.minor}." + f"{sys.implementation.version.micro}" + ) if sys.implementation.version.releaselevel != "final": iver = ( - f"{iver}{sys.implementation.version.releaselevel[0]}{sys.implementation.version.serial}" + f"{iver}{sys.implementation.version.releaselevel[0]}" + f"{sys.implementation.version.serial}" ) assert environment == { diff --git a/tests/test_tags.py b/tests/test_tags.py index 9821fc25..e37de63c 100644 --- a/tests/test_tags.py +++ b/tests/test_tags.py @@ -80,9 +80,7 @@ def test_str(self, example_tag): assert str(example_tag) == "py3-none-any" def test_repr(self, example_tag): - assert repr(example_tag) == "".format( - tag_id=id(example_tag) - ) + assert repr(example_tag) == f"" def test_attribute_access(self, example_tag): assert example_tag.interpreter == "py3"