hi folks,

As we expand the scope of the Arrow project, we will acquire more
components and code in new languages. Some of these components will be
at a different stage of maturity, e.g. lacking integration tests or
other important features that we've been working on in the main
reference implementations (Java and C++).

As a particular example, we have some increased activity on the
JavaScript side. In the case of JavaScript, it would help the
development process to get faster feedback from the JS community in
their downstream projects (front-end and back-end). The most effective
way to do this is to frequently publish code artifacts to NPM.

I personally don't have a problem with subcomponents publishing
artifacts to package managers outside of the primary Apache project
votes and releases, so long as they clearly signal that these package
builds are for development and not voted-on artifacts published on
behalf of the PMC. Does this seem reasonable?

Once JS or another subcomponent reaches a suitable level of maturity,
we will need to decide on a release process, whether:

* Release based on Arrow upstream, and use the main project version numbers
* Release separately (e.g. publish to SVN as JS-X.Y.Z and then upload
to NPM, for example)

I don't have a problem conducting additional votes so long as the
packaging process is automated and the process for validating releases
is well documented. So if in the steady state, JS needs to release
twice as often as upstream Arrow, that's fine by me.

I think it's likely as we move forward that other subprojects (e.g.
Python) may need to have their own patch releases in between top-level
releases, but for the moment the 4-6 week release cadence of recent
times seems to be working okay.

Thanks
Wes

Reply via email to