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
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"
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):
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)