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

Backend is not available for fallback/legacy builder #158

Closed
jaraco opened this issue Oct 23, 2020 · 5 comments
Closed

Backend is not available for fallback/legacy builder #158

jaraco opened this issue Oct 23, 2020 · 5 comments

Comments

@jaraco
Copy link
Member

jaraco commented Oct 23, 2020

Today I tried running build for the first time, but it failed:

lock master $ pip-run build -- -m build
Collecting build
  Using cached build-0.0.4-py2.py3-none-any.whl (8.8 kB)
Collecting pep517
  Using cached pep517-0.9.1-py2.py3-none-any.whl (18 kB)
Collecting toml
  Using cached toml-0.10.1-py2.py3-none-any.whl (19 kB)
Collecting packaging
  Using cached packaging-20.4-py2.py3-none-any.whl (37 kB)
Collecting six
  Using cached six-1.15.0-py2.py3-none-any.whl (10 kB)
Collecting pyparsing>=2.0.2
  Using cached pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
Installing collected packages: toml, six, pyparsing, pep517, packaging, build
Successfully installed build-0.0.4 packaging-20.4 pep517-0.9.1 pyparsing-2.4.7 six-1.15.0 toml-0.10.1
WARNING: You are using pip version 20.2.3; however, version 20.2.4 is available.
You should consider upgrading via the '/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -m pip install --upgrade pip' command.
ERROR Backend 'setuptools.build_meta:__legacy__' is not available

Probably if build is going to support legacy builds using setuptools, it should also include that dependency.

@FFY00
Copy link
Member

FFY00 commented Oct 23, 2020

It should be injecting that dependency. Can I see your pyproject.toml?

@gaborbernat
Copy link
Contributor

Is this latest released? Have you tried with master?

https://github.com/pypa/build/blob/master/src/build/__init__.py#L151

@FFY00
Copy link
Member

FFY00 commented Oct 23, 2020

It should be working in the latest release.

https://github.com/pypa/build/blob/0.0.4/src/build/__init__.py#L153

I suspect pyproject.toml might have an incomplete build-system table.

@jaraco
Copy link
Member Author

jaraco commented Oct 23, 2020

Yes, pip-run uses the same semantics, so grabs the latest from PyPI unless a specific version is specified. You can see in the trace that 0.0.4 was used.

The issue doesn't exist with master.

lock master $ pip-run git+https://github.com/pypa/build -- -m build
Collecting git+https://github.com/pypa/build
  Cloning https://github.com/pypa/build to /private/var/folders/c6/v7hnmq453xb6p2dbz1gqc6rr0000gn/T/pip-req-build-yif51n19
  Installing build dependencies ... done
  Getting requirements to build wheel ... done
    Preparing wheel metadata ... done
Collecting pep517>=0.9
  Using cached pep517-0.9.1-py2.py3-none-any.whl (18 kB)
Collecting toml
  Using cached toml-0.10.1-py2.py3-none-any.whl (19 kB)
Collecting packaging
  Using cached packaging-20.4-py2.py3-none-any.whl (37 kB)
Collecting six
  Using cached six-1.15.0-py2.py3-none-any.whl (10 kB)
Collecting pyparsing>=2.0.2
  Using cached pyparsing-2.4.7-py2.py3-none-any.whl (67 kB)
Building wheels for collected packages: build
  Building wheel for build (PEP 517) ... done
  Created wheel for build: filename=build-0.0.4-py2.py3-none-any.whl size=10425 sha256=fa0b15dd4286c4bb356a9e77cddc47be8927a997876327af2174efeac4f61346
  Stored in directory: /private/var/folders/c6/v7hnmq453xb6p2dbz1gqc6rr0000gn/T/pip-ephem-wheel-cache-i44dz5zr/wheels/57/59/86/6612f27ab3ddb5f55e0e6d6027bfb04eff0c0345dc23f29c68
Successfully built build
Installing collected packages: toml, six, pyparsing, pep517, packaging, build
Successfully installed build-0.0.4 packaging-20.4 pep517-0.9.1 pyparsing-2.4.7 six-1.15.0 toml-0.10.1
WARNING: You are using pip version 20.2.3; however, version 20.2.4 is available.
You should consider upgrading via the '/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -m pip install --upgrade pip' command.
Collecting wheel
  Using cached wheel-0.35.1-py2.py3-none-any.whl (33 kB)
Collecting setuptools>=40.8.0
  Using cached setuptools-50.3.2-py3-none-any.whl (785 kB)
Installing collected packages: wheel, setuptools
Successfully installed setuptools-50.3.2 wheel-0.35.1
WARNING: You are using pip version 20.2.3; however, version 20.2.4 is available.
You should consider upgrading via the '/Library/Frameworks/Python.framework/Versions/3.9/bin/python3.9 -m pip install --upgrade pip' command.
running sdist
running egg_info
writing flufl.lock.egg-info/PKG-INFO
writing dependency_links to flufl.lock.egg-info/dependency_links.txt
writing namespace_packages to flufl.lock.egg-info/namespace_packages.txt
writing requirements to flufl.lock.egg-info/requires.txt
writing top-level names to flufl.lock.egg-info/top_level.txt
reading manifest file 'flufl.lock.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
package init file 'dist/__init__.py' not found (or not a regular file)
package init file 'flufl/__init__.py' not found (or not a regular file)
package init file 'dist/tmp20on0myv/__init__.py' not found (or not a regular file)
warning: no files found matching '*.po' anywhere in distribution
warning: no files found matching '*.mo' anywhere in distribution
warning: no previously-included files found matching '.gitignore'
no previously-included directories found matching 'build'
no previously-included directories found matching '.tox'
no previously-included directories found matching 'dist'
writing manifest file 'flufl.lock.egg-info/SOURCES.txt'
running check
creating flufl.lock-5.0.3
creating flufl.lock-5.0.3/docs
creating flufl.lock-5.0.3/flufl.lock.egg-info
creating flufl.lock-5.0.3/flufl
creating flufl.lock-5.0.3/flufl/lock
creating flufl.lock-5.0.3/test
copying files to flufl.lock-5.0.3...
copying .readthedocs-req.txt -> flufl.lock-5.0.3
copying LICENSE -> flufl.lock-5.0.3
copying MANIFEST.in -> flufl.lock-5.0.3
copying README.rst -> flufl.lock-5.0.3
copying conftest.py -> flufl.lock-5.0.3
copying setup.cfg -> flufl.lock-5.0.3
copying setup.py -> flufl.lock-5.0.3
copying setup_helpers.py -> flufl.lock-5.0.3
copying tox.ini -> flufl.lock-5.0.3
copying docs/NEWS.rst -> flufl.lock-5.0.3/docs
copying docs/apiref.rst -> flufl.lock-5.0.3/docs
copying docs/index.rst -> flufl.lock-5.0.3/docs
copying docs/theory.rst -> flufl.lock-5.0.3/docs
copying docs/using.rst -> flufl.lock-5.0.3/docs
copying flufl.lock.egg-info/PKG-INFO -> flufl.lock-5.0.3/flufl.lock.egg-info
copying flufl.lock.egg-info/SOURCES.txt -> flufl.lock-5.0.3/flufl.lock.egg-info
copying flufl.lock.egg-info/dependency_links.txt -> flufl.lock-5.0.3/flufl.lock.egg-info
copying flufl.lock.egg-info/namespace_packages.txt -> flufl.lock-5.0.3/flufl.lock.egg-info
copying flufl.lock.egg-info/not-zip-safe -> flufl.lock-5.0.3/flufl.lock.egg-info
copying flufl.lock.egg-info/requires.txt -> flufl.lock-5.0.3/flufl.lock.egg-info
copying flufl.lock.egg-info/top_level.txt -> flufl.lock-5.0.3/flufl.lock.egg-info
copying flufl/lock/__init__.py -> flufl.lock-5.0.3/flufl/lock
copying flufl/lock/_lockfile.py -> flufl.lock-5.0.3/flufl/lock
copying test/test_api.py -> flufl.lock-5.0.3/test
copying test/test_lock.py -> flufl.lock-5.0.3/test
Writing flufl.lock-5.0.3/setup.cfg
Creating tar archive
removing 'flufl.lock-5.0.3' (and everything under it)
running bdist_wheel
running build
running build_py
package init file 'dist/__init__.py' not found (or not a regular file)
package init file 'flufl/__init__.py' not found (or not a regular file)
package init file 'dist/tmph0c5cu48/__init__.py' not found (or not a regular file)
creating build
creating build/lib
creating build/lib/flufl
creating build/lib/flufl/lock
copying flufl/lock/_lockfile.py -> build/lib/flufl/lock
copying flufl/lock/__init__.py -> build/lib/flufl/lock
running egg_info
writing flufl.lock.egg-info/PKG-INFO
writing dependency_links to flufl.lock.egg-info/dependency_links.txt
writing namespace_packages to flufl.lock.egg-info/namespace_packages.txt
writing requirements to flufl.lock.egg-info/requires.txt
writing top-level names to flufl.lock.egg-info/top_level.txt
reading manifest file 'flufl.lock.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '*.po' anywhere in distribution
warning: no files found matching '*.mo' anywhere in distribution
warning: no previously-included files found matching '.gitignore'
no previously-included directories found matching 'build'
no previously-included directories found matching '.tox'
no previously-included directories found matching 'dist'
writing manifest file 'flufl.lock.egg-info/SOURCES.txt'
installing to build/bdist.macosx-10.9-x86_64/wheel
running install
running install_lib
copying flufl/lock/_lockfile.py -> build/bdist.macosx-10.9-x86_64/wheel/flufl/lock
copying flufl/lock/__init__.py -> build/bdist.macosx-10.9-x86_64/wheel/flufl/lock
running install_egg_info
Copying flufl.lock.egg-info to build/bdist.macosx-10.9-x86_64/wheel/flufl.lock-5.0.3-py3.9.egg-info
Installing build/bdist.macosx-10.9-x86_64/wheel/flufl.lock-5.0.3-py3.9-nspkg.pth
running install_scripts
adding license file "LICENSE" (matched pattern "LICEN[CS]E*")
creating build/bdist.macosx-10.9-x86_64/wheel/flufl.lock-5.0.3.dist-info/WHEEL
creating '/Users/jaraco/code/public/flufl/lock/dist/tmph0c5cu48/flufl.lock-5.0.3-py3-none-any.whl' and adding 'build/bdist.macosx-10.9-x86_64/wheel' to it
adding 'flufl.lock-5.0.3-py3.9-nspkg.pth'
adding 'flufl/lock/__init__.py'
adding 'flufl/lock/_lockfile.py'
adding 'flufl.lock-5.0.3.dist-info/LICENSE'
adding 'flufl.lock-5.0.3.dist-info/METADATA'
adding 'flufl.lock-5.0.3.dist-info/WHEEL'
adding 'flufl.lock-5.0.3.dist-info/namespace_packages.txt'
adding 'flufl.lock-5.0.3.dist-info/top_level.txt'
adding 'flufl.lock-5.0.3.dist-info/RECORD'
removing build/bdist.macosx-10.9-x86_64/wheel

So all that's need to close this issue is to cut a release.

@jaraco jaraco changed the title missing dependency on setuptools Backend is not available for fallback/legacy builder Oct 23, 2020
@gaborbernat
Copy link
Contributor

The issue is most likely related to macOS framework python also does not respect env vars properly, we fixed this by moving to venv in #18

@pypa pypa locked and limited conversation to collaborators Jan 15, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants