Hello community, here is the log from the commit of package libstorage for openSUSE:Factory checked in at 2016-04-28 20:29:29 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libstorage (Old) and /work/SRC/openSUSE:Factory/.libstorage.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "libstorage" Changes: -------- --- /work/SRC/openSUSE:Factory/libstorage/libstorage.changes 2016-04-08 09:39:06.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libstorage.new/libstorage.changes 2016-04-28 20:29:31.000000000 +0200 @@ -1,0 +2,13 @@ +Fri Apr 15 12:24:25 CEST 2016 - aschnell@suse.com + +- call udevadm settle after call of parted (bsc#975162) +- 2.26.2 + +------------------------------------------------------------------- +Thu Apr 7 13:32:17 CEST 2016 - gs@suse.de + +- provide information about DASD format and type + (related to bnc#958893) +- 2.26.1 + +------------------------------------------------------------------- Old: ---- libstorage-2.25.37.tar.bz2 New: ---- libstorage-2.26.2.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libstorage.spec ++++++ --- /var/tmp/diff_new_pack.M6BWV8/_old 2016-04-28 20:29:32.000000000 +0200 +++ /var/tmp/diff_new_pack.M6BWV8/_new 2016-04-28 20:29:32.000000000 +0200 @@ -17,7 +17,7 @@ Name: libstorage -Version: 2.25.37 +Version: 2.26.2 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build Source: libstorage-%{version}.tar.bz2 @@ -116,7 +116,7 @@ %clean rm -rf "$RPM_BUILD_ROOT" -%package -n libstorage6 +%package -n libstorage7 Requires: coreutils Suggests: cryptsetup @@ -139,12 +139,12 @@ %endif Obsoletes: yast2-storage-lib # expands to Obsoletes: libstorage libstorage1 libstorage2 libstorage3... -Obsoletes: libstorage6 < %{version} -Obsoletes: libstorage %(echo `seq -s " " -f "libstorage%.f" $((6 - 1))`) +Obsoletes: libstorage7 < %{version} +Obsoletes: libstorage %(echo `seq -s " " -f "libstorage%.f" $((7 - 1))`) Summary: Library for storage management Group: System/Libraries -%description -n libstorage6 +%description -n libstorage7 This package contains libstorage, a library for storage management. Authors: @@ -152,7 +152,7 @@ Thomas Fehr <fehr@suse.de> Arvin Schnell <aschnell@suse.de> -%files -n libstorage6 -f libstorage.lang +%files -n libstorage7 -f libstorage.lang %defattr(-,root,root) %{_libdir}/libstorage.so.* %ghost /run/libstorage @@ -161,20 +161,20 @@ %doc %{prefix}/share/doc/packages/libstorage/AUTHORS %doc %{prefix}/share/doc/packages/libstorage/COPYING -%post -n libstorage6 +%post -n libstorage7 /sbin/ldconfig %if 0%{?suse_version} %{fillup_only -an storage} %endif -%postun -n libstorage6 +%postun -n libstorage7 /sbin/ldconfig %package -n libstorage-devel Requires: gcc-c++ Requires: libstdc++-devel -Requires: libstorage6 = %version +Requires: libstorage7 = %version Requires: libxml2-devel Summary: Header files and documentation for libstorage Group: Development/Languages/C and C++ @@ -198,7 +198,7 @@ %package -n libstorage-python -Requires: libstorage6 = %version +Requires: libstorage7 = %version %{py_requires} Summary: Python bindings for libstorage Group: System/Libraries @@ -217,7 +217,7 @@ %package -n libstorage-ruby -Requires: libstorage6 = %version +Requires: libstorage7 = %version Summary: Ruby bindings for libstorage Group: System/Libraries @@ -247,7 +247,7 @@ %package -n libstorage-testsuite -Requires: libstorage6 = %version +Requires: libstorage7 = %version Summary: Testsuite for libstorage Group: Development/Tools/Other ++++++ libstorage-2.25.37.tar.bz2 -> libstorage-2.26.2.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/LIBVERSION new/libstorage-2.26.2/LIBVERSION --- old/libstorage-2.25.37/LIBVERSION 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/LIBVERSION 2016-04-12 17:20:16.000000000 +0200 @@ -1 +1 @@ -6.1.1 +7.0.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/VERSION new/libstorage-2.26.2/VERSION --- old/libstorage-2.25.37/VERSION 2016-04-06 11:45:10.000000000 +0200 +++ new/libstorage-2.26.2/VERSION 2016-04-15 12:35:08.000000000 +0200 @@ -1 +1 @@ -2.25.37 +2.26.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/bindings/python/storage.py new/libstorage-2.26.2/bindings/python/storage.py --- old/libstorage-2.25.37/bindings/python/storage.py 2016-04-06 11:46:35.000000000 +0200 +++ new/libstorage-2.26.2/bindings/python/storage.py 2016-04-15 12:36:15.000000000 +0200 @@ -473,6 +473,24 @@ _storage.ALIGN_CYLINDER_swigconstant(_storage) ALIGN_CYLINDER = _storage.ALIGN_CYLINDER + +_storage.DASDF_NONE_swigconstant(_storage) +DASDF_NONE = _storage.DASDF_NONE + +_storage.DASDF_LDL_swigconstant(_storage) +DASDF_LDL = _storage.DASDF_LDL + +_storage.DASDF_CDL_swigconstant(_storage) +DASDF_CDL = _storage.DASDF_CDL + +_storage.DASDTYPE_NONE_swigconstant(_storage) +DASDTYPE_NONE = _storage.DASDTYPE_NONE + +_storage.DASDTYPE_ECKD_swigconstant(_storage) +DASDTYPE_ECKD = _storage.DASDTYPE_ECKD + +_storage.DASDTYPE_FBA_swigconstant(_storage) +DASDTYPE_FBA = _storage.DASDTYPE_FBA class CommitCallbacks(_object): __swig_setmethods__ = {} __setattr__ = lambda self, name, value: _swig_setattr(self, CommitCallbacks, name, value) @@ -831,6 +849,14 @@ __swig_getmethods__["has_fake_partition"] = _storage.DiskInfo_has_fake_partition_get if _newclass: has_fake_partition = _swig_property(_storage.DiskInfo_has_fake_partition_get, _storage.DiskInfo_has_fake_partition_set) + __swig_setmethods__["dasd_format"] = _storage.DiskInfo_dasd_format_set + __swig_getmethods__["dasd_format"] = _storage.DiskInfo_dasd_format_get + if _newclass: + dasd_format = _swig_property(_storage.DiskInfo_dasd_format_get, _storage.DiskInfo_dasd_format_set) + __swig_setmethods__["dasd_type"] = _storage.DiskInfo_dasd_type_set + __swig_getmethods__["dasd_type"] = _storage.DiskInfo_dasd_type_get + if _newclass: + dasd_type = _swig_property(_storage.DiskInfo_dasd_type_get, _storage.DiskInfo_dasd_type_set) __swig_destroy__ = _storage.delete_DiskInfo __del__ = lambda self: None DiskInfo_swigregister = _storage.DiskInfo_swigregister diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/Dasd.cc new/libstorage-2.26.2/storage/Dasd.cc --- old/libstorage-2.25.37/storage/Dasd.cc 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/storage/Dasd.cc 2016-04-12 17:20:16.000000000 +0200 @@ -362,6 +362,13 @@ return ret; } + void + Dasd::getInfo( storage::DiskInfo& info ) const + { + Disk::getInfo( info ); + info.dasd_format = fmt; + info.dasd_type = type; + } std::ostream& operator<< (std::ostream& s, const Dasd& d) { @@ -371,12 +378,12 @@ } - const vector<string> EnumInfoDasd::DasdType::names({ + const vector<string> EnumInfostorage::DasdType::names({ "NONE", "ECKD", "FBA" }); - const vector<string> EnumInfoDasd::DasdFormat::names({ + const vector<string> EnumInfostorage::DasdFormat::names({ "NONE", "LDL", "CDL" }); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/Dasd.h new/libstorage-2.26.2/storage/Dasd.h --- old/libstorage-2.25.37/storage/Dasd.h 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/storage/Dasd.h 2016-04-12 17:20:16.000000000 +0200 @@ -24,7 +24,7 @@ #define DASD_H #include "storage/Disk.h" - +#include "storage/StorageInterface.h" namespace storage { @@ -40,9 +40,6 @@ public: - enum DasdFormat { DASDF_NONE, DASDF_LDL, DASDF_CDL }; - enum DasdType { DASDTYPE_NONE, DASDTYPE_ECKD, DASDTYPE_FBA }; - Dasd(Storage* s, const string& name, const string& device, unsigned long long Size, SystemInfo& systeminfo); Dasd(const Dasd& c); @@ -60,7 +57,8 @@ static Text dasdfmtTexts(bool doing, const list<string>& devs); void getCommitActions(list<commitAction>& l) const; int commitChanges(CommitStage stage); - + virtual void getInfo( storage::DiskInfo& info ) const; + protected: virtual void print(std::ostream& s) const { s << *this; } @@ -71,8 +69,9 @@ int doSetType(Volume* v) override { return 0; } int doDasdfmt(); - DasdFormat fmt; - + storage::DasdFormat fmt; + storage::DasdType type; + friend std::ostream& operator<< (std::ostream&, const Dasd&); private: @@ -82,8 +81,8 @@ }; - template <> struct EnumInfoDasd::DasdType { static const vector<string> names; }; - template <> struct EnumInfoDasd::DasdFormat { static const vector<string> names; }; + template <> struct EnumInfostorage::DasdType { static const vector<string> names; }; + template <> struct EnumInfostorage::DasdFormat { static const vector<string> names; }; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/Disk.cc new/libstorage-2.26.2/storage/Disk.cc --- old/libstorage-2.25.37/storage/Disk.cc 2016-04-06 11:45:10.000000000 +0200 +++ new/libstorage-2.26.2/storage/Disk.cc 2016-04-15 12:35:08.000000000 +0200 @@ -1,5 +1,6 @@ /* * Copyright (c) [2004-2014] Novell, Inc. + * Copyright (c) 2016 SUSE LLC * * All Rights Reserved. * @@ -35,7 +36,7 @@ #include "storage/Utils/AppUtil.h" #include "storage/Utils/SystemCmd.h" #include "storage/StorageDefines.h" - +#include "storage/Dasd.h" namespace storage { @@ -1923,6 +1924,10 @@ else { Parted parted(device()); + + // parted triggers udev to rescan the device, see bsc #975162. + getStorage()->waitForDevice(p->device()); + Parted::Entry entry; if (parted.getEntry(p->nr(), entry)) { @@ -2595,6 +2600,8 @@ info.initDisk = init_disk; info.transport = transport; info.has_fake_partition = has_fake_partition; + info.dasd_format = storage::DASDF_NONE; + info.dasd_type = storage::DASDTYPE_NONE; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/Disk.h new/libstorage-2.26.2/storage/Disk.h --- old/libstorage-2.25.37/storage/Disk.h 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/storage/Disk.h 2016-04-12 17:20:16.000000000 +0200 @@ -158,7 +158,7 @@ string getPartName(unsigned nr) const; string getPartDevice(unsigned nr) const; - void getInfo( storage::DiskInfo& info ) const; + virtual void getInfo( storage::DiskInfo& info ) const; bool equalContent( const Container& rhs ) const; void logDifference(std::ostream& log, const Disk& rhs) const; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/Storage.cc new/libstorage-2.26.2/storage/Storage.cc --- old/libstorage-2.25.37/storage/Storage.cc 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/storage/Storage.cc 2016-04-12 17:20:16.000000000 +0200 @@ -822,7 +822,7 @@ if (t == DiskData::DASD) { const Dasdview& dasdview = systeminfo.getDasdview("/dev/" + i->first); - if (dasdview.getDasdType() == Dasd::DASDTYPE_FBA) + if (dasdview.getDasdType() == storage::DASDTYPE_FBA) t = DiskData::DISK; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/StorageInterface.h new/libstorage-2.26.2/storage/StorageInterface.h --- old/libstorage-2.25.37/storage/StorageInterface.h 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/storage/StorageInterface.h 2016-04-12 17:20:16.000000000 +0200 @@ -173,6 +173,9 @@ enum PartAlign { ALIGN_OPTIMAL, ALIGN_CYLINDER }; + enum DasdFormat { DASDF_NONE, DASDF_LDL, DASDF_CDL }; + + enum DasdType { DASDTYPE_NONE, DASDTYPE_ECKD, DASDTYPE_FBA }; /** * typedef for a pointer to a function that is called on progress bar @@ -338,6 +341,8 @@ bool initDisk; Transport transport; bool has_fake_partition; + storage::DasdFormat dasd_format; + storage::DasdType dasd_type; }; /** diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/StorageVersion.h new/libstorage-2.26.2/storage/StorageVersion.h --- old/libstorage-2.25.37/storage/StorageVersion.h 2016-04-06 11:46:22.000000000 +0200 +++ new/libstorage-2.26.2/storage/StorageVersion.h 2016-04-15 12:36:02.000000000 +0200 @@ -24,11 +24,11 @@ #define STORAGE_VERSION_H -#define LIBSTORAGE_VERSION_STRING "6.1.1" +#define LIBSTORAGE_VERSION_STRING "7.0.0" -#define LIBSTORAGE_VERSION_MAJOR 6 -#define LIBSTORAGE_VERSION_MINOR 1 -#define LIBSTORAGE_VERSION_PATCHLEVEL 1 +#define LIBSTORAGE_VERSION_MAJOR 7 +#define LIBSTORAGE_VERSION_MINOR 0 +#define LIBSTORAGE_VERSION_PATCHLEVEL 0 #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/SystemInfo/CmdDasdview.cc new/libstorage-2.26.2/storage/SystemInfo/CmdDasdview.cc --- old/libstorage-2.25.37/storage/SystemInfo/CmdDasdview.cc 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/storage/SystemInfo/CmdDasdview.cc 2016-04-12 17:20:16.000000000 +0200 @@ -29,7 +29,7 @@ { Dasdview::Dasdview(const string& device, bool do_probe) - : device(device), dasd_format(Dasd::DASDF_NONE), dasd_type(Dasd::DASDTYPE_NONE) + : device(device), dasd_format(storage::DASDF_NONE), dasd_type(storage::DASDTYPE_NONE) { if (do_probe) probe(); @@ -68,9 +68,9 @@ string tmp = string(*pos, pos->find(':') + 1); tmp = extractNthWord(4, tmp); if (tmp == "CDL") - dasd_format = Dasd::DASDF_CDL; + dasd_format = storage::DASDF_CDL; else if (tmp == "LDL") - dasd_format = Dasd::DASDF_LDL; + dasd_format = storage::DASDF_LDL; } pos = find_if(lines, string_starts_with("type")); @@ -80,9 +80,9 @@ string tmp = string(*pos, pos->find(':') + 1); tmp = extractNthWord(0, tmp); if (tmp == "ECKD") - dasd_type = Dasd::DASDTYPE_ECKD; + dasd_type = storage::DASDTYPE_ECKD; else if (tmp == "FBA") - dasd_type = Dasd::DASDTYPE_FBA; + dasd_type = storage::DASDTYPE_FBA; } pos = find_if(lines, string_starts_with("number of cylinders")); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/SystemInfo/CmdDasdview.h new/libstorage-2.26.2/storage/SystemInfo/CmdDasdview.h --- old/libstorage-2.25.37/storage/SystemInfo/CmdDasdview.h 2016-01-18 11:10:13.000000000 +0100 +++ new/libstorage-2.26.2/storage/SystemInfo/CmdDasdview.h 2016-04-12 17:20:16.000000000 +0200 @@ -45,8 +45,8 @@ friend std::ostream& operator<<(std::ostream& s, const Dasdview& dasdview); const Geometry& getGeometry() const { return geometry; } - Dasd::DasdFormat getDasdFormat() const { return dasd_format; } - Dasd::DasdType getDasdType() const { return dasd_type; } + storage::DasdFormat getDasdFormat() const { return dasd_format; } + storage::DasdType getDasdType() const { return dasd_type; } void parse(const vector<string>& lines); @@ -54,8 +54,8 @@ string device; Geometry geometry; - Dasd::DasdFormat dasd_format; - Dasd::DasdType dasd_type; + storage::DasdFormat dasd_format; + storage::DasdType dasd_type; }; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libstorage-2.25.37/storage/gen_md5sum.cc new/libstorage-2.26.2/storage/gen_md5sum.cc --- old/libstorage-2.25.37/storage/gen_md5sum.cc 2016-04-06 11:46:24.000000000 +0200 +++ new/libstorage-2.26.2/storage/gen_md5sum.cc 2016-04-15 12:36:04.000000000 +0200 @@ -1,5 +1,5 @@ -#define SOURCES_MD5SUM "84e6c3cb132757c35618e755bc008d3a" -#define SOURCES_MD5_DATE " Wed Apr 6 09:46:24 UTC 2016 " +#define SOURCES_MD5SUM "89b3ac6d7dbf14126a52d4fb07256a7f" +#define SOURCES_MD5_DATE " Fri Apr 15 10:36:04 UTC 2016 " namespace storage { const char* GetSourceMd5() { return SOURCES_MD5SUM; }