feat(settings): add YAML-driven configuration to reduce plugin needs#935
Draft
EmilienM wants to merge 2 commits intopython-wheel-build:mainfrom
Draft
feat(settings): add YAML-driven configuration to reduce plugin needs#935EmilienM wants to merge 2 commits intopython-wheel-build:mainfrom
EmilienM wants to merge 2 commits intopython-wheel-build:mainfrom
Conversation
Implements 6 features from issue python-wheel-build#928 to allow more package configurations to be expressed declaratively in YAML settings files, reducing the need for custom override plugins. New capabilities: - Auto ensure_pkg_info in prepare_new_source (Proposal 2.2) - ${version}, ${version_base_version}, ${version_post} template variables in env settings (Proposal 2.4) - remove_install_requires and update_install_requires in project_override for [project] dependencies (Proposal 2.3) - create_files setting to create missing source files (Proposal 2.6) - resolver_dist provider/organization/repo/tag_matcher for YAML-driven GitHub/GitLab tag resolution (Proposal 2.1) - vendor_rust_before_patch ordering control (Proposal 3.1) All changes are backward compatible with existing YAML configurations and plugin hooks continue to take priority over YAML settings. Co-Authored-By: Claude <claude@anthropic.com> Closes: python-wheel-build#928
Contributor
Author
|
This is an experimentation - do not review it please. |
Additional tests for resolver configuration, source preparation, pyproject override, and create_files functionality covering edge cases and integration scenarios. Co-Authored-By: Claude <claude@anthropic.com> Signed-off-by: Emilien Macchi <emacchi@redhat.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implements 6 features from issue #928 to allow more package configurations to be expressed declaratively in YAML settings files, reducing the need for custom override plugins (~30 plugins can be eliminated, ~12 more simplified).
prepare_new_source()now automatically creates PKG-INFO when missing${version},${version_base_version},${version_post}template variables inenv:settingsremove_install_requiresandupdate_install_requiresinproject_overridecreate_filessetting to create files in source tree during preparationprovider: github/gitlabwithorganization,repo,project_path,server_url,tag_matcherinresolver_distvendor_rust_before_patchsetting to control vendoring orderAll changes are backward compatible. Plugin hooks continue to take priority over YAML settings.
Test plan
🤖 Generated with Claude Code
Closes: #928