Ok, I officially propose

    Ext-ref: MB-12345

(X-ref: IMHO looks too much like the "X-foo" email headers, which are
deprecated by rfc6648 and which might lead some to think the field name is
just "ref".)

As to whitelisting the footer names: For commits to restricted branches,
whitelisting wouldn't be strictly necessary - if someone typos the footer
name, then the restriction check will fail because it will think there's no
ticket reference. For commits to master and other non-restricted branches,
we agreed that there is value in those having links to Couchbase tickets if
there is one, so you could have automation that posts a comment (but not a
negative vote) if neither an ASTERIXDB-xxxx reference nor an Ext-ref:
footer exists. You could do actual whitelisting too, but remember that
Gerrit itself adds a number of footers that would also have to be
whitelisted.

Ceej
aka Chris Hillery

On Wed, Jun 5, 2024 at 11:32 AM Michael Blow <mblow.apa...@gmail.com> wrote:

> "Fixes" seems weird to me, since what we list here would not be *DB issues.
>
> External-ref seems a bit strange only in that "external" is written out and
> "ref" is
> abbreviated, and External-Reference: is just long.
>
> Either of X-ref: or Ext-ref: seem reasonable to me, if we want to keep CB
> out of
> it. Otherwise, CB-ref: seems like it might be not bad either, since it
> would be clear
> what the reference is. I don't think this would be inherently
> inappropriate- we
> could consider and allow other specific references in the future should
> they be
> requested.
>
> OOC- if we come to a decision, should we add some Jenkins check to ensure
> that any trailers specified are whitelisted? It might be good to catch
> typos and
> prevent malformed trailers.
>
> On Tue, Jun 4, 2024 at 10:14 PM Ian Maxon <ima...@apache.org> wrote:
>
> >  It seems fine to me, +1. We already have the Contrib vote axis in Gerrit
> > so there is precedent there. It isn't a requirement either if it doesn't
> > reference any external issue that is known by the author or reviewer, so
> it
> > is not onerous.
> >
> > I think it is important to keep things agnostic to the consumer however,
> so
> > using something like External-ref:, X-ref, or Fixes: would be my
> > preference. It keeps the source free of mentions of non-AsterixDB
> > downstream projects, which I think is desirable and something that also
> has
> > precedent (Contrib flag, stabilization-* branches, etc.)
> >
> > On Jun 4, 2024 at 19:07:12, Chris Hillery <chill...@hillery.land> wrote:
> >
> > > We'd like to have a semi-formal process by which *DB commits could
> > > reference third-party Jira tickets or other external references. This
> > would
> > > be a "footer" field similar to the Change-Id: footer already required
> by
> > > Gerrit - a line by itself at the end of the commit message, separated
> > from
> > > the body by a blank line. I believe it could be either before or after
> > the
> > > current Change-Id: footer, and it should not be separated from the
> > > Change-Id: footer by an additional blank line.
> > >
> > > The immediate need is for a way to refer to Couchbase tickets that
> > require
> > > *DB changes, so one approach would be to introduce a footer like
> > >
> > >    CB-Xref: MB-12345
> > >
> > > We could also use a more generic footer name like External-ref:,
> X-ref:,
> > or
> > > even Fixes: .
> > >
> > > The intent is that this footer would be required, and checked by
> > > automation, for commits made to certain "restricted" branches that are
> > used
> > > to deliver to Couchbase. This includes both commits that are proposed
> > first
> > > to these restricted branches, and for changes that are backported to
> > those
> > > branches.
> > >
> > > It would be encouraged to include such a footer for commits made to
> > > non-restricted branches whenever there is a downstream ticket
> associated
> > > with the change, but not mandated.
> > >
> > > Thoughts?
> > >
> > > Thanks,
> > > Ceej
> > > aka Chris Hillery
> > >
> >
>

Reply via email to