shippinglabel_pypi
Shippinglabel extension for interacting with the Python Package Index (PyPI)..
See also
pypi-json, which provides some of the functionality from this module but with a reusable HTTP session and support for authentication with other endpoints (such as a private package repository).
This extension must be installed separately:
python3 -m pip install shippinglabel-pypi --user
First add the required channels
conda config --add channels https://conda.anaconda.org/domdfcoding
conda config --add channels https://conda.anaconda.org/conda-forge
Then install
conda install shippinglabel-pypi
-
__version__= '0.4.0' The version number of this extension.
Classes:
|
Return type of |
Functions:
|
Bind unbound requirements in the given file to the latest version on PyPI, and any later versions. |
|
Download the file with the given URL into the given (temporary) directory. |
|
Returns the version number of the latest (compatible) release on PyPI for the given project. |
|
Returns metadata for the given project on PyPI. |
|
Returns the web links for the given project. |
|
Returns a dictionary mapping PyPI release versions to download URLs. |
|
Returns a dictionary mapping PyPI release versions to download URLs and the sha256sum of the file contents. |
|
Returns the URL of the project’s source distribution on PyPI. |
|
Constructs a mapping of wheel tags to the PyPI download URL of the wheel with relevant tag. |
|
Returns the URL of one of the project’s wheels on PyPI. |
|
Returns mappings given the supported Python versions for each version and wheel tag of the given project. |
-
namedtuple
WheelPythonVersions(wheel_tag_map, wheel_version_map)[source] Bases:
NamedTupleReturn type of
wheel_python_versions().- Fields
-
__repr__() Return a nicely formatted representation string
-
bind_requirements(filename, specifier='>=', normalize_func=<function 'normalize'>, minimum_py_version=None)[source] Bind unbound requirements in the given file to the latest version on PyPI, and any later versions.
- Parameters
filename (
Union[str,Path,PathLike]) – The requirements.txt file to bind requirements in.specifier (
str) – The requirement specifier symbol to use. Default'>='.normalize_func (
Callable[[str],str]) – Function to use to normalize the names of requirements. Defaultshippinglabel.normalize().minimum_py_version (
Union[str,Version,None]) – Optionally, a minimum Python version that must be supported. DefaultNone.
- Return type
- Returns
1if the file was changed;0otherwise.
Changed in version 0.4.0: Added
minimum_py_versionargument.
-
get_file_from_pypi(url, tmpdir)[source] Download the file with the given URL into the given (temporary) directory.
-
get_latest(pypi_name, minimum_py_version=None)[source] Returns the version number of the latest (compatible) release on PyPI for the given project.
- Parameters
Changed in version 0.3.0: Added
minimum_py_versionoption.- Raises
packaging.requirements.InvalidRequirementif the project cannot be found on PyPI.requests.HTTPErrorif an error occurs when communicating with PyPI.
- Return type
-
get_metadata(pypi_name)[source] Returns metadata for the given project on PyPI.
- Parameters
pypi_name (
str)- Raises
packaging.requirements.InvalidRequirementif the project cannot be found on PyPI.requests.HTTPErrorif an error occurs when communicating with PyPI.
- Return type
-
get_project_links(project_name)[source] Returns the web links for the given project.
The exact keys vary, but common keys include “Documentation” and “Issue Tracker”.
Note
The Home-Page field from Python core metadata is included under the
Homepagekey, if present. This matches the output parsed from PyPI for packages which are not installed.- Parameters
project_name (
str)- Return type
-
get_pypi_releases(pypi_name)[source] Returns a dictionary mapping PyPI release versions to download URLs.
- Parameters
pypi_name (
str) – The name of the project on PyPI.- Raises
packaging.requirements.InvalidRequirementif the project cannot be found on PyPI.requests.HTTPErrorif an error occurs when communicating with PyPI.
- Return type
-
get_releases_with_digests(pypi_name)[source] Returns a dictionary mapping PyPI release versions to download URLs and the sha256sum of the file contents.
- Parameters
pypi_name (
str) – The name of the project on PyPI.- Raises
packaging.requirements.InvalidRequirementif the project cannot be found on PyPI.requests.HTTPErrorif an error occurs when communicating with PyPI.
- Return type
-
get_sdist_url(name, version, strict=False)[source] Returns the URL of the project’s source distribution on PyPI.
- Parameters
Attention
If no source distribution is found this function may return a wheel or “zip” sdist unless
strictisTrue.- Return type
-
get_wheel_tag_mapping(name, version)[source] Constructs a mapping of wheel tags to the PyPI download URL of the wheel with relevant tag.
This can be used alongside
packaging.tags.sys_tags()to select the best wheel for the current platform.
-
get_wheel_url(name, version, strict=False)[source] Returns the URL of one of the project’s wheels on PyPI.
For finer control over which wheel the URL is for see the
get_wheel_tag_mapping()function.- Parameters
Attention
If no wheels are found this function may return an sdist unless
strictisTrue.- Return type