Hello community, here is the log from the commit of package yast2-pkg-bindings for openSUSE:Factory checked in at 2018-02-02 22:18:35 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-pkg-bindings (Old) and /work/SRC/openSUSE:Factory/.yast2-pkg-bindings.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-pkg-bindings" Fri Feb 2 22:18:35 2018 rev:196 rq:571402 version:4.0.7 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-pkg-bindings/yast2-pkg-bindings.changes 2018-01-28 00:37:06.316003714 +0100 +++ /work/SRC/openSUSE:Factory/.yast2-pkg-bindings.new/yast2-pkg-bindings.changes 2018-02-02 22:18:36.876148892 +0100 @@ -1,0 +2,7 @@ +Wed Jan 31 12:51:57 UTC 2018 - lsle...@suse.cz + +- Added "transact_by" key to the PkgPropertiesAll call + (improvement for bsc#1077882) +- 4.0.7 + +------------------------------------------------------------------- Old: ---- yast2-pkg-bindings-4.0.6.tar.bz2 New: ---- yast2-pkg-bindings-4.0.7.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-pkg-bindings-devel-doc.spec ++++++ --- /var/tmp/diff_new_pack.zkHGF1/_old 2018-02-02 22:18:37.452122002 +0100 +++ /var/tmp/diff_new_pack.zkHGF1/_new 2018-02-02 22:18:37.456121816 +0100 @@ -17,7 +17,7 @@ Name: yast2-pkg-bindings-devel-doc -Version: 4.0.6 +Version: 4.0.7 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build Source0: yast2-pkg-bindings-%{version}.tar.bz2 ++++++ yast2-pkg-bindings.spec ++++++ --- /var/tmp/diff_new_pack.zkHGF1/_old 2018-02-02 22:18:37.480120695 +0100 +++ /var/tmp/diff_new_pack.zkHGF1/_new 2018-02-02 22:18:37.484120509 +0100 @@ -17,7 +17,7 @@ Name: yast2-pkg-bindings -Version: 4.0.6 +Version: 4.0.7 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ yast2-pkg-bindings-4.0.6.tar.bz2 -> yast2-pkg-bindings-4.0.7.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-pkg-bindings-4.0.6/package/yast2-pkg-bindings-devel-doc.spec new/yast2-pkg-bindings-4.0.7/package/yast2-pkg-bindings-devel-doc.spec --- old/yast2-pkg-bindings-4.0.6/package/yast2-pkg-bindings-devel-doc.spec 2018-01-24 13:04:59.000000000 +0100 +++ new/yast2-pkg-bindings-4.0.7/package/yast2-pkg-bindings-devel-doc.spec 2018-01-31 14:50:17.000000000 +0100 @@ -16,7 +16,7 @@ # Name: yast2-pkg-bindings-devel-doc -Version: 4.0.6 +Version: 4.0.7 Release: 0 License: GPL-2.0 Group: Documentation/HTML diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-pkg-bindings-4.0.6/package/yast2-pkg-bindings.changes new/yast2-pkg-bindings-4.0.7/package/yast2-pkg-bindings.changes --- old/yast2-pkg-bindings-4.0.6/package/yast2-pkg-bindings.changes 2018-01-24 13:04:59.000000000 +0100 +++ new/yast2-pkg-bindings-4.0.7/package/yast2-pkg-bindings.changes 2018-01-31 14:50:17.000000000 +0100 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Wed Jan 31 12:51:57 UTC 2018 - lsle...@suse.cz + +- Added "transact_by" key to the PkgPropertiesAll call + (improvement for bsc#1077882) +- 4.0.7 + +------------------------------------------------------------------- Wed Jan 24 11:52:55 UTC 2018 - lsle...@suse.cz - Log more details in PkgQueryProvides call diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-pkg-bindings-4.0.6/package/yast2-pkg-bindings.spec new/yast2-pkg-bindings-4.0.7/package/yast2-pkg-bindings.spec --- old/yast2-pkg-bindings-4.0.6/package/yast2-pkg-bindings.spec 2018-01-24 13:04:59.000000000 +0100 +++ new/yast2-pkg-bindings-4.0.7/package/yast2-pkg-bindings.spec 2018-01-31 14:50:17.000000000 +0100 @@ -17,7 +17,7 @@ Name: yast2-pkg-bindings -Version: 4.0.6 +Version: 4.0.7 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-pkg-bindings-4.0.6/src/Package.cc new/yast2-pkg-bindings-4.0.7/src/Package.cc --- old/yast2-pkg-bindings-4.0.6/src/Package.cc 2018-01-24 13:04:59.000000000 +0100 +++ new/yast2-pkg-bindings-4.0.7/src/Package.cc 2018-01-31 14:50:17.000000000 +0100 @@ -921,6 +921,7 @@ data->add( YCPString("status"), YCPSymbol(status)); data->add(YCPString("on_system_by_user"), YCPBoolean(item.satSolvable().onSystemByUser())); + data->add(YCPString("transact_by"), YCPSymbol(TransactToString(item.status().getTransactByValue()))); data->add( YCPString("location"), YCPString( pkg->location().filename().basename() ) ); data->add( YCPString("path"), YCPString( pkg->location().filename().asString() ) ); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-pkg-bindings-4.0.6/src/PkgFunctions.h new/yast2-pkg-bindings-4.0.7/src/PkgFunctions.h --- old/yast2-pkg-bindings-4.0.6/src/PkgFunctions.h 2018-01-24 13:04:59.000000000 +0100 +++ new/yast2-pkg-bindings-4.0.7/src/PkgFunctions.h 2018-01-31 14:50:17.000000000 +0100 @@ -279,6 +279,8 @@ void AddAuthData(zypp::Url url); // helper with common code to SourceURL and SourceRawUrl YCPValue GetSourceUrl(const YCPInteger& id, bool raw); + // helper - convert transaction_by to string + std::string TransactToString(zypp::ResStatus::TransactByValue trans); public: // general diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-pkg-bindings-4.0.6/src/Resolvable_Properties.cc new/yast2-pkg-bindings-4.0.7/src/Resolvable_Properties.cc --- old/yast2-pkg-bindings-4.0.6/src/Resolvable_Properties.cc 2018-01-24 13:04:59.000000000 +0100 +++ new/yast2-pkg-bindings-4.0.7/src/Resolvable_Properties.cc 2018-01-31 14:50:17.000000000 +0100 @@ -56,6 +56,22 @@ @description return list of resolvables of selected kind with required name + **Warning** + + Calling `ResolvableProperties("", :package, "")` variant is memory expansive + esp. when there are repositories with too many packages (e.g. the OpenSUSE + OSS repository contains ~40,000 packages). + + If you need only packages in a specific state then use `GetPackages()` call + instead. If you need more details about the packages then read the details only + for that packages using `ResolvableProperties(package_name, :package, "")`. + In some cases it is also possible to use the `IsAnyResolvable` call. + + The other resolvable types (e.g. :pattern or :product) do not cause memory + problems as there are usually just few items of this type. + + See bsc#106768. + @param name name of the resolvable, if empty returns all resolvables of the kind @param kind_r kind of resolvable, can be `product, `patch, `package, `pattern or `language @param version version of the resolvable, if empty all versions are returned @@ -171,7 +187,7 @@ return ResolvablePropertiesEx (name, kind_r, version, true); } -std::string TransactToString(zypp::ResStatus::TransactByValue trans) +std::string PkgFunctions::TransactToString(zypp::ResStatus::TransactByValue trans) { std::string ret;