Skip to content

v0.9.0

Latest

Choose a tag to compare

@geruh geruh released this 18 Mar 19:23
· 21 commits to main since this release
7ef4063

What's Changed

  • feat(datafusion): Apply SortExec when writing in clustered mode by @CTTY in #2005
  • chore(deps): Bump crate-ci/typos from 1.40.0 to 1.41.0 by @dependabot[bot] in #1982
  • fix: Use correct byte representation for decimal hashing by @aditya-subrahmanyan in #1998
  • fix: Reserved sort order ID cannot contain any fields by @aditya-subrahmanyan in #1978
  • feat(datafusion): Add LIMIT pushdown support by @viirya in #2006
  • feat(spec): add table_properties() method to TableMetadata by @xbattlax in #2002
  • chore(deps): Bump crate-ci/typos from 1.41.0 to 1.42.0 by @dependabot[bot] in #2012
  • chore(deps): Bump the arrow-parquet group with 6 updates by @dependabot[bot] in #2013
  • docs: Minor update to README.md by @aditya-subrahmanyan in #2018
  • docs: split up the make command in release doc by @kevinjqliu in #2016
  • add make site for local website preview by @kevinjqliu in #2017
  • feat(datafusion): Add schema validation for partition projection by @viirya in #2008
  • feat(datafusion): Support CREATE TABLE for DataFusion by @CTTY in #1972
  • chore: Update copyright year in NOTICE files by @AndreaBozzo in #2024
  • infra: Restrict audit workflow to main apache/iceberg-rust repository by @kevinjqliu in #1974
  • rfc: Making Storage a Trait by @CTTY in #1885
  • fix: allow v2 to v3 table upgrades with existing snapshots by @aditya-subrahmanyan in #2010
  • site: release static version from downloads page by @kevinjqliu in #2039
  • infra: upgrade spark to 3.5.8 by @kevinjqliu in #2045
  • infra: use spark base image for docker by @kevinjqliu in #2043
  • infra: auto update docker image by @kevinjqliu in #2044
  • chore(deps): Bump rust_decimal from 1.39.0 to 1.40.0 by @dependabot[bot] in #2047
  • chore(deps): Bump the arrow-parquet group with 2 updates by @dependabot[bot] in #2046
  • infra: dynamically set msrv in github workflows by @kevinjqliu in #2040
  • fix: reuse partition field IDs for equivalent fields in AddSpec by @aditya-subrahmanyan in #2011
  • infra: fix manual trigger for the "release python" github workflow by @kevinjqliu in #2049
  • perf(reader): Fast path ArrowReader::read when concurrency is 1 to avoid waker churn and add determinism to FileScanTask processing by @mbutrovich in #2020
  • feat(datafusion): Add Binary scalar value conversion for predicate pushdown by @viirya in #2048
  • feat(datafusion): Add support for DROP TABLE by @CTTY in #2033
  • feat(io): Rename Storage to OpenDalStorage by @CTTY in #2059
  • chore(deps): Bump uuid from 1.19.0 to 1.20.0 by @dependabot[bot] in #2067
  • chore(deps): Bump crate-ci/typos from 1.42.0 to 1.42.1 by @dependabot[bot] in #2066
  • feat(datafusion): Add LIKE predicate pushdown for StartsWith patterns by @viirya in #2014
  • feat(io): Add Storage, StorageFactory, StorageConfig by @CTTY in #2061
  • Simplify test setup by starting container only once. by @liurenjie1024 in #2071
  • feat(io): Add specific storage configs by @CTTY in #2072
  • Cleanup integration tests by @liurenjie1024 in #2074
  • Let integration tests run in parallel by @liurenjie1024 in #2076
  • Use nextest to speedup tests by @liurenjie1024 in #2078
  • feat: Factor out CompressionCodec to common location and add Gzip by @emkornfield in #2081
  • Split sqllogictests into different schedule by @liurenjie1024 in #2085
  • feat(spec): replace rust_decimal with fastnum for 38-digit precision by @xbattlax in #2063
  • Add ETL project link to README by @imor in #2087
  • site: merge container docs and add a section about docker desktop by @kevinjqliu in #2091
  • Fix moto server port conflict with macOS AirPlay Receiver by @kevinjqliu in #2090
  • feat(datafusion): Add Boolean predicate pushdown support by @viirya in #2082
  • fix: SqlCatalogBuilder does not save supplied name in SqlCatalogConfig before initializing SqlCatalog by @brodiealexander in #2079
  • feat(datafusion): Add Timestamp scalar value conversion for predicate pushdown by @viirya in #2069
  • chore(python): Use PyPI release of pyiceberg instead of git dependency by @kevinjqliu in #2095
  • chore(deps): Bump minijinja from 2.13.0 to 2.15.1 by @dependabot[bot] in #2099
  • chore(deps): Bump crate-ci/typos from 1.42.1 to 1.42.3 by @dependabot[bot] in #2098
  • feat!(io): Implement Storage for OpenDal by @CTTY in #2080
  • chore(deps): Bump bytes from 1.11.0 to 1.11.1 by @dependabot[bot] in #2102
  • chore(deps): Bump bytes from 1.10.1 to 1.11.1 in /bindings/python by @dependabot[bot] in #2101
  • feat(io): Implement native LocalFsStorage by @CTTY in #2094
  • feat(io): Implement native MemoryStorage by @CTTY in #2097
  • fix(python): Bump Python version upper bound by @geruh in #2110
  • chore(deps): Bump time from 0.3.44 to 0.3.47 by @dependabot[bot] in #2113
  • chore(deps): Bump time from 0.3.44 to 0.3.47 in /bindings/python by @dependabot[bot] in #2112
  • chore(deps): Bump fs-err from 3.2.0 to 3.3.0 by @dependabot[bot] in #2126
  • chore(deps): Bump the arrow-parquet group with 6 updates by @dependabot[bot] in #2125
  • chore(deps): Bump crate-ci/typos from 1.42.3 to 1.43.3 by @dependabot[bot] in #2124
  • Use uv instead of pip for python packages by @blackmwk in #2129
  • refactor(storage): Reorganize storage code into a new module by @CTTY in #2109
  • fix: Interpret s3tables warehouse as table_location not metadata loca… by @emkornfield in #2115
  • fix(rest): Filter sensitive headers from error logs (#2117) by @cmackenzie1 in #2130
  • chore(deps): Bump crate-ci/typos from 1.43.3 to 1.43.4 by @dependabot[bot] in #2138
  • chore(deps): Bump tempfile from 3.23.0 to 3.25.0 by @dependabot[bot] in #2140
  • chore(deps): Bump uuid from 1.20.0 to 1.21.0 by @dependabot[bot] in #2141
  • infra: set github actions max-parallel to 15 by @kevinjqliu in #2150
  • chore(deps): Bump the arrow-parquet group with 2 updates by @dependabot[bot] in #2139
  • CI: Add CodeQL workflow for GitHub Actions security scanning by @kevinjqliu in #2151
  • CI(Python): dont use --sdist in maturin build for CI by @kevinjqliu in #2166
  • feat(playground): add memory catalog support by @Shekharrajak in #2121
  • chore(deps): Bump minijinja from 2.15.1 to 2.16.0 by @dependabot[bot] in #2162
  • chore(deps): Bump actions/stale from 10.1.1 to 10.2.0 by @dependabot[bot] in #2159
  • chore(ci): add explicit least-privilege workflow permissions by @kevinjqliu in #2163
  • Potential fix for code scanning alert no. 1: Cache Poisoning via low-privileged code injection by @kevinjqliu in #2164
  • chore(deps): Bump actions/checkout from 4 to 6 by @dependabot[bot] in #2161
  • chore(deps): Bump crate-ci/typos from 1.43.4 to 1.43.5 by @dependabot[bot] in #2160
  • chore(deps): Bump urllib3 from 2.5.0 to 2.6.3 in /bindings/python by @dependabot[bot] in #2170
  • ci: Update stale.yml GitHub workflow to handle stale PRs by @mbutrovich in #2171
  • perf(reader): Add Parquet metadata size hint option to ArrowReaderBuilder by @mbutrovich in #2173
  • infra: improve python binding setup by @kevinjqliu in #2178
  • perf(reader): Pass data file size and delete file size to reader to avoid stat() calls by @mbutrovich in #2175
  • feat(datafusion): support isnan predicate pushdown to Iceberg by @charlesdong1991 in #2142
  • chore(deps): upgrade to DataFusion 52 by @ethan-tyler in #1997
  • chore: use ubuntu-slim for lightweight jobs by @zhjwpku in #2187
  • chore(deps): Bump tempfile from 3.24.0 to 3.25.0 by @dependabot[bot] in #2198
  • chore(deps): Bump fs-err from 3.2.2 to 3.3.0 by @dependabot[bot] in #2197
  • chore(deps): Bump crate-ci/typos from 1.43.5 to 1.44.0 by @dependabot[bot] in #2190
  • chore(deps): Bump actions/download-artifact from 7 to 8 by @dependabot[bot] in #2191
  • chore(deps): Bump uuid from 1.19.0 to 1.21.0 by @dependabot[bot] in #2193
  • chore(deps): Bump serde_with from 3.16.1 to 3.17.0 by @dependabot[bot] in #2194
  • chore(deps): Bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #2189
  • chore(deps): Bump aws-sdk-glue from 1.133.0 to 1.134.0 by @dependabot[bot] in #2196
  • chore(deps): Bump the arrow-parquet group with 7 updates by @dependabot[bot] in #2192
  • chore(deps): Bump minijinja from 2.14.0 to 2.16.0 by @dependabot[bot] in #2195
  • feat!(storage): Integration Storage trait with FileIO by @CTTY in #2116
  • chore: Update MSRV to 1.91.0 by @xanderbailey in #2204
  • refactor!(storage): Move OpenDal Storage to a new crate iceberg-storage-opendal by @CTTY in #2207
  • perf(reader): Implement AsyncFileReader get_byte_ranges and coalesce close ranges by @mbutrovich in #2181
  • chore: update to DataFusion 52.2 by @xanderbailey in #2199
  • chore(deps): Bump minijinja from 2.16.0 to 2.17.1 by @dependabot[bot] in #2222
  • chore(deps): Bump uuid from 1.21.0 to 1.22.0 by @dependabot[bot] in #2221
  • doc: Update IO feature flag and examples by @CTTY in #2214
  • perf(reader): Avoid second create_parquet_record_batch_stream_builder() call for migrated tables by @mbutrovich in #2176
  • chore: Bump version to 0.9.0, update dep list and changelog by @CTTY in #2223
  • chore: Bumping MSRV to 1.92.0 by @CTTY in #2224
  • feat(reader): support timestamp type in create_column by @chenzl25 in #2180
  • chore: Second round of 0.9.0 changelog update by @CTTY in #2225

New Contributors

Full Changelog: v0.8.0...v0.9.0