Hello community, here is the log from the commit of package libyui-ncurses-pkg for openSUSE:Factory checked in at 2013-07-06 19:14:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libyui-ncurses-pkg (Old) and /work/SRC/openSUSE:Factory/.libyui-ncurses-pkg.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libyui-ncurses-pkg" Changes: -------- --- /work/SRC/openSUSE:Factory/libyui-ncurses-pkg/libyui-ncurses-pkg.changes 2013-06-28 16:05:16.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libyui-ncurses-pkg.new/libyui-ncurses-pkg.changes 2013-07-06 19:14:36.000000000 +0200 @@ -1,0 +2,7 @@ +Wed Jul 3 14:18:13 CEST 2013 - g...@suse.de + +- remove webpin search from configuration menu (bnc#821866), + catch exception of sysconfig write (bnc #827608) +- Version 2.44.1 + +------------------------------------------------------------------- Old: ---- libyui-ncurses-pkg-2.44.0.tar.bz2 New: ---- libyui-ncurses-pkg-2.44.1.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libyui-ncurses-pkg-doc.spec ++++++ --- /var/tmp/diff_new_pack.WwGkuU/_old 2013-07-06 19:14:37.000000000 +0200 +++ /var/tmp/diff_new_pack.WwGkuU/_new 2013-07-06 19:14:37.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package libyui-ncurses-pkg (Version 2.44.0) +# spec file for package libyui-ncurses-pkg (Version 2.44.1) # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -16,7 +16,7 @@ # Name: libyui-ncurses-pkg-doc -Version: 2.44.0 +Version: 2.44.1 Release: 0 License: LGPL-2.1 or LGPL-3.0 Source: libyui-ncurses-pkg-%{version}.tar.bz2 ++++++ libyui-ncurses-pkg.spec ++++++ --- /var/tmp/diff_new_pack.WwGkuU/_old 2013-07-06 19:14:37.000000000 +0200 +++ /var/tmp/diff_new_pack.WwGkuU/_new 2013-07-06 19:14:37.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package libyui-ncurses-pkg (Version 2.44.0) +# spec file for package libyui-ncurses-pkg (Version 2.44.1) # # Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -18,7 +18,7 @@ # norootforbuild Name: libyui-ncurses-pkg -Version: 2.44.0 +Version: 2.44.1 Release: 0 License: LGPL-2.1 or LGPL-3.0 Source: libyui-ncurses-pkg-%{version}.tar.bz2 ++++++ libyui-ncurses-pkg-2.44.0.tar.bz2 -> libyui-ncurses-pkg-2.44.1.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/ChangeLog new/libyui-ncurses-pkg-2.44.1/ChangeLog --- old/libyui-ncurses-pkg-2.44.0/ChangeLog 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/ChangeLog 2013-07-03 14:28:09.000000000 +0200 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Wed Jul 3 14:18:13 CEST 2013 - g...@suse.de + +- remove webpin search from configuration menu (bnc#821866), + catch exception of sysconfig write (bnc #827608) +- Version 2.44.1 + +------------------------------------------------------------------- Thu Jun 27 12:13:36 CEST 2013 - g...@suse.de - Show and handle multiple versions of packages correctly diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/VERSION.cmake new/libyui-ncurses-pkg-2.44.1/VERSION.cmake --- old/libyui-ncurses-pkg-2.44.0/VERSION.cmake 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/VERSION.cmake 2013-07-03 14:28:09.000000000 +0200 @@ -1,6 +1,6 @@ SET( VERSION_MAJOR "2" ) SET( VERSION_MINOR "44" ) -SET( VERSION_PATCH "0" ) +SET( VERSION_PATCH "1" ) SET( VERSION "${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH}" ) ##### This is need for the libyui core, ONLY. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/src/NCPackageSelector.cc new/libyui-ncurses-pkg-2.44.1/src/NCPackageSelector.cc --- old/libyui-ncurses-pkg-2.44.0/src/NCPackageSelector.cc 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/src/NCPackageSelector.cc 2013-07-03 14:28:09.000000000 +0200 @@ -143,7 +143,7 @@ readSysconfig(); saveState (); diskspacePopup = new NCPkgDiskspace( testMode ); - + setInstallAlreadyRecommended( isInstallAlreadyRecommended() ); setAutoCheck( isAutoCheck() ); setVerifySystem( isVerifySystem() ); @@ -195,41 +195,57 @@ void NCPackageSelector::writeSysconfig( ) { - bool ret; if( !actionAtExit.empty() ) { - ret = zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, - OPTION_EXIT, - actionAtExit, - "Set behaviour when package installation has finished."); - - if ( !ret ) + try + { + zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, + OPTION_EXIT, + actionAtExit, + "Set behaviour when package installation has finished."); + } + catch( const std::exception &e ) + { yuiError() << "Writing " << OPTION_EXIT << " failed" << endl; + } } - - ret = zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, - OPTION_AUTO_CHECK, - (autoCheck?"yes":"no"), - "Automatic dependency checking" ); - if ( !ret ) + try + { + zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, + OPTION_AUTO_CHECK, + (autoCheck?"yes":"no"), + "Automatic dependency checking" ); + } + catch( const std::exception &e ) + { yuiError() << "Writing " << OPTION_AUTO_CHECK << " failed" << endl; + } - ret = zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, - OPTION_VERIFY, - (verifySystem?"yes":"no"), - "System verification mode" ); - if ( !ret ) + try + { + zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, + OPTION_VERIFY, + (verifySystem?"yes":"no"), + "System verification mode" ); + } + catch( const std::exception &e ) + { yuiError() << "Writing " << OPTION_VERIFY << " failed" << endl; + } - - ret = zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, - OPTION_REEVALUATE, - (installRecommended?"yes":"no"), - "Install recommended packages for already installed packages" ); - if ( !ret ) + try + { + zypp::base::sysconfig::writeStringVal( PATH_TO_YAST_SYSCONFIG, + OPTION_REEVALUATE, + (installRecommended?"yes":"no"), + "Install recommended packages for already installed packages" ); + } + catch( const std::exception &e ) + { yuiError() << "Writing " << OPTION_REEVALUATE << " failed" << endl; + } } bool NCPackageSelector::checkNow( bool *ok ) @@ -308,7 +324,7 @@ bool NCPackageSelector::isAutoCheck() { // automatic dependency check is on by default (check on every click) - + std::map <std::string,std::string>::const_iterator it = sysconfig.find( OPTION_AUTO_CHECK); if ( it != sysconfig.end() ) @@ -319,7 +335,7 @@ } yuiMilestone() << "autoCheck " << (autoCheck?"yes":"no") << endl; - return autoCheck; + return autoCheck; } bool NCPackageSelector::isVerifySystem( ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/src/NCPkgMenuConfig.cc new/libyui-ncurses-pkg-2.44.1/src/NCPkgMenuConfig.cc --- old/libyui-ncurses-pkg-2.44.0/src/NCPkgMenuConfig.cc 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/src/NCPkgMenuConfig.cc 2013-07-03 14:28:09.000000000 +0200 @@ -81,7 +81,6 @@ repoManager = new YMenuItem( _( "Launch &Repository Manager") ); onlineUpdate = new YMenuItem( _( "Launch &Online Update Configuration" ) ); actionOnExit = new YMenuItem( _( "&Action after Package Installation" ) ); - webpinSearch = new YMenuItem( _("Search Packages on &Web") ); items.push_back( repoManager ); items.push_back( onlineUpdate ); @@ -100,7 +99,6 @@ setSelected( idToItemPtr[ exitAction ], true); } - items.push_back( webpinSearch ); addItems( items ); @@ -128,16 +126,6 @@ return false; } - else if ( event.selection == webpinSearch ) - { - //the same as above, return `webpin - const_cast<NCursesEvent &>(event).result = "webpin"; - yuiMilestone() << "Launching webpin search " << endl; - - //and close the main loop - return false; - } - else { std::string old = exitAction; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/src/NCPkgMenuConfig.h new/libyui-ncurses-pkg-2.44.1/src/NCPkgMenuConfig.h --- old/libyui-ncurses-pkg-2.44.0/src/NCPkgMenuConfig.h 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/src/NCPkgMenuConfig.h 2013-07-03 14:28:09.000000000 +0200 @@ -70,7 +70,6 @@ YMenuItem *repoManager; YMenuItem *onlineUpdate; YMenuItem *actionOnExit; - YMenuItem *webpinSearch; YMenuItem *restart; YMenuItem *close; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/src/NCPkgStatusStrategy.cc new/libyui-ncurses-pkg-2.44.1/src/NCPkgStatusStrategy.cc --- old/libyui-ncurses-pkg-2.44.0/src/NCPkgStatusStrategy.cc 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/src/NCPkgStatusStrategy.cc 2013-07-03 14:28:09.000000000 +0200 @@ -564,37 +564,117 @@ /////////////////////////////////////////////////////////////////// // -// AvailableStatStrategy::getPackageStatus() +// AvailableStatStrategy::setObjectStatus // -// Gets status from package manager +// Informs the package manager about the new status (sets the candidate) // -ZyppStatus AvailableStatStrategy::getPackageStatus( ZyppSel slbPtr, - ZyppObj objPtr ) +bool AvailableStatStrategy::setObjectStatus( ZyppStatus newstatus, + ZyppSel slbPtr, ZyppObj objPtr ) { + bool ok = false; + if ( !slbPtr || !objPtr ) { - yuiError() << "Selectable pointer not valid" << endl; - return S_NoInst; + return false; } - if ( !slbPtr->multiversionInstall() ) + ZyppObj newCandidate = objPtr; + + if ( newCandidate != slbPtr->candidateObj() ) { - return slbPtr->status(); + yuiMilestone() << "CANDIDATE changed" << endl; + + // Change status of selectable + ZyppStatus status = slbPtr->status(); + + if ( slbPtr->installedObj() && + slbPtr->installedObj()->edition() == newCandidate->edition() && + slbPtr->installedObj()->vendor() == newCandidate->vendor() + ) + { + yuiMilestone() << "Identical package installed" << endl; + // Switch back to the original instance - + // the version that was previously installed + status = S_KeepInstalled; + } + else + { + switch ( status ) + { + case S_KeepInstalled: + case S_Protected: + case S_AutoDel: + case S_AutoUpdate: + case S_Del: + case S_Update: + + status = S_Update; + break; + + case S_NoInst: + case S_Taboo: + case S_Install: + case S_AutoInstall: + status = S_Install; + break; + } + } + + // Set candidate + ok = bool( slbPtr->setCandidate( newCandidate ) ); + yuiMilestone() << "Set user candidate returns: " << (ok?"true":"false") << endl; + if ( ok ) + { + // Set status + ok = slbPtr->setStatus( status ); + yuiMilestone() << "Set status of: " << slbPtr->name() << " to: " + << status << " returns: " << (ok?"true":"false") << endl; + } } - else + + return ok; +} + + +//------------------------------------------------------------ +// Class for strategies to get status for multi version packages +//------------------------------------------------------------ + +// +// Constructor +// +MultiVersionStatStrategy::MultiVersionStatStrategy() + : NCPkgStatusStrategy() +{ +} + +/////////////////////////////////////////////////////////////////// +// +// MultiVersionStatStrategy::getPackageStatus() +// +// Gets status from package manager +// +ZyppStatus MultiVersionStatStrategy::getPackageStatus( ZyppSel slbPtr, + ZyppObj objPtr ) +{ + if ( !slbPtr || !objPtr ) { - zypp::PoolItem itemPtr ( objPtr->satSolvable() ); - return slbPtr->pickStatus( itemPtr ); + yuiError() << "Selectable pointer not valid" << endl; + return S_NoInst; } + + zypp::PoolItem itemPtr ( objPtr->satSolvable() ); + return slbPtr->pickStatus( itemPtr ); } /////////////////////////////////////////////////////////////////// // -// AvailableStatStrategy::setObjectStatus +// MultiVersionStatStrategy::setObjectStatus // -// Informs the package manager about the new status (sets the candidate) +// Informs the package manager about the new status // -bool AvailableStatStrategy::setObjectStatus( ZyppStatus newstatus, ZyppSel slbPtr, ZyppObj objPtr ) +bool MultiVersionStatStrategy::setObjectStatus( ZyppStatus newstatus, + ZyppSel slbPtr, ZyppObj objPtr ) { bool ok = false; @@ -603,69 +683,10 @@ return false; } - if ( !slbPtr->multiversionInstall() ) - { - ZyppObj newCandidate = objPtr; - - if ( newCandidate != slbPtr->candidateObj() ) - { - yuiMilestone() << "CANDIDATE changed" << endl; - - // Change status of selectable - ZyppStatus status = slbPtr->status(); - - if ( slbPtr->installedObj() && - slbPtr->installedObj()->edition() == newCandidate->edition() && - slbPtr->installedObj()->vendor() == newCandidate->vendor() - ) - { - yuiMilestone() << "Identical package installed" << endl; - // Switch back to the original instance - - // the version that was previously installed - status = S_KeepInstalled; - } - else - { - switch ( status ) - { - case S_KeepInstalled: - case S_Protected: - case S_AutoDel: - case S_AutoUpdate: - case S_Del: - case S_Update: - - status = S_Update; - break; - - case S_NoInst: - case S_Taboo: - case S_Install: - case S_AutoInstall: - status = S_Install; - break; - } - } - - // Set candidate - ok = bool( slbPtr->setCandidate( newCandidate ) ); - yuiMilestone() << "Set user candidate returns: " << (ok?"true":"false") << endl; - if ( ok ) - { - // Set status - ok = slbPtr->setStatus( status ); - yuiMilestone() << "Set status of: " << slbPtr->name() << " to: " - << status << " returns: " << (ok?"true":"false") << endl; - } - } - } - else - { - zypp::PoolItem itemPtr ( objPtr->satSolvable() ); - ok = slbPtr->setPickStatus( itemPtr, newstatus ); - yuiMilestone() << "Set new status of: "<< slbPtr->name() << ", " << objPtr->edition() - << " to: " << newstatus << " returns: " << (ok?"true":"false") << endl; - } + zypp::PoolItem itemPtr ( objPtr->satSolvable() ); + ok = slbPtr->setPickStatus( itemPtr, newstatus ); + yuiMilestone() << "Set new status of: "<< slbPtr->name() << ", " << objPtr->edition() + << " to: " << newstatus << " returns: " << (ok?"true":"false") << endl; return ok; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/src/NCPkgStatusStrategy.h new/libyui-ncurses-pkg-2.44.1/src/NCPkgStatusStrategy.h --- old/libyui-ncurses-pkg-2.44.0/src/NCPkgStatusStrategy.h 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/src/NCPkgStatusStrategy.h 2013-07-03 14:28:09.000000000 +0200 @@ -37,7 +37,7 @@ Author: Gabriele Strattner <g...@suse.de> - + /-*/ #ifndef NCPkgStatusStrategy_h #define NCPkgStatusStrategy_h @@ -48,16 +48,16 @@ #define EXTRA_PATCH_STRATEGY 0 //------------------------------------------------------------ -// Abstract base class for strategies to get status for packages or patches +// Abstract base class for strategies to get status for packages or patches //------------------------------------------------------------ class NCPkgStatusStrategy { public: - + NCPkgStatusStrategy( ); - - virtual ~NCPkgStatusStrategy() = 0; + + virtual ~NCPkgStatusStrategy() = 0; /** * Gets the status information from the package manager. @@ -73,7 +73,7 @@ * @param slbPtr The selectable pointer (e.g. a package pointer) * @param pkgPtr The object pointer (used for candidate selection) * @return bool - */ + */ virtual bool setObjectStatus ( ZyppStatus newstatus, ZyppSel slbPtr, ZyppObj objPtr @@ -85,12 +85,12 @@ * @param slbPtr The object pointer (e.g. a package pointer) * @param newStatus The new package status * @return bool - */ + */ virtual bool keyToStatus( const int & key, ZyppSel slbPtr, ZyppObj objPtr, ZyppStatus & newStat ); - + /** * Toggles the package status (e.g. from installed to delete) * @param The object pointer @@ -105,7 +105,7 @@ **/ void solveResolvableCollections(); - + }; //------------------------------------------------------------ @@ -116,9 +116,9 @@ public: PackageStatStrategy( ); - + virtual ~PackageStatStrategy() {} - + }; //------------------------------------------------------------ @@ -129,9 +129,9 @@ public: DependencyStatStrategy( ); - + virtual ~DependencyStatStrategy() {} - + }; //------------------------------------------------------------ @@ -142,9 +142,9 @@ public: UpdateStatStrategy( ); - + virtual ~UpdateStatStrategy() {} - + }; //------------------------------------------------------------ @@ -155,7 +155,7 @@ public: SelectionStatStrategy( ); - + virtual ~SelectionStatStrategy() {} /** @@ -168,7 +168,7 @@ virtual bool setObjectStatus( ZyppStatus newstatus, ZyppSel slbPtr, ZyppObj objPtr ); - + }; //------------------------------------------------------------ @@ -179,7 +179,7 @@ public: PatchPkgStatStrategy( ); - + virtual ~PatchPkgStatStrategy() {} /** @@ -192,7 +192,7 @@ }; - + //------------------------------------------------------------ // Class for strategies to handle status of patches @@ -202,7 +202,7 @@ public: PatchStatStrategy( ); - + virtual ~PatchStatStrategy() {} /** @@ -212,7 +212,7 @@ * @param slbPtr The object pointer (the patch pointer) * @param newStatus The new package status * @return bool - */ + */ virtual bool keyToStatus( const int & key, ZyppSel slbPtr, ZyppObj objPtr, @@ -228,7 +228,7 @@ ZyppObj objPtr, ZyppStatus & newStat ); #endif - + /** * Sets the status of the patch AND the status of the patch packages * @param newStatus The new package status @@ -246,9 +246,9 @@ class AvailableStatStrategy : public NCPkgStatusStrategy { public: - + AvailableStatStrategy( ); - + virtual ~AvailableStatStrategy() {} /** @@ -258,12 +258,43 @@ * @param slbPtr The package pointer * @param pkgPtr The object pointer (used for candidate selection) * @return bool - */ + */ virtual bool setObjectStatus( ZyppStatus newstatus, ZyppSel slbPtr, ZyppObj objPtr ); - virtual ZyppStatus getPackageStatus( ZyppSel slbPtr, ZyppObj objPtr ); }; -#endif +//---------------------------------------------------------------- +// Class for strategies to handle status of multi version packages +//---------------------------------------------------------------- +class MultiVersionStatStrategy : public NCPkgStatusStrategy +{ +public: + MultiVersionStatStrategy( ); + + virtual ~MultiVersionStatStrategy() {} + + /** + * Gets the status information from the package manager. + * @param slbPtr The package whose status to calculate. + * @return UI_Status The new status of the given package + * + **/ + virtual ZyppStatus getPackageStatus ( ZyppSel slbPtr, ZyppObj objPtr ); + + /** + * Informs the package manager about the new status and + * additionally sets the candidate object to the user chosen object. + * @param newStatus The new package status + * @param slbPtr The package pointer + * @param pkgPtr The object pointer (used for candidate selection) + * @return bool + */ + virtual bool setObjectStatus( ZyppStatus newstatus, + ZyppSel slbPtr, ZyppObj objPtr ); + +}; + + +#endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libyui-ncurses-pkg-2.44.0/src/NCPkgTable.cc new/libyui-ncurses-pkg-2.44.1/src/NCPkgTable.cc --- old/libyui-ncurses-pkg-2.44.0/src/NCPkgTable.cc 2013-06-27 12:48:11.000000000 +0200 +++ new/libyui-ncurses-pkg-2.44.1/src/NCPkgTable.cc 2013-07-03 14:28:09.000000000 +0200 @@ -852,7 +852,7 @@ NCDialog * currentDialog = static_cast<NCDialog *>(YDialog::topmostDialog()); if ( currentDialog ) currentDialog->setStatusLine(); - + return NCursesEvent::handled; } @@ -1096,22 +1096,24 @@ // clear the package table itemsCleared (); - NCPkgStatusStrategy * strategy = new AvailableStatStrategy(); + NCPkgStatusStrategy * strategy; NCPkgTableType type; - + if ( slb->multiversionInstall() ) { type = T_MultiVersion; + strategy = new MultiVersionStatStrategy(); yuiMilestone() << "Multi version package " << slb->name() << endl; } else { type = T_Availables; + strategy = new AvailableStatStrategy(); } setTableType( type, strategy ); this->fillHeader(); - + // pick list contains installed and available packages (valid for single and multi version) zypp::ui::Selectable::picklist_iterator it = slb->picklistBegin(); while ( it != slb->picklistEnd() ) -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org