fix: use exact version for FlatBuffers dependency (#143) ### What changes are included in this PR? This PR updates the `google/flatbuffers` dependency in `Package.swift` to use the `exact` version requirement (`exact: "25.2.10"`) instead of the previous `from:` requirement. ### Why are these changes necessary? The `from:` parameter allows the Swift Package Manager to automatically resolve and fetch newer minor versions. However, FlatBuffers has a known history of introducing breaking API changes between minor updates. Allowing floating versions can silently break the `*_generated.swift` files and disrupt the build process for anyone depending on this package. Pinning the dependency to an exact version acts as a strict contract, ensuring build stability, predictable code generation, and preventing upstream surprises. ### Related Issues Closes #114
Apache Arrow is a universal columnar format and multi-language toolbox for fast data interchange and in-memory analytics. It contains a set of technologies that enable data systems to efficiently store, process, and move data.
Add Arrow as a dependency in your Package.swift:
dependencies: [ .package(url: "https://github.com/apache/arrow-swift.git", from: "21.0.0") ]
Then add Arrow to your target's dependencies:
.target( name: "YourTarget", dependencies: ["Arrow"] )
https://github.com/apache/arrow-swift.gitFor API documentation and usage examples, see the documentation on Swift Package Index.
Even if you do not plan to contribute to Apache Arrow itself or Apache Arrow integrations in other projects, we'd be happy to have you involved:
We prefer to receive contributions in the form of GitHub pull requests. Please send pull requests against the github.com/apache/arrow-swift repository.
If you are looking for some ideas on what to contribute, check out the GitHub Issues for the Apache Arrow Swift project. Comment on the issue, GitHub Discussions and/or contact dev@arrow.apache.org with your questions and ideas.
If you‘d like to report a bug but don’t have time to fix it, you can still post it on GitHub issues.