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] Move setuptools-scm configuration to pyproject.toml #37929

Closed
jorisvandenbossche opened this issue Sep 28, 2023 · 2 comments
Closed

Comments

@jorisvandenbossche
Copy link
Member

Nowadays setuptools-scm recommends to use pyproject.toml for configuration: https://github.com/pypa/setuptools_scm#pyprojecttoml-usage, while we still use setup(use_scm_version=..) in setup.py.

@anjakefala
Copy link
Collaborator

One challenge is that our use_scm_version call definitely has Python callables. And if you want to pass Python callables, it seems setup.py is the route.

 491     use_scm_version={                                                                                                                                             
 492         'root': os.path.dirname(setup_dir),                                                                                                                       
 493         'parse': parse_git,                                                                                                                                       
 494         'version_file': os.path.join(scm_version_write_to_prefix,                                                                                                 
 495                                  'pyarrow/_generated_version.py'),                                                                                                
 496         'version_scheme': guess_next_dev_version                                                                                                                  
 497     },                   

anjakefala added a commit to anjakefala/arrow that referenced this issue Apr 25, 2024
… high enough version for pyproject.toml support
raulcd pushed a commit to anjakefala/arrow that referenced this issue Jun 3, 2024
… high enough version for pyproject.toml support
assignUser pushed a commit that referenced this issue Jun 5, 2024
…1041)

### Rationale for this change

To migrate Arrow to modern Python packaging standards, see [PEP-517](https://peps.python.org/pep-0517/) and [PEP-518](https://peps.python.org/pep-0518/). 
* GitHub Issue: #37929

This PR focuses on migrating the static settings, the metadata and version, to pyproject.toml. Future PRs will migrate more of the build process to pyproject.toml.

Lead-authored-by: anjakefala <anja.kefala@gmail.com>
Co-authored-by: Raúl Cumplido <raulcumplido@gmail.com>
Co-authored-by: Joris Van den Bossche <jorisvandenbossche@gmail.com>
Signed-off-by: Jacob Wujciak-Jens <jacob@wujciak.de>
@assignUser assignUser added this to the 17.0.0 milestone Jun 5, 2024
@assignUser
Copy link
Member

Issue resolved by pull request 41041
#41041

vibhatha pushed a commit to vibhatha/arrow that referenced this issue Jun 5, 2024
…ml (apache#41041)

### Rationale for this change

To migrate Arrow to modern Python packaging standards, see [PEP-517](https://peps.python.org/pep-0517/) and [PEP-518](https://peps.python.org/pep-0518/). 
* GitHub Issue: apache#37929

This PR focuses on migrating the static settings, the metadata and version, to pyproject.toml. Future PRs will migrate more of the build process to pyproject.toml.

Lead-authored-by: anjakefala <anja.kefala@gmail.com>
Co-authored-by: Raúl Cumplido <raulcumplido@gmail.com>
Co-authored-by: Joris Van den Bossche <jorisvandenbossche@gmail.com>
Signed-off-by: Jacob Wujciak-Jens <jacob@wujciak.de>
raulcd added a commit that referenced this issue Jun 7, 2024
…xt --inplace for installing pyarrow on verification script (#42007)

### Rationale for this change

Due to #37929 we require a higher version of setuptools and setuptools_scm to be installed otherwise the job fails with setuptools_scm failing with ` TypeError: Configuration.__init__() got an unexpected keyword argument 'version_file'`

### What changes are included in this PR?

Remove the dependencies for the environment and let installation handle those using pip install -e instead of setup.py build_ext --inplace for installing pyarrow on verification script

### Are these changes tested?

Via Archery

### Are there any user-facing changes?

No
* GitHub Issue: #42006

Lead-authored-by: Raúl Cumplido <raulcumplido@gmail.com>
Co-authored-by: Joris Van den Bossche <jorisvandenbossche@gmail.com>
Signed-off-by: Raúl Cumplido <raulcumplido@gmail.com>
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