I want to call out a behavior change in 1.12.

PR #16765 <https://github.com/apache/iceberg/pull/16765> changed
GeometryType / GeographyType so toString() always writes the resolved
defaults instead of omitting them.

*Before*: Default instances collapsed to the bare type name. Geometry with
no CRS printed geometry. Geography printed geography, geography(crs),
or geography(crs,
algorithm) depending on what was stored as unset.

*After*: the constructor stores omitted CRS / algorithm as the Iceberg
defaults, and toString() always includes them:

   - geometry → geometry(OGC:CRS84)
   - geography → geography(OGC:CRS84, spherical)

*Implications*

   - Read path is backward compatible, as SchemaParser or
   Types.fromTypeName can parse the type string to the same Type object
   - Write path is not string stable.

*Question*: Do we consider the type's `toString()` change a breaking
change? Personally, I am okay with 1.12 moving forward with the changed
behavior since read is compatible. But I wanted to bring this to the
community attention.

On Fri, Sep 18, 2026 at 9:57 AM Gianluca Graziadei <[email protected]>
wrote:

> +1 (non-binding)
>
> Verified checksums, signature, source archive vs. tag, RAT, and ran
> smoke tests with the staged Spark 4.0 runtime.
>
> One follow-up, in the same spirit as Xuanwo's note: the source
> archive also bundles site/docs/assets/javascript/lottie-player.js
> (LottieFiles, MIT) without a license header or an entry in the root
> LICENSE. Not a blocker for this RC since both assets have shipped
> since 1.9.0; this issue is already tacked here
> https://lists.apache.org/thread/hstl6z6qp55hxgdlljpc5xg8wc3kq800
>
> Separately, while testing I hit a pre-existing NoSuchMethodError when
> reading variant columns with commons-lang3 < 3.13 on the classpath
> (iceberg-parquet uses Streams.of(Iterable) without declaring the
> dependency). Also present in 1.11.0, so not a regression; issue tracked
> here
> https://github.com/apache/iceberg/issues/18164
>
> Cheers,
> Gianluca
>
> On 2026/09/18 00:22:06 Neelesh Salian wrote:
> > Hi Everyone,
> >
> > I propose that we release the following RC as the official Apache Iceberg
> > 1.12.0 release.
> >
> > The commit ID is dec392570a88e45ac3a417a487dd72f9bdb629d5
> > * This corresponds to the tag: apache-iceberg-1.12.0-rc0
> > * https://github.com/apache/iceberg/commits/apache-iceberg-1.12.0-rc0
> > *
> >
> https://github.com/apache/iceberg/tree/dec392570a88e45ac3a417a487dd72f9bdb629d5
> >
> > The release tarball, signature, and checksums are here:
> > *
> https://dist.apache.org/repos/dist/dev/iceberg/apache-iceberg-1.12.0-rc0
> >
> > You can find the KEYS file here:
> > * https://downloads.apache.org/iceberg/KEYS
> >
> > Convenience binary artifacts are staged on Nexus. The Maven repository
> URL
> > is:
> > *
> https://repository.apache.org/content/repositories/orgapacheiceberg-1283/
> >
> > Please download, verify, and test.
> >
> > Instructions for verifying a release can be found here:
> > * https://iceberg.apache.org/how-to-release/#how-to-verify-a-release
> >
> > As this vote spans the weekend, it will remain open until Monday,
> September
> > 21, 2026 at 2:00 PM Pacific Time.
> >
> > [ ] +1 Release this as Apache Iceberg 1.12.0
> > [ ] +0
> > [ ] -1 Do not release this because...
> >
> > Only PMC members have binding votes, but other community members are
> > encouraged to cast
> > non-binding votes. This vote will pass if there are 3 binding +1 votes
> and
> > more binding
> > +1 votes than -1 votes.
> >
>

Reply via email to