Hi,

I don't object the proposal. Could you check how many Apache
Arrow Swift users still use Swift 5.10?

Thanks,
-- 
kou

In <[email protected]>
  "[DISCUSS][Swift] Proposal to raise minimum Swift version to 6.0" on Sun, 26 
Jul 2026 01:14:19 +0200,
  "demetrius albuquerque via dev" <[email protected]> wrote:

> Hello Arrow community,
> 
> I would like to start a technical discussion about raising the minimum
> Swift
> version required to build apache/arrow-swift from the current 5.10 to
> 6.0.
> 
> Motivation
> ----------
> 
> - Swift 6.0, released in 2024, natively supports the Int128 type
> - (SE-0425).
>   This is a fundamental building block for robustly implementing
> Decimal
>   types (Decimal32/64/128/256) in our Swift columnar implementation,
> which
>   are currently marked as unsupported in our official status table.
> 
> - Our CI infrastructure is already building and testing with Swift 6.0
>   (the 21.0.0 RC0 verification used Swift 6.0.3 and 6.1.2
> successfully),
>   which reduces the risk of this transition.
> 
> - Key dependencies like grpc-swift and swift-protobuf now support or
>   recommend Swift 6.0, simplifying dependency management and reducing
> the
>   need for conditional workarounds.
> 
> Expected Benefits
> -----------------
> 
> 1. Enable Complex Types: Unlocks native Int128, essential for
> high-precision
>    decimal arithmetic and other operations.
> 
> 2. Ecosystem Alignment: Reduces maintenance burden by aligning the
> minimum
>    version with the one used by maintainers and modern dependencies.
> 
> 3. Access to New Language Features: Allows the use of performance
>    improvements, concurrency safety enhancements, and other Swift 6.0
>    features.
> 
> Impact and Migration Plan
> -------------------------
> 
> - Breaking Change: Users still on Swift 5.10 will no longer be able to
>   build the package. This needs to be clearly communicated in the
> release
>   notes.
> 
> Transition Path:
> - Update the swift-tools-version in Package.swift to 6.0.
> - Update ci/docker/ubuntu.dockerfile to use a Swift 6.0 base image.
> - Audit the code for any @preconcurrency imports or #if compiler
> - directives
>   that are no longer needed and remove them.
> - Test the build on Swift 6.0 and ensure the concurrency model
> - (Sendable)
>   is respected, or use @preconcurrency annotations where necessary.
> 
> If the community agrees on this direction, I can open a Pull Request
> to
> implement the changes and update the documentation accordingly.
> 
> I would appreciate feedback from maintainers (@kou, @willtemperley)
> and
> other contributors, especially on potential compatibility issues with
> existing consumers.
> 
> Best regards,
> 
> Demetrius Albuquerque [maltzsama]

Reply via email to