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

Migrate from setup.cfg to pyproject.toml #33577

Open
tobiasdiez opened this issue Mar 27, 2022 · 17 comments
Open

Migrate from setup.cfg to pyproject.toml #33577

tobiasdiez opened this issue Mar 27, 2022 · 17 comments

Comments

@tobiasdiez
Copy link
Contributor

tobiasdiez commented Mar 27, 2022

Starting with v61, setuptools (experimentally) support pyproject.toml for configuration, see pypa/setuptools#1688.

setuptools 68.1.0 declared support for pyproject.toml as stable.

Moreover, setup.cfg will eventually be deprecated so it's a good idea to migrate from cfg to toml.

Migration can be done mostly automatically using https://ini2toml.readthedocs.io/en/latest/readme.html:

  (cd pkgs/sage-conf && ini2toml setup.cfg > pyproject.toml && git rm -f setup.cfg && git add pyproject.toml)

  (cd pkgs/sagemath-objects && (echo && echo '[project]' && ini2toml -p setup.cfg setup.cfg.m4 | sed "1,/[[]project/d;s/\"esys/esys/;s/install-requires /install-requires-toml /;s/ *\\\\\\\\\"/\')/;/conf-unix/d;" ) >> pyproject.toml.m4 && git rm -f setup.cfg.m4)

(the conversion of the m4 files loses some install-requires and needs to be fixed up manually.)

This is also preparation for #34630 (migration from setuptools to meson-python)

Depends on #33842
Depends on #30666

CC: @mkoeppe

Component: build

Author: Matthias Koeppe

Branch/Commit: u/mkoeppe/migrate_from_setup_cfg_to_pyproject_toml @ f81a0c8

Issue created by migration from https://trac.sagemath.org/ticket/33577

@tobiasdiez tobiasdiez added this to the sage-9.7 milestone Mar 27, 2022
@mkoeppe
Copy link
Contributor

mkoeppe commented Jul 28, 2022

Changed dependencies from #33566 to none

@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Jul 28, 2022
@mkoeppe

This comment has been minimized.

@mkoeppe
Copy link
Contributor

mkoeppe commented Dec 20, 2022

Dependencies: #33842

@mkoeppe
Copy link
Contributor

mkoeppe commented Dec 20, 2022

@mkoeppe

This comment has been minimized.

@mkoeppe
Copy link
Contributor

mkoeppe commented Dec 20, 2022

Commit: a86ea09

@mkoeppe
Copy link
Contributor

mkoeppe commented Dec 20, 2022

Last 10 new commits:

3666918build/pkgs/stack_data: Update to 0.6.1
814a96eMerge #34795
05f186fsage.arith.long: improve tests and documentation
3e86d91sage.arith.long.integer_check_py: fix for python 3.11
ac0105eFilter out locale DeprecationWarning
e3de51aMerge #33842
1c37625pkgs/sage-setup (pyproject.toml): Convert from setup.cfg using ini2toml-0.11.3
e4b6f1cpkgs/sage-sage-docbuild (pyproject.toml): Convert from setup.cfg using ini2toml-0.11.3
546b847pkgs/sage-sws2rst (pyproject.toml): Convert from setup.cfg using ini2toml-0.11.3
a86ea09pkgs/sage-conf (pyproject.toml): Convert from setup.cfg using ini2toml-0.11.3

@mkoeppe
Copy link
Contributor

mkoeppe commented Dec 20, 2022

Changed dependencies from #33842 to #33842, #30666

@mkoeppe

This comment has been minimized.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 20, 2022

Changed commit from a86ea09 to 4b406ce

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 20, 2022

Branch pushed to git repo; I updated commit sha1. Last 10 new commits:

88e18d0Merge #34855
0bd13acbuild/make/Makefile.in: Remove duplicate setting of PYPI_WHEEL_PACKAGES
f712d67Merge #34855
5fc1addbuild/pkgs/sagemath*/spkg-src: Use build
1531fdabuild/pkgs/sagemath_flint_arb/dependencies: Fix up
c2b8c9cMerge #30666
4cc8ca1pkgs/sagemath-environment (pyproject.toml.m4): Convert from setup.cfg.m4 using ini2toml-0.11.3
d20a24epkgs/sagemath-environment (pyproject.toml.m4): Fix up
fa017ecpkgs/sagemath-objects (pyproject.toml.m4): Convert from setup.cfg.m4 using ini2toml-0.11.3 and fix up
4b406cepkgs/sagemath-objects (pyproject.toml.m4): Fix up

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 20, 2022

Changed commit from 4b406ce to 0d18b20

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 20, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

ce70804pkgs/sagemath-repl (pyproject.toml.m4): Convert from setup.cfg.m4 using ini2toml-0.11.3 and fix up
bab4cc7pkgs/sagemath-repl (pyproject.toml.m4): Fix up
ce8e456pkgs/sagemath-categories (pyproject.toml.m4): Convert from setup.cfg.m4 using ini2toml-0.11.3 and fix up
5baf5dbpkgs/sagemath-{flint-arb,homfly,giac,gap} (pyproject.toml.m4): Convert from setup.cfg.m4 using ini2toml-0.11.3 and fix up
0d18b20pkgs/sagemath-{flint-arb,homfly,giac,gap} (pyproject.toml.m4): Fix up

@mkoeppe
Copy link
Contributor

mkoeppe commented Dec 20, 2022

Author: Matthias Koeppe

@mkoeppe

This comment has been minimized.

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 20, 2022

Branch pushed to git repo; I updated commit sha1. New commits:

f81a0c8src, pkgs/sagemath-standard (pyproject.toml.m4): Convert from setup.cfg.m4 using ini2toml-0.11.3 and fix up

@sagetrac-git
Copy link
Mannequin

sagetrac-git mannequin commented Dec 20, 2022

Changed commit from 0d18b20 to f81a0c8

@mkoeppe mkoeppe modified the milestones: sage-9.8, sage-9.9 Jan 29, 2023
@mkoeppe mkoeppe modified the milestones: sage-10.0, sage-10.1 Apr 30, 2023
@mkoeppe mkoeppe removed this from the sage-10.1 milestone Aug 7, 2023
@mkoeppe mkoeppe added this to the sage-10.2 milestone Aug 21, 2023
@mkoeppe mkoeppe modified the milestones: sage-10.2, sage-10.3 Oct 23, 2023
vbraun pushed a commit to vbraun/sage that referenced this issue Nov 1, 2023
…}`: Move metadata from `setup.cfg` to `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- Part of sagemath#33577

<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36563
Reported by: Matthias Köppe
Reviewer(s): François Bissey
vbraun pushed a commit to vbraun/sage that referenced this issue Nov 2, 2023
…}`: Move metadata from `setup.cfg` to `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- Part of sagemath#33577

<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36563
Reported by: Matthias Köppe
Reviewer(s): François Bissey
vbraun pushed a commit to vbraun/sage that referenced this issue Nov 5, 2023
…}`: Move metadata from `setup.cfg` to `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- Part of sagemath#33577

<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36563
Reported by: Matthias Köppe
Reviewer(s): François Bissey
vbraun pushed a commit to vbraun/sage that referenced this issue Dec 4, 2023
…`setup.cfg` to `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- Split out from and part of sagemath#33577
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36562
Reported by: Matthias Köppe
Reviewer(s): François Bissey, Matthias Köppe
vbraun pushed a commit to vbraun/sage that referenced this issue Dec 5, 2023
…`setup.cfg` to `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- Split out from and part of sagemath#33577
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36562
Reported by: Matthias Köppe
Reviewer(s): François Bissey, Matthias Köppe
vbraun pushed a commit to vbraun/sage that referenced this issue Dec 9, 2023
… from `setup.cfg` to `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- Part of sagemath#33577
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->
- Depends on sagemath#36563

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36564
Reported by: Matthias Köppe
Reviewer(s): François Bissey
vbraun pushed a commit to vbraun/sage that referenced this issue Jan 2, 2024
… `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- In part split out from sagemath#36489
- Part of sagemath#33577
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->
- Depends on sagemath#36533 (which changes setup.cfg, merged here)
- Depends on sagemath#36885

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36561
Reported by: Matthias Köppe
Reviewer(s): François Bissey
vbraun pushed a commit to vbraun/sage that referenced this issue Jan 5, 2024
… `pyproject.toml`

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->
<!-- Describe your changes here in detail -->

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
- In part split out from sagemath#36489
- Part of sagemath#33577
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [ ] I have created tests covering the changes.
- [ ] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->
- Depends on sagemath#36533 (which changes setup.cfg, merged here)
- Depends on sagemath#36885

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36561
Reported by: Matthias Köppe
Reviewer(s): François Bissey
@mkoeppe mkoeppe removed this from the sage-10.3 milestone Feb 29, 2024
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

2 participants