Hello community, here is the log from the commit of package snapper for openSUSE:Factory checked in at 2018-07-26 10:17:51 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/snapper (Old) and /work/SRC/openSUSE:Factory/.snapper.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "snapper" Thu Jul 26 10:17:51 2018 rev:101 rq:625213 version:0.5.6 Changes: -------- --- /work/SRC/openSUSE:Factory/snapper/snapper.changes 2018-06-15 14:32:18.490995633 +0200 +++ /work/SRC/openSUSE:Factory/.snapper.new/snapper.changes 2018-07-26 10:17:54.835884092 +0200 @@ -1,0 +2,7 @@ +Mon Jul 23 20:52:26 CEST 2018 - aschn...@suse.com + +- fixed logging during shutdown of snapperd to avoid core dumps + (bsc#1096401 and others) +- version 0.5.6 + +------------------------------------------------------------------- Old: ---- snapper-0.5.5.tar.bz2 New: ---- snapper-0.5.6.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ snapper.spec ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.355885035 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.359885042 +0200 @@ -22,7 +22,7 @@ %endif Name: snapper -Version: 0.5.5 +Version: 0.5.6 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build Source: snapper-%{version}.tar.bz2 ++++++ debian.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/debian/changelog new/debian/changelog --- old/debian/changelog 2018-06-07 02:00:00.000000000 +0200 +++ new/debian/changelog 2018-07-25 02:00:00.000000000 +0200 @@ -1,3 +1,9 @@ +snapper (0.5.6) stable; urgency=low + + * Updated to version 0.5.6 + + -- Arvin Schnell <aschn...@suse.com> Wed, 25 Jul 2018 08:34:01 +0200 + snapper (0.5.1) stable; urgency=low * Updated to version 0.5.1 ++++++ snapper-0.5.5.tar.bz2 -> snapper-0.5.6.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/VERSION new/snapper-0.5.6/VERSION --- old/snapper-0.5.5/VERSION 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/VERSION 2018-07-25 02:00:00.000000000 +0200 @@ -1 +1 @@ -0.5.5 +0.5.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/server/Client.cc new/snapper-0.5.6/server/Client.cc --- old/snapper-0.5.5/server/Client.cc 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/server/Client.cc 2018-07-25 02:00:00.000000000 +0200 @@ -1,6 +1,6 @@ /* * Copyright (c) [2012-2015] Novell, Inc. - * Copyright (c) 2016 SUSE LLC + * Copyright (c) [2016,2018] SUSE LLC * * All Rights Reserved. * @@ -68,11 +68,9 @@ Snapshots& snapshots = snapper->getSnapshots(); Snapshots::iterator snap = snapshots.find(number); - if (snap == snapshots.end()) - throw IllegalSnapshotException(); - - for (unsigned int i = 0; i < use_count; ++i) - snap->umountFilesystemSnapshot(false); + if (snap != snapshots.end()) + for (unsigned int i = 0; i < use_count; ++i) + snap->umountFilesystemSnapshot(false); } } @@ -115,6 +113,7 @@ } delete *it; + *it = nullptr; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/server/MetaSnapper.cc new/snapper-0.5.6/server/MetaSnapper.cc --- old/snapper-0.5.5/server/MetaSnapper.cc 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/server/MetaSnapper.cc 2018-07-25 02:00:00.000000000 +0200 @@ -1,5 +1,6 @@ /* * Copyright (c) [2012-2015] Novell, Inc. + * Copyright (c) 2018 SUSE LLC * * All Rights Reserved. * @@ -103,6 +104,7 @@ MetaSnapper::~MetaSnapper() { delete snapper; + snapper = nullptr; } @@ -172,7 +174,7 @@ MetaSnapper::unload() { delete snapper; - snapper = NULL; + snapper = nullptr; } @@ -198,6 +200,14 @@ } +void +MetaSnappers::unload() +{ + for (MetaSnapper& meta_snapper : entries) + meta_snapper.unload(); +} + + MetaSnappers::iterator MetaSnappers::find(const string& config_name) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/server/MetaSnapper.h new/snapper-0.5.6/server/MetaSnapper.h --- old/snapper-0.5.5/server/MetaSnapper.h 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/server/MetaSnapper.h 2018-07-25 02:00:00.000000000 +0200 @@ -1,5 +1,6 @@ /* * Copyright (c) [2012-2015] Novell, Inc. + * Copyright (c) 2018 SUSE LLC * * All Rights Reserved. * @@ -123,6 +124,8 @@ void init(); + void unload(); + typedef list<MetaSnapper>::iterator iterator; typedef list<MetaSnapper>::const_iterator const_iterator; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/server/snapperd.cc new/snapper-0.5.6/server/snapperd.cc --- old/snapper-0.5.5/server/snapperd.cc 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/server/snapperd.cc 2018-07-25 02:00:00.000000000 +0200 @@ -1,5 +1,6 @@ /* * Copyright (c) [2012-2015] Novell, Inc. + * Copyright (c) 2018 SUSE LLC * * All Rights Reserved. * @@ -286,5 +287,7 @@ y2mil("Exiting"); + meta_snappers.unload(); + return 0; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/snapper/Log.cc new/snapper-0.5.6/snapper/Log.cc --- old/snapper-0.5.5/snapper/Log.cc 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/snapper/Log.cc 2018-07-25 02:00:00.000000000 +0200 @@ -64,6 +64,7 @@ { callLogDo(level, *component, file, line, func, stream->str()); delete stream; + stream = nullptr; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/snapper/Logger.cc new/snapper-0.5.6/snapper/Logger.cc --- old/snapper-0.5.5/snapper/Logger.cc 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/snapper/Logger.cc 2018-07-25 02:00:00.000000000 +0200 @@ -1,5 +1,6 @@ /* * Copyright (c) [2004-2013] Novell, Inc. + * Copyright (c) 2018 SUSE LLC * * All Rights Reserved. * @@ -32,15 +33,33 @@ #include "snapper/AppUtil.h" +#define LOG_FILENAME "/var/log/snapper.log" + + namespace snapper { using namespace std; - // Use a pointer to avoid a global destructor. Otherwise the Snapper - // destructor in Factory.cc can be called after when logging does not work - // anymore. TODO: nicer solution. - string* filename = new string("/var/log/snapper.log"); + namespace + { + + struct LoggerData + { + LoggerData() : filename(LOG_FILENAME), mutex() {} + + string filename; + boost::mutex mutex; + }; + + + // Use pointer to avoid a global destructor. Otherwise other global + // destructors using logging can cause errors. + + LoggerData* logger_data = new LoggerData(); + + } + LogDo log_do = NULL; LogQuery log_query = NULL; @@ -69,11 +88,9 @@ string prefix = sformat("%s %s libsnapper(%d) %s(%s):%d", datetime(time(0), false, true).c_str(), ln[level], getpid(), file, func, line); - static boost::mutex mutex; - - boost::lock_guard<boost::mutex> lock(mutex); + boost::lock_guard<boost::mutex> lock(logger_data->mutex); - FILE* f = fopen(filename->c_str(), "ae"); + FILE* f = fopen(logger_data->filename.c_str(), "ae"); if (f) { string tmp = text; @@ -137,8 +154,7 @@ void initDefaultLogger() { - delete filename; - filename = new string("/var/log/snapper.log"); + logger_data->filename = LOG_FILENAME; if (geteuid()) { @@ -152,8 +168,7 @@ { memset(pwd.pw_passwd, 0, strlen(pwd.pw_passwd)); - delete filename; - filename = new string(string(pwd.pw_dir) + "/.snapper.log"); + logger_data->filename = string(pwd.pw_dir) + "/.snapper.log"; } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/snapper/Snapper.cc new/snapper-0.5.6/snapper/Snapper.cc --- old/snapper-0.5.5/snapper/Snapper.cc 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/snapper/Snapper.cc 2018-07-25 02:00:00.000000000 +0200 @@ -1,6 +1,6 @@ /* * Copyright (c) [2011-2015] Novell, Inc. - * Copyright (c) 2016 SUSE LLC + * Copyright (c) [2016,2018] SUSE LLC * * All Rights Reserved. * @@ -147,7 +147,10 @@ } delete filesystem; + filesystem = nullptr; + delete config_info; + config_info = nullptr; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/snapper-0.5.5/snapper/SnapperTmpl.h new/snapper-0.5.6/snapper/SnapperTmpl.h --- old/snapper-0.5.5/snapper/SnapperTmpl.h 2018-06-07 02:00:00.000000000 +0200 +++ new/snapper-0.5.6/snapper/SnapperTmpl.h 2018-07-25 02:00:00.000000000 +0200 @@ -23,7 +23,7 @@ #ifndef SNAPPER_SNAPPER_TMPL_H #define SNAPPER_SNAPPER_TMPL_H -#include <functional> + #include <ostream> #include <fstream> #include <sstream> @@ -32,6 +32,7 @@ #include "snapper/AppUtil.h" + namespace snapper { using std::string; @@ -47,6 +48,7 @@ return num_str.str(); } + template<class Num> string hexString(Num number) { static_assert(std::is_integral<Num>::value, "not integral"); @@ -57,6 +59,7 @@ return num_str.str(); } + template<class Value> void operator>>(const string& d, Value& v) { std::istringstream Data(d); @@ -64,6 +67,7 @@ Data >> v; } + template<class Value> std::ostream& operator<<( std::ostream& s, const std::list<Value>& l ) { s << "<"; @@ -77,12 +81,14 @@ return( s ); } + template<class F, class S> std::ostream& operator<<( std::ostream& s, const std::pair<F,S>& p ) { s << "[" << p.first << ":" << p.second << "]"; return( s ); } + template<class Key, class Value> std::ostream& operator<<( std::ostream& s, const std::map<Key,Value>& m ) { s << "<"; @@ -97,76 +103,6 @@ } - template <typename Type> - void logDiff(std::ostream& log, const char* text, const Type& lhs, const Type& rhs) - { - static_assert(!std::is_enum<Type>::value, "is enum"); - - if (lhs != rhs) - log << " " << text << ":" << lhs << "-->" << rhs; - } - - template <typename Type> - void logDiffHex(std::ostream& log, const char* text, const Type& lhs, const Type& rhs) - { - static_assert(std::is_integral<Type>::value, "not integral"); - - if (lhs != rhs) - log << " " << text << ":" << std::hex << lhs << "-->" << rhs << std::dec; - } - - template <typename Type> - void logDiffEnum(std::ostream& log, const char* text, const Type& lhs, const Type& rhs) - { - static_assert(std::is_enum<Type>::value, "not enum"); - - if (lhs != rhs) - log << " " << text << ":" << toString(lhs) << "-->" << toString(rhs); - } - - inline - void logDiff(std::ostream& log, const char* text, bool lhs, bool rhs) - { - if (lhs != rhs) - { - if (rhs) - log << " -->" << text; - else - log << " " << text << "-->"; - } - } - - - template<class Type> - struct deref_less : public std::binary_function<const Type*, const Type*, bool> - { - bool operator()(const Type* x, const Type* y) const { return *x < *y; } - }; - - - template<class Type> - struct deref_equal_to : public std::binary_function<const Type*, const Type*, bool> - { - bool operator()(const Type* x, const Type* y) const { return *x == *y; } - }; - - - template <class Type> - void pointerIntoSortedList(list<Type*>& l, Type* e) - { - l.insert(lower_bound(l.begin(), l.end(), e, deref_less<Type>()), e); - } - - - template <class Type> - void clearPointerList(list<Type*>& l) - { - for (typename list<Type*>::iterator i = l.begin(); i != l.end(); ++i) - delete *i; - l.clear(); - } - - template <typename ListType, typename Type> bool contains(const ListType& l, const Type& value) { @@ -181,27 +117,6 @@ } - template<typename Map, typename Key, typename Value> - typename Map::iterator mapInsertOrReplace(Map& m, const Key& k, const Value& v) - { - typename Map::iterator pos = m.lower_bound(k); - if (pos != m.end() && !typename Map::key_compare()(k, pos->first)) - pos->second = v; - else - pos = m.insert(pos, typename Map::value_type(k, v)); - return pos; - } - - template<typename List, typename Value> - typename List::const_iterator addIfNotThere(List& l, const Value& v) - { - typename List::const_iterator pos = find( l.begin(), l.end(), v ); - if (pos == l.end() ) - pos = l.insert(l.end(), v); - return pos; - } - - template <class T, unsigned int sz> inline unsigned int lengthof(T (&)[sz]) { return sz; } ++++++ snapper-Debian_7.0.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.871885970 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.875885977 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-Debian_8.0.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.891886006 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.891886006 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-Debian_9.0.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.907886036 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.907886036 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_14.04.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.923886065 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.923886065 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_14.10.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.939886094 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.939886094 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_15.04.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.955886122 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.955886122 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_15.10.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.971886151 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.971886151 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_16.04.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:55.987886181 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:55.987886181 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_16.10.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:56.003886210 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:56.007886217 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_17.04.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:56.019886239 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:56.019886239 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_17.10.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:56.039886275 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:56.039886275 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2 ++++++ snapper-xUbuntu_18.04.dsc ++++++ --- /var/tmp/diff_new_pack.8Uixnp/_old 2018-07-26 10:17:56.055886304 +0200 +++ /var/tmp/diff_new_pack.8Uixnp/_new 2018-07-26 10:17:56.055886304 +0200 @@ -1,6 +1,6 @@ Format: 1.0 Source: snapper -Version: 0.5.5 +Version: 0.5.6 Binary: snapper Maintainer: Arvin Schnell <aschn...@suse.com> Architecture: any @@ -11,4 +11,4 @@ # 423a20ae6e882d44e65a4eff97f2269f 630905 snapper-0.2.8.tar.gz # Files: -3231a3809c72913766385b5ee600178b 580424 snapper-0.5.5.tar.bz2 +50146aaaa28c5f2100efe0c7364b116d 580047 snapper-0.5.6.tar.bz2