Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 674922 - kde5.eclass is broken with >=app-shells/bash-5.0
Summary: kde5.eclass is broken with >=app-shells/bash-5.0
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo KDE team
URL: http://lists.gnu.org/archive/html/bug...
Whiteboard:
Keywords: REGRESSION
Depends on:
Blocks:
 
Reported: 2019-01-08 22:27 UTC by Lars Wendler (Polynomial-C) (RETIRED)
Modified: 2019-01-09 10:00 UTC (History)
1 user (show)

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 Lars Wendler (Polynomial-C) (RETIRED) gentoo-dev 2019-01-08 22:27:37 UTC
With >=app-shells/bash-5.0 when trying to emerge any package that inherits kde5.eclass, emerge fails:


# emerge -1Oq kid3
>>> Verifying ebuild manifests
>>> Emerging (1 of 1) media-sound/kid3-3.7.0::gentoo
>>> Failed to emerge media-sound/kid3-3.7.0, Log file:
>>>  '/var/tmp/portage/media-sound/kid3-3.7.0/temp/build.log'
 * Package:    media-sound/kid3-3.7.0
 * Repository: gentoo
 * Maintainer: kde@gentoo.org sound@gentoo.org
 * Upstream:   https://sourceforge.net/p/kid3/bugs/
 * USE:        abi_x86_64 amd64 elibc_glibc flac kde kernel_linux mp3 mp4 taglib userland_GNU vorbis
 * FEATURES:   network-sandbox preserve-libs sandbox userpriv usersandbox
/var/portage/eclass/kde5.eclass: line 127: no match: \(auto|unit\)\?tests\?
 * ERROR: media-sound/kid3-3.7.0::gentoo failed (setup phase):
 *   died sourcing /var/portage/eclass/kde5.eclass in inherit()
 * 
 * Call stack:
 *           ebuild.sh, line 631:  Called source '/var/portage/media-sound/kid3/kid3-3.7.0.ebuild'
 *   kid3-3.7.0.ebuild, line   8:  Called inherit 'kde5'
 *           ebuild.sh, line 326:  Called die
 * The specific snippet of code:
 *              __qa_source "$location" || die "died sourcing $location in inherit()"
 * 
 * If you need support, post the output of `emerge --info '=media-sound/kid3-3.7.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-sound/kid3-3.7.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/die.env'.
 * Working directory: '/var/tmp/portage/media-sound/kid3-3.7.0/homedir'
 * S: '/var/tmp/portage/media-sound/kid3-3.7.0/work/kid3-3.7.0'
/var/portage/eclass/kde5.eclass: line 127: no match: \(auto|unit\)\?tests\?
 * ERROR: media-sound/kid3-3.7.0::gentoo failed:
 *   died sourcing /var/portage/eclass/kde5.eclass in inherit()
 * 
 * Call stack:
 *   misc-functions.sh, line  17:  Called source '/usr/lib/portage/python3.6/ebuild.sh'
 *           ebuild.sh, line 631:  Called source '/var/portage/media-sound/kid3/kid3-3.7.0.ebuild'
 *   kid3-3.7.0.ebuild, line   8:  Called inherit 'kde5'
 *           ebuild.sh, line 326:  Called die
 * The specific snippet of code:
 *              __qa_source "$location" || die "died sourcing $location in inherit()"
 * 
 * If you need support, post the output of `emerge --info '=media-sound/kid3-3.7.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-sound/kid3-3.7.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/die.env'.
 * Working directory: '/var/tmp/portage/media-sound/kid3-3.7.0/homedir'
 * S: '/var/tmp/portage/media-sound/kid3-3.7.0/work/kid3-3.7.0'

 * Messages for package media-sound/kid3-3.7.0:

 * ERROR: media-sound/kid3-3.7.0::gentoo failed (setup phase):
 *   died sourcing /var/portage/eclass/kde5.eclass in inherit()
 * 
 * Call stack:
 *           ebuild.sh, line 631:  Called source '/var/portage/media-sound/kid3/kid3-3.7.0.ebuild'
 *   kid3-3.7.0.ebuild, line   8:  Called inherit 'kde5'
 *           ebuild.sh, line 326:  Called die
 * The specific snippet of code:
 *              __qa_source "$location" || die "died sourcing $location in inherit()"
 * 
 * If you need support, post the output of `emerge --info '=media-sound/kid3-3.7.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-sound/kid3-3.7.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/die.env'.
 * Working directory: '/var/tmp/portage/media-sound/kid3-3.7.0/homedir'
 * S: '/var/tmp/portage/media-sound/kid3-3.7.0/work/kid3-3.7.0'
 * ERROR: media-sound/kid3-3.7.0::gentoo failed:
 *   died sourcing /var/portage/eclass/kde5.eclass in inherit()
 * 
 * Call stack:
 *   misc-functions.sh, line  17:  Called source '/usr/lib/portage/python3.6/ebuild.sh'
 *           ebuild.sh, line 631:  Called source '/var/portage/media-sound/kid3/kid3-3.7.0.ebuild'
 *   kid3-3.7.0.ebuild, line   8:  Called inherit 'kde5'
 *           ebuild.sh, line 326:  Called die
 * The specific snippet of code:
 *              __qa_source "$location" || die "died sourcing $location in inherit()"
 * 
 * If you need support, post the output of `emerge --info '=media-sound/kid3-3.7.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=media-sound/kid3-3.7.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/media-sound/kid3-3.7.0/temp/die.env'.
 * Working directory: '/var/tmp/portage/media-sound/kid3-3.7.0/homedir'
 * S: '/var/tmp/portage/media-sound/kid3-3.7.0/work/kid3-3.7.0'


The offending line in kde5.eclass is this:

  : ${KDE_TESTPATTERN:="\(auto|unit\)\?tests\?"}

Which leads to this error message:

  /var/portage/eclass/kde5.eclass: line 127: no match: \(auto|unit\)\?tests\?


I've filed a bug report to bash upstram (see URL) but the bash maintainer replied that this change is intentional.

So we either need to fix such occurences in our eclasses or we need to make portage not enable "failglob" shell option which is to blame here.

Feel free to CC portage devs in case you think this should not be fixed in affected eclasses.
Comment 1 Larry the Git Cow gentoo-dev 2019-01-08 23:08:19 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/kde.git/commit/?id=9b5037ebc0bb0ca8684ecd637b0bb819cdfab884

commit 9b5037ebc0bb0ca8684ecd637b0bb819cdfab884
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2019-01-08 23:04:14 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2019-01-08 23:04:14 +0000

    kde5.eclass: Drop KDE_TESTPATTERN
    
    Never used by many ebuilds, completely unused right now.
    
    Bug: https://bugs.gentoo.org/674922
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 eclass/kde5.eclass | 13 +++----------
 1 file changed, 3 insertions(+), 10 deletions(-)
Comment 2 Larry the Git Cow gentoo-dev 2019-01-09 10:00:24 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bccfa10c237cb41debb51092a1f3efdb88a03edf

commit bccfa10c237cb41debb51092a1f3efdb88a03edf
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2019-01-08 23:04:14 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2019-01-09 09:51:42 +0000

    kde5.eclass: Drop KDE_TESTPATTERN
    
    Never used by many ebuilds, completely unused right now.
    
    Closes: https://bugs.gentoo.org/674922
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 eclass/kde5.eclass | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)