Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Minimal installation of version 5.3 over zc.buildout unter Python 3.10 fails #998

Closed
mtoepfl opened this issue Jan 4, 2022 · 2 comments
Closed
Labels

Comments

@mtoepfl
Copy link

mtoepfl commented Jan 4, 2022

BUG/PROBLEM REPORT (OR OTHER COMMON ISSUE)

What I did:

Started a minimal installation of version 5.3 over zc.buildout unter Python 3.10
on a fresh python-env (self compiled on Fedora 35):

pip3.10 install "zc.buildout==2.13.3"
pip3.10 install "setuptools==51.3.3"
./buildout

What I expect to happen:

run "./bin/buildout" without errors

What actually happened:

Only succed if I install two packages manually over pip:

pip3.10 install "zope.interface==5.4.0"
pip3.10 install "zope.container==4.5.0" (because of conflicting versions of BTree, in /versions-prod.cfg it`s pinned to 4.4.0)

What version of Python and Zope/Addons I am using:

Python = 3.10 
Zope = 5.3 (https:/zopefoundation.github.io/Zope/releases/5.3/versions-prod.cfg)
zc.buildout = 2.13.3
setuptools = 51.3.3

Tried newest versions of zc.buildout and setuptools and then pinned versions to above ones.
Which versions of zc.buildout and setuptools are recommended?

Logs

Getting distribution for 'zope.security==5.1.1'.
WARNING: The easy_install command is deprecated and will be removed in a future version.
WARNING: The wheel package is not available.
WARNING: The wheel package is not available.
  ERROR: Command errored out with exit status 1:
   command: /zope/zope5-py3/Python3/bin/python3.10 -u -c 'import io, os, sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-wheel-wzgewqmr/zope-interface_0d03aa9a85f542d4ab7d5075f423bf9c/setup.py'"'"'; __file__='"'"'/tmp/pip-wheel-wzgewqmr/zope-interface_0d03aa9a85f542d4ab7d5075f423bf9c/setup.py'"'"';f = getattr(tokenize, '"'"'open'"'"', open)(__file__) if os.path.exists(__file__) else io.StringIO('"'"'from setuptools import setup; setup()'"'"');code = f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec(compile(code, __file__, '"'"'exec'"'"'))' bdist_wheel -d /tmp/pip-wheel-t7_986io               
       cwd: /tmp/pip-wheel-wzgewqmr/zope-interface_0d03aa9a85f542d4ab7d5075f423bf9c/                                                                                                                                                                                                                                         
  Complete output (6 lines):                                                                                                                                                                                                                                                                                                 
  usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]                                                                                                                                                                                                                                                      
     or: setup.py --help [cmd1 cmd2 ...]                                                                                                                                                                                                                                                                                     
     or: setup.py --help-commands                                                                                                                                                                                                                                                                                            
     or: setup.py cmd --help                                                                                                                                                                                                                                                                                                 
                                                                                                                                                                                                                                                                                                                             
  error: invalid command 'bdist_wheel'                                                                                                                                                                                                                                                                                       
  ----------------------------------------                                                                                                                                                                                                                                                                                   
  ERROR: Failed building wheel for zope.interface
ERROR: Failed to build one or more wheels
error: Command '['/zope/zope5-py3/Python3/bin/python3.10', '-m', 'pip', '--disable-pip-version-check', 'wheel', '--no-deps', '-w', '/tmp/easy_install-83hcac__/zope.security-5.1.1/temp/tmp6amalszi', '--quiet', 'zope.interface']' returned non-zero exit status 1.
An error occurred when trying to install /tmp/tmpr2hrtocvget_dist/zope.security-5.1.1.tar.gz. Look above this message for any errors that were output by easy_install.
While:
  Installing.
  Getting section zopeinstance.
  Initializing section zopeinstance.
  Installing recipe plone.recipe.zope2instance.
  Getting distribution for 'zope.security==5.1.1'.

An internal error occurred due to a bug in either zc.buildout or in a
recipe being used:
Traceback (most recent call last):
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/buildout.py", line 2174, in main
    getattr(buildout, command)(args)
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/buildout.py", line 701, in install
    [self[part]['recipe'] for part in install_parts]
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/buildout.py", line 701, in <listcomp>
    [self[part]['recipe'] for part in install_parts]
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/buildout.py", line 1324, in __getitem__
    options._initialize()
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/buildout.py", line 1432, in _initialize
    self.initialize()
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/buildout.py", line 1438, in initialize
    recipe_class = _install_and_load(reqs, 'zc.buildout', entry, buildout)
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/buildout.py", line 1381, in _install_and_load
    zc.buildout.easy_install.install(
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/easy_install.py", line 957, in install
    return installer.install(specs, working_set)
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/easy_install.py", line 730, in install
    for dist in self._get_dist(req, ws):
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/easy_install.py", line 574, in _get_dist
    dists = [_move_to_eggs_dir_and_compile(dist, self._dest)]
  File "/zope/zope5-py3/Python3/lib/python3.10/site-packages/zc/buildout/easy_install.py", line 1745, in _move_to_eggs_dir_and_compile
    [tmp_loc] = glob.glob(os.path.join(tmp_dest, '*'))
ValueError: not enough values to unpack (expected 1, got 0)

Other observations

When I install over buildout more packages seems to be compiled locally (lxml, BTree, ujson). If I install over pip the wheels are used.

@mtoepfl
Copy link
Author

mtoepfl commented Jan 5, 2022

Ah sorry, I just mentioned "Add support for Python 3.10" (#988) is unreleased and not in 5.3. I will try to use current versions-prod.cfg

@dataflake
Copy link
Member

As you found yourself, Zope 5.3 does not support Python 3.10. The next release will have it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants