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

[python/ci] Unbreak PyPI wheel builds #2337

Closed
johnkerl opened this issue Mar 26, 2024 · 4 comments
Closed

[python/ci] Unbreak PyPI wheel builds #2337

johnkerl opened this issue Mar 26, 2024 · 4 comments
Assignees

Comments

@johnkerl
Copy link
Member

johnkerl commented Mar 26, 2024

See
https://github.com/single-cell-data/TileDB-SOMA/actions/runs/8443323587/job/23126755537

FileNotFoundError: [Errno 2] No such file or directory: 'requirements_dev.txt'

What happened with 1.9.0 today:

  • We only wheel-build on nightlies, or releases
  • I tagged a 1.9.0
  • I should have tagged a 1.9.0rc0 first 😞
  • The requirements_dev.txt PR landed before the nightly wheel-build run could happen

#2311
[sc-43673]

@jdblischak
Copy link
Collaborator

This error was discovered by the workflow python-packaging.yml and not by python-so-copying.yml because the former first builds a source tarball (which doesn't contain requirements_dev.txt) and then builds the wheel from this source tarball, whereas the latter runs python setup.py bdist_wheel directly in the Git repository (where requirements_dev.txt exists)

- name: Build sdist
run: python setup.py sdist
working-directory: ./apis/python

Here is a reprex I ran to reproduce the error locally with Python 3.10 on Linux:

python --version
## Python 3.10.14
uname
## Linux
git checkout 1.9.0
cd apis/python
python setup.py sdist
tar --list -f dist/tiledbsoma-1.9.0.tar.gz | grep requirements

mkdir -p /tmp/soma
cp dist/tiledbsoma-1.9.0.tar.gz /tmp/soma
cd /tmp/soma/
tar -xzf tiledbsoma-1.9.0.tar.gz
cd tiledbsoma-1.9.0/
python -m venv ./venv-soma
conda deactivate
source ./venv-soma/bin/activate
pip install wheel
python setup.py bdist_wheel
## Traceback (most recent call last):
##   File "/tmp/soma/tiledbsoma-1.9.0/setup.py", line 335, in <module>
##     "dev": open("requirements_dev.txt").read(),
## FileNotFoundError: [Errno 2] No such file or directory: 'requirements_dev.txt'

@johnkerl
Copy link
Member Author

Another bit of debug -- following @jdblischak 's repro, as soon as I do python setup.py sdist then tar --list -f dist/tiledbsoma-1.9.0.tar.gz | grep requirements shows I do have requirements_dev.txt in there

I'm doing this Ubuntu with Python 3.10, clean checkout on release-1.9 branch, all same as @jdblischak ... which is weird ...

I can/will debug since I need to know what's going, but, the good news is we've zeroed in on another of the issues going on

@johnkerl
Copy link
Member Author

PRs are merged

@johnkerl
Copy link
Member Author

Learnings: https://github.com/single-cell-data/TileDB-SOMA/wiki/Debugging-wheel%E2%80%90build-issues

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

No branches or pull requests

3 participants