Just a note to self: I've made a mistake of assuming that file from layout[0] will always be present. I've generally assumed that it may be a symlink (hence the realpath()) but entirely missed the possibility that only layout[n>0] could exist. This is not urgent but worth fixing for consistency with DeletionIterator.
PATCH: https://archives.gentoo.org/gentoo-portage-dev/message/67c1c79369892cf193ff0a8c2178a9fd
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/proj/portage.git/commit/?id=af9c77bd037694164755d06034a74456ec45e3ab commit af9c77bd037694164755d06034a74456ec45e3ab Author: Michał Górny <mgorny@gentoo.org> AuthorDate: 2019-10-21 08:41:54 +0000 Commit: Michał Górny <mgorny@gentoo.org> CommitDate: 2019-10-21 13:38:26 +0000 emirrordist: Pass path from DeletionIterator to DeletionTask Since DeletionIterator needs to stat the distfile and therefore find one working path for it, pass it to DeletionTask instead of recomputing it there. This also fixes wrongly assuming that first layout will always be correct. Bug: https://bugs.gentoo.org/697890 Reviewed-by: Zac Medico <zmedico@gentoo.org> Signed-off-by: Michał Górny <mgorny@gentoo.org> lib/portage/_emirrordist/DeletionIterator.py | 2 ++ lib/portage/_emirrordist/DeletionTask.py | 14 +++++--------- 2 files changed, 7 insertions(+), 9 deletions(-)
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ecbfeae408f1bdcfa4241a3f4001d57cf30c3405 commit ecbfeae408f1bdcfa4241a3f4001d57cf30c3405 Author: Zac Medico <zmedico@gentoo.org> AuthorDate: 2019-10-21 19:12:06 +0000 Commit: Zac Medico <zmedico@gentoo.org> CommitDate: 2019-10-21 19:16:01 +0000 sys-apps/portage: Bump to version 2.3.78 #697566 fetch: Use FETCHCOMMAND to fetch mirror layout.conf #697890 emirrordist: Fix DeletionTask layout assumptions #697906 emirrordist: Delete potential symlinks for all layouts #698046 make.globals: Change FETCHCOMMAND_RSYNC to --copy-links Bug: https://bugs.gentoo.org/697734 Bug: https://bugs.gentoo.org/697566 Bug: https://bugs.gentoo.org/697890 Bug: https://bugs.gentoo.org/697906 Bug: https://bugs.gentoo.org/698046 Package-Manager: Portage-2.3.78, Repoman-2.3.17 Signed-off-by: Zac Medico <zmedico@gentoo.org> sys-apps/portage/Manifest | 1 + sys-apps/portage/portage-2.3.78.ebuild | 261 +++++++++++++++++++++++++++++++++ 2 files changed, 262 insertions(+)