Hello community, here is the log from the commit of package libzypp for openSUSE:Factory checked in at 2015-06-30 10:14:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libzypp (Old) and /work/SRC/openSUSE:Factory/.libzypp.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libzypp" Changes: -------- --- /work/SRC/openSUSE:Factory/libzypp/libzypp.changes 2015-06-18 06:36:40.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libzypp.new/libzypp.changes 2015-06-30 10:14:23.000000000 +0200 @@ -1,0 +2,13 @@ +Mon Jun 29 17:43:00 CEST 2015 - m...@suse.de + +- Fix lost pathname when importing repo keys (bnc#936373) +- Disable code swig does not understand +- version 15.6.0 (5) + +------------------------------------------------------------------- +Sat Jun 27 17:07:32 CEST 2015 - m...@suse.de + +- Patch: fixup testing Category and Severity flags (FATE#318760) +- version 15.5.0 (5) + +------------------------------------------------------------------- Old: ---- libzypp-15.4.1.tar.bz2 New: ---- libzypp-15.6.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libzypp.spec ++++++ --- /var/tmp/diff_new_pack.st5Gfb/_old 2015-06-30 10:14:23.000000000 +0200 +++ /var/tmp/diff_new_pack.st5Gfb/_new 2015-06-30 10:14:23.000000000 +0200 @@ -19,7 +19,7 @@ %define force_gcc_46 0 Name: libzypp -Version: 15.4.1 +Version: 15.6.0 Release: 0 Url: git://gitorious.org/opensuse/libzypp.git Summary: Package, Patch, Pattern, and Product Management ++++++ libzypp-15.4.1.tar.bz2 -> libzypp-15.6.0.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/VERSION.cmake new/libzypp-15.6.0/VERSION.cmake --- old/libzypp-15.4.1/VERSION.cmake 2015-06-12 12:17:07.000000000 +0200 +++ new/libzypp-15.6.0/VERSION.cmake 2015-06-29 17:43:40.000000000 +0200 @@ -59,10 +59,10 @@ # See './mkChangelog -h' for help. # SET(LIBZYPP_MAJOR "15") -SET(LIBZYPP_COMPATMINOR "3") -SET(LIBZYPP_MINOR "4") -SET(LIBZYPP_PATCH "1") +SET(LIBZYPP_COMPATMINOR "5") +SET(LIBZYPP_MINOR "6") +SET(LIBZYPP_PATCH "0") # -# LAST RELEASED: 15.4.1 (3) +# LAST RELEASED: 15.6.0 (5) # (The number in parenthesis is LIBZYPP_COMPATMINOR) #======= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/package/libzypp.changes new/libzypp-15.6.0/package/libzypp.changes --- old/libzypp-15.4.1/package/libzypp.changes 2015-06-12 12:17:07.000000000 +0200 +++ new/libzypp-15.6.0/package/libzypp.changes 2015-06-29 17:43:40.000000000 +0200 @@ -1,4 +1,17 @@ ------------------------------------------------------------------- +Mon Jun 29 17:43:00 CEST 2015 - m...@suse.de + +- Fix lost pathname when importing repo keys (bnc#936373) +- Disable code swig does not understand +- version 15.6.0 (5) + +------------------------------------------------------------------- +Sat Jun 27 17:07:32 CEST 2015 - m...@suse.de + +- Patch: fixup testing Category and Severity flags (FATE#318760) +- version 15.5.0 (5) + +------------------------------------------------------------------- Fri Jun 12 12:14:04 CEST 2015 - m...@suse.de - Add details to the default signature verification problem report diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/tests/zypp/Flags_test.cc new/libzypp-15.6.0/tests/zypp/Flags_test.cc --- old/libzypp-15.4.1/tests/zypp/Flags_test.cc 2014-07-01 11:30:28.000000000 +0200 +++ new/libzypp-15.6.0/tests/zypp/Flags_test.cc 2015-06-26 09:00:26.000000000 +0200 @@ -75,10 +75,11 @@ t = T_3; + BOOST_CHECK( ! t.testFlag( T_0 ) ); // fails as T_3 != 0 BOOST_CHECK( t.testFlag( T_1 ) ); BOOST_CHECK( t.testFlag( T_2 ) ); BOOST_CHECK( t.testFlag( T_3 ) ); t.unsetFlag( T_2 ); BOOST_CHECK( t.testFlag( T_1 ) ); - t.setFlag( T_1, false ); BOOST_CHECK( t.testFlag( T_0 ) ); + t.setFlag( T_1, false ); BOOST_CHECK( t.testFlag( T_0 ) ); // succeed as T_3 == 0 t.setFlag( T_3, true ); BOOST_CHECK( t.testFlag( T_3 ) ); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/zypp/FileChecker.cc new/libzypp-15.6.0/zypp/FileChecker.cc --- old/libzypp-15.4.1/zypp/FileChecker.cc 2015-05-18 11:08:12.000000000 +0200 +++ new/libzypp-15.6.0/zypp/FileChecker.cc 2015-06-26 09:00:26.000000000 +0200 @@ -52,6 +52,7 @@ CheckSum real_checksum( _checksum.type(), filesystem::checksum( file, _checksum.type() )); if ( (real_checksum != _checksum) ) { + WAR << "File " << file << " has wrong checksum " << real_checksum << " (expected " << _checksum << ")" << endl; if ( report->askUserToAcceptWrongDigest( file, _checksum.checksum(), real_checksum.checksum() ) ) { WAR << "User accepted " << file << " with WRONG CHECKSUM." << std::endl; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/zypp/Package.cc new/libzypp-15.6.0/zypp/Package.cc --- old/libzypp-15.4.1/zypp/Package.cc 2014-10-27 13:12:41.000000000 +0100 +++ new/libzypp-15.6.0/zypp/Package.cc 2015-06-26 09:00:26.000000000 +0200 @@ -86,10 +86,14 @@ bool Package::maybeUnsupported() const { - static const VendorSupportOptions unsupportedOpts( VendorSupportUnknown - | VendorSupportUnsupported - | VendorSupportACC ); - return unsupportedOpts.testFlag( vendorSupport() ); + switch ( vendorSupport() ) + { + case VendorSupportUnknown: + case VendorSupportUnsupported: + case VendorSupportACC: + return true; + } + return false; } Changelog Package::changelog() const diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/zypp/Patch.cc new/libzypp-15.6.0/zypp/Patch.cc --- old/libzypp-15.4.1/zypp/Patch.cc 2014-07-01 11:30:28.000000000 +0200 +++ new/libzypp-15.6.0/zypp/Patch.cc 2015-06-26 09:00:26.000000000 +0200 @@ -52,6 +52,9 @@ bool Patch::isCategory( const std::string & category_r ) const { return( str::compareCI( category_r, category() ) == 0 ); } + bool Patch::isCategory( Categories category_r ) const + { return category_r.testFlag( categoryEnum() ); } + Patch::Category Patch::categoryEnum( const std::string & category_r ) { switch ( category_r[0] ) @@ -107,6 +110,7 @@ break; } // default: + INT << "Unrecognized Patch::Category string '" << category_r << "'" << endl; return CAT_OTHER; } @@ -121,6 +125,9 @@ bool Patch::isSeverity( const std::string & severity_r ) const { return( str::compareCI( severity_r, severity() ) == 0 ); } + bool Patch::isSeverity( SeverityFlags severity_r ) const + { return severity_r.testFlag( severityFlag() ); } + Patch::SeverityFlag Patch::severityFlag( const std::string & severity_r ) { switch ( severity_r[0] ) @@ -160,6 +167,7 @@ break; } // default: + INT << "Unrecognized Patch::Severity string '" << severity_r << "'" << endl; return SEV_OTHER; } @@ -167,8 +175,8 @@ { switch ( obj ) { - case Patch::SEV_NONE: return std::string( "unspecified" ); break; case Patch::SEV_OTHER: return std::string( "unknown" ); break; + case Patch::SEV_NONE: return std::string( "unspecified" ); break; case Patch::SEV_LOW: return std::string( "low" ); break; case Patch::SEV_MODERATE: return std::string( "moderate" ); break; case Patch::SEV_IMPORTANT:return std::string( "important" ); break; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/zypp/Patch.h new/libzypp-15.6.0/zypp/Patch.h --- old/libzypp-15.4.1/zypp/Patch.h 2014-07-01 11:30:28.000000000 +0200 +++ new/libzypp-15.6.0/zypp/Patch.h 2015-06-29 12:40:00.000000000 +0200 @@ -45,13 +45,14 @@ typedef sat::SolvableSet Contents; enum Category { - CAT_OTHER, - CAT_YAST, - CAT_SECURITY, - CAT_RECOMMENDED, - CAT_OPTIONAL, - CAT_DOCUMENT + CAT_OTHER = 1, //!< unknown value specified + CAT_YAST = 1<<1, //!< + CAT_SECURITY = 1<<2, //!< + CAT_RECOMMENDED = 1<<3, //!< + CAT_OPTIONAL = 1<<4, //!< + CAT_DOCUMENT = 1<<5 //!< }; + ZYPP_DECLARE_FLAGS(Categories, Category); /** * Flags defining if and why this @@ -72,12 +73,12 @@ * \ref asSring( const Patch::SeverityFlag & ). */ enum SeverityFlag { - SEV_NONE = 0, //!< no value specified SEV_OTHER = 1, //!< unknown value specified - SEV_LOW = 1<<1, //!< Low - SEV_MODERATE = 1<<2, //!< Moderate - SEV_IMPORTANT = 1<<3, //!< Important - SEV_CRITICAL = 1<<4 //!< Critical + SEV_NONE = 1<<1, //!< no value specified + SEV_LOW = 1<<2, //!< Low + SEV_MODERATE = 1<<3, //!< Moderate + SEV_IMPORTANT = 1<<4, //!< Important + SEV_CRITICAL = 1<<5 //!< Critical }; ZYPP_DECLARE_FLAGS(SeverityFlags, SeverityFlag); @@ -103,7 +104,20 @@ /** Whether this patch's category matches \a category_r */ bool isCategory( const std::string & category_r ) const; - + /** \overload taking OR'ed \ref Categories */ + bool isCategory( Categories category_r ) const; +#ifndef SWIG // Swig treats it as syntax error + /** \overload taking container of category strings + * 2nd template arg just to prevent instantiation for Category + */ + template <class _Container, typename = typename _Container::value_type> + bool isCategory( const _Container & categories_r ) const + { + for ( const std::string & el : categories_r ) + { if ( isCategory( el ) ) return true; } + return false; + } +#endif /** Patch category as enum of wellknown categories. * Unknown values are mapped to \ref CAT_OTHER. */ @@ -126,7 +140,20 @@ /** Whether this patch's severity matches \a severity_r */ bool isSeverity( const std::string & severity_r ) const; - + /** \overload taking OR'ed \ref SeverityFlags */ + bool isSeverity( SeverityFlags severity_r ) const; +#ifndef SWIG // Swig treats it as syntax error + /** \overload taking container of severity strings + * 2nd template arg just to prevent instantiation for SeverityFlag + */ + template <class _Container, typename = typename _Container::value_type> + bool isSeverity( const _Container & severities_r ) const + { + for ( const std::string & el : severities_r ) + { if ( isSeverity( el ) ) return true; } + return false; + } +#endif /** Severity string mapped to an enum. * Unknown string values are mapped to \ref SEV_OTHER */ @@ -205,6 +232,7 @@ /** Dtor */ virtual ~Patch(); }; + ZYPP_DECLARE_OPERATORS_FOR_FLAGS(Patch::Categories); ZYPP_DECLARE_OPERATORS_FOR_FLAGS(Patch::InteractiveFlags); ZYPP_DECLARE_OPERATORS_FOR_FLAGS(Patch::SeverityFlags); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/zypp/base/Flags.h new/libzypp-15.6.0/zypp/base/Flags.h --- old/libzypp-15.4.1/zypp/base/Flags.h 2014-07-01 11:30:28.000000000 +0200 +++ new/libzypp-15.6.0/zypp/base/Flags.h 2015-06-26 09:00:26.000000000 +0200 @@ -99,8 +99,8 @@ Flags & unsetFlag( Flags flag_r ) { _val &= ~flag_r; return *this; } Flags & unsetFlag( Enum flag_r ) { _val &= ~flag_r; return *this; } - bool testFlag( Flags flag_r ) const { return ( _val & flag_r ) == flag_r; } - bool testFlag( Enum flag_r ) const { return ( _val & flag_r ) == flag_r; } + bool testFlag( Flags flag_r ) const { return flag_r ? ( _val & flag_r ) == flag_r : !_val; } + bool testFlag( Enum flag_r ) const { return flag_r ? ( _val & flag_r ) == flag_r : !_val; } private: Integral _val; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/zypp/base/String.h new/libzypp-15.6.0/zypp/base/String.h --- old/libzypp-15.4.1/zypp/base/String.h 2015-05-18 11:08:12.000000000 +0200 +++ new/libzypp-15.6.0/zypp/base/String.h 2015-06-26 17:20:25.000000000 +0200 @@ -19,6 +19,7 @@ #include <string> #include <sstream> #include <boost/format.hpp> +#include <boost/utility/string_ref.hpp> #include "zypp/base/Easy.h" #include "zypp/base/PtrTypes.h" @@ -111,6 +112,8 @@ * bool hasPrefix( const C_Str & str_r, const C_Str & prefix_r ) * { return( ::strncmp( str_r, prefix_r, prefix_r.size() ) == 0 ); } * \endcode + * + * \todo Check whether to replace by boost::string_ref */ class C_Str { @@ -122,6 +125,7 @@ C_Str( char * c_str_r ) : _val( c_str_r ), _sze( std::string::npos ) {} C_Str( const char * c_str_r ) : _val( c_str_r ), _sze( std::string::npos ) {} C_Str( const std::string & str_r ) : _val( str_r.c_str() ), _sze( str_r.size() ) {} + C_Str( const boost::string_ref & str_r ) : _val( str_r.data() ), _sze( str_r.size() ) {} public: bool isNull() const { return !_val; } @@ -157,11 +161,11 @@ /** * Global asString() that works with std::string too */ - inline std::string asString( const std::string &t ) + inline const std::string & asString( const std::string & t ) { return t; } #ifndef SWIG // Swig treats it as syntax error - inline std::string asString( std::string && t ) + inline std::string && asString( std::string && t ) { return std::move(t); } #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-15.4.1/zypp/target/rpm/RpmDb.cc new/libzypp-15.6.0/zypp/target/rpm/RpmDb.cc --- old/libzypp-15.4.1/zypp/target/rpm/RpmDb.cc 2015-05-18 12:44:17.000000000 +0200 +++ new/libzypp-15.6.0/zypp/target/rpm/RpmDb.cc 2015-06-29 17:43:40.000000000 +0200 @@ -1108,7 +1108,8 @@ RpmArgVec opts; opts.push_back ( "--import" ); opts.push_back ( "--" ); - opts.push_back ( pubkey_r.path().asString().c_str() ); + std::string pubkeypath( pubkey_r.path().asString() ); + opts.push_back ( pubkeypath.c_str() ); // don't call modifyDatabase because it would remove the old // rpm3 database, if the current database is a temporary one.