Release Notes¶
See GitHub Releases for downloads and more information.
1.0.0.CR1 (2026-05-31)¶
Highlights of this release:
- Breaking:
ColumnReaderrebuilt around a layer model, with per-layer validity, offsets, and real-item-only sizing for nested data (see the Layer Model docs);ColumnReaderis now marked@Experimental - More performant evaluation of multi-column filter expressions
- Split-aware reading via
RowGroupPredicate.byteRange(...), for Hadoop-style split integrations - Coordinated multi-column reads via
ColumnReaders.nextBatch()/getRecordCount() - Richer
RowReadervalue model: by-index field access onPqStruct, key-based lookup and typed accessors onPqMap, typedListaccessors onPqList, and additional variant accessors - Float16 logical type support (readable values and filter predicates) and recognition of the
NullTypelogical annotation - First-cut geospatial support (GEOMETRY/GEOGRAPHY logical types and bounding-box metadata)
- Reading of local files larger than 2 GB
- CLI: exhaustive logical-type formatting;
hardwood dive: faster navigation of large collections and corrected "go to latest" in the data preview
See the 1.0.0.CR1 milestone on GitHub for the full list of resolved issues.
Thank you to all contributors to this release: Carlos Sousa, Fawzi Essam, Gunnar Morling, Manish, Mohamed Ibrahim Elsawy, muhannd Sayed, polo, Prashant Khanal, Rion Williams, Said Boudjelda.
1.0.0.Beta2 (2026-04-29)¶
Highlights of this release:
- Interactive
hardwood diveTUI for exploring Parquet files - Parquet Variant logical type, including shredded reassembly
- Additional logical types: INTERVAL, MAP/LIST, INT96 timestamps
- Faster reads via a parallel per-column pipeline and per-column in-page row skipping
- Reduced S3 traffic via byte-range caching, coalesced GETs, and small-column fetches
- Unified reader API based on builders
- CLI with reorganized
inspectsubcommands
See the 1.0.0.Beta2 milestone on GitHub for the full list of resolved issues.
Thank you to all contributors to this release: André Rouél, Brandon Brown, Bruno Borges, Fawzi Essam, Gunnar Morling, Manish, polo, Rion Williams, Sabarish Rajamohan, Trevin Chow.
1.0.0.Beta1 (2026-04-02)¶
Highlights of this release:
- S3 and remote object store support with coalesced reads
- CLI tool for inspecting and querying Parquet files
- Avro
GenericRecordsupport via thehardwood-avromodule - Row group filtering with predicate push-down and page-level column index filtering
InputFileabstraction for pluggable file sources- S3 support and filtering in the parquet-java compatibility layer
- Project documentation site
See the 1.0.0.Beta1 milestone on GitHub for the full list of resolved issues.
Thank you to all contributors to this release: Arnav Balyan, Brandon Brown, Gunnar Morling, Manish, Nicolas Grondin, Rion Williams, Romain Manni-Bucau, Said Boudjelda.
1.0.0.Alpha1 (2026-02-26)¶
Highlights of this release:
- Zero-dependency Parquet file reader for Java
- Row-oriented and columnar read APIs
- Support for flat and nested schemas (lists, maps, structs)
- All standard encodings (RLE, DELTA_BINARY_PACKED, DELTA_BYTE_ARRAY, BYTE_STREAM_SPLIT, etc.)
- Compression: Snappy, ZSTD, LZ4, GZIP, Brotli
- Projection push-down, parallel page pre-fetching, and memory-mapped file I/O
- Multi-file reader and
parquet-javacompatibility layer - Optional Vector API acceleration on Java 22+
- JFR events for observability
- BOM for dependency management
Thank you to all contributors to this release: Andres Almiray, Gunnar Morling, Rion Williams.