sidpug-arcana opened a new issue, #209:
URL: https://github.com/apache/arrow-swift/issues/209
## Describe the bug
`swift build` in `CDataWGo/` fails, because `CDataWGo/Package.swift` still
declares a local dependency on `../Arrow`:
```swift
.package(path: "../Arrow") // 👈 Reference to a Local Package
```
That directory no longer exists. The package was consolidated into a single
manifest at the repository root in #109 (`d24935c`, "Move ArrowTests to
standard layout"), but the `CDataWGo` manifest was not updated at the time.
Error on `main` (`f02f9d0`), macOS 27.0, Swift 6.4.2:
```console
$ cd CDataWGo && swift build
error: the package at '.../arrow-swift/Arrow' cannot be accessed
(.../arrow-swift/Arrow doesn't exist in file system)
```
Changing only the path to `..` is not enough, because SwiftPM derives a path
dependency's identity from its directory name. The existing product reference
then fails:
```console
error: 'cdatawgo': unknown package 'Arrow' in dependencies of target
'go-swift';
valid packages are: 'arrow-swift' (at '.../arrow-swift')
```
## Expected behavior
`swift build` in `CDataWGo/` should succeed, so the Go ↔ Swift C data
interface harness can be built, or the harness should be removed if it is no
longer maintained.
I verified that this manifest change builds successfully:
```swift
.package(name: "Arrow", path: "..")
```
It works both against the current root manifest (`swift-tools-version:
5.10`) and against the `swift-tools-version: 6.1` root from #202.
## Additional context
- Nothing in CI builds `CDataWGo/`, which is why this went unnoticed:
`ci/scripts/{build,test}.sh` only build the root package. The Swift side is
also excluded from SwiftLint (`.swiftlint.yml`), and Dependabot only tracks the
Go module there.
- The harness builds the static `go-swift` library from
`CDataWGo/Sources/go-swift/CDataTest.swift`, which `CDataWGo/main.go` links
with cgo to exercise the C data interface against `arrow-go` in both directions.
- The same layout migration left stale `/Arrow/` and `/ArrowFlight/` entries
in `.github/dependabot.yml`; those are cleaned up separately in #208.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]