5084


Mac OS X, Python 2.7.6 を使用し、以下のように buildout 環境を構築しています。

[code]

    $ python bootstrap.py
    $ bin/buildout
    
[/code]

この時に最新の `setuptools` がインストールされてしまい、現時点だと `12.0.4`
がインストールされます。しかしこのバージョンには、以下のバグが存在し、この後行うインストールでバージョン依存の問題が出てしまいます。

[Issue #310 "document the backward-incompatible PEP 440 change to requirement
semantics"](https://bitbucket.org/pypa/setuptools/issue/310/document-the-
backward-incompatible-pep-440)

`setuptools` を古いバージョン(例えば `8.0` とか)にすれば、問題が解決するのではないかと考えています。

以下で、 buildout のバージョンを固定する方法が見つけました。しかし、これだけでは `setuptools` のバージョンが固定されません。

[code]

    $ python bootstrap.py -v VERSION
    
[/code]


CC BY-SA 3.0
2015-01-22T03:18:45.893
5030
2015-01-22T11:40:30.680
2015-01-22T03:46:04.950
4978
750
question
python setuptools
python buildout 環境を作る際に、setuptools のバージョンを固定する方法


最新のbootstrap-buildout.pyであれば `\--setuptools-version=8.3` のように指定したら良いようですね。

[code]

    $ virtualenv venv
    $ cd venv
    $ source bin/activate
    (venv)$ curl -O https://bootstrap.pypa.io/bootstrap-buildout.py
    (venv)$ mkdir test
    (venv)$ cd test
    (venv)$ python bootstrap-buildout.py --setuptools-version=8.3 init sphinx
    Downloading https://pypi.python.org/packages/source/s/setuptools/setuptools-8.3.zip
    Extracting in /tmp/tmpxqeprj
    Now working in /tmp/tmpxqeprj/setuptools-8.3
    Building a Setuptools egg in /tmp/tmp_woqs9
    /tmp/tmp_woqs9/setuptools-8.3-py2.7.egg
    Creating '/tmp/venv/test/buildout.cfg'.
    Installing py.
    Generated script '/tmp/venv/test/bin/sphinx-apidoc'.
    Generated script '/tmp/venv/test/bin/sphinx-build'.
    Generated script '/tmp/venv/test/bin/sphinx-quickstart'.
    Generated script '/tmp/venv/test/bin/sphinx-autogen'.
    Generated interpreter '/tmp/venv/test/bin/py'.
    
[/code]

`\--allow-site-packages`
も併用すると、virtualenvにインストールされているsetuptoolsのバージョンが同じであればそれを使ってます。


CC BY-SA 3.0
2015-01-22T11:40:30.680
5084
2015-01-22T11:40:30.680
806
5030
answer