Skip to content

Work around swift-bootstrap inability to handle plugins #7750

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

Merged
merged 2 commits into from
Jul 3, 2024

Conversation

MaxDesiatov
Copy link
Contributor

swift-bootstrap currently can't handle dependencies with plugins, which prevents us from bumping Swift Argument Parser to a newer version, which did add a dependency on a plugin. The easiest workaround is to exclude plugins from the modules graph only when building with swift-bootstrap.

@MaxDesiatov MaxDesiatov added bug build system Changes to interactions with build systems modules graph Modules dependency resolution labels Jul 3, 2024
@MaxDesiatov MaxDesiatov self-assigned this Jul 3, 2024
@MaxDesiatov
Copy link
Contributor Author

@swift-ci test

@MaxDesiatov MaxDesiatov removed the build system Changes to interactions with build systems label Jul 3, 2024
@MaxDesiatov
Copy link
Contributor Author

@swift-ci test

@MaxDesiatov
Copy link
Contributor Author

@swift-ci test windows

@MaxDesiatov MaxDesiatov enabled auto-merge (squash) July 3, 2024 17:41
@MaxDesiatov MaxDesiatov requested a review from bnbarham July 3, 2024 18:37
Copy link
Contributor

@xedin xedin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reasonable since we are going to cherry-pick this to 6.0 but I hope that it's going to be required in the future...

@MaxDesiatov
Copy link
Contributor Author

@swift-ci test linux

@MaxDesiatov MaxDesiatov merged commit ca2a194 into main Jul 3, 2024
5 checks passed
@MaxDesiatov MaxDesiatov deleted the maxd/swift-bootstrap-plugins branch July 3, 2024 22:57
MaxDesiatov added a commit that referenced this pull request Jul 4, 2024
Cherry-pick of
#7750.

**Explanation**: `swift-bootstrap` currently can't handle dependencies
with plugins, which prevents us from bumping Swift Argument Parser to a
newer version, which did add a dependency on a plugin. The easiest
workaround is to exclude plugins from the modules graph only when
building with `swift-bootstrap`.
**Scope**: isolated to the `swift-bootstrap` command.
**Risk**: low due to isolated scope and the NFC nature of the change for
all non-bootstrap builds (which are all of the common builds,
`swift-bootstrap` is only used to build SwiftPM itself).
**Testing**: automated, `swift-bootstrap` is exercised in every CI
build.
**Issue**: rdar://118081439
**Reviewer**: @xedin
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug modules graph Modules dependency resolution
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants