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

[pyproject.toml: part 4] Integrate pyproject.toml configuration into existing classes #3068

Merged
merged 14 commits into from
Mar 18, 2022

Conversation

abravalheri
Copy link
Contributor

@abravalheri abravalheri commented Feb 1, 2022

This is part of #2970, split into several stacked PRs as requested in #2970 (review)
Follows #3067

This change builds on top of the recently added ability to parse and apply configurations from TOML files to distribution objects by tapping into the existing mechanism for handling configuration and making these TOML files to be read by default.

A series of deprecation warnings and tests is also added.

Summary of changes

  • Add pyproject.toml to dist.parse_config_files - b12b9d7
  • Add PendingDeprecationWarning for setup.cfg - 5baed64
  • Add backend test with pyproject.toml-based configs - b9ddb59
  • Test editable installs with pyproject.toml metadata - e991760
  • Replace skip in editable install test with xfail - 9179116

Some individual commits have a more detailed explanation for the change, please refer to the commit text if more information/context is needed

Pull Request Checklist

@abravalheri abravalheri requested a review from webknjaz February 1, 2022 12:41
@abravalheri abravalheri marked this pull request as ready for review February 3, 2022 10:23
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from c6907cb to 72fe662 Compare February 7, 2022 23:41
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from 72fe662 to 5ef62fc Compare February 8, 2022 11:54
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from 5ef62fc to bfb2ff2 Compare February 9, 2022 19:44
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from bfb2ff2 to 9dcd88b Compare February 10, 2022 11:59
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from 9dcd88b to 5ecdb5b Compare February 10, 2022 20:18
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from 5ecdb5b to c2b80aa Compare February 11, 2022 19:30
@abravalheri abravalheri changed the title [pyproject.toml: part 5] Integrate pyproject.toml configuration into existing classes [pyproject.toml: part 4] Integrate pyproject.toml configuration into existing classes Feb 11, 2022
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from c2b80aa to 69ddad0 Compare February 18, 2022 22:40
@abravalheri abravalheri force-pushed the dist-config-from-pyproject branch from 69ddad0 to 19b6ce2 Compare February 19, 2022 19:44
abravalheri added a commit to abravalheri/setuptools that referenced this pull request Feb 19, 2022
This change builds on top of the recently added ability to parse and
apply configurations from TOML files to distribution objects by tapping
into the existing mechanism for handling configuration and making these
TOML files to be read by default.

A series of deprecation warnings and tests is also added.
abravalheri added a commit to abravalheri/setuptools that referenced this pull request Feb 20, 2022
This change builds on top of the recently added ability to parse and
apply configurations from TOML files to distribution objects by tapping
into the existing mechanism for handling configuration and making these
TOML files to be read by default.

A series of deprecation warnings and tests is also added.
abravalheri added a commit that referenced this pull request Feb 20, 2022
This change builds on top of the recently added ability to parse and
apply configurations from TOML files to distribution objects by tapping
into the existing mechanism for handling configuration and making these
TOML files to be read by default.

A series of deprecation warnings and tests is also added.
Since now setuptools supports 2 types of files for configuration
(`setup.cfg` and `pyproject.toml`), it is very trick to provide a single
`read_configuration` function that will provide compatible outputs for
both formats.

Instead the `config.{setupcfg,pyprojecttoml}` modules have their own
`read_configuration` functions that differ between themselves in terms
of arguments and format of the return value.

Therefore the users should be importing directly the specific submodule
and calling the read function from there.

The `config.setupcfg` submodule is advertised as "provisional" in the
deprecation note because the main proposal debated in the setuptools
issue tracker reached some level of consensus around deprecating
`setup.cfg` files.
… as suggested in code review
Base automatically changed from dist-config-from-pyproject to support-pyproject-aggregate March 18, 2022 10:09
@abravalheri abravalheri merged commit f54e2d9 into support-pyproject-aggregate Mar 18, 2022
@abravalheri abravalheri deleted the integration branch March 18, 2022 10:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant