Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libzypp for openSUSE:Factory checked 
in at 2025-01-24 13:38:02
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libzypp (Old)
 and      /work/SRC/openSUSE:Factory/.libzypp.new.2316 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libzypp"

Fri Jan 24 13:38:02 2025 rev:506 rq:1239629 version:17.35.19

Changes:
--------
--- /work/SRC/openSUSE:Factory/libzypp/libzypp.changes  2025-01-21 
21:10:04.705995710 +0100
+++ /work/SRC/openSUSE:Factory/.libzypp.new.2316/libzypp.changes        
2025-01-24 13:38:05.060908111 +0100
@@ -1,0 +2,7 @@
+Wed Jan 22 16:09:09 CET 2025 - m...@suse.de
+
+- Create '.keep_packages' in the package cache dir to enforce
+  keeping downloaded packages of all repos cahed there (bsc#1232458)
+- version 17.35.19 (35)
+
+-------------------------------------------------------------------

Old:
----
  libzypp-17.35.18.tar.bz2

New:
----
  libzypp-17.35.19.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libzypp.spec ++++++
--- /var/tmp/diff_new_pack.BqUdlg/_old  2025-01-24 13:38:05.780937849 +0100
+++ /var/tmp/diff_new_pack.BqUdlg/_new  2025-01-24 13:38:05.784938013 +0100
@@ -57,7 +57,7 @@
 %bcond_with enable_preview_single_rpmtrans_as_default_for_zypper
 
 Name:           libzypp
-Version:        17.35.18
+Version:        17.35.19
 Release:        0
 License:        GPL-2.0-or-later
 URL:            https://github.com/openSUSE/libzypp

++++++ libzypp-17.35.18.tar.bz2 -> libzypp-17.35.19.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.35.18/VERSION.cmake 
new/libzypp-17.35.19/VERSION.cmake
--- old/libzypp-17.35.18/VERSION.cmake  2025-01-20 17:20:09.000000000 +0100
+++ new/libzypp-17.35.19/VERSION.cmake  2025-01-22 16:27:38.000000000 +0100
@@ -61,8 +61,8 @@
 SET(LIBZYPP_MAJOR "17")
 SET(LIBZYPP_COMPATMINOR "35")
 SET(LIBZYPP_MINOR "35")
-SET(LIBZYPP_PATCH "18")
+SET(LIBZYPP_PATCH "19")
 #
-# LAST RELEASED: 17.35.18 (35)
+# LAST RELEASED: 17.35.19 (35)
 # (The number in parenthesis is LIBZYPP_COMPATMINOR)
 #=======
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.35.18/package/libzypp.changes 
new/libzypp-17.35.19/package/libzypp.changes
--- old/libzypp-17.35.18/package/libzypp.changes        2025-01-20 
17:20:09.000000000 +0100
+++ new/libzypp-17.35.19/package/libzypp.changes        2025-01-22 
16:27:38.000000000 +0100
@@ -1,4 +1,11 @@
 -------------------------------------------------------------------
+Wed Jan 22 16:09:09 CET 2025 - m...@suse.de
+
+- Create '.keep_packages' in the package cache dir to enforce
+  keeping downloaded packages of all repos cahed there (bsc#1232458)
+- version 17.35.19 (35)
+
+-------------------------------------------------------------------
 Mon Jan 20 17:17:16 CET 2025 - m...@suse.de
 
 - Fix missing UID checks in repomanager workflow (fixes #603)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.35.18/zypp/RepoInfo.cc 
new/libzypp-17.35.19/zypp/RepoInfo.cc
--- old/libzypp-17.35.18/zypp/RepoInfo.cc       2024-10-14 10:40:08.000000000 
+0200
+++ new/libzypp-17.35.19/zypp/RepoInfo.cc       2025-01-22 16:10:10.000000000 
+0100
@@ -590,6 +590,9 @@
   bool RepoInfo::keepPackages() const
   { return indeterminate(_pimpl->keeppackages) ? false : 
(bool)_pimpl->keeppackages; }
 
+  bool RepoInfo::effectiveKeepPackages() const
+  { return keepPackages() || 
PathInfo(packagesPath().dirname()/".keep_packages").isExist(); }
+
   Pathname RepoInfo::metadataPath() const
   { return _pimpl->metadataPath(); }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.35.18/zypp/RepoInfo.h 
new/libzypp-17.35.19/zypp/RepoInfo.h
--- old/libzypp-17.35.18/zypp/RepoInfo.h        2024-06-28 17:40:08.000000000 
+0200
+++ new/libzypp-17.35.19/zypp/RepoInfo.h        2025-01-22 16:10:10.000000000 
+0100
@@ -426,6 +426,12 @@
        */
       void setKeepPackages( bool keep );
 
+      /** \ref keepPackages unless the package cache itself enforces keeping 
the packages.
+       * This can be done by creating a file named \c .keep_packages in the 
package
+       * cache's toplevel directory (e.g. 
/var/cache/zypp/packages/.keep_packages)
+       */
+      bool effectiveKeepPackages() const;
+
       /**
        * Gets name of the service to which this repository belongs or empty 
string
        * if it has been added manually.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libzypp-17.35.18/zypp/repo/PackageProvider.cc 
new/libzypp-17.35.19/zypp/repo/PackageProvider.cc
--- old/libzypp-17.35.18/zypp/repo/PackageProvider.cc   2024-06-04 
11:50:11.000000000 +0200
+++ new/libzypp-17.35.19/zypp/repo/PackageProvider.cc   2025-01-22 
16:10:10.000000000 +0100
@@ -141,7 +141,7 @@
       ManagedFile providePackageFromCache() const override
       {
         ManagedFile ret( doProvidePackageFromCache() );
-        if ( ! ( ret->empty() ||  _package->repoInfo().keepPackages() ) )
+        if ( ! ( ret->empty() || _package->repoInfo().effectiveKeepPackages() 
) )
           ret.setDispose( filesystem::unlink );
         return ret;
       }
@@ -158,7 +158,7 @@
        *
        * A cache hit will return a non empty ManagedFile and an empty one on 
cache miss.
        *
-       * \note File disposal depending on the repos keepPackages setting
+       * \note File disposal depending on the repos effectiveKeepPackages 
setting
        * are not set here, but in \ref providePackage or \ref 
providePackageFromCache.
        */
       ManagedFile doProvidePackageFromCache() const
@@ -405,7 +405,7 @@
               if ( filesystem::assert_dir( dest.dirname() ) == 0 && 
filesystem::hardlinkCopy( pi.path(), dest ) == 0 )
               {
                 ret = ManagedFile( dest );
-                if ( ! info.keepPackages() )
+                if ( ! info.effectiveKeepPackages() )
                   ret.setDispose( filesystem::unlink );
 
                 MIL << "provided Package from toplevel cache " << _package << 
" at " << ret << endl;

Reply via email to