Re: [gentoo-dev] ChangeLog generation, profiles/ mess.
> On Tue, 29 Nov 2016, Robin H Johnson wrote: >> - one ChangeLog for each first-level subdir other than categories >> (i.e. eclass, licenses, profiles, etc.), > Already done, just querying if profiles/ needs more ChangeLog detail. Yeah, keep one ChangeLog for all of profiles/. The existing sub-ChangeLogs there are rather confusing because they don't seem to follow any consistent layout. Keeping one single file would also agree with the recommendation for commit messages, namely to prepend "profiles:" for any change below the profiles/ dir. https://wiki.gentoo.org/wiki/Gentoo_git_workflow#Commit_message_format > Here's the size of the non-category non-package changelogs, with > splitting to all top-levels. > 127 scripts/ChangeLog-2016 >1266 metadata/ChangeLog-2016 >1929 ChangeLog-2016 > 11987 licenses/ChangeLog-2016 > 198021 eclass/ChangeLog-2016 > 362733 profiles/ChangeLog-2016 > If we collapse to have: > - per-package > - major top-levels: eclass/, profile/, licenses/ > - (everything else) > Then we get: > 11972 licenses/ChangeLog-2016 > 12941 ChangeLog-2016 > 196905 eclass/ChangeLog-2016 > 362040 profiles/ChangeLog-2016 I like the second scheme better. (No strong opinion about keeping separate ChangeLogs for metadata/ and scripts/ though.) Ulrich pgpJIMernMHEX.pgp Description: PGP signature
Re: [gentoo-dev] ChangeLog generation, profiles/ mess.
My question was explicitly asking about profiles/, but I'll respond to the other pieces in turn. On Tue, Nov 29, 2016 at 11:59:57PM +0100, Ulrich Mueller wrote: > I'd say keep it simple: > - one ChangeLog for each package dir, Already done. > - no ChangeLog for category dirs (they contain only a single metadata.xml), Presently implemented, but considering turning it off, because it's mostly duplicated entries (tree-wide changes to $CAT/metadata.xml). The rate-of-change on category dirs is very slow, and they are tiny: 92562 bytes over 163 files (mean is 567 bytes). See below for more size on what happens if they get collapsed to the top-level. > - one ChangeLog for each first-level subdir other than categories > (i.e. eclass, licenses, profiles, etc.), Already done, just querying if profiles/ needs more ChangeLog detail. > - top-level ChangeLog for anything not covered by the other ChangeLogs. Other than the per-category changelogs, here's the size Here's the size of the non-category non-package changelogs, with splitting to all top-levels. 127 scripts/ChangeLog-2016 1266 metadata/ChangeLog-2016 1929 ChangeLog-2016 11987 licenses/ChangeLog-2016 198021 eclass/ChangeLog-2016 362733 profiles/ChangeLog-2016 If we collapse to have: - per-package - major top-levels: eclass/, profile/, licenses/ - (everything else) Then we get: 11972 licenses/ChangeLog-2016 12941 ChangeLog-2016 196905 eclass/ChangeLog-2016 362040 profiles/ChangeLog-2016 -- Robin Hugh Johnson Gentoo Linux: Dev, Infra Lead, Foundation Trustee & Treasurer E-Mail : robb...@gentoo.org GnuPG FP : 11ACBA4F 4778E3F6 E4EDF38E B27B944E 34884E85 GnuPG FP : 7D0B3CEB E9B85B1F 825BCECF EE05E6F6 A48F6136 signature.asc Description: Digital signature
Re: [gentoo-dev] ChangeLog generation, profiles/ mess.
On Tue, 29 Nov 2016 23:59:57 +0100 Ulrich Mueller wrote: > > On Tue, 29 Nov 2016, Robin H Johnson wrote: > > > TL;DR: Let's replace profiles/**/ChangeLog with profiles/ChangeLog, > >because it's a mess. > > > I'm writing the new changelog generation code [1][2], and I'm > > wondering if we can clean up the mess that we have in profiles/. > > > The existing Portage egencache --update-changelogs command does NOT > > generate any ChangeLogs for profiles/ (or eclasses, licenses, > > scripts, metadata, toplevel skel.*). > > I'd say keep it simple: > - one ChangeLog for each package dir, > - one ChangeLog for each first-level subdir other than categories > (i.e. eclass, licenses, profiles, etc.), > - no ChangeLog for category dirs (they contain only a single > metadata.xml), > - top-level ChangeLog for anything not covered by the other > ChangeLogs. > > Ulrich +1, keep it simple -- Brian Dolbec pgpY7ZcxtzCHE.pgp Description: OpenPGP digital signature
Re: [gentoo-dev] ChangeLog generation, profiles/ mess.
> On Tue, 29 Nov 2016, Robin H Johnson wrote: > TL;DR: Let's replace profiles/**/ChangeLog with profiles/ChangeLog, >because it's a mess. > I'm writing the new changelog generation code [1][2], and I'm > wondering if we can clean up the mess that we have in profiles/. > The existing Portage egencache --update-changelogs command does NOT > generate any ChangeLogs for profiles/ (or eclasses, licenses, > scripts, metadata, toplevel skel.*). I'd say keep it simple: - one ChangeLog for each package dir, - one ChangeLog for each first-level subdir other than categories (i.e. eclass, licenses, profiles, etc.), - no ChangeLog for category dirs (they contain only a single metadata.xml), - top-level ChangeLog for anything not covered by the other ChangeLogs. Ulrich pgp2s5WVNSzXD.pgp Description: PGP signature
[gentoo-dev] ChangeLog generation, profiles/ mess.
TL;DR: Let's replace profiles/**/ChangeLog with profiles/ChangeLog, because it's a mess. I'm writing the new changelog generation code [1][2], and I'm wondering if we can clean up the mess that we have in profiles/. The existing Portage egencache --update-changelogs command does NOT generate any ChangeLogs for profiles/ (or eclasses, licenses, scripts, metadata, toplevel skel.*). There is no strict pattern to the past CVS ChangeLogs for profiles. Some directories have their own ChangeLogs covering everything in that scope, but occasionally there is also deeper ChangeLogs that mean the top-level changelog doesn't cover it anymore. Notable examples: profiles/default/bsd/fbsd/amd64/9.1/clang/ChangeLog-2015 profiles/default/bsd/ChangeLog-2015 (of all default/bsd/, why did only bsd/fbsd/amd64/9.1/clang warrant it's own changelog?) profiles/features/ChangeLog-2015 profiles/features/prefix/ChangeLog-2015 (why did features/prefix/ get it's own changelog?) profiles/releases/freebsd-8.2/ChangeLog-2015 profiles/releases/freebsd-9.1/ChangeLog-2015 (the rest of profiles/releases/, including other freebsd releases, is all in the root profiles/ChangeLog). [1] https://wiki.gentoo.org/wiki/User:Robbat2:ChangeLog-Generation#Git_output_command [2] https://gitweb.gentoo.org/infra/mastermirror-scripts.git/tree/egenchangelog2.py [3] All profiles/ ChangeLogs from CVS: profiles/arch/alpha/ChangeLog-2015 profiles/arch/amd64/ChangeLog-2015 profiles/arch/amd64-fbsd/ChangeLog-2015 profiles/arch/arm64/ChangeLog-2015 profiles/arch/arm/ChangeLog-2015 profiles/arch/hppa/ChangeLog-2015 profiles/arch/ia64/ChangeLog-2015 profiles/arch/m68k/ChangeLog-2015 profiles/arch/mips/ChangeLog-2015 profiles/arch/powerpc/ChangeLog-2015 profiles/arch/s390/ChangeLog-2015 profiles/arch/sh/ChangeLog-2015 profiles/arch/sparc/ChangeLog-2015 profiles/arch/sparc-fbsd/ChangeLog-2015 profiles/arch/x86/ChangeLog-2015 profiles/arch/x86-fbsd/ChangeLog-2015 profiles/base/ChangeLog-2015 profiles/ChangeLog-2007 profiles/ChangeLog-2008 profiles/ChangeLog-2009 profiles/ChangeLog-2010 profiles/ChangeLog-2011 profiles/ChangeLog-2012 profiles/ChangeLog-2013 profiles/ChangeLog-2014 profiles/ChangeLog-2015 profiles/default/bsd/ChangeLog-2015 profiles/default/bsd/fbsd/amd64/9.1/clang/ChangeLog-2015 profiles/default/linux/alpha/ChangeLog-2015 profiles/default/linux/amd64/ChangeLog-2015 profiles/default/linux/arm64/ChangeLog-2015 profiles/default/linux/arm/ChangeLog-2015 profiles/default/linux/ChangeLog-2015 profiles/default/linux/hppa/ChangeLog-2015 profiles/default/linux/ia64/ChangeLog-2015 profiles/default/linux/m68k/ChangeLog-2015 profiles/default/linux/mips/ChangeLog-2015 profiles/default/linux/powerpc/ChangeLog-2015 profiles/default/linux/s390/ChangeLog-2015 profiles/default/linux/sh/ChangeLog-2015 profiles/default/linux/sparc/ChangeLog-2015 profiles/default/linux/uclibc/ChangeLog-2015 profiles/default/linux/x86/ChangeLog-2015 profiles/embedded/ChangeLog-2015 profiles/features/ChangeLog-2015 profiles/features/prefix/ChangeLog-2015 profiles/hardened/ChangeLog-2015 profiles/prefix/ChangeLog-2012 profiles/prefix/ChangeLog-2015 profiles/releases/freebsd-8.2/ChangeLog-2015 profiles/releases/freebsd-9.1/ChangeLog-2015 -- Robin Hugh Johnson Gentoo Linux: Dev, Infra Lead, Foundation Trustee & Treasurer E-Mail : robb...@gentoo.org GnuPG FP : 11ACBA4F 4778E3F6 E4EDF38E B27B944E 34884E85 GnuPG FP : 7D0B3CEB E9B85B1F 825BCECF EE05E6F6 A48F6136 signature.asc Description: Digital signature