On 27/01/17 00:55, NP-Hardass wrote:
> On 01/26/2017 06:48 PM, Doug Freed wrote:
>> This is the email I get when a Manifest is missing DIST entries; it's
>> more verbose than it needs to be, but I'd rather have more than less.
>> In this particular case, the developer that made the bad commit likely
>> had something they were working on in sys-cluster/torque added to the
>> git index (ie, they did git add), and then needed to make an unrelated
>> change, and didn't stash their changes beforehand.  You should always
>> check 'git status' output before running repoman commit and/or git
>> commit.  It's probably best to check before you start on a change, and
>> then you can 'git stash -u' right away (the -u includes untracked
>> files, which is useful if your in progress change is adding something
>> new), and then after you've committed the change you wanted to get
>> done right away, you can 'git stash pop' to get back to the state you
>> were in before.
>>
>> This particular issue has already been fixed, but I'll be forwarding
>> all these emails to the list from now on (I have to do that manually,
>> because there are some that aren't anybody's fault, and I don't need
>> to spam you about those).
>>
>> -Doug
>>
>>
>> ---------- Forwarded message ----------
>> From: (Cron Daemon) <gmir...@gentoo.org>
>> Date: Thu, Jan 26, 2017 at 5:39 PM
>> Subject: Cron <gmirror@dipper> /usr/local/bin/pidlock -s rsync-gen
>> /bin/bash /usr/local/bin/mastermirror/rsync-gen.sh
>> To: infra-gmir...@gentoo.org
>>
>>
>> [ERROR/ForkPoolWorker-7] sys-cluster/torque is missing DIST entries!
>> Traceback (most recent call last):
>>   File "/usr/lib64/python3.4/site-packages/portage/checksum.py", line
>> 23, in _open_file
>>     encoding=_encodings['fs'], errors='strict'), 'rb')
>> FileNotFoundError: [Errno 2] No such file or directory:
>> b'/var/empty/torque-6.1.0.tar.gz'
>>
>> During handling of the above exception, another exception occurred:
>>
>> Traceback (most recent call last):
>>   File "/usr/local/bin/mastermirror/thicken-manifests.py", line 122,
>> in maybe_thicken_manifest
>>     manifest.create(assumeDistHashesAlways=True)
>>   File "/usr/lib64/python3.4/site-packages/portage/manifest.py", line
>> 506, in create
>>     self.fhashdict["DIST"][f] = perform_multiple_checksums(fname, 
>> self.hashes)
>>   File "/usr/lib64/python3.4/site-packages/portage/checksum.py", line
>> 426, in perform_multiple_checksums
>>     rVal[x] = perform_checksum(filename, x, calc_prelink)[0]
>>   File "/usr/lib64/python3.4/site-packages/portage/checksum.py", line
>> 390, in perform_checksum
>>     myhash, mysize = hashfunc_map[hashname](myfilename)
>>   File "/usr/lib64/python3.4/site-packages/portage/checksum.py", line
>> 52, in __call__
>>     with _open_file(filename) as f:
>>   File "/usr/lib64/python3.4/site-packages/portage/checksum.py", line
>> 31, in _open_file
>>     raise portage.exception.FileNotFound(filename)
>> portage.exception.FileNotFound: b'/var/empty/torque-6.1.0.tar.gz'
>>
>> !!! A file listed in the Manifest could not be found:
>> /var/tmp/gmirror-rsync/gentoo-x86-stage/sys-cluster/torque/torque-6.0.1.ebuild
>> /usr/local/bin/mastermirror/rsync-gen.sh: A Manifest has a failure!
>> /var/tmp/gmirror-rsync/logs/regen/regen-run-20170126-2238.log.validate:
>>
>> RepoMan scours the neighborhood...
>>   digest.missing [fatal]        1
>>    
>> /var/tmp/gmirror-rsync/gentoo-x86-stage/sys-cluster/torque::torque-6.1.0.tar.gz
>>   digest.unused                 1
>>   file.size                     69
>>   manifest.bad [fatal]          1
>>    sys-cluster/torque/Manifest
>> Please fix these important QA issues first.
>> RepoMan sez: "Make your QA payment on time and you'll never see the
>> likes of me."
>>
> While increasing QA is a laudable goal, I'm not sure spamming the list
> every time you detect a QA issue is the right way to proceed with
> improving QA.  I'm much rather you adopt a strategy similar to mgorny's
> QA tool, and email the dev responsible for the commit that they broke
> the repo.   Find a package with an issue, extract the last commit on
> that directory, get the committer, and send them the email.  In all
> likelihood, these kinds of errors aren't intentional, and public shaming
> isn't really necessary in this case.  Simply notifying the developer so
> that they can rectify the issue should be sufficient, unless I'm missing
> something.
>
I think this is a useful tool, but I made the suggestion on a previous
thread to post to the "gentoo-automated-testing" ML where anyone
interested can subscribe. There may be potential in the suggestion of
mailing the dev concerned, but perhaps just having somewhere 'visible'
where it can be checked, or devs can be 'pointed' would be a reasonable
'first step'.

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to