From: DongHun Kwak Date: Tue, 10 Jan 2017 05:26:07 +0000 (+0900) Subject: Imported Upstream version 1.11.35 X-Git-Tag: upstream/1.11.35 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Ftags%2Fupstream%2F1.11.35;p=platform%2Fupstream%2Fzypper.git Imported Upstream version 1.11.35 Change-Id: Id7b49cc5471cde11742d3c052c7d9a168010bc3f Signed-off-by: DongHun Kwak --- diff --git a/VERSION.cmake b/VERSION.cmake index f01148b..29ce67b 100644 --- a/VERSION.cmake +++ b/VERSION.cmake @@ -34,7 +34,7 @@ # SET(VERSION_MAJOR "1") SET(VERSION_MINOR "11") -SET(VERSION_PATCH "34") +SET(VERSION_PATCH "35") -# LAST RELEASED: 1.11.34 +# LAST RELEASED: 1.11.35 #======= diff --git a/doc/zypper.8 b/doc/zypper.8 index 57353f4..5bea87e 100644 --- a/doc/zypper.8 +++ b/doc/zypper.8 @@ -2,12 +2,12 @@ .\" Title: zypper .\" Author: [see the "AUTHORS" section] .\" Generator: DocBook XSL Stylesheets v1.78.1 -.\" Date: 07/09/2015 +.\" Date: 09/09/2015 .\" Manual: ZYPPER .\" Source: SUSE Linux .\" Language: English .\" -.TH "ZYPPER" "8" "07/09/2015" "SUSE Linux" "ZYPPER" +.TH "ZYPPER" "8" "09/09/2015" "SUSE Linux" "ZYPPER" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- @@ -921,6 +921,11 @@ command again\&. This command is similar to \fBzypper update \-t patch\fR\&. .PP +\fB\-\-updatestack\-only\fR +.RS 4 +Install only patches which affect the package management itself and exit\&. +.RE +.PP \fB\-b\fR, \fB\-\-bugzilla\fR \fI#\fR .RS 4 Install patch fixing a Bugzilla issue specified by number\&. Use diff --git a/doc/zypper.8.txt b/doc/zypper.8.txt index fd0ba5f..b942bce 100644 --- a/doc/zypper.8.txt +++ b/doc/zypper.8.txt @@ -531,6 +531,9 @@ Update Management Commands This command is similar to *zypper update -t patch*. + -- + *--updatestack-only*:: + Install only patches which affect the package management itself and exit. + *-b*, *--bugzilla* '#':: Install patch fixing a Bugzilla issue specified by number. Use *list-patches --bugzilla* command to get a list of available needed patches for specific issues. diff --git a/package/zypper.changes b/package/zypper.changes index 4ad57be..4b2f087 100644 --- a/package/zypper.changes +++ b/package/zypper.changes @@ -1,4 +1,71 @@ ------------------------------------------------------------------- +Wed Sep 9 08:24:29 CEST 2015 - ma@suse.de + +- patch --updatestack-only: Install only patches which affect the + package management itself (FATE#319407) +- version 1.11.35 + +------------------------------------------------------------------- +Sun Sep 6 01:13:45 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Thu Sep 3 01:14:49 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Sun Aug 30 01:13:36 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Thu Aug 27 01:15:05 CEST 2015 - ma@suse.de + +- Update sle-zypper-po.tar.bz2 + +------------------------------------------------------------------- +Thu Aug 27 01:13:27 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Sun Aug 23 01:13:35 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Thu Aug 13 01:15:09 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Sun Aug 9 01:14:40 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Thu Aug 6 01:14:42 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Sun Aug 2 01:14:34 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Thu Jul 30 01:14:33 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- +Tue Jul 28 14:09:32 CEST 2015 - ma@suse.de + +- Update zypper-po.tar.bz2 + +------------------------------------------------------------------- Thu Jul 9 16:38:49 CEST 2015 - ma@suse.de - Options to allow vendor locking for zypper dup (FATE#319128) diff --git a/po/sle-zypper-po.tar.bz2 b/po/sle-zypper-po.tar.bz2 index ff5aa47..665f044 100644 Binary files a/po/sle-zypper-po.tar.bz2 and b/po/sle-zypper-po.tar.bz2 differ diff --git a/po/zypper-po.tar.bz2 b/po/zypper-po.tar.bz2 index cfb3cea..bbab13a 100644 Binary files a/po/zypper-po.tar.bz2 and b/po/zypper-po.tar.bz2 differ diff --git a/src/SolverRequester.cc b/src/SolverRequester.cc index 16e24f3..cee393d 100644 --- a/src/SolverRequester.cc +++ b/src/SolverRequester.cc @@ -351,6 +351,7 @@ void SolverRequester::updatePatches() DBG << "going to mark needed patches for installation" << endl; // search twice: if there are none with restartSuggested(), retry on all + // unless --updatestack-only. // (in the first run, ignore_pkgmgmt == 0, in the second it is 1) bool any_marked = false; bool dateLimit = ( _opts.date_limit != Date() ); @@ -382,8 +383,17 @@ void SolverRequester::updatePatches() any_marked = true; } - if (any_marked && !ignore_pkgmgmt) - MIL << "got some pkgmgmt patches, will install these first" << endl; + if ( ! ignore_pkgmgmt ) // just checked the update stack + { + if ( any_marked ) + MIL << "got some pkgmgmt patches, will install these first" << endl; + + if ( Zypper::instance()->cOpts().count("updatestack-only") ) + { + MIL << "updatestack-only: will stop here!" << endl; + break; + } + } } } diff --git a/src/Zypper.cc b/src/Zypper.cc index c063165..e14ed7e 100644 --- a/src/Zypper.cc +++ b/src/Zypper.cc @@ -103,6 +103,10 @@ namespace { % old_r % new_r ); } + + inline std::string dashdash( std::string optname_r ) + { return std::move(optname_r.insert( 0, "--" )); } + } //namespace /////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////// @@ -2014,6 +2018,7 @@ void Zypper::processCommandOptions() { static struct option update_options[] = { {"repo", required_argument, 0, 'r'}, + {"updatestack-only", no_argument, 0, 0 }, {"skip-interactive", no_argument, 0, 0 }, {"with-interactive", no_argument, 0, 0 }, {"auto-agree-with-licenses", no_argument, 0, 'l'}, @@ -2039,7 +2044,8 @@ void Zypper::processCommandOptions() {0, 0, 0, 0} }; specific_options = update_options; - _command_help = str::form(_( + _command_help = ( CommandHelpFormater() + << str::form(_( "patch [options]\n" "\n" "Install all available needed patches.\n" @@ -2069,7 +2075,9 @@ void Zypper::processCommandOptions() " --download Set the download-install mode. Available modes:\n" " %s\n" "-d, --download-only Only download the packages, do not install.\n" - ), "only, in-advance, in-heaps, as-needed"); + ), "only, in-advance, in-heaps, as-needed") ) + .option("--updatestack-only", _("Install only patches which affect the package management itself.") ) + ; break; } @@ -4619,6 +4627,21 @@ void Zypper::doCommand() return; } + if ( copts.count("updatestack-only") ) + { + for ( const char * opt : { "bugzilla", "bz", "cve" } ) + { + if ( copts.count( opt ) ) + { + out().error(str::form(_("Cannot use %s together with %s."), + dashdash("updatestack-only").c_str(), + dashdash(opt).c_str() ) ); + setExitCode(ZYPPER_EXIT_ERR_INVALID_ARGS); + return; + } + } + } + bool skip_interactive = false; if (copts.count("skip-interactive")) { diff --git a/src/solve-commit.cc b/src/solve-commit.cc index 7c1fb44..a590f31 100755 --- a/src/solve-commit.cc +++ b/src/solve-commit.cc @@ -886,7 +886,7 @@ void solve_and_commit (Zypper & zypper) } // check for running services (fate #300763) - if ( zypper.cOpts().find("download-only") == zypper.cOpts().end() + if ( ! ( zypper.cOpts().count("download-only") || zypper.cOpts().count("dry-run") ) && ( summary.packagesToRemove() || summary.packagesToUpgrade() || summary.packagesToDowngrade() ) ) diff --git a/src/subcommand.cc b/src/subcommand.cc index 5793f47..0e40606 100644 --- a/src/subcommand.cc +++ b/src/subcommand.cc @@ -384,7 +384,7 @@ std::ostream & SubcommandOptions::showHelpOn( std::ostream & out ) const // translators: %1% is a directory name out << boost::format(_( - "Zypper subcommands are standalone executables that live in the\n" + "Zypper subcommands are standalone executables that live in the\n" "zypper_execdir ('%1%').\n" "\n" "For subcommands zypper provides a wrapper that knows where the\n" @@ -392,8 +392,8 @@ std::ostream & SubcommandOptions::showHelpOn( std::ostream & out ) const "to them.\n" "\n" "If a subcommand is not found in the zypper_execdir, the wrapper\n" - "will look in the rest of your $PATH for it. Thus, it’s possible\n" - "to write local zypper extensions that don’t live in system space.\n" + "will look in the rest of your $PATH for it. Thus, it's possible\n" + "to write local zypper extensions that don't live in system space.\n" ) ) % _execdir; out << endl; diff --git a/zypper.spec.cmake b/zypper.spec.cmake index 89090c5..375b0e8 100644 --- a/zypper.spec.cmake +++ b/zypper.spec.cmake @@ -42,6 +42,7 @@ Provides: y2pmsh Obsoletes: y2pmsh Provides: zypper(oldpackage) +Provides: zypper(updatestack-only) %description Zypper is a command line tool for managing software. It can be used to add