commit: dd1070496dde6e68b9fe47bd23a3a6bfd076dc90 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org> AuthorDate: Thu Jan 21 18:51:16 2016 +0000 Commit: Brian Dolbec <dolsen <AT> gentoo <DOT> org> CommitDate: Thu Apr 21 16:49:27 2016 +0000 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=dd107049
metadata.py: Resolve error when moving metadata.dtd If DISTDIR and PORTDIR/metadata/dtd live on different filesystems, os.rename() will fail. Use shutil.move() instead. pym/repoman/metadata.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pym/repoman/metadata.py b/pym/repoman/metadata.py index f1fa53a..e95ad41 100644 --- a/pym/repoman/metadata.py +++ b/pym/repoman/metadata.py @@ -19,6 +19,7 @@ from repoman._portage import portage from portage import exception from portage import os +from portage import shutil from portage.output import green if sys.hexversion >= 0x3000000: @@ -143,7 +144,7 @@ def fetch_metadata_dtd(metadata_dtd, repoman_settings): except portage.exception.PortageException: pass - os.rename(metadata_dtd_tmp, metadata_dtd) + shutil.move(metadata_dtd_tmp, metadata_dtd) finally: try: os.unlink(metadata_dtd_tmp)