I still fail to understand the bikeshedding here - you really don't
need a git checkout to get something akin to a changelog. Use the
github API directly...

The following 1-liner could be trivially productised (maybe even parse
$PWD to set the path argument...)

curl https://api.github.com/repos/gentoo/gentoo/commits?path=app-admin/eselect
| perl -MJSON -e 'foreach $i (@{decode_json(join("",@lines=<STDIN>))})
{ print "$i->{commit}->{author}->{name} -
$i->{commit}->{author}->{date}\n\n $i->{commit}->{message}\n"; }'

Yeah - it's not quite as pretty as our current Changelog, but date,
author/committer, commit-msg etc. are all there and you can filter by
path just the same as you would with native git log...
You could parse the local $PORTDIR/metadata/timestamp* and add an
'until' param to the URL to filter commits beyond where a user has
rsync'd up to...

Cheers,
malc.


On Wed, Mar 2, 2016 at 6:14 PM, Ulrich Mueller <u...@gentoo.org> wrote:
>>>>>> On Wed, 2 Mar 2016, Ian Stakenvicius wrote:
>
>> On 02/03/16 03:50 AM, Ulrich Mueller wrote:
>>> How is it possible that we have 52 MiB of ChangeLog entries
>>> generated in the 0.5 years since the git conversion, whereas we had
>>> only a total of 103 MiB in the 13.5 years since ChangeLogs were
>>> introduced in 2002? Certainly our commit rate hasn't increased by
>>> more than an order of magnitude in the last half year?
>
>> The content of a changelog entry from git is a lot bigger than it
>> was just from echangelog, isn't it?
>
> Not by a factor of ten.
>
> I've investigated a bit, and the main problem seems to be that for git
> commits that extend over several directories, the commit message is
> duplicated into many ChangeLog entries.
>
> For example, the message of the initial commit 56bd759 appears in some
> 18000 files, which accounts for 25 MiB. Then there is commit eaaface
> and its revert 1bfb585, again appearing in almost all ChangeLog files
> in the tree. These account for another 9 MiB. Last example, commit
> 8849b09, another 2 MiB.
>
> So about 70% of the size is caused by these 4 tree-wide commits alone.
> However, there are many more examples of duplication on a smaller
> scale.
>
> Ulrich

Reply via email to