From: Fabian Groffen Date: Thu, 8 Jan 2009 20:00:32 +0000 (-0000) Subject: Merged from trunk -r12367:12371 X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=989ad1cd18be7a5a7b09f679cdd4710590e17839;p=portage.git Merged from trunk -r12367:12371 | 12368 | Handle tree conflicts in svn status output, new in | | zmedico | subversion 1.6. Thanks to Arfrever Frehtes Taifersar | | | Arahesis for reporting. | | 12369 | Bug #252995 - When post_emerge() returns early because the | | zmedico | vdb state has not changed, still display new notifications. | | 12370 | Bug #252985 - Add a note about the new default behavior for | | zmedico | `emerge world` and `emerge system` commands. | | 12371 | Bug #253210 - Fix logic inside EbuildBuild._buildpkg_exit() | | zmedico | to avoid triggering an AssertionError when the package phase | | | has failed. This bug usually isn't noticeable since the | | | package phase usually succeeds. | svn path=/main/branches/prefix/; revision=12392 --- diff --git a/RELEASE-NOTES b/RELEASE-NOTES index 540809a43..88da034d4 100644 --- a/RELEASE-NOTES +++ b/RELEASE-NOTES @@ -24,6 +24,9 @@ portage-2.2 portage-2.1.6 ================================== +* The default behavior has changed for `emerge world` and `emerge system` + commands. These commands will reinstall all packages from the given set + unless an option such as --noreplace, --update, or --newuse is specified. * FEATURES=fixpackages is now enabled by default via make.globals. Set FEATURES="-fixpackages" in make.conf if you'd like to disable it. * File collision protection is now enabled by default via make.globals with diff --git a/bin/repoman b/bin/repoman index f088b31be..94e7275c7 100755 --- a/bin/repoman +++ b/bin/repoman @@ -910,6 +910,9 @@ for x in scanlist: if vcs == "svn": if l[:1] == "?": continue + if l[:7] == ' >': + # tree conflict, new in subversion 1.6 + continue l = l.split()[-1] if l[-7:] == ".ebuild": eadded.append(os.path.basename(l[:-7])) diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index b7dc2ee89..8dfc1cb07 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -2704,8 +2704,12 @@ class EbuildBuild(CompositeTask): be released when merge() is called. """ - if self._default_exit(packager) == os.EX_OK and \ - self.opts.buildpkgonly: + if self._default_exit(packager) != os.EX_OK: + self._unlock_builddir() + self.wait() + return + + if self.opts.buildpkgonly: # Need to call "clean" phase for buildpkgonly mode portage.elog.elog_process(self.pkg.cpv, self.settings) phase = "clean" @@ -2716,9 +2720,10 @@ class EbuildBuild(CompositeTask): self._start_task(clean_phase, self._clean_exit) return - if self._final_exit(packager) != os.EX_OK or \ - self.opts.buildpkgonly: - self._unlock_builddir() + # Continue holding the builddir lock until + # after the package has been installed. + self._current_task = None + self.returncode = packager.returncode self.wait() def _clean_exit(self, clean_phase): @@ -11686,6 +11691,7 @@ def post_emerge(root_config, myopts, mtimedb, retval): counter_hash = settings.get("PORTAGE_COUNTER_HASH") if counter_hash is not None and \ counter_hash == vardbapi._counter_hash(): + display_news_notification(root_config, myopts) # If vdb state has not changed then there's nothing else to do. sys.exit(retval)