setup.py,setup.cfg, extra_require (not using pip)
e.g. colander
setup.py
##... snip testing_extras = ['nose', 'coverage'] docs_extras = ['Sphinx'] setup(name='colander', version='0.9.8', ## ... snip install_requires = requires, test_suite="colander", extras_require = { 'testing':testing_extras, 'docs':docs_extras, }, )
setup.cfg
## ... snip [aliases] dev = develop easy_install colander[testing] docs = develop easy_install colander[docs] ## .. snip
how to use
$ python setup.py dev # install package include testing requirements $ python setup.py docs # instapp package for documantation
githubにパッケージ挙げる時のディレクトリ構成
悩まなくても良いようにメモ。
作りたいパッケージ(パッケージ名: foo)
ファイル構成(置き場所)
. ├── README.txt ├── docs ├── foo │ ├── __init__.py │ ├── locale │ └── tests ├── setup.cfg ├── setup.py └── tox.ini
シンプルなもの
. ├── README.txt ├── foo │ ├── __init__.py │ └── tests ├── setup.cfg └── setup.py
- 普通にsetup.pyを書く
- setup.pyにextra_requiersを書く(docs,testing)
- setup.cfgにextra_requiresのためのaliasを書く