summaryrefslogtreecommitdiff
path: root/setuptools/config
Commit message (Collapse)AuthorAgeFilesLines
* Use pathlib to open the fileJason R. Coombs2022-09-291-3/+2
|
* expand: Give bytes to ast.parse to let it discover encoding cookie.Julien Palard2022-09-271-1/+1
|
* Fix problems with name discovery and dynamic versionsAnderson Bravalheri2022-08-191-5/+10
|
* Merge 'main' into feature/pep660Anderson Bravalheri2022-08-062-18/+71
|\
| * Improve pyproject.toml validation messages (#3487)Anderson Bravalheri2022-08-061-4/+8
| |\
| | * Improve pyproject.toml validation messagesAnderson Bravalheri2022-08-041-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on the following discussions: - https://github.com/pypa/packaging.python.org/pull/1031#issuecomment-1127214128 - https://github.com/pypa/packaging-problems/issues/604 it seems that people are having a hard time finding information about validation error due to the long traceback and debug info. The idea behind this change is to make the most relevant information to fix the error easier to spot.
| * | setup.cfg parsing: use contextlib.suppress instead of try/except+passAnderson Bravalheri2022-08-061-3/+2
| | |
| * | setup.cfg parsing: Fix incorrect refactoringAnderson Bravalheri2022-08-061-9/+11
| | |
| * | setup.cfg parsing: Simplify warn_accidental_env_marker_misconfigAnderson Bravalheri2022-08-061-17/+17
| | |
| * | setup.cfg parsing: Refactor _parse_requirements_list and ↵Anderson Bravalheri2022-08-061-33/+33
| | | | | | | | | | | | warn_accidental_env_marker_misconfig
| * | Add warning for potential extras_require misconfigurationLumir Balhar2022-08-061-0/+48
| |/ | | | | | | Fixes: https://github.com/pypa/setuptools/issues/3467
* | Merge 'upstream/main' into feature/pep660Anderson Bravalheri2022-07-211-1/+1
|\ \ | |/
| * Add stacklevel=2 to make calling code clearHugo van Kemenade2022-07-121-1/+1
| |
* | Merge remote-tracking branch 'upstream/main' into feature/pep660Anderson Bravalheri2022-06-245-49/+143
|\ \ | |/
| *-. Allow `file` directive for dependencies (#3253, #3255)Anderson Bravalheri2022-06-193-25/+113
| |\ \
| | | * Allow `file:` for `dependencies` and `optional-dependencies` in pyproject.tomlAarni Koskela2022-04-082-17/+91
| | | |
| | * | Allow `file:` for `requires` statements in setup.cfgAarni Koskela2022-06-141-8/+22
| | | | | | | | | | | | | | | | Refs #1951
| * | | config.expand.StaticModule: handle scenarios when annotated assignment does ↵Anderson Bravalheri2022-06-191-2/+2
| | | | | | | | | | | | | | | | not have a value
| * | | config.expand: Refactor StaticModuleAnderson Bravalheri2022-06-191-13/+12
| | | |
| * | | Add support for annotated assignments to static attribute lookup.Karl Otness2022-06-181-16/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When walking the ast of a module, look for AnnAssign nodes in addition to Assign to support assignments with type annotations, for example. Since we have to read different attributes, split the generators into a for loop. Existing ast.Assign nodes follow the same processing as before.
| * | | Clarify modules used for pyproject.toml parsing are privateAnderson Bravalheri2022-06-174-2/+14
| | | |
| * | | Change wording from *experimental* to *beta*Anderson Bravalheri2022-06-161-7/+4
| | | |
| * | | Warn about 'tool.setuptool' instead of project metadata in pyproject.tomlAnderson Bravalheri2022-06-161-7/+8
| | | |
* | | | build_meta: Allow dist-info and egg-info to coexistAnderson Bravalheri2022-06-211-19/+2
|/ / / | | | | | | | | | | | | | | | | | | PEP 517 does not care if other directories/files are left behind in the `metadata_directory`, as long as a `.dist_info` directory is produced at the root. We can leave the `.egg-info` directory behind, so this way we don't have to run it again when listing files from `build_py`.
* | | fixed some spelling mistakes,Bastian Venthur2022-06-141-1/+1
|/ / | | | | | | that's all :)
* | Improve warning message for _InvalidFileAnderson Bravalheri2022-05-181-3/+2
| |
* | Improve warning message for _WouldIgnoreFieldAnderson Bravalheri2022-05-181-3/+5
| |
* | Add deprecation messages for `namespace_packages` (#3262)Anderson Bravalheri2022-05-162-3/+20
|\ \
| * | Add deprecation messages for `namespace_packages`.Anderson Bravalheri2022-05-162-3/+20
| | | | | | | | | | | | | | | | | | | | | | | | The docs in https://setuptools.pypa.io/en/latest/userguide/package_discovery.html and https://packaging.python.org/en/latest/guides/packaging-namespace-packages/ suggest that this field is deprecated.
* | | Remove residual dependencies from setup.py when dependencies are set in ↵Anderson Bravalheri2022-05-161-2/+4
|\ \ \ | |/ / |/| | | | | pyproject.toml (#3306)
| * | Add warning about overwritten dependenciesAnderson Bravalheri2022-05-041-2/+4
| |/
* | do not backfill Project-URL: homepage into Home-page: field (causes ↵wim glenn2022-04-291-15/+1
|/ | | | duplicates on PyPI). prevent "UNKNOWN" vals from appearing in summary, license, platform. prevent an extra newline getting added in long description
* Rename variableAnderson Bravalheri2022-04-051-4/+4
|
* Simplify auto-discovered package_dirAnderson Bravalheri2022-04-051-2/+25
| | | | | | | | If the directory follows a src-layout-ish, try harder to make `package_dir` in the form `{"": "src"}`. This might be later important for PEP 660 (e.g. when composing pth files or symlinking the toplevel packages).
* Fix dynamic readmeAnderson Bravalheri2022-04-041-2/+7
|
* Disable automatic download of trove classifiers by defaultAnderson Bravalheri2022-03-301-0/+5
| | | | | This helps to improve reproducibility. See #abravalheri/validate-pyproject#31.
* Update validate-pyproject to v0.7.1Anderson Bravalheri2022-03-302-2/+7
|
* Fix unintentional mistake in config/pyprojectAnderson Bravalheri2022-03-301-1/+1
|
* Update version of validate-pyprojectAnderson Bravalheri2022-03-302-3/+3
|
* Move _validate_pyproject to configAnderson Bravalheri2022-03-308-10/+2138
|
* Fix previous detection of empty arraysAnderson Bravalheri2022-03-272-3/+4
|
* Small refactorAnderson Bravalheri2022-03-271-4/+3
|
* Merge pre-set dependencies when applying pyprojectAnderson Bravalheri2022-03-271-2/+12
|
* Make sure apply function remains privateAnderson Bravalheri2022-03-271-3/+6
|
* Prepare to be strict in the future about entry-points in pyprojectAnderson Bravalheri2022-03-272-8/+18
|
* Improve error/warning messagesAnderson Bravalheri2022-03-272-6/+9
|
* Consider missing edge case for tool.setuptools.dynamic in pyprojectAnderson Bravalheri2022-03-272-2/+6
|
* Restructure config.pyproject to consider "pre-set" dynamic valuesAnderson Bravalheri2022-03-271-150/+165
| | | | | | | | | | | | | | | Issues 3195 and 3204 surface the fact that setuptools may need to allow dynamic values to be computed by the users in the ``setup.py`` file (e.g. if they need to dynamically decide dependencies based on the host machine in a way that is not supported by environment markers, such as GPU presence). The current implementation somehow already allows that by layering the configs `setup.py` > `setup.cfg` > `pyproject.toml`. However this is done without having in mind the limitations about `dynamic` imposed by PEP 621. The change implemented here tries to fix this problem.
* Warn if a project metadata is set outside of pyproject without dynamicAnderson Bravalheri2022-03-271-10/+89
| | | | | | | | | | | | | | - PEP 621 requires the build backend to not backfill values without dynamic. - Some users seem to been writing ``pyproject.toml`` with a "partial" ``[project]`` table even before setuptools added support for pyproject metadata. In several cases this table is incomplete and the real metadata lives either in ``setup.py`` or ``setup.cfg``. To avoid ignoring metadata in these scenarios and resulting in failing builds, the change implemented here adopts a more "forgiving" posture and warns an informative message during the transition period.
* Tests mixed pyproject metadata + config from setup.pyAnderson Bravalheri2022-03-271-0/+31
| | | | With emphasis on the ``dynamic`` behaviour