- Make the
packaging
imports easier to patch out to vendor'd packaging lib. #82
- Resolve issue of
build_tracker
beingNone
at runtime withpip>=22.1
when usingpip_shims
. #81
- Added support for new
pip==22.1.x
requiredmake_preparer
argcheck_build_deps
which defaults toFalse
. #80
- This change gets
pip-shims
working withpip==22.x
,main
branch, and also fixes linting build. #79
- No longer guarantee compatibility for
pip<20
. Add support forpip==21.3
. #77
- Drop support for Python 2.7 and 3.5. #77
- Avoid overriding slot members when adding new methods to a class. #67
- Call
resolve()
with correct arguments for pip 20.2. #68
- Added support for
pip==20.1
. - Added support for global temporary directory context management when generating wheel caches using the compatibility module; - Added wheel cache context management which now requires the temporary directory context in some cases; - Improved function argument introspection; - Updated test invocations to reflect shifting parameters. #65
- Fixed incorrect session creation via
pip_shims.compat.get_session
which inadvertently passed a tuple to pip when building a session instance. #56 - Added
wheel_cache
context manager helper for managing global context when creating wheel wheel_cache instances. #58 - Fixed resolution failures due to
Resolver.resolve
signature updates inpip@master
: - Automatically check for and pass
check_supports_wheel
argument to Resolver.resolve() when expected - Check whether
Resolver.resolve()
expects aRequirementSet
orList[InstallRequirement]
and pass the appropriate input #59
- Automatically check for and pass
- Fixed resolution failures due to
- Fixed requirement build failures due to new
autodelete: bool
required argument inInstallRequirement.ensure_build_location
. #60 - Updated
Resolver
import path to point at new location (legacy_resolve
->resolution.legacy.resolver
). #61 - Fixed
AttributeError
caused by failedRequirementSet.cleanup()
calls afterResolver.resolve()
which is no longer valid inpip>=20.1
. #62
- Exposed
build
,build_one
, andbuild_one_inside_env
fromwheel_builder
module starting inpip>=20
. #49 - Added a
build_wheel
shim function which can build either a singleInstallRequirement
or an iterable ofInstallRequirement
instances. #50 - Exposed
global_tempdir_manager
for handlingTempDirectory
instance contexts. #51
- Added
Downloader
class which is now passed toshim_unpack
implementation. #42 - Updated references to the
Downloader
class to point atpip._internal.network.download.Downloader
which is where it resides on pip master forpip>19.3.1
. #46 - Added a compatibility shim to provide ongoing access to the
Wheel
class which is removed inpip>19.3.1
. #47 - Added mapping for
distributions.make_distribution_for_install
tomake_abstract_dist
forpip>=20.0
. #52
- Improved documentation and added fundamentally re-architected the library
- Added improved docstrings and example usages
- Included type annotations for many types and shims
- Fully reimplemented critical functionality to abstract logic while improving maintainability and ability to reason about the core operations
- Added numerous helper functions to reduce maintenance burden
- Added fully backward compatible library native shims to call
pip
functions:
populate_options
get_requirement_set
get_package_finder
shim_unpack
make_preparer
get_resolver
resolve
- Added design drawings
- Implemented
ShimmedPath
andShimmedPathCollection
abstractions #37
- Added
SessionCommandMixin
,CandidateEvaluator
,CandidatePreferences
,LinkCollector
,LinkEvaluator
,TargetPython
,SearchScope
, andSelectionPreferences
to exposed classes andinstall_req_from_req_string
to exposed functions. #33
- Added override to the
Command
class to automatically fill in default values forname
andsummary
which are now required in__init__
. - Added mixin to the Command class to continue supporting_build_session
method. #32 - Shimmed functions for
is_file_url
andis_archive_file
. #34 - Updated the paths for the following moved items:
-
SafeFileCache
->network.cache
-Link
->models.link.Link
-path_to_url
->utils.url
-url_to_path
->utils.url
-SourceDistribution
->distributions.source.legacy
#35
- Added
commands.freeze.DEV_PKGS
andutils.compat.stdlib_pkgs
shims. #25 - Updated
PackageFinder
test and addedCandidateEvaluator
import starting withpip>=19.1
for finding prerelease candidates. #27
- Fixed import paths for
VcsSupport
onpip>19.1.1
. #28
- Added access to
pip._internal.models.index.PyPI
. #21
- Added shims for the following:
InstallationError
UninstallationError
DistributionNotFound
RequirementsFileParseError
BestVersionAlreadyInstalled
BadCommand
CommandError
PreviousBuildDirError
#19
- Added and exposed
FrozenRequirement
for consumption. #17
- Fixed a bug which caused usage of incorrect location for
_strip_extras
. #13 - Fixed a bug which caused
FormatControl
imports to fail inpip>=18.1
. #15 - Fixed a bug which caused
InstallRequirement.from_line
andInstallRequirement.from_editable
to fail inpip>=18.1
. #16
- Added a shim for
pip._internal.req.req_uninstall.UninstallPathSet
. #10 - Made all module loading lazy by replacing modules dynamically at runtime. #9
- Added
WheelCache
andunpack_url
functionality. #4
- Fixed a bug which caused failures in the detection and import on pip version 9 and below when using modutils. #5
- Fixed a bug with sort order logic which caused invalid import paths to be prioritized accidentally. #7
- Fixed tests failures for appveyor path comparisons. #2
- Added warning to documentation to discourage use of these shims for accessing the pip API. #1
- Initial release of pip compatibility shims! #0