mirror of
https://github.com/python/cpython.git
synced 2025-07-23 11:15:24 +00:00
Basic dependency checking. setup() has two new optional arguments
requires and provides. requires is a sequence of strings, of the form 'packagename-version'. The dependency checking so far merely does an '__import__(packagename)' and checks for packagename.__version__ You can also leave off the version, and any version of the package will be installed. There's a special case for the package 'python' - sys.version_info is used, so requires= ( 'python-2.3', ) just works. Provides is of the same format as requires - but if it's not supplied, a provides is generated by adding the version to each entry in packages, or modules if packages isn't there. Provides is currently only used in the PKG-INFO file. Shortly, PyPI will grow the ability to accept these lines, and register will be updated to send them. There's a new command 'checkdep' command that runs these checks. For this version, only greater-than-or-equal checking is done. We'll add the ability to specify an optional operator later.
This commit is contained in:
parent
a3837a0d63
commit
05f842bae2
5 changed files with 144 additions and 3 deletions
|
@ -47,7 +47,8 @@ setup_keywords = ('distclass', 'script_name', 'script_args', 'options',
|
|||
'name', 'version', 'author', 'author_email',
|
||||
'maintainer', 'maintainer_email', 'url', 'license',
|
||||
'description', 'long_description', 'keywords',
|
||||
'platforms', 'classifiers', 'download_url')
|
||||
'platforms', 'classifiers', 'download_url',
|
||||
'provides', 'requires', )
|
||||
|
||||
# Legal keyword arguments for the Extension constructor
|
||||
extension_keywords = ('name', 'sources', 'include_dirs',
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue