13
13
14
14
from subprocess import check_call
15
15
from typing import TYPE_CHECKING , Callable , Optional
16
- from pkg_resources import parse_version , Requirement
17
16
from pypi_tools .pypi import PyPIClient
18
17
from packaging .specifiers import SpecifierSet
19
18
from packaging .version import Version
19
+ from packaging .requirements import Requirement
20
20
21
21
from ci_tools .parsing import ParsedSetup , parse_require
22
22
from ci_tools .functions import compare_python_version , handle_incompatible_minimum_dev_reqs , get_pip_command
@@ -186,7 +186,7 @@ def process_bounded_versions(originating_pkg_name: str, pkg_name: str, versions:
186
186
# lower bound general
187
187
if pkg_name in MINIMUM_VERSION_GENERIC_OVERRIDES :
188
188
versions = [
189
- v for v in versions if parse_version (v ) >= parse_version (MINIMUM_VERSION_GENERIC_OVERRIDES [pkg_name ])
189
+ v for v in versions if Version (v ) >= Version (MINIMUM_VERSION_GENERIC_OVERRIDES [pkg_name ])
190
190
]
191
191
192
192
# lower bound platform-specific
@@ -195,7 +195,7 @@ def process_bounded_versions(originating_pkg_name: str, pkg_name: str, versions:
195
195
restrictions = PLATFORM_SPECIFIC_MINIMUM_OVERRIDES [platform_bound ]
196
196
197
197
if pkg_name in restrictions :
198
- versions = [v for v in versions if parse_version (v ) >= parse_version (restrictions [pkg_name ])]
198
+ versions = [v for v in versions if Version (v ) >= Version (restrictions [pkg_name ])]
199
199
200
200
# lower bound package-specific
201
201
if (
@@ -205,13 +205,13 @@ def process_bounded_versions(originating_pkg_name: str, pkg_name: str, versions:
205
205
versions = [
206
206
v
207
207
for v in versions
208
- if parse_version (v ) >= parse_version (MINIMUM_VERSION_SPECIFIC_OVERRIDES [originating_pkg_name ][pkg_name ])
208
+ if Version (v ) >= Version (MINIMUM_VERSION_SPECIFIC_OVERRIDES [originating_pkg_name ][pkg_name ])
209
209
]
210
210
211
211
# upper bound general
212
212
if pkg_name in MAXIMUM_VERSION_GENERIC_OVERRIDES :
213
213
versions = [
214
- v for v in versions if parse_version (v ) <= parse_version (MAXIMUM_VERSION_GENERIC_OVERRIDES [pkg_name ])
214
+ v for v in versions if Version (v ) <= Version (MAXIMUM_VERSION_GENERIC_OVERRIDES [pkg_name ])
215
215
]
216
216
217
217
# upper bound platform
@@ -220,7 +220,7 @@ def process_bounded_versions(originating_pkg_name: str, pkg_name: str, versions:
220
220
restrictions = PLATFORM_SPECIFIC_MAXIMUM_OVERRIDES [platform_bound ]
221
221
222
222
if pkg_name in restrictions :
223
- versions = [v for v in versions if parse_version (v ) <= parse_version (restrictions [pkg_name ])]
223
+ versions = [v for v in versions if Version (v ) <= Version (restrictions [pkg_name ])]
224
224
225
225
# upper bound package-specific
226
226
if (
@@ -230,7 +230,7 @@ def process_bounded_versions(originating_pkg_name: str, pkg_name: str, versions:
230
230
versions = [
231
231
v
232
232
for v in versions
233
- if parse_version (v ) <= parse_version (MAXIMUM_VERSION_SPECIFIC_OVERRIDES [originating_pkg_name ][pkg_name ])
233
+ if Version (v ) <= Version (MAXIMUM_VERSION_SPECIFIC_OVERRIDES [originating_pkg_name ][pkg_name ])
234
234
]
235
235
236
236
return versions
@@ -241,7 +241,7 @@ def process_requirement(req, dependency_type, orig_pkg_name):
241
241
242
242
# find package name and requirement specifier from requires
243
243
requirement = parse_require (req )
244
- pkg_name = requirement .key
244
+ pkg_name = requirement .name
245
245
spec = requirement .specifier if len (requirement .specifier ) else None
246
246
247
247
# Filter out requirements with environment markers that don't match the current environment
@@ -334,7 +334,7 @@ def filter_dev_requirements(
334
334
# filter out any package available on PyPI (released_packages)
335
335
# include packages without relative reference and packages not available on PyPI
336
336
released_packages = [parse_require (p ) for p in released_packages ]
337
- released_package_names = [p .key for p in released_packages ]
337
+ released_package_names = [p .name for p in released_packages ]
338
338
# find prebuilt whl paths in dev requiremente
339
339
prebuilt_dev_reqs = [os .path .basename (req .replace ("\n " , "" )) for req in requirements if os .path .sep in req ]
340
340
# filter any req if wheel is for a released package
0 commit comments