Skip to content

Conversation

pavoljuhas
Copy link
Collaborator

  • Use SPDX license expression instead of deprecated classifier
  • Use pip wheel to create reproducible distribution wheels
  • Specify build-backed for Cirq and its sub-packages
  • Make sure setuptools.build_meta can import our dev_tools

This makes the wheels created by produce-package.sh reproducible
and resolves deprecation warnings on execution of setup.py
and on deprecated license classifier.

Fixes #6502 and #6623

Address setuptools warning:

```
********************************************************************************
Please consider removing the following classifiers in favor of a SPDX license expression:

License :: OSI Approved :: Apache Software License

See https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license for details.
********************************************************************************
```
Also resolves SetuptoolsDeprecationWarning on executing setup.py.
Address deprecation of the `setup.py bdist_wheel` build process.
Ref: pypa/pip#6334
Problem: `setuptools.build_meta` wheel-building backend executes
setup.py in an isolated environment which cannot import dev_tools.

Solution: Insert the top project directory to Python path.
@github-actions github-actions bot added the size: M 50< lines changed <250 label Aug 30, 2025
Copy link

codecov bot commented Aug 30, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.50%. Comparing base (c517794) to head (39d628f).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #7613   +/-   ##
=======================================
  Coverage   97.50%   97.50%           
=======================================
  Files        1103     1103           
  Lines       99683    99683           
=======================================
  Hits        97198    97198           
  Misses       2485     2485           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@pavoljuhas pavoljuhas requested a review from mhucka August 30, 2025 01:30
Copy link
Contributor

@mhucka mhucka left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. I need to copy some of these nice changes to our other projects …

@pavoljuhas pavoljuhas added this pull request to the merge queue Sep 2, 2025
Merged via the queue into quantumlib:main with commit f06362a Sep 2, 2025
35 checks passed
@pavoljuhas pavoljuhas deleted the reproducible-wheels branch September 2, 2025 06:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size: M 50< lines changed <250

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Make wheel-building process reproducible

2 participants