Summary: | app-portage/porthole-0.6.1-r5 with >sys-apps/portage-2.3.24-r1 - KeyError: 'PORTDIR' | ||
---|---|---|---|
Product: | Portage Development | Reporter: | Carl W. Harlow <harlowcw> |
Component: | Core | Assignee: | Portage team <dev-portage> |
Status: | RESOLVED FIXED | ||
Severity: | major | CC: | dolsen, jstein, tools-portage |
Priority: | Normal | Keywords: | InVCS |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 651804 |
Description
Carl W. Harlow
2018-04-15 12:40:42 UTC
It's due to this change related to EAPI 7: https://gitweb.gentoo.org/proj/portage.git/commit/?id=802e7d0bdd967d28c6dbb31fd84e8dfd540d794a We could change the behavior of the eapi_exports_PORTDIR to return true when eapi is None, and then self.settings.environ()['PORTDIR'] would work by default. However, it's better if porthole uses a different means to get the portdir, for example it could use self.settings.repositories.mainRepoLocation() instead. I've posted a patch for review, to revert the change in portage behavior when EAPI is not specified: https://archives.gentoo.org/gentoo-portage-dev/message/ea185a43cdc4c4b87297bcea01fbad54 https://github.com/gentoo/portage/pull/303 The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=3628eaf7d4691c249943e9059ba2ddc60253ba82 commit 3628eaf7d4691c249943e9059ba2ddc60253ba82 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2018-04-16 01:33:59 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2018-04-17 02:22:00 +0000 config.environ(): filter PORTDIR only when required (bug 653230) The changes related bug 373349 were more aggressive than necessary, causing the PORTDIR variable to be omitted from config.environ() calls when the EAPI is defined. We really only need to filter the PORTDIR variable when the current EAPI requires it. Fixes: 802e7d0bdd96 ("Do not export PORTDIR & ECLASSDIR in EAPI 7") Bug: https://bugs.gentoo.org/653230 pym/portage/eapi.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)} Please test with sys-apps/portage-2.3.30. sys-apps/portage-2.3.31 works for me, thanks (In reply to Carl W. Harlow from comment #5) > sys-apps/portage-2.3.31 works for me, thanks Great, thanks for testing! |