(1) sounds reasonable to me. I'd like us to document the vote cycle and
release train specifics on cassandra.a.o somewhere (developer and releases
pages maybe?). Nothing exhaustive, just 'we do X with Y'.


On Thu, Apr 16, 2020 at 11:03 PM Oleksandr Petrov <
oleksandr.pet...@gmail.com> wrote:

> I've posted the question on the legal-discussion mailing list, and got some
> helpful responses.
>
> We can't work around the vote, best we can do is make it shorter (3 +1
> votes / 24 hours). We have several options now:
>
> 1. Release SNAPSHOT builds prefixed with in-jvm dtest commit SHAs and cut
> release every week or so (release-train if you wish)
> 2. Avoid using Apache repository for releases altogether, and just push
> jars to Cassandra repository
> 3. Make this code "unofficial" (publish and manage outside Apache)
>
> I'm not a big fan of (2), since we already tried that with Python and Java
> drivers, also I'm not sure about binaries in git. As regards (3), I'm not
> sure if this makes it harder for the folks who rely on Apache legal
> framework for contributions.
>
> Unless there are strong opinions against (1), which seems to be a
> reasonable middle ground, we can do it. Please let me know if you also have
> other ideas.
>
> Thank you,
> -- Alex
>
> On Wed, Apr 15, 2020 at 10:33 PM Jeremiah D Jordan <jerem...@datastax.com>
> wrote:
>
> > I think as long as we don’t publish the artifacts to maven central or
> some
> > other location that is for “anyone” we do not need a formal release. Even
> > then since the artifact is only meant for use by people developing C*
> that
> > might be fine.
> >
> > If artifacts are only for use by individuals actively participating in
> the
> > development process, then no formal release is needed.  See the
> definition
> > of “release” and “publication” found here:
> >
> > http://www.apache.org/legal/release-policy.html#release-definition
> > > DEFINITION OF "RELEASE" <
> > http://www.apache.org/legal/release-policy.html#release-definition>
> > > Generically, a release is anything that is published beyond the group
> > that owns it. For an Apache project, that means any publication outside
> the
> > development community, defined as individuals actively participating in
> > development or following the dev list.
> > >
> > > More narrowly, an official Apache release is one which has been
> endorsed
> > as an "act of the Foundation" by a PMC.
> > >
> > >
> >
> > > PUBLICATION <
> http://www.apache.org/legal/release-policy.html#publication
> > >
> > > Projects SHALL publish official releases and SHALL NOT publish
> > unreleased materials outside the development community.
> > >
> > > During the process of developing software and preparing a release,
> > various packages are made available to the development community for
> > testing purposes. Projects MUST direct outsiders towards official
> releases
> > rather than raw source repositories, nightly builds, snapshots, release
> > candidates, or any other similar packages. The only people who are
> supposed
> > to know about such developer resources are individuals actively
> > participating in development or following the dev list and thus aware of
> > the conditions placed on unreleased materials.
> > >
> >
> >
> > -Jeremiah
> >
> > > On Apr 15, 2020, at 3:05 PM, Nate McCall <zznat...@gmail.com> wrote:
> > >
> > > Open an issue with the LEGAL jira project and ask there.
> > >
> > > I'm like 62% sure they will say nope. The vote process and the time for
> > > such is to allow for PMC to review the release to give the ASF a
> > reasonable
> > > degree of assurance for indemnification. However, we might have a fair
> > > degree of leeway so long as we do 'vote', it's test scope (as Mick
> > pointed
> > > out) and the process for such is published somewhere?
> > >
> > > Cheers,
> > > -Nate
> > >
> > > On Thu, Apr 16, 2020 at 7:20 AM Oleksandr Petrov <
> > oleksandr.pet...@gmail.com>
> > > wrote:
> > >
> > >> The most important thing for the purposes of what we’re trying to
> > achieve
> > >> is to have a unique non overridable version. In principle, a unique
> tag
> > >> with release timestamp should be enough, as long as we can uniquely
> > >> reference it.
> > >>
> > >> However, even then, I’d say release frequency (establishing “base”)
> for
> > >> releases should be at least slightly relaxed compared to Cassandra
> > itself.
> > >>
> > >> I will investigate whether it is possible to avoid voting for test
> only
> > >> dependencies, since I’d much rather have it under Apache umbrella, as
> I
> > was
> > >> previously skeptical of a dependency that I believed shouldn’t have
> been
> > >> locked under contributor’s GitHub.
> > >>
> > >> If test only no-vote option isn’t possible due to legal reasons, we
> can
> > >> proceed with snapshot+timestamp and release-rebase with a 24h
> simplified
> > >> vote.
> > >>
> > >> Thanks,
> > >> —Alex
> > >>
> > >> On Wed 15. Apr 2020 at 19:24, Mick Semb Wever <m...@apache.org> wrote:
> > >>
> > >>>> Apache release rules were made for first-class projects. I would
> like
> > >> to
> > >>>> propose simplifying voting rules for in-jvm-dtest-api project [1].
> > >>>
> > >>>
> > >>> I am not sure the PMC can simply vote away the ASF release rules
> here.
> > >>> But it should be possible to implement the proposal by stepping away
> > >>> from what the ASF considers a release and work with "nightlies" or
> > >>> snapshots. The purpose of an "ASF release" has little value to
> > >>> in-jvm-dtest-api, IIUC.
> > >>>
> > >>> For example you can't put artifacts into a public maven repository
> > >>> without a formal release vote. AFAIK the vote process is there for
> the
> > >>> sake of the legal protections the ASF extends to all its projects,
> > >>> over any notion of technical quality of the release cut.
> > >>>
> > >>> And we are not supposed to be including binaries in the source code
> > >>> artifacts, at least not for anything that runtime code depends on.
> > >>>
> > >>> Solutions to this could be…
> > >>> - allowing snapshot versions of test scope dependencies*, downloaded
> > >>> from the ASF's snapshot repository⁽¹⁾
> > >>> - making an exception for a binary if only used in test scope (i
> > >>> believe this is ok),
> > >>> - move in-jvm-dtest-api out of ASF (just have it as a github project,
> > >>> and publish as needed to a maven repo)
> > >>>
> > >>> You could also keep using `mvn release:prepare` to cut the versions,
> > >>> but just not deploy them to ASF's distribution channels.
> > >>>
> > >>> This whole area of ASF procedures is quite extensive, so i'd
> > >>> definitely appreciate being correctly contradicted :-)
> > >>>
> > >>> My vote would be to take the approach of using the snapshot
> > >>> repository. Semantic versioning has limited value here, and you would
> > >>> be able to have a jenkins build push the latest in-jvm-dtest-api
> > >>> artifact into the snapshot repository using a uniqueVersion so that
> it
> > >>> can be referenced safely in the build.xml (avoiding having to check
> > >>> the jar file into the cassandra/lib/ folder).
> > >>>
> > >>> regards,
> > >>> Mick
> > >>>
> > >>> ⁽¹⁾ https://repository.apache.org/content/groups/snapshots/
> > >>>
> > >>> ---------------------------------------------------------------------
> > >>> To unsubscribe, e-mail: dev-unsubscr...@cassandra.apache.org
> > >>> For additional commands, e-mail: dev-h...@cassandra.apache.org
> > >>>
> > >>> --
> > >> alex p
> > >>
> >
> >
>
> --
> alex p
>

Reply via email to