> I think we should also make more frequent releases of parquet-format. I'd like to keep this a separate topic from how we work with the thrift file in parquet-java so that we can move forward independently. We don't need to know how parquet-format is released to agree that we want to be able to build against newer structures without a formal release, just like the other implementations do.
> What is the mechanism to track what version of parquet-format, parquet-java depends on? Like the other projects, I don't think we track a specific version of the one from parquet-format, since we may pick changes that have not been released (as that's the pain point we're trying to solve). That said, I suggest that we sync the format into parquet-java when the upstream format is released, if not sooner. We should always use a version that corresponds to a parquet-format commit to avoid drift. Ryan On Fri, Jul 24, 2026 at 10:21 AM Julien Le Dem <[email protected]> wrote: > Hello, > I'm strongly in favor of enabling a passing build on PRs like #3610 > What is the mechanism to track what version of parquet-format, > parquet-java depends on? Is there a check to track discrepancies or drift? > A > POC would help clarify this. > > Separately, I think we should also make more frequent releases of > parquet-format. > That could be formalized in our new versioning process. > In particular every time we merge a new change to the thrift file, we could > systematically create a new minor-patch release of Parquet format with the > addition in preview or experimental depending where we're at. > The documentation would clarify whether a new optional field is part of the > official version yet or not. > That would decouple publishing versioned artifacts and declaring something > part of the next official version. > (and independently of that we can either depend on a tagged version of the > file rather than the maven artifact) > > On Fri, Jul 24, 2026 at 7:42 AM Russell Spitzer <[email protected] > > > wrote: > > > +1 for all the reasons stated above. > > > > On Thu, Jul 23, 2026 at 10:21 PM Gang Wu <[email protected]> wrote: > > > > > I'm in favor of this proposal. > > > > > > PoCing a Java implementation in the current setup is painful. CI builds > > > will > > > always fail, and PRs cannot merge before releasing a new parquet-format > > > jar. > > > > > > Best, > > > Gang > > > > > > On Tue, Jul 21, 2026 at 8:46 PM Antoine Pitrou <[email protected]> > > wrote: > > > > > > > Le 21/07/2026 à 14:05, Andrew Lamb a écrit : > > > > > As a maintainer of arrow-rs 's Parquet implementation, my > experience > > > has > > > > > been that our copy of parquet.thrift (rather than a dependency) has > > > > worked > > > > > great, and we have never had an issue with this scheme that I can > > > > remember > > > > > > > > We do the same in Arrow C++ and never had any problem with it either. > > > > > > > > Regards > > > > > > > > Antoine. > > > > > > > > > > > > > > > > > > Andrew > > > > > > > > > > On Tue, Jul 21, 2026 at 7:19 AM Divjot Arora via dev < > > > > [email protected]> > > > > > wrote: > > > > > > > > > >> Hi folks, > > > > >> > > > > >> The parquet-java project currently declares a dependency on a > pinned > > > > >> version of parquet-format and dynamically pulls in the > > parquet.thrift > > > > file > > > > >> for the pinned version. > > > > >> This makes it impossible to validate and merge PRs to support new > > > > features > > > > >> that have been merged into parquet-format but are not yet part of > an > > > > >> official parquet-format > > > > >> release (https://github.com/apache/parquet-java/pull/3610 is an > > > > example). > > > > >> In contrast, the arrow-rs and arrow-cpp projects have a vendored > > copy > > > of > > > > >> parquet.thrift in their > > > > >> repos, which allows them to bypass this problem. What do folks > think > > > > about > > > > >> adopting this vendored approach in parquet-java? > > > > >> > > > > >> -- Div Arora > > > > >> > > > > > > > > > > > > > > > > > > > > > > >
