-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
Implement --checksum
option on swift sdk install
#7722
Merged
Merged
Conversation
This file contains 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
This option [was specified in the corresponding proposal for Swift SDKs](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md#swift-sdk-installation-and-configuration): > For Swift SDKs installed from remote URLs an additional `--checksum` option is required, through which users of a Swift SDK can specify a checksum provided by a publisher of the SDK. The latter can produce a checksum by running `swift package compute-checksum command` (introduced in [SE-0272](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0272-swiftpm-binary-dependencies.md)) with the Swift SDK bundle archive as an argument.
@swift-ci test |
@swift-ci test windows |
1 similar comment
@swift-ci test windows |
kateinoigakukun
approved these changes
Jun 28, 2024
al45tair
reviewed
Jun 28, 2024
Co-authored-by: Alastair Houghton <ahoughton@apple.com>
@swift-ci test |
@swift-ci test windows |
xedin
approved these changes
Jun 28, 2024
This was referenced Jul 3, 2024
MaxDesiatov
added a commit
that referenced
this pull request
Jul 3, 2024
This feature [was specified in the corresponding proposal for Swift SDKs](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md#swift-sdk-installation-and-configuration): > For Swift SDKs installed from remote URLs an additional `--checksum` option is required, through which users of a Swift SDK can specify a checksum provided by a publisher of the SDK. The latter can produce a checksum by running `swift package compute-checksum` command (introduced in [SE-0272](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0272-swiftpm-binary-dependencies.md)) with the Swift SDK bundle archive as an argument. Currently, `swift package compute-checksum` is unable to handle `.tar.gz` bundles, which is a commonly used format for Swift SDKs. We're fixing that here by adding correct and unified handling for archive extensions. This change is isolated to the `swift package compute-checksum` subcommand. The `--checksum` option is added in a subsequent PR: #7722.
MaxDesiatov
added a commit
that referenced
this pull request
Jul 3, 2024
Cherry-pick of #7748. **Explanation**: This feature [was specified in the corresponding proposal for Swift SDKs](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md#swift-sdk-installation-and-configuration): > For Swift SDKs installed from remote URLs an additional `--checksum` option is required, through which users of a Swift SDK can specify a checksum provided by a publisher of the SDK. The latter can produce a checksum by running `swift package compute-checksum` command (introduced in [SE-0272](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0272-swiftpm-binary-dependencies.md)) with the Swift SDK bundle archive as an argument. Currently, `swift package compute-checksum` is unable to handle `.tar.gz` bundles, which is a commonly used format for Swift SDKs. We're fixing that here by adding correct and unified handling for archive extensions. This change is isolated to the `swift package compute-checksum` subcommand. The `--checksum` option is added in a subsequent PR: #7722. **Scope**: Isolated to `swift package compute-checksum` subcommand. **Risk**: Low, no existing behavior is **Testing**: Automated test cases modified/added and passing in a subsequent PR: #7723 **Issue**: rdar://130590711 **Reviewer**: @bnbarham
@swift-ci test |
@swift-ci test windows |
This was referenced Jul 25, 2024
…o maxd/checksum-swift-sdk # Conflicts: # Tests/PackageModelTests/SwiftSDKBundleTests.swift
@swift-ci test |
@swift-ci test windows |
…package-manager into maxd/checksum-swift-sdk # Conflicts: # Tests/PackageModelTests/SwiftSDKBundleTests.swift
@swift-ci test |
@swift-ci test windows |
CI failure looks unrelated:
|
MaxDesiatov
added a commit
that referenced
this pull request
Jul 26, 2024
Cherry-pick of #7722. **Explanation**: This option [was specified in the corresponding proposal for Swift SDKs](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0387-cross-compilation-destinations.md#swift-sdk-installation-and-configuration): > For Swift SDKs installed from remote URLs an additional `--checksum` option is required, through which users of a Swift SDK can specify a checksum provided by a publisher of the SDK. The latter can produce a checksum by running `swift package compute-checksum command` (introduced in [SE-0272](https://github.com/swiftlang/swift-evolution/blob/main/proposals/0272-swiftpm-binary-dependencies.md)) with the Swift SDK bundle archive as an argument. **Scope**: the change is isolated to `swift sdk install` and `swift package compute-checksum` subcommands. **Risk**: low due to isolation to only two rarely used subcommands with corresponding automated test cases provided. **Testing**: updated existing test cases. **Issue**: rdar://130590711 **Reviewer**: @bnbarham
@swift-ci test |
MaxDesiatov
added a commit
that referenced
this pull request
Sep 3, 2024
…` item `CHANGELOG.md` had a broken link. Additionally, `swift sdk install --checksum` change introduced in #7722 seems to be changelog-worthy, but was previously missing.
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.
Motivation:
This option was specified in the corresponding proposal for Swift SDKs:
Modifications:
Added
isFileSupported
method onArchiver
to unify archive extensions matching logic betweenswift package compute-checksum
andswift sdk install
.Refactored checksum computation logic into
static func checksum
onWorkspace.BinaryArtifactsManager
to also unify it between the two commands.Added error and output handling for checksums in
func SwiftSDKBundleStore.installIfValid
, updated corresponding unit tests.Result:
Resolves rdar://130590711