site/docs/releases.md
The latest version of Iceberg is [{{ icebergVersion }}](https://github.com/apache/iceberg/releases/tag/apache-iceberg-{{ icebergVersion }}).
To use Iceberg in Spark or Flink, download the runtime JAR for your engine version and add it to the jars folder of your installation.
To add a dependency on Iceberg in Gradle, add the following to build.gradle:
dependencies {
compile 'org.apache.iceberg:iceberg-core:{{ icebergVersion }}'
}
You may also want to include iceberg-parquet for Parquet file support.
To add a dependency on Iceberg in Maven, add the following to your pom.xml:
<dependencies>
...
<dependency>
<groupId>org.apache.iceberg</groupId>
<artifactId>iceberg-core</artifactId>
<version>{{ icebergVersion }}</version>
</dependency>
...
</dependencies>
Apache Iceberg 1.10.1 was released on Dec 22, 2025.
The 1.10.1 release contains bug fixes. For full release notes visit Github
NAN_VALUE_COUNTS serialization for ContentFile (#14721)ParquetUtil.footerMetrics (#14617)ParquetTypeVisitor (#14588)ParquetMetricsRowGroupFilter (#14081)VariantLogicalType in TypeWithSchemaVisitor (#14261)UUID ClassCastException when reading Parquet files with UUIDs (#14027)DynamicCommitter idempotence in the presence of failures (#14182)DynamicCommitter idempotence in the presence of failures (#14213)ManifestOutputFileFactory during flushing (#14358)ManifestOutputFileFactory during flushing (#14385)DynamicIcebergSink (#14406)DynamicIcebergSink (#14765)Apache Iceberg 1.10.0 was released on September 11, 2025.
The 1.10.0 release contains bug fixes and new features. For full release notes visit Github
IcebergSink v2 sink: default writer task parallelism to input stream parallelism to promote chaining and maintain the same behavior as FlinkSink v1 sink (#13260)Apache Iceberg 1.9.2 was released on Jul 16, 2025.
The 1.9.2 release contains bug fixes. For full release notes visit Github
Apache Iceberg 1.9.1 was released on May 27, 2025.
The 1.9.1 release contains bug fixes. For full release notes visit Github
Apache Iceberg 1.9.0 was released on April 28, 2025.
The 1.9.0 release contains bug fixes and new features. For full release notes visit Github
Note - Due to a bug in the build system, Iceberg 1.9.0 will return a version of 'unknown' when queried via the API. This is fixed in 1.9.1.
current-snapshot-id (#12334)current-snapshot-id for V3+ (#12335)Apache Iceberg 1.8.1 was released on February 28, 2025.
The 1.8.1 release contains bug fixes and fixes to LICENSE/NOTICE files. For full release notes visit Github
Apache Iceberg 1.8.0 was released on February 13, 2025.
The 1.8.0 release contains bug fixes and new features. For full release notes visit Github
Apache Iceberg 1.7.2 was released on March 19, 2025.
The 1.7.2 release contains bug fixes and new features. For full release notes visit Github
Apache Iceberg 1.7.1 was released on December 6, 2024.
The 1.7.1 release contains bug fixes and new features. For full release notes visit Github
Apache Iceberg 1.7.0 was released on November 8, 2024.
The 1.7.0 release contains fixes, dependency updates, and new features. For full release notes please visit Github. An abridged list follows
Apache Iceberg 1.6.1 was released on August 27, 2024.
The 1.6.1 Release contains bug fixes and performance improvements. For full release notes visit Github
Apache Iceberg 1.6.0 was released on July 23, 2024.
The 1.6.0 release contains fixes, dependency updates, and new features (like Kafka Connect commit coordinator and record converters).
For more details, please visit Github.
Apache Iceberg 1.5.2 was released on May 9, 2024.
The 1.5.2 release has the same changes that the 1.5.1 release (see directly below) has. The 1.5.1 release had issues with the spark runtime artifacts; specifically certain artifacts were built with the wrong Scala version. It is strongly recommended to upgrade to 1.5.2 for any systems that are using 1.5.1.
Apache Iceberg 1.5.1 was released on April 25, 2024.
The 1.5.1 patch release contains fixes for JDBC Catalog, fixing a FileIO regression where an extra head request was performed when reading manifests and REST client retries for 5xx failures. The release also includes fixes for system function pushdown for CoW tables in Spark 3.4 and 3.5.
Apache Iceberg 1.5.0 was released on March 11, 2024. The 1.5.0 release adds a variety of new features and bug fixes.
API
Core
Spark
Flink
Parquet
Kafka-Connect
Spec
Vendor Integrations
Dependencies
Note: To enable view support for JDBC catalog, configure jdbc.schema-version to V1 in catalog properties.
For more details, please visit Github.
Apache Iceberg 1.4.3 was released on December 27, 2023. The main issue it solves is missing files from a transaction retry with conflicting manifests. It is recommended to upgrade if you use transactions.
Apache Iceberg 1.4.2 was released on November 2, 2023. The 1.4.2 patch release addresses fixing a remaining case where split offsets should be ignored when they are deemed invalid.
Apache Iceberg 1.4.1 was released on October 23, 2023. The 1.4.1 release addresses various issues identified in the 1.4.0 release.
Apache Iceberg 1.4.0 was released on October 4, 2023. The 1.4.0 release adds a variety of new features and bug fixes.
zstd compression for Parquet by default in new tables (#8593)DeleteFileIndex (#8157)DeleteFileIndex without useful bounds (#8278)ContentFile and FileScanTask (#6934)ResolvingFileIO to support bulk operations (#7976)fast_forward procedure (#8081)TableSink with anonymous object (#7866)FileScanTaskParser for JSON serialization of IcebergSourceSplit (#7978)GCSInputStream (#8071)GCSFileIO (#8168)GCSInputStream (#8301)S3FileIO (#8154)FileIO tracker/closer to Glue catalog (#8315)S3SignRequest (#8361)FileIO that supports ADLSv2 storage (#8303)ADLSFileIO implement DelegateFileIO (#8563)Apache Iceberg 1.3.1 was released on July 25, 2023. The 1.3.1 release addresses various issues identified in the 1.3.0 release.
Apache Iceberg 1.3.0 was released on May 30th, 2023. The 1.3.0 release adds a variety of new features and bug fixes.
Apache Iceberg 1.2.1 was released on April 11th, 2023. The 1.2.1 release is a patch release to address various issues identified in the prior release. Here is an overview:
Apache Iceberg 1.2.0 was released on March 20th, 2023. The 1.2.0 release adds a variety of new features and bug fixes. Here is an overview:
position_deletes metadata table (#6365, #6716)FileIO support for ORC readers and writers (#6293)files metadata table (#5376)NaN (#6517)//) which is not compatible in a Hadoop file system (#6777)min, max and count to improve read performance (#6622)VERSION AS OF (a.k.a. FOR SYSTEM_VERSION AS OF) SQL syntax (#6717, #6575)years, months, days and hours transforms (#6207, #6261, #6300, #6339)add_files procedure result (#6797)rewrite_manifests procedure produced a new manifest even when there was no rewrite performed (#6659)expire_snapshots procedure (#6090)GenericRecord (#6557, #6584)s3://my-bucket could not be parsed (#6352)For more details, please visit Github.
Apache Iceberg 1.1.0 was released on November 28th, 2022. The 1.1.0 release deprecates various pre-1.0.0 methods, and adds a variety of new features. Here is an overview:
For more details, please visit Github.
The 1.0.0 release officially guarantees the stability of the Iceberg API.
Iceberg's API has been largely stable since very early releases and has been integrated with many processing engines, but was still released under a 0.y.z version number indicating that breaking changes may happen. From 1.0.0 forward, the project will follow semver in the public API module, iceberg-api.
This release removes deprecated APIs that are no longer part of the API. To make transitioning to the new release easier, it is based on the 0.14.1 release with only important bug fixes:
This release includes all bug fixes from the 0.14.x patch releases.
Apache Iceberg 0.14.0 was released on 16 July 2022.
AS OF syntax for SQL time travel queriesdata_files (#4336), delete_files (#4243), all_delete_files, and all_files (#4694)files metadata table (#4336) and delete file counts to the manifests table (#4764)all_data_files metadata table (#4382) and the all_manifests table (#4736)AS OF syntax in Spark 3.3 (#5156)mergeSchema option for DataFrame writes (#4154)rewrite_data_files stored procedure and action (#3983, #4902)register_table stored procedure to create tables from metadata JSON files (#4810)publish_changes stored procedure to publish staged commits by ID (#4715)CommitMetadata helper class to set snapshot summary properties from SQL (#4956)write-format to Flink sink builder (#3998)hadoop-conf-dir property (#4622)This release includes all bug fixes from the 0.13.x patch releases.
Apache Iceberg 0.13.2 was released on June 15th, 2022.
Important bug fixes and changes:
A more exhaustive list of changes is available under the 0.13.2 release milestone.
Apache Iceberg 0.13.1 was released on February 14th, 2022.
Important bug fixes:
Spark
Flink
Apache Iceberg 0.13.0 was released on February 4th, 2022.
High-level features:
FileIO is supported with optimized read and write using GCS streaming transfer [#3711]FileIO is supported [#3553]S3FileIO with custom endpoint and credential configurations [#3656] [#3658]S3FileIO now supports server-side checksum validation [#3813]GlueCatalog now displays more table information including table location, description [#3467] and columns [#3888]FileIOs based on file path scheme is supported by configuring a ResolvingFileIO [#3593]DELETE [#3970]RewriteDataFiles action now supports sort-based table optimization [#2829] and merge-on-read delete compaction [#3454]. The corresponding Spark call procedure rewrite_data_files is also supported [#3375]add_files procedure now skips duplicated files by default (can be turned off with the check_duplicate_files flag) [#2895], skips folder without file [#2895] and partitions with null values [#2895] instead of throwing exception, and supports partition pruning for faster table import [#3745]Important bug fixes:
write.data.path going forward. write.folder-storage.path and write.object-storage.path are deprecated [#3094]UNKNOWN instead of FAILURE when new metadata location cannot be found in snapshot history [#3717]history and snapshots metadata tables can now query tables with no current snapshot instead of returning empty [#3812]REFRESH TABLE can now be used with Spark session catalog instead of throwing exception [#3072]FileIO instead of just HadoopFileIO [#3089]REPLACE TABLE AS SELECT can now work with tables with columns that have changed partition transform. Each old partition field of the same column is converted to a void transform with a different name [#3421]ValidationException will be thrown if a user configures both catalog-type and catalog-impl. Previously it chose to use catalog-type. The new behavior brings Flink consistent with Spark and Hive [#3308]RowData serialization issues [#3240]java.sql.Time data type can now be written without data overflow problem [#3740]NullPointerException [#3540]Other notable changes:
Apache Iceberg 0.12.1 was released on November 8th, 2021.
Important bug fixes and changes:
DATE, TIMESTAMP, and TIME types.jdbc.user property if any property called user exists in the environment.add_files by correctly setting the number of records.add_files.A more exhaustive list of changes is available under the 0.12.1 release milestone.
Apache Iceberg 0.12.0 was released on August 15, 2021. It consists of 395 commits authored by 74 contributors over a 139 day period.
High-level features:
key_metadata field to manifest lists for encryption [#2675].iceberg.mr.catalog which was previously used to configure the Iceberg catalog in MapReduce and Hive [#2565].SET and DROP IDENTIFIER FIELDS clauses to ALTER TABLE so people don't have to look up the DDL [#2560].ALTER TABLE REPLACE PARTITION FIELD DDL [#2365].UPDATE statements in Spark [#2193, #2206].RemoveReachableFiles action [#2415].add_files stored procedure [#2210].TIMESTAMP WITHOUT TIMEZONE type in Spark [#2757].Important bug fixes:
int to long or from float to double [#2232]Other notable changes:
Important bug fixes:
High-level features:
Important bug fixes:
day(1969-12-31 10:00:00) produced 0 instead of -1. The fix is backwards compatible, which means predicate projection can still work with the incorrectly transformed partitions written using older versions.ClassCastException for type promotion int to long and float to double during Parquet vectorized read. Now Arrow vector is created by looking at Parquet file schema instead of Iceberg schema for int and float fields.HiveTableOperation that unlock is not called if new metadata cannot be deleted. Now it is guaranteed that unlock is always called for Hive catalog users.CachingCatalog. When a table is dropped, all the metadata tables associated with it are also invalidated in the cache.Other notable changes:
Catalog and FileIO implementationsHigh-level features:
MERGE INTO) in processing engines
Important bug fixes:
notIn and notEqual to match null valuesExpressions.notNull returning an isNull predicate; API only, method was not used by processing enginesIllegalArgumentException in vectorized Spark reads with negative decimal valuesOther notable changes:
iceberg-hive module has been renamed to iceberg-hive-metastore to avoid confusionLocationProviderA more exhaustive list of changes is available under the 0.10.0 release milestone.