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
>

Reply via email to