Just to be clear, I'm totally +1 for doing major and minor releases. My
comment above was related to Simon's concern about how many samples are
actually working and isn't contrary to the major/minor approach. Fixing the
trivial ones shouldn't require more than a few days. Is it ok to spin RC3 on
Wednesday if no other build issues occur? I'm planning to spend the next 2
days on fixing as many samples as possible. Would it also be possible for
you guys to be present on IRC the next days if I'm reaching a dead end at
some point? Thanks.


On Sun, Feb 6, 2011 at 8:07 PM, ant elder <ant.el...@gmail.com> wrote:

> On Sun, Feb 6, 2011 at 2:44 PM, Simon Nash <n...@apache.org> wrote:
> > Florian MOGA wrote:
> >>
> >> I've just checked out "mvn ant:ant" and seems to do a decent job in
> >> generating an ant build file.
> >> Figuring out what should samples look like imply taking other decisions
> >> first (how will documentation look like, what type of launcher is
> required,
> >> ...). So, for now I'd suggest to temporarily move the samples that don't
> >> work at all and require a reasonable amount of resources to fix (most of
> >> them are trivial fixes so there will be a fairly small number that will
> get
> >> moved). IMO that should be enough to ship the release. After that we
> might
> >> need to first agree on the other topics in order to have a knowledgeable
> >> context for this discussion.
> >>
> > +1 for this approach.  See my comments below for what I think it means
> > for a sample to "work".
> >
> >> On Sun, Feb 6, 2011 at 1:48 PM, ant elder <ant.el...@gmail.com
> >> <mailto:ant.el...@gmail.com>> wrote:
> >>
> >>    On Sun, Feb 6, 2011 at 11:32 AM, Simon Nash <n...@apache.org
> >>    <mailto:n...@apache.org>> wrote:
> >>     > Florian MOGA wrote:
> >>     >>
> >>     >> Current naming with beta isn't that flexible. We could continue
> >>    doing a
> >>     >> lot of betaX releases or start naming betaX.X. I'm fine with
> >>    both of them.
> >>     >> After we get 2.0 out we can start having 2.0.1, 2.0.2 ... 2.1,
> >>    2.1.1, ....,
> >>     >> 2.2 and things will get more obvious.
> >>     >>
> >>     >> Regarding samples, we can either move them to unreleased/ and
> >>    move them
> >>     >> back as they get fixed or we can just open a ticket with
> >>    subtasks for each
> >>     >> sample to keep track of them. I assume we're now doing a 'minor'
> >>    release so
> >>     >> doesn't really matter at the moment.
> >>     >>
> >>     > IMO it would be better to only include samples that work.  It's
> >>     > frustrating and confusing for users when they attempt to run a
> >> sample
> >>     > that's included in a release and find that it doesn't work.
> >>     >
> >>     > Are there a few samples that could be got working quite easily?
> >>     > If so, I think it would be good to include those few in this
> release
> >>     > and move the rest to unreleased/ until the next major release.
> >>     > If the release includes working samples (even a few) then we could
> >>     > regard it as a "major" release.
> >>     >
> >>     >  Simon
> >>     >
> >>
> >>    That sounds reasonable but what does "work" mean? Up till now we've
> >>    had no minimum standard so anyone can add anything to samples/ and it
> >>    gets included in a release. I'd probably in favour of tightening that
> >>    up a bit now but I wonder if we'd agree on a minimum set of
> >>    requirements.
> >>
> >>    We have samples with no Ant build, no doc, no obvious way of running
> >>    them, and not even a sentence in a README saying what the purpose of
> >>    the sample is, but some of them do still "work" if you happen to know
> >>    what to do with it. Must there be proper tests so we know if the
> >>    sample gets broken? What if someone doesn't particularly care about
> >>    Ant builds so doesn't write a build.xml, is that sample excluded or
> is
> >>    a release held up till someone else write the build file?
> >>
> >>      ...ant
> >>
> >>
> > From a user perspective, I think at a minimum:
> >  1) There must be instructions saying how to build and run the sample and
> >    what the sample should do if it runs successfully.
> >  2) The sample must build and run successfully if the user follows the
> >    instructions provided.
> >
> > The other things you mentioned are desirable but not essential:
> >  3) an ant script for building and/or running the sample
> >  4) automated tests for ensuring that the sample works
> >
> > When someone is creating a new sample that doesn't yet meet the minimum
> > release requirements, I think it should go in unreleased/ initially and
> > be moved to the main trunk when it meets the release requirements.
> >
> >  Simon
> >
> >
>
> An issue with that approach is that it will make getting releases out
> harder as there's a good chance some sample will have some problem and
> someone will insist on a respin to fix it.
>
> I think we need to find ways to make doing release easier so that we
> do them more often. We have most things automated now like legal
> stuff, header checking, and simplified NOTICE file which has helped a
> lot, but this new approach is going back to needing to spend ages
> manually reviewing and running all samples and opening things up for
> people to ask for more RC respins.
>
> I do agree good quality samples are important for users though. Maybe
> if we have this more strict quality approach then we also need to do
> some vetting of what goes into samples so there isn't so many of them
> and try to include just a few main ones in the releases, perhaps with
> others available in SVN which we document as available?
>
>   ...ant
>

Reply via email to