I think i like that idea.  It would also force JIRA titles to be written
better though so as to fit the flow of CHANGELOG....sometimes those are
kinda slack.

On Thu, Jul 23, 2015 at 2:20 PM, Matt Frantz <[email protected]>
wrote:

> Correct.  We would make manual additions to the CHANGELOG only to augment
> the JIRA report in some way, either to explain non-JIRA activities or to
> draw attention to particular JIRA issues that are significant (and we would
> cite the JIRA ticket from the CHANGELOG for those).  The definition of
> "significant" is discretionary.
>
> On Thu, Jul 23, 2015 at 10:31 AM, Stephen Mallette <[email protected]>
> wrote:
>
> > Are you suggesting that on release we rectify the JIRA report with the
> > CHANGELOG?  In that way, if something was done by way of JIRA we wouldn't
> > have to enter a CHANGELOG entry manually, because on release we'd pick it
> > up via the JIRA report?
> >
> > On Thu, Jul 23, 2015 at 1:28 PM, Matt Frantz <[email protected]
> >
> > wrote:
> >
> > > Perhaps in the release process we could generate a JIRA report of
> issues
> > > marked as fixed in the specific version, and reserve the CHANGELOG for
> > > significant changes and things that were not tracked through JIRA.
> > >
> > > On Thu, Jul 23, 2015 at 9:41 AM, Stephen Mallette <
> [email protected]>
> > > wrote:
> > >
> > > > We have typically treated CHANGELOG rather unscientifically.  Make a
> > > change
> > > > of significance, then update the changelog for the appropriate
> version.
> > > I
> > > > bat around the idea of including the issue ids all the time but
> haven't
> > > > wanted to start the trend of doing that.  Perhaps we do that and make
> > it
> > > > optional?? Not sure how others feel on that matter.
> > > >
> > > > On Thu, Jul 23, 2015 at 11:35 AM, Matt Frantz <
> > > [email protected]>
> > > > wrote:
> > > >
> > > > > I just merged my fix for TINKERPOP3-782 to both tp30 and master.  I
> > > > didn't
> > > > > touch CHANGELOG.  Do we do that for every bug fix?  I don't see
> > > > references
> > > > > to JIRA artifacts in the CHANGELOG.
> > > > >
> > > > > On Thu, Jul 23, 2015 at 3:59 AM, Stephen Mallette <
> > > [email protected]>
> > > > > wrote:
> > > > >
> > > > > > Hi Matt,
> > > > > >
> > > > > > I have a PR currently targeted at tp30 (because it is a low-risk
> > bug
> > > > > fix).
> > > > > > > I know that we don't necessarily code review everything that
> goes
> > > in,
> > > > > but
> > > > > > > since I'm relatively new, I wouldn't mind someone taking a peek
> > at
> > > > it,
> > > > > > and
> > > > > > > the verify that tp30 is the best target.
> > > > > > >
> > > > > >
> > > > > > Right - no official code review.  We pretty much tend to handle
> it
> > as
> > > > you
> > > > > > just did - on a case-by-case basis.
> > > > > >
> > > > > >
> > > > > > > (I don't have permissions on the GitHub mirror for
> > > > > incubating-tinkerpop.
> > > > > > > Should I?)
> > > > > > >
> > > > > >
> > > > > > I don't think you should - I don't have permissions either.
> > > > > >
> > > > > >
> > > > > > > Also, after it is merged to tp30, is the process going to be
> > that I
> > > > > would
> > > > > > > also need to merge tp30 into master?  Or do we plan to merge
> only
> > > > > > > occasionally?
> > > > > >
> > > > > >
> > > > > > I've been the only person committing things to tp30 of any
> > substance
> > > so
> > > > > > I've been doing it periodically, but generally speaking, I'd say
> > that
> > > > > it's
> > > > > > best if the person who commits to tp30 merges to master (unless
> > it's
> > > > > > something pretty trivial).  In that way the person who committed
> to
> > > > tp30
> > > > > is
> > > > > > responsible for ensuring proper integration with master.
> > > > > >
> > > > > >
> > > > > >
> > > > > > On Thu, Jul 23, 2015 at 12:19 AM, Matt Frantz <
> > > > > [email protected]>
> > > > > > wrote:
> > > > > >
> > > > > > > I have a PR currently targeted at tp30 (because it is a
> low-risk
> > > bug
> > > > > > fix).
> > > > > > > I know that we don't necessarily code review everything that
> goes
> > > in,
> > > > > but
> > > > > > > since I'm relatively new, I wouldn't mind someone taking a peek
> > at
> > > > it,
> > > > > > and
> > > > > > > the verify that tp30 is the best target.
> > > > > > >
> > > > > > > (I don't have permissions on the GitHub mirror for
> > > > > incubating-tinkerpop.
> > > > > > > Should I?)
> > > > > > >
> > > > > > > Also, after it is merged to tp30, is the process going to be
> > that I
> > > > > would
> > > > > > > also need to merge tp30 into master?  Or do we plan to merge
> only
> > > > > > > occasionally?
> > > > > > >
> > > > > > > On Wed, Jul 15, 2015 at 5:19 AM, Stephen Mallette <
> > > > > [email protected]>
> > > > > > > wrote:
> > > > > > >
> > > > > > > > Thanks JB - i'm familiar with semver and I think the idea is
> to
> > > > > follow
> > > > > > it
> > > > > > > > in principle, in that we will save API breaking change for
> the
> > > > > "minor"
> > > > > > > > version.   imo, we should stick to the three digit system for
> > now
> > > > > but I
> > > > > > > > guess it's worth considering what a "breaking change" is in
> our
> > > > > > context.
> > > > > > > >
> > > > > > > > TinkerPop is "big" - it has both public and internal APIs.
> if
> > i
> > > > > change
> > > > > > > the
> > > > > > > > package name of an internal API in a patch release, I
> wouldn't
> > > > expect
> > > > > > > that
> > > > > > > > to break anyone and thus I'm not sure I'd consider that a
> > > breaking
> > > > > > change
> > > > > > > >  (though it's always interesting to see how folks find their
> > way
> > > > into
> > > > > > > using
> > > > > > > > our internal classes) .  To me the "breaking changes" are
> ones
> > > that
> > > > > > occur
> > > > > > > > in the public classes (i.e. the ones people are likely to
> use)
> > > > like:
> > > > > > > > gremlin driver classes, structure API for vendors, step
> classes
> > > and
> > > > > > > > GraphTraversal/GraphTraversalSource, etc. Changing those
> > classes
> > > in
> > > > > > some
> > > > > > > > way, would break the greatest percentage of users.  I'm not
> > sure
> > > > how
> > > > > > > others
> > > > > > > > feel, but I tend to think of "breaking change" in that more
> > fuzzy
> > > > > > > fashion.
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > > On Wed, Jul 15, 2015 at 7:38 AM, Jean-Baptiste Musso <
> > > > > > [email protected]>
> > > > > > > > wrote:
> > > > > > > >
> > > > > > > > > Related - have you considered using semantic versioning [1]
> > > > > > > > > (major.minor.patch)? Roughly, semver states that breaking
> > > changes
> > > > > > > > > should bump major, new backward-compatible features should
> > bump
> > > > > minor
> > > > > > > > > while bug fixes should bump patch. It also supports
> > pre-release
> > > > > > > > > version (-alpha, -incubating or -whatever suffixes).
> > > > > > > > >
> > > > > > > > > In order to avoid having the first digit (major) being
> bumped
> > > too
> > > > > > > > > often (TP3 shall remain TP3!), a variation could be:
> > > > > > > > > marketing.major.minor.patch (downside to that is 4 digits
> > > > > versioning
> > > > > > > > > instead of 3). For example, adding a new Gremlin step would
> > > bump
> > > > > > minor
> > > > > > > > > while changing a step signature in a backward-incompatible
> > > manner
> > > > > > > > > would bump major.
> > > > > > > > >
> > > > > > > > > semver is very popular in the JavaScript/Node.js world and
> > used
> > > > > > > > > extensively with npm (node package manager).
> > > > > > > > >
> > > > > > > > > Just some thoughts.
> > > > > > > > >
> > > > > > > > > Jean-Baptiste
> > > > > > > > >
> > > > > > > > > [1] http://semver.org/
> > > > > > > > >
> > > > > > > > > On Mon, Jul 13, 2015 at 1:20 PM, Stephen Mallette <
> > > > > > > [email protected]>
> > > > > > > > > wrote:
> > > > > > > > > > I think it's worthwhile for us to do something we've not
> > > really
> > > > > > done
> > > > > > > > > before
> > > > > > > > > > with any of the TinkerPop projects: use branches. We
> > > typically
> > > > > tend
> > > > > > > to
> > > > > > > > > use
> > > > > > > > > > branches for major refactoring that we might throw out,
> but
> > > not
> > > > > > > really
> > > > > > > > > for
> > > > > > > > > > release management. As we look past release 3.0.0, I
> think
> > we
> > > > > will
> > > > > > > want
> > > > > > > > > to
> > > > > > > > > > have the capability to do more frequent minor releases
> > (e.g.
> > > > > 3.0.1,
> > > > > > > > > 3.0.2,
> > > > > > > > > > etc) while still being able to do work for a future 3.1.x
> > > line
> > > > of
> > > > > > > code.
> > > > > > > > > >
> > > > > > > > > > I think we can do this without too much change if we
> > > introduce
> > > > a
> > > > > > > simple
> > > > > > > > > > branch system.  Release branch rules would be simple - we
> > > > create
> > > > > a
> > > > > > > new
> > > > > > > > > > branch from master called tp31 for the 3.1.x line of
> code.
> > > Any
> > > > > > > changes
> > > > > > > > > > that are "breaking", introduce significant risk, a
> "major"
> > > > > feature,
> > > > > > > > etc.
> > > > > > > > > > would be committed there.  All other changes, bug fixes,
> > > > > > non-breaking
> > > > > > > > > > refactoring of major APIs, "minor" features, etc. would
> > > simply
> > > > > > commit
> > > > > > > > to
> > > > > > > > > > master.  the master branch effectively becomes the 3.0.x
> > line
> > > > of
> > > > > > > code.
> > > > > > > > > > Under this approach the merge process is pretty simple in
> > > that
> > > > we
> > > > > > > just
> > > > > > > > > > merge forward (i.e. master merges to to tp31).
> > > > > > > > > >
> > > > > > > > > > When the day comes that we're ready to release 3.1.0, we
> > > merge
> > > > > tp31
> > > > > > > > back
> > > > > > > > > to
> > > > > > > > > > master and create tp32 and use the same model where the
> > 3.1.x
> > > > > line
> > > > > > is
> > > > > > > > > > master and the 3.2.x line is tp32.  Of course, under this
> > > model
> > > > > we
> > > > > > > are
> > > > > > > > > > really supporting just the previous minor version, which
> > for
> > > > > right
> > > > > > > now
> > > > > > > > > > seems acceptable to me.  That's more than what we've ever
> > > > really
> > > > > > done
> > > > > > > > > well,
> > > > > > > > > > so that feels like a good starting point in my book.
> After
> > > we
> > > > > > > release
> > > > > > > > > > 3.1.0 we can revisit and decide if a more complex
> branching
> > > > > > strategy
> > > > > > > is
> > > > > > > > > > needed.
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>

Reply via email to