2018/10/16
[Python] dependency_links を使わないでレポジトリを明示的に指定する方法
以前書いたように dependency_links は Deprecated な状態にありながらも、有効な代替手段がない状態でした。 > 参考 > > [setup.py に dependency_links を書いても "Could not find a version that satisfies the requirement" が出る場合の対処方法4種 | 穀風](https://kokufu.blogspot.com/2018/04/setuppy-dependencylinks-could-not-find.html) しかし、先日 > 参考 > > - [Release Notes](https://pip.pypa.io/en/stable/news/) > - [Add support for PEP 508 @ url syntax by xavfernandez · Pull Request #4175 · pypa/pip · GitHub](https://github.com/pypa/pip/pull/4175) 例えば、`mytestlib` というパッケージを `myserver.com` にあるレポジトリからインストールするとします。 その場合、以下のようにパッケージ名の後ろに `@` をつけてパスを指定すればOKです。(タグを指定する場合は、さらに `@` をつけて指定します) ```python `title: "mytestapp/setup.py"; `highlight: [21]; # -*- coding: utf-8 -*- import setuptools with open('README.md') as f: readme = f.read() with open('LICENSE') as f: license = f.read() setuptools.setup( name='mytestapp', version='0.1', description='Test Application for checking dependency_links', long_description=readme, url='', licence=license, packages=setuptools.find_packages(exclude=('tests', 'docs')), install_requires=[ 'mytestlib@git+https://myserver.com/kokufu/mytestlib.git@0.1' ], test_suite='tests', entry_points={ 'console_scripts': [ 'mytestapp=mytestapp.main:main' ] } ) ```リリースされた pip 18.1 で [PEP 508](https://www.python.org/dev/peps/pep-0508/) が実装され `dependency_links` を使わないで独自のレポジトリを指定できるようになりました。
0 件のコメント:
コメントを投稿