Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 630160 - [brother-overlay] Ebuild failures occuring in global scope
Summary: [brother-overlay] Ebuild failures occuring in global scope
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Overlays (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Stefan Langenmaier
URL: https://qa-reports.gentoo.org/output/...
Whiteboard:
Keywords:
Depends on:
Blocks: repository-qa-issues
  Show dependency tree
 
Reported: 2017-09-07 14:51 UTC by Michał Górny
Modified: 2017-09-17 16:40 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-09-07 14:51:03 UTC
Our automated repository checks [1] have detected that the 'brother-
overlay' repository contains ebuilds that trigger fatal errors during
the cache regeneration. This usually means that the ebuilds call 'die'
in global scope indicating serious issues or have other serious QA
violations.

Global-scope failures prevent the ebuild not only from being installed
but also from being properly processed by the Package Manager. Since
metadata can not be obtained for those ebuilds, no cache entries are
created for them and the Package Manager needs to retry running them
every time it stumbles upon them. This involves both a serious slowdown
and repeating error output while performing dependency resolution.

The most common cause of global-scope failures is use of removed or
banned APIs in old ebuilds. In particular, this includes eclasses being
removed or removing support for old EAPIs. Nonetheless there are also
other issues such as performing illegal operations in global scope
(external program calls), malformed bash in ebuilds or malformed
metadata.xml.

The error log for the repository can be found at:

  https://qa-reports.gentoo.org/output/repos/brother-overlay.html

In particular, please look for highlighted '!!! ERROR' and '!!! caught
exception' lines. The former usually mean failures coming from eclasses
and the ebuild itself, while exceptions usually mean malformed ebuilds
or metadata.xml.

Please note that due to technical limitations of pkgcore, the processing
stops on the first error found. Once solved, please wait ~30 minutes for
the report to refresh in case new errors may appear.

Please fix the issue ASAP, possibly via removing unmaintained, old
ebuilds. We reserve the right to remove the repository from our list if
we do not receive any reply within 4 weeks.

[1]:https://wiki.gentoo.org/wiki/Project:Repository_mirror_and_CI
Comment 1 Stefan Langenmaier 2017-09-17 11:06:46 UTC
Hi,

I replaced the invocation of tr with bash syntax.

Nevertheless I would like to understand the problem a bit better. If I'm correct the error happens during metadata generation? I used egencache but could not reproduce the error. And why is this a problem at all. Shouldn't tr be an allowed command?

https://devmanual.gentoo.org/tools-reference/tr/index.html

Anyway thanks for keeping gentoo a distribution with a high-quality repository!
Comment 2 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-09-17 16:39:25 UTC
It happens with the current git version of portage (-9999) and pkgcore. I've been reporting the problems with that early to reduce the fallout.

PMS specifies that no external commands can be executed in global scope. This is for two reasons:

1. we do not make any guarantees about any packages being installed while calculating dependencies, so you should try to avoid relying on anything not explicitly guaranteed by the PM,

2. calling external programs is much slower than using pure bash. This causes a significant slowdown for systems running the cache generation, and if someone uses the repository without a cache (which is usually a normal case) it means that it slows down every 'emerge' dependency calculation that involves the package.
Comment 3 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2017-09-17 16:40:08 UTC
The bug seems to be fixed in the repository. Closing.