Open
Description
Removing SPI is considered as a breaking change in diagnose-api-breaking-changes
. I wouldn’t consider SPI part of a package’s public API and thus don’t think it should be considered in the API breakages.
To reproduce run:
#!/usr/bin/env bash
cd $(mktemp -d)
echo $(realpath .)
echo '
// swift-tools-version: 6.0
import PackageDescription
let package = Package(
name: "mypackage",
products: [
.library(name: "mypackage", targets: ["mypackage"])
],
targets: [
.target(name: "mypackage")
]
)
' > Package.swift
mkdir -p Sources/mypackage
echo '@_spi(MySPI) public let myPublicString: String = "ABC"' > Sources/mypackage/mypackage.swift
git init
git add Package.swift Sources/mypackage/mypackage.swift
git commit -m "Initial commit"
git tag 1.0.0
echo '' > Sources/mypackage/mypackage.swift
swift package diagnose-api-breaking-changes 1.0.0
This is blocking swiftlang/swift-syntax#3010
Metadata
Metadata
Assignees
Labels
No labels