Hi Weston, I think one other issue that we might want to discuss is releasing the format separately (i.e. as soon as we make a change to it).
My thoughts: Can an arrow library adopt a new format version in a minor release? I agree the answer is yes, and some issues might arise if minor releases are handled differently among different languages. last time releases where discussed it sounded like minor releases where on any implementations near term road map though. In addition, is there value in aligning format adoption across languages? The current standard for accepting a specification update is there needs to be working integration tests between the C++ and Java versions demonstrating the feature. I think the current model has worked fairly well. We demonstrate interop with two languages and then the others might lag a little bit (or unfortunately a lot). We might want to revisit the exact standard for adoption, but I think a minimum of two language bindings is important. The more languages we add into the mix means the slower the adoption of a new feature. Personally, I think 2 or 3 should be the goal, anything more would be too cumbersome. So in summary, I think for better or worse users will likely need to consult the table (which already exists). Cheers, Micah On Wed, Apr 28, 2021 at 5:27 PM Weston Pace <weston.p...@gmail.com> wrote: > We now have independent releases. There has been some discussion (not > sure if it was formalized) around aligning major release versions > across the languages. > > There is also a potential format change coming up (new interval type). > > I think this brings up a few questions... > > Can an arrow library adopt a new format version in a minor release? > Semantic versioning would imply yes but then I think we could get in a > situation where Arrow-C++ X.Y.Z Might not be able to communicate via > flight using Arrow-C++ X.A.B. > > In addition, is there value in aligning format adoption across languages? > > For example, if Rust adopts format version 1.1 in version 5 and > pyarrow does not then users will need to consult a table to figure out > which versions are interoperable. > > -Weston >