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

[Feature Request]: Upgrade setup.py to pyproject.toml #26266

Closed
1 of 15 tasks
davidcavazos opened this issue Apr 13, 2023 · 3 comments · Fixed by #28385
Closed
1 of 15 tasks

[Feature Request]: Upgrade setup.py to pyproject.toml #26266

davidcavazos opened this issue Apr 13, 2023 · 3 comments · Fixed by #28385
Assignees
Labels
done & done Issue has been reviewed after it was closed for verification, followups, etc. new feature P2 python

Comments

@davidcavazos
Copy link
Contributor

What would you like to happen?

Installing apache-beam gives a deprecation warning because it uses a setup.py file to configure the installation, which will be deprecated in pip 23.1 in favor of a pyproject.toml file.

How to reproduce:

python -m venv env
source env/bin/activate

pip install apache-beam

Shows the following warning:

DEPRECATION: apache-beam is being installed using the legacy 'setup.py install' method, because it does not have a 'pyproject.toml' and the 'wheel' package is not installed. pip 23.1 will enforce this behaviour change. A possible replacement is to enable the '--use-pep517' option. Discussion can be found at https://github.com/pypa/pip/issues/8559

pip version 23.1 is targeted to release by April 30, by then the setup.py file will be deprecated.

PEP-621 describes more context on why this change and how to upgrade. The good news is that the pyproject.toml file is declarative instead of containing arbitrary code, which makes writing it and maintaining it much simpler than the setup.py file.

Issue Priority

Priority: 2 (default / most feature requests should be filed as P2)

Issue Components

  • Component: Python SDK
  • Component: Java SDK
  • Component: Go SDK
  • Component: Typescript SDK
  • Component: IO connector
  • Component: Beam examples
  • Component: Beam playground
  • Component: Beam katas
  • Component: Website
  • Component: Spark Runner
  • Component: Flink Runner
  • Component: Samza Runner
  • Component: Twister2 Runner
  • Component: Hazelcast Jet Runner
  • Component: Google Cloud Dataflow Runner
@AnandInguva
Copy link
Contributor

AnandInguva commented Apr 13, 2023

Related issues: #20051.

Some previous work: #10038

@AnandInguva
Copy link
Contributor

.take-issue

@AnandInguva
Copy link
Contributor

AnandInguva commented Apr 17, 2023

Using setup.py along with pyproject.toml is fine but using setup.py install, setup.py sdist are deprecated. I am working on a PR that would add a simple pyproject.toml file.

For more information, pypa/pip#8559

@AnandInguva AnandInguva mentioned this issue Oct 12, 2023
3 tasks
@github-actions github-actions bot added this to the 2.52.0 Release milestone Oct 12, 2023
@damccorm damccorm added the done & done Issue has been reviewed after it was closed for verification, followups, etc. label Oct 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
done & done Issue has been reviewed after it was closed for verification, followups, etc. new feature P2 python
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants