ubuntu-phone team mailing list archive
-
ubuntu-phone team
-
Mailing list archive
-
Message #08441
Re: Developers: changelog quality
On Thu, Jun 5, 2014 at 7:34 AM, Rodney Dawes <rodney.dawes@xxxxxxxxxxxxx> wrote:
> Can we fix the CI train so that it doesn't reformat multi-line commit
> messages in the MP into a single very long line of very hard to read
> text?
You can accomplish this today by just writing your own
debian/changelog exactly as you want it. If your MP touches
debian/changelog then CItrain will preserve whatever changes you made.
Currently, there is a pretty big gap between the expectations of the
developers of citrain and the users.
> Also, how does one get reasonable changelog entries that follow the
> Debian style? It seems with CI train, we don't get very nice
> debian/changelog entries. For example, for a manual upload to bump the
> Standards-version, a typical entry would be like this:
>
> * debian/control:
> - Update standards version to 3.9.5.
>
> But with Ci train, depending on what is put in the commit message field
> of the MP, we might get something like this:
>
> * - Update standards version to 3.9.5.
This is caused by putting a bullet point in the "Commit Message" field
on the Launchpad merge proposal page. (citrain adds a bullet point for
you so you then get two of them).
> Or if there are other changes:
>
> * - Update standards version to 3.9.5. - Add dependency on
> foo-bar-dev.
This is caused by pre-merging your branches before building them in
the silo, and then trying to cram a long list of changes into the
commit message MP field.
CItrain was built on the expectation that a silo would contain lots of
small, indepdent feature branches, and each one would have a short
commit message just saying "Foo." and "Bar." (eg, one-line messages
containing no bullets at all). Then citrain takes all the independent
changelog messages and whips up a nicely formatted changelog for you.
But, for whatever reason, certain groups decided that this approach
wasn't working for them (and that's fine), so instead they pre-merge
their small independent feature MPs into enormous staging MPs, and
then try to cram a huge list into the commit message field, and
citrain doesn't expect to find a pre-formatted list there, so it tries
to reflow the text into a single bullet point and the result is that a
nicely formatted changelog like this:
http://bazaar.launchpad.net/~mir-team/unity-mir/trunk/revision/222
Turns into a debian/changelog that looks like this:
https://launchpad.net/ubuntu/+source/unity-mir/0.4+14.10.20140520-0ubuntu1
So if you're going to do that kind of thing, eg combine your branches
into one mega-branch, then just create your own debian/changelog file
anyway and you'll end up with the results you expect.
As it is now, citrain simply has no way to know whether the branch
it's looking at is a topic branch or a megabranch, so there's no good
way to give the expected results.
> It would be nice if we could get changelog entries that more closely
> match the classic manual upload changelog entries, for the automated
> builds.
Just make it yourself, results will be exactly as you want them.
References