Hello community, here is the log from the commit of package libzypp for openSUSE:Factory checked in at 2020-06-08 23:46:28 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libzypp (Old) and /work/SRC/openSUSE:Factory/.libzypp.new.3606 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libzypp" Mon Jun 8 23:46:28 2020 rev:428 rq:811370 version:17.23.6 Changes: -------- --- /work/SRC/openSUSE:Factory/libzypp/libzypp.changes 2020-06-03 20:28:32.624447891 +0200 +++ /work/SRC/openSUSE:Factory/.libzypp.new.3606/libzypp.changes 2020-06-08 23:47:13.269954727 +0200 @@ -1,0 +2,6 @@ +Thu Jun 4 11:45:03 CEST 2020 - [email protected] + +- Revert "Enable zchunk on SLE-15-SP2". +- version 17.23.6 (22) + +------------------------------------------------------------------- Old: ---- libzypp-17.23.5.tar.bz2 New: ---- libzypp-17.23.6.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libzypp.spec ++++++ --- /var/tmp/diff_new_pack.4yWVIq/_old 2020-06-08 23:47:14.289957874 +0200 +++ /var/tmp/diff_new_pack.4yWVIq/_new 2020-06-08 23:47:14.289957874 +0200 @@ -19,17 +19,13 @@ %if 0%{?is_opensuse} && (0%{?sle_version} >= 150100 || 0%{?suse_version} > 1500) %bcond_without zchunk %else -%if 0%{?sle_version} >= 150200 -%bcond_without zchunk -%else %bcond_with zchunk %endif -%endif %bcond_without mediabackend_tests Name: libzypp -Version: 17.23.5 +Version: 17.23.6 Release: 0 URL: https://github.com/openSUSE/libzypp Summary: Library for package, patch, pattern and product management ++++++ libzypp-17.23.5.tar.bz2 -> libzypp-17.23.6.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.5/VERSION.cmake new/libzypp-17.23.6/VERSION.cmake --- old/libzypp-17.23.5/VERSION.cmake 2020-05-27 18:52:23.000000000 +0200 +++ new/libzypp-17.23.6/VERSION.cmake 2020-06-04 11:46:43.000000000 +0200 @@ -61,8 +61,8 @@ SET(LIBZYPP_MAJOR "17") SET(LIBZYPP_COMPATMINOR "22") SET(LIBZYPP_MINOR "23") -SET(LIBZYPP_PATCH "5") +SET(LIBZYPP_PATCH "6") # -# LAST RELEASED: 17.23.5 (22) +# LAST RELEASED: 17.23.6 (22) # (The number in parenthesis is LIBZYPP_COMPATMINOR) #======= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.5/libzypp.spec.cmake new/libzypp-17.23.6/libzypp.spec.cmake --- old/libzypp-17.23.5/libzypp.spec.cmake 2020-05-27 18:52:23.000000000 +0200 +++ new/libzypp-17.23.6/libzypp.spec.cmake 2020-06-04 11:46:43.000000000 +0200 @@ -18,12 +18,8 @@ %if 0%{?is_opensuse} && (0%{?sle_version} >= 150100 || 0%{?suse_version} > 1500) %bcond_without zchunk %else -%if 0%{?sle_version} >= 150200 -%bcond_without zchunk -%else %bcond_with zchunk %endif -%endif %bcond_without mediabackend_tests diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.5/package/libzypp.changes new/libzypp-17.23.6/package/libzypp.changes --- old/libzypp-17.23.5/package/libzypp.changes 2020-05-27 18:52:23.000000000 +0200 +++ new/libzypp-17.23.6/package/libzypp.changes 2020-06-04 11:46:43.000000000 +0200 @@ -1,4 +1,10 @@ ------------------------------------------------------------------- +Thu Jun 4 11:45:03 CEST 2020 - [email protected] + +- Revert "Enable zchunk on SLE-15-SP2". +- version 17.23.6 (22) + +------------------------------------------------------------------- Wed May 27 18:50:32 CEST 2020 - [email protected] - Enable zchunk on SLE-15-SP2. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libzypp-17.23.5/tools/zypp-NameReqPrv.cc new/libzypp-17.23.6/tools/zypp-NameReqPrv.cc --- old/libzypp-17.23.5/tools/zypp-NameReqPrv.cc 2020-04-03 17:01:13.000000000 +0200 +++ new/libzypp-17.23.6/tools/zypp-NameReqPrv.cc 2020-05-29 18:51:12.000000000 +0200 @@ -86,15 +86,19 @@ struct Table { - void row( PoolQuery::const_iterator it_r ) + std::vector<std::string> & row( const sat::Solvable & solv_r ) { //smax( _maxSID, ); - smax( _maxNAME, it_r->ident().size() + it_r->edition().size() + it_r->arch().size() ); - smax( _maxREPO, it_r->repository().name().size(), it_r->repository().name() ); + smax( _maxNAME, solv_r.ident().size() + solv_r.edition().size() + solv_r.arch().size() ); + smax( _maxREPO, solv_r.repository().name().size(), solv_r.repository().name() ); //smax( _maxTIME, ); - //smax( _maxVEND, it_r->vendor().size() ); + //smax( _maxVEND, solv_r.vendor().size() ); + return _map[solv_r]; + } - std::vector<std::string> & details { _map[*it_r] }; + void row( PoolQuery::const_iterator it_r ) + { + std::vector<std::string> & details { row( *it_r ) }; for_( match, it_r.matchesBegin(), it_r.matchesEnd() ) { details.push_back( match->inSolvAttr().asString().substr( 9, 3 )+": " +match->asString() ); } @@ -178,6 +182,75 @@ message << endl << "}" << endl; } +/////////////////////////////////////////////////////////////////// + +void dTree( const std::string & cmd_r, const std::string & spec_r ) +{ + message << "tree " << spec_r << " {"; + + sat::WhatProvides spec( Capability::guessPackageSpec( spec_r ) ); + if ( spec.empty() ) + { + message << "}" << endl; + return; + } + + static const std::list<sat::SolvAttr> attrs { + sat::SolvAttr::requires, + sat::SolvAttr::recommends, + sat::SolvAttr::obsoletes, + sat::SolvAttr::conflicts, + sat::SolvAttr::supplements, + }; + + std::map<sat::SolvAttr,std::map<sat::Solvable,std::set<std::string>>> result; // solvables recommending provided capability + { + Table t; + for ( const auto & el : spec ) + { + auto & details { t.row( el ) }; + for ( const auto & cap : el.provides() ) + { + //details.push_back( "prv: "+cap.asString() ); // list only matching ones + + // get attrs matching cap + for ( const auto & attr : attrs ) + { + PoolQuery q; + q.addDependency( attr, cap ); + if ( q.empty() ) + continue; + for_( it, q.begin(), q.end() ) { + for_( match, it.matchesBegin(), it.matchesEnd() ) { + result[attr][*it].insert( match->inSolvAttr().asString().substr( 9, 3 )+": " +match->asString() + + " (" + cap.asString() + ")" + ); + } + } + } + } + } + message << endl << t; + } + + for ( const auto & attr : attrs ) + { + if ( result[attr].empty() ) + continue; + + message << endl << "======== " << attr << " by:" << endl; + Table t; + for ( const auto & el : result[attr] ) + { + auto & details { t.row( el.first ) }; + for ( const auto & cap : el.second ) + details.push_back( cap ); + } + message << endl << t << endl; + } + message << "}" << endl; +} + /****************************************************************** ** ** FUNCTION NAME : main @@ -317,6 +390,16 @@ else return errexit("-D <pkgspec> requires an argument."); break; + case 'T': + if ( argc > 1 ) + { + std::string cmd { *argv }; + --argc,++argv; + dTree( cmd, *argv ); + } + else + return errexit("-T <pkgspec> requires an argument."); + break; case 'i': ignorecase = true; break; case 'I': ignorecase = false; break; case 'x': matechexact = true; break; @@ -427,9 +510,7 @@ continue; t.row( it ); } - message << t << endl; - - message << "}" << endl; + message << t << "}" << endl; } INT << "===[END]============================================" << endl << endl;
