setuptools: [BUG] name/version from pyproject.toml is not respected on macOS

setuptools version

60.10.0

Python version

3.9.12

OS

macOS 12.3.1 (Monterey)

Additional environment information

For your convenience, here’s a test project that reproduces described behavior on GitHub Actions. You can see problematic build output here.

Note that exactly the same steps are done on Windows and Ubuntu and bug doesn’t occur there.

For comparison, here’s the list of package versions on different OSes:

macOS (broken):

Python 3.9.12

pip        22.0.4
setuptools 60.10.0
wheel      0.37.1

Windows (works):

Python 3.9.12

argcomplete 2.0.0
click       8.1.2
colorama    0.4.4
dummy       0.0.1
packaging   21.3
pip         22.0.4
pipx        1.0.0
pyparsing   3.0.8
setuptools  58.1.0
userpath    1.8.0

Ubuntu (works):

Python 3.8.10

argcomplete            2.0.0               
attrs                  19.3.0              
Automat                0.8.0               
blinker                1.4                 
certifi                2019.11.28          
chardet                3.0.4               
Click                  7.0                 
cloud-init             22.1                
colorama               0.4.3               
command-not-found      0.3                 
configobj              5.0.6               
constantly             15.1.0              
crcmod                 1.7                 
crit                   0.0.1               
cryptography           2.8                 
dbus-python            1.2.16              
distro                 1.4.0               
distro-info            0.23ubuntu1         
dummy                  0.0.1               
entrypoints            0.3                 
httplib2               0.14.0              
hyperlink              19.0.0              
idna                   2.8                 
importlib-metadata     1.5.0               
incremental            16.10.1             
Jinja2                 2.10.1              
jsonpatch              1.22                
jsonpointer            2.0                 
jsonschema             3.2.0               
keyring                18.0.1              
language-selector      0.1                 
launchpadlib           1.10.13             
lazr.restfulclient     0.14.2              
lazr.uri               1.0.3               
MarkupSafe             1.1.0               
more-itertools         4.2.0               
netifaces              0.10.4              
oauthlib               3.1.0               
packaging              21.3                
pexpect                4.6.0               
pip                    20.0.2              
pipx                   1.0.0               
protobuf               3.6.1               
pyasn1                 0.4.2               
pyasn1-modules         0.2.1               
Pygments               2.3.1               
PyGObject              3.36.0              
PyHamcrest             1.9.0               
PyJWT                  1.7.1               
pymacaroons            0.13.0              
PyNaCl                 1.3.0               
pyOpenSSL              19.0.0              
pyparsing              3.0.8               
pyparted               3.11.2              
pyrsistent             0.15.5              
pyserial               3.4                 
python-apt             2.0.0+ubuntu0.20.4.7
python-debian          0.1.36ubuntu1       
PyYAML                 5.3.1               
requests               2.22.0              
requests-unixsocket    0.2.0               
SecretStorage          2.3.1               
service-identity       18.1.0              
setuptools             45.2.0              
simplejson             3.16.0              
six                    1.14.0              
sos                    4.3                 
ssh-import-id          5.10                
systemd-python         234                 
Twisted                18.9.0              
ubuntu-advantage-tools 27.7                
ufw                    0.36                
urllib3                1.25.8              
userpath               1.8.0               
wadllib                1.3.3               
WALinuxAgent           2.2.46              
wheel                  0.34.2              
zipp                   1.0.0               
zope.interface         4.7.1    

Description

setuptools installs packages as UNKNOWN even though they have name/version specified in pypackage.toml

Expected behavior

name/version from pyproject.toml is respected

How to Reproduce

Create a directory with a trivial pyproject.toml:

[project]
name = "dummy"
version = "0.0.1"

And then install it with pip3 install --user .

Output

pyproject.toml:

[project]
name = "dummy"
version = "0.0.1"

pip3 output:

Processing /Users/runner/work/setuptools-vs-pyproject.toml/setuptools-vs-pyproject.toml
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Building wheels for collected packages: UNKNOWN
  Building wheel for UNKNOWN (pyproject.toml): started
  Building wheel for UNKNOWN (pyproject.toml): finished with status 'done'
  Created wheel for UNKNOWN: filename=UNKNOWN-0.0.0-py3-none-any.whl size=955 sha256=a7b6a1a2dbdb6b58ac9dba154d08243bfa69d3f9531da4f25091503bd5fce88e
  Stored in directory: /Users/runner/Library/Caches/pip/wheels/0c/20/8e/7124b70b3908c7615c98401dce5a60eabf88726b43c04fe667
Successfully built UNKNOWN
Installing collected packages: UNKNOWN
Successfully installed UNKNOWN-0.0.0

About this issue

  • Original URL
  • State: closed
  • Created 2 years ago
  • Comments: 15 (6 by maintainers)

Most upvoted comments

So, I think this can be closed, because the root of the issue is not in setuptools.

Sorry @slonopotamus , I was trying to reply using the phone app and I ended up for some reason editing your comment instead of posting a new one…