Re: Ideas for better development processes when maintaining hundreds of packages

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Jan 28, 2020 at 12:36:23PM +0100, Pierre-Yves Chibon wrote:
> 
> There are a few tricky things about this, but overall I think it's doable and
> some of the tricky things may just be things we just have to accept as being
> different from the current situation.
> 
> We are playing a bit of a proof of concept of what a RPM changelog generated
> from git logs could look like. The outcome of this is at:
> https://pagure.io/Fedora-Infra/generate_changelog/tree/master
> 
> Feel free to poke at it and see how it behaves.
> 
> The script only considers:
> - the last two years of commits
> - commits touching either the spec file or patches (ending with .patch)
> 
> We want a way to say: [Ignore XXX] (or simply [Ignore] if it's the current
> commit that should be ignored), as well as a way to say: [Replace XXX] to be
> able to replace an existing commit message, but that's not there yet.
> 
> One of the thing that may change is that we may end up with changelog entry that
> do not have a corresponding nvr at the end.
> The python script above shows that, it'll only add the v-r in the changelog when
> either one of them changed, if they are the same, it doesn't specify them.
> 
> Another aspect that is getting trickier is:
> - update to 1.1-1
>   <build failed>
> - fix missing BR
>   <build succeeded>
> - spec clean up
> 
> 3 commits, can all be either on 3 different days but could also be on the same
> day. Could be from 3 different people, but could also be from the same person.
> So we could have 3 commits, on 1 day from 1 person, two of which would make
> sense to group together (update to 1.1-1 and fix missing BR) and one that
> shouldn't since the build succeeded before that and thus the -1 that goes out to
> the mirror will not have this clean up entry.
> The current approach we took is: we have 3 entries in the changelog (and only
> one has the v-r specified). It's not ideal, but we don't quite see how to solve
> this question yet.
> If the "spec clean up" contains "[ignore]", that question is solved, but if we
> replace "spec clean up" with "Drop sub-package foo" then we do not have a good
> idea on how to consolidate the commit messages into a single changelog entry.
> Suggestions welcome :)

How about:

* maintainer commits whatever in N commits. Commit messages can
be just whatever maintainer/pr submittor likes. 
* Any PR's or commits that are 'notable', the commit should include a
'changenotes-hash' file. 
* When ready to do a build/update, all the changenotes-hash files are
assembled into the changelog if they are part of a commit since the last
build. Or I guess they could be consumed/removed after this and just any
that exist are considered.

> 
> 
> > * committing to git should build the package
> > 
> > Is there a reason why this wouldn't be the case?
> 
> That was part of the proposal we debated last fall and there seemed to be much
> more people against this than I thought there would be.
> Maybe we could start with having an opt-in approach.

I was for it before that last thread, then against it now. :) 
I think maintainers need to be able to do commits that they do not want
to build against. We could look at tags for this info... ie, 'NOBUILD:
true' or whatever.

kevin

Attachment: signature.asc
Description: PGP signature

_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux