A few thoughts:
- I think we should iron out the remaining incompatibilities between java
and C++ before going to 1.0.0 (at least Union and NullType), and I'm not
sure I will have time to them before the next release, so I would prefer to
try to aim for the subsequent release to make it 1.0.0
- For 1.0.0 should we change the metadata format version to a new naming
scheme [1] (seems like more of a hassle then it is worth)?
- I'm a little concerned about the implications for forward-compatibility
restrictions for format changes.  For instance the large list types would
not be forward compatible (at least by some definitions), similarly if we
deal with compression [2] it would also seem to not be forward compatible.
Would this mean we bump the format version number for each change even
though they would be backwards compatible?

Thanks,
Micah

[1] https://github.com/apache/arrow/blob/master/format/Schema.fbs#L22
[2] https://issues.apache.org/jira/browse/ARROW-300

On Fri, Jun 7, 2019 at 12:42 PM Wes McKinney <wesmck...@gmail.com> wrote:

> I agree re: marketing value of a 1.0.0 release.
>
> For the record, I think we should continue to allow the API of each
> respective library component to evolve freely and allow the
> individuals developing each to decide how to handle deprecations, API
> changes, etc., as we have up until this point. The project is still
> very much in "innovation mode" across the board, but some parts may
> grow more conservative than others. Having roughly time-based releases
> encourages everyone to be ready-to-release at any given time, and we
> develop a steady cadence of getting new functionality and
> improvements/fixes out the door.
>
> On Fri, Jun 7, 2019 at 1:25 PM Antoine Pitrou <anto...@python.org> wrote:
> >
> >
> > I think there's a marketing merit to issuing a 1.0.0 release.
> >
> > Regards
> >
> > Antoine.
> >
> >
> > Le 07/06/2019 à 20:05, Wes McKinney a écrit :
> > > So one idea is that we could call the next release 1.14.0. So the
> > > second number is the API version number. This encodes a sequencing of
> > > the evolution of the API. The library APIs are already decoupled from
> > > the binary serialization protocol, so I think we merely have to state
> > > that API changes and protocol changes are not related to each other.
> > >
> > > On Fri, Jun 7, 2019 at 12:58 PM Jacques Nadeau <jacq...@apache.org>
> wrote:
> > >>
> > >> It brings up an interesting point... do we couple the stability of
> the apis
> > >> with the stability of the protocol. If the protocol is stable, we
> should
> > >> start providing guarantees for it. How do we want to express these
> > >> different velocities?
> > >>
> > >> On Fri, Jun 7, 2019 at 10:48 AM Antoine Pitrou <anto...@python.org>
> wrote:
> > >>
> > >>>
> > >>> Le 07/06/2019 à 19:44, Jacques Nadeau a écrit :
> > >>>> On Fri, Jun 7, 2019 at 10:25 AM Antoine Pitrou <anto...@python.org>
> > >>> wrote:
> > >>>>
> > >>>>> Hi Wes,
> > >>>>>
> > >>>>> Le 07/06/2019 à 17:42, Wes McKinney a écrit :
> > >>>>>>
> > >>>>>> I think
> > >>>>>> this would have a lot of benefits for project onlookers to remove
> > >>>>>> various warnings around the codebase around stability and cautions
> > >>>>>> against persistence of protocol data. It's fair to say that if we
> _do_
> > >>>>>> make changes in the future, that there will be a transition path
> for
> > >>>>>> migrate persisted data, should it ever come to that.
> > >>>>>
> > >>>>> I think that's a good idea, but perhaps the stability promise
> shouldn't
> > >>>>> cover the Flight protocol yet?
> > >>>>
> > >>>> Agreed.
> > >>>>
> > >>>>>> I would suggest a "1.0.0" release either as our next release
> (instead
> > >>>>>> of 0.14.0) or the release right after that (if we need more time
> to
> > >>>>>> get affairs in order), with the guidance for users of:
> > >>>>>
> > >>>>> I think we should first do a regular 0.14.0 with all that's on our
> plate
> > >>>>> right now, then work towards a 1.0.0 as the release following that.
> > >>>>
> > >>>> What is different from your perspective? If the protocol hasn't
> changed
> > >>> in
> > >>>> over a year, why not call it 1.0?
> > >>>
> > >>> I would say that perhaps some API cleanup is in order.  Remove
> > >>> deprecated ones, review experimental APIs, perhaps mark experimental
> > >>> certain APIs that we forgot to...
> > >>>
> > >>> Regards
> > >>>
> > >>> Antoine.
> > >>>
>

Reply via email to