Hello community,
here is the log from the commit of package libzypp
checked in at Tue Sep 11 18:31:46 CEST 2007.
--------
--- libzypp/libzypp.changes 2007-09-10 17:11:41.000000000 +0200
+++ /mounts/work_src_done/STABLE/libzypp/libzypp.changes 2007-09-11 15:11:59.157652000 +0200
@@ -1,0 +2,19 @@
+Tue Sep 11 14:54:44 CEST 2007 - ma@suse.de
+
+- Don't fail if a product is deleted multiple times (e.g. due to
+ obsoletes and an explicit deleted request). (#308746)
+- version 3.22.7
+- revision 7184
+
+-------------------------------------------------------------------
+Tue Sep 11 13:52:47 CEST 2007 - jkupec@suse.cz
+
+- SYSCONFDIR variable added for modifying /etc
+
+-------------------------------------------------------------------
+Tue Sep 11 12:18:11 CEST 2007 - schubi@suse.de
+
+- uninstallable resolvable -->suggested solution: delete; Bug 308164
+- r 7177
+
+-------------------------------------------------------------------
@@ -5 +24 @@
-- r 7166
+- r 7166
@@ -17 +36 @@
- architecture,edition ONLY; Bug 308591
+ architecture,edition ONLY; Bug 308591
Old:
----
libzypp-3.22.6.tar.bz2
New:
----
libzypp-3.22.7.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ libzypp.spec ++++++
--- /var/tmp/diff_new_pack.E11928/_old 2007-09-11 18:31:22.000000000 +0200
+++ /var/tmp/diff_new_pack.E11928/_new 2007-09-11 18:31:22.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package libzypp (Version 3.22.6)
+# spec file for package libzypp (Version 3.22.7)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -16,9 +16,9 @@
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Autoreqprov: on
Summary: Package, Patch, Pattern, and Product Management
-Version: 3.22.6
+Version: 3.22.7
Release: 1
-Source: libzypp-3.22.6.tar.bz2
+Source: libzypp-3.22.7.tar.bz2
Source1: libzypp-rpmlintrc
Prefix: /usr
Provides: yast2-packagemanager
@@ -44,7 +44,7 @@
Ladislav Slezak
%package devel
-Requires: libzypp == 3.22.6
+Requires: libzypp == 3.22.7
Requires: libxml2-devel curl-devel openssl-devel rpm-devel glibc-devel zlib-devel
Requires: bzip2 popt-devel dbus-1-devel glib2-devel hal-devel boost-devel libstdc++-devel
Requires: cmake
@@ -129,6 +129,16 @@
%{_libdir}/pkgconfig/libzypp.pc
%changelog
+* Tue Sep 11 2007 - ma@suse.de
+- Don't fail if a product is deleted multiple times (e.g. due to
+ obsoletes and an explicit deleted request). (#308746)
+- version 3.22.7
+- revision 7184
+* Tue Sep 11 2007 - jkupec@suse.cz
+- SYSCONFDIR variable added for modifying /etc
+* Tue Sep 11 2007 - schubi@suse.de
+- uninstallable resolvable -->suggested solution: delete; Bug 308164
+- r 7177
* Mon Sep 10 2007 - schubi@suse.de
- new translations added
- r 7166
++++++ libzypp-3.22.6.tar.bz2 -> libzypp-3.22.7.tar.bz2 ++++++
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/CMakeLists.txt new/libzypp-3.22.7/CMakeLists.txt
--- old/libzypp-3.22.6/CMakeLists.txt 2007-09-10 17:11:09.000000000 +0200
+++ new/libzypp-3.22.7/CMakeLists.txt 2007-09-11 15:11:35.000000000 +0200
@@ -10,6 +10,14 @@
SET ( LIB_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}" )
ENDIF ( DEFINED LIB )
MESSAGE(STATUS "Libraries will be installed in ${LIB_INSTALL_DIR}" )
+
+# system configuration dir (etc)
+
+IF( NOT DEFINED SYSCONFDIR )
+ SET( SYSCONFDIR /etc )
+ENDIF( NOT DEFINED SYSCONFDIR )
+MESSAGE(STATUS "Config files will be installed in ${SYSCONFDIR}" )
+
####################################################################
# CONFIGURATION #
####################################################################
@@ -206,8 +214,8 @@
MESSAGE(STATUS "FindZypp.cmake will be installed in ${CMAKE_INSTALL_PREFIX}/share/cmake/Modules")
INSTALL( FILES ${CMAKE_SOURCE_DIR}/cmake/modules/FindZypp.cmake DESTINATION ${CMAKE_INSTALL_PREFIX}/share/cmake/Modules )
-MESSAGE(STATUS "zypp.conf will be installed in /etc/zypp")
-INSTALL( FILES ${CMAKE_SOURCE_DIR}/zypp.conf DESTINATION /etc/zypp )
+MESSAGE(STATUS "zypp.conf will be installed in ${SYSCONFDIR}/zypp")
+INSTALL( FILES ${CMAKE_SOURCE_DIR}/zypp.conf DESTINATION ${SYSCONFDIR}/zypp )
####################################################################
# SUBDIRECTORIES #
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/devel/devel.ma/Parse.cc new/libzypp-3.22.7/devel/devel.ma/Parse.cc
--- old/libzypp-3.22.6/devel/devel.ma/Parse.cc 2007-09-10 17:11:09.000000000 +0200
+++ new/libzypp-3.22.7/devel/devel.ma/Parse.cc 2007-09-11 15:11:34.000000000 +0200
@@ -35,11 +35,12 @@
#include "zypp/RepoInfo.h"
#include "zypp/ui/PatchContents.h"
+#include "zypp/ResPoolProxy.h"
using namespace std;
using namespace zypp;
using namespace zypp::functor;
-
+using namespace zypp::ui;
using zypp::parser::TagParser;
///////////////////////////////////////////////////////////////////
@@ -48,14 +49,44 @@
///////////////////////////////////////////////////////////////////
+template<class _Res>
+Selectable::Ptr getSel( const std::string & name_r )
+{
+ ResPoolProxy uipool( getZYpp()->poolProxy() );
+ for_(it, uipool.byKindBegin<_Res>(), uipool.byKindEnd<_Res>() )
+ {
+ if ( (*it)->name() == name_r )
+ return (*it);
+ }
+ return 0;
+}
+
+void dbgDu( Selectable::Ptr sel )
+{
+ if ( sel->installedPoolItem() )
+ {
+ DBG << "i: " << sel->installedPoolItem() << endl
+ << sel->installedPoolItem()->diskusage() << endl;
+ }
+ if ( sel->candidatePoolItem() )
+ {
+ DBG << "c: " << sel->candidatePoolItem() << endl
+ << sel->candidatePoolItem()->diskusage() << endl;
+ }
+ INT << sel << endl
+ << getZYpp()->diskUsage() << endl;
+}
+
+///////////////////////////////////////////////////////////////////
+
struct Xprint
{
bool operator()( const PoolItem & obj_r )
{
- //handle( asKind<Package>( obj_r ) );
- //handle( asKind<Patch>( obj_r ) );
- handle( asKind<Pattern>( obj_r ) );
- handle( asKind<Product>( obj_r ) );
+ handle( asKind<Package>( obj_r ) );
+// handle( asKind<Patch>( obj_r ) );
+// handle( asKind<Pattern>( obj_r ) );
+// handle( asKind<Product>( obj_r ) );
return true;
}
@@ -64,6 +95,7 @@
if ( !p )
return;
+ WAR << p->size() << endl;
MIL << p->diskusage() << endl;
}
@@ -425,6 +457,25 @@
std::for_each( pool.begin(), pool.end(), Xprint() );
+ DiskUsageCounter::MountPointSet fakePart;
+ fakePart.insert( DiskUsageCounter::MountPoint( "/", 1024, 10240, 5120, 0LL, false ) );
+ getZYpp()->setPartitions( fakePart );
+
+ USR << getZYpp()->getPartitions() << endl;
+ INT << getZYpp()->diskUsage() << endl;
+
+ Selectable::Ptr sel( getSel<Package>( "rpm" ) );
+ dbgDu( sel );
+
+ MIL << sel->set_status( ui::S_Del ) << endl;
+ dbgDu( sel );
+
+ MIL << sel->set_status( ui::S_Update ) << endl;
+ dbgDu( sel );
+
+ MIL << sel->set_status( ui::S_KeepInstalled ) << endl;
+ dbgDu( sel );
+
///////////////////////////////////////////////////////////////////
INT << "===[END]============================================" << endl << endl;
zypp::base::LogControl::instance().logNothing();
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/package/libzypp.changes new/libzypp-3.22.7/package/libzypp.changes
--- old/libzypp-3.22.6/package/libzypp.changes 2007-09-10 17:11:09.000000000 +0200
+++ new/libzypp-3.22.7/package/libzypp.changes 2007-09-11 15:11:35.000000000 +0200
@@ -1,8 +1,27 @@
-------------------------------------------------------------------
+Tue Sep 11 14:54:44 CEST 2007 - ma@suse.de
+
+- Don't fail if a product is deleted multiple times (e.g. due to
+ obsoletes and an explicit deleted request). (#308746)
+- version 3.22.7
+- revision 7184
+
+-------------------------------------------------------------------
+Tue Sep 11 13:52:47 CEST 2007 - jkupec@suse.cz
+
+- SYSCONFDIR variable added for modifying /etc
+
+-------------------------------------------------------------------
+Tue Sep 11 12:18:11 CEST 2007 - schubi@suse.de
+
+- uninstallable resolvable -->suggested solution: delete; Bug 308164
+- r 7177
+
+-------------------------------------------------------------------
Mon Sep 10 16:19:05 CEST 2007 - schubi@suse.de
- new translations added
-- r 7166
+- r 7166
- version 3.22.6
-------------------------------------------------------------------
@@ -14,7 +33,7 @@
Mon Sep 10 14:17:29 CEST 2007 - schubi@suse.de
- Splitting packages: Take the package with the best
- architecture,edition ONLY; Bug 308591
+ architecture,edition ONLY; Bug 308591
- r 7160
-------------------------------------------------------------------
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/tests/zypp/PathInfo.cc new/libzypp-3.22.7/tests/zypp/PathInfo.cc
--- old/libzypp-3.22.6/tests/zypp/PathInfo.cc 2007-09-10 17:11:09.000000000 +0200
+++ new/libzypp-3.22.7/tests/zypp/PathInfo.cc 2007-09-11 15:11:35.000000000 +0200
@@ -52,9 +52,28 @@
BOOST_REQUIRE( is_checksum( file.path(), file_md5 ) );
}
+void pathinfo_is_exist_test()
+{
+ TmpDir dir;
+ Pathname subdir("text with spaces");
+ // create a fake file
+ BOOST_CHECK_EQUAL( filesystem::mkdir(dir.path() + subdir), 0 );
+
+ Pathname filepath = (dir.path() + subdir+ "filename");
+ ofstream str(filepath.asString().c_str(),ofstream::out);
+ str << "foo bar" << endl;
+ str.flush();
+ str.close();
+
+ BOOST_CHECK( PathInfo(filepath).isExist() );
+}
+
void pathinfo_misc_test()
{
TmpDir dir;
+
+
+
PathInfo info(dir.path());
BOOST_CHECK(info.isDir());
}
@@ -65,6 +84,7 @@
test_suite* test= BOOST_TEST_SUITE( "PathInfoTest" );
test->add( BOOST_TEST_CASE( &pathinfo_checksum_test ), 0 /* expected zero error */ );
test->add( BOOST_TEST_CASE( &pathinfo_misc_test ), 0 /* expected zero error */ );
+ test->add( BOOST_TEST_CASE( &pathinfo_is_exist_test ), 0 /* expected zero error */ );
return test;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/VERSION.cmake new/libzypp-3.22.7/VERSION.cmake
--- old/libzypp-3.22.6/VERSION.cmake 2007-09-10 17:11:09.000000000 +0200
+++ new/libzypp-3.22.7/VERSION.cmake 2007-09-11 15:11:35.000000000 +0200
@@ -47,4 +47,4 @@
SET(LIBZYPP_MAJOR "3")
SET(LIBZYPP_MINOR "22")
SET(LIBZYPP_COMPATMINOR "21")
-SET(LIBZYPP_PATCH "6")
+SET(LIBZYPP_PATCH "7")
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/DiskUsageCounter.cc new/libzypp-3.22.7/zypp/DiskUsageCounter.cc
--- old/libzypp-3.22.6/zypp/DiskUsageCounter.cc 2007-09-10 17:11:07.000000000 +0200
+++ new/libzypp-3.22.7/zypp/DiskUsageCounter.cc 2007-09-11 15:11:32.000000000 +0200
@@ -305,7 +305,11 @@
std::ostream & operator<<( std::ostream & str, const DiskUsageCounter::MountPoint & obj )
{
- str << "dir:[" << obj.dir << "] [ bs: " << obj.block_size << " ts: " << obj.total_size << "]" << std::endl;
+ str << "dir:[" << obj.dir << "] [ bs: " << obj.block_size
+ << " ts: " << obj.total_size
+ << " us: " << obj.used_size
+ << " +-: " << obj.pkg_size
+ << "]" << std::endl;
return str;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/PathInfo.cc new/libzypp-3.22.7/zypp/PathInfo.cc
--- old/libzypp-3.22.6/zypp/PathInfo.cc 2007-09-10 17:11:06.000000000 +0200
+++ new/libzypp-3.22.7/zypp/PathInfo.cc 2007-09-11 15:11:32.000000000 +0200
@@ -29,7 +29,7 @@
#include "zypp/PathInfo.h"
#include "zypp/Digest.h"
-
+using std::endl;
using std::string;
///////////////////////////////////////////////////////////////////
@@ -292,10 +292,9 @@
*/
inline int _Log_Result( const int res, const char * rclass = "errno" )
{
+ MIL << endl;
if ( res )
- WAR << " FAILED: " << rclass << " " << res << std::endl;
- else
- DBG << std::endl;
+ WAR << " FAILED: " << rclass << " " << res << endl;
return res;
}
@@ -306,7 +305,7 @@
//
int mkdir( const Pathname & path, unsigned mode )
{
- DBG << "mkdir " << path << ' ' << str::octstring( mode );
+ MIL << "mkdir " << path << ' ' << str::octstring( mode );
if ( ::mkdir( path.asString().c_str(), mode ) == -1 ) {
return _Log_Result( errno );
}
@@ -334,20 +333,26 @@
else
lastpos=1;
- // DBG << "about to create " << spath << endl;
+ // MIL << "about to create " << spath << endl;
while((pos = spath.find('/',lastpos)) != string::npos )
{
string dir = spath.substr(0,pos);
ret = ::mkdir(dir.c_str(), mode);
if(ret == -1)
+ {
+ // ignore errors about already existing directorys
+ if(errno == EEXIST)
+ ret=0;
+ else
{
- // ignore errors about already existing directorys
- if(errno == EEXIST)
- ret=0;
- else
- ret=errno;
+ ret=errno;
+ WAR << " FAILED: mkdir " << path << ' ' << str::octstring( mode ) << " errno " << ret << endl;
}
- // DBG << "creating directory " << dir << (ret?" failed":" succeeded") << endl;
+ }
+ else
+ {
+ MIL << "mkdir " << path << ' ' << str::octstring( mode );
+ }
lastpos = pos+1;
}
return ret;
@@ -360,7 +365,7 @@
//
int rmdir( const Pathname & path )
{
- DBG << "rmdir " << path;
+ MIL << "rmdir " << path;
if ( ::rmdir( path.asString().c_str() ) == -1 ) {
return _Log_Result( errno );
}
@@ -374,7 +379,7 @@
//
int recursive_rmdir( const Pathname & path )
{
- DBG << "recursive_rmdir " << path << ' ';
+ MIL << "recursive_rmdir " << path << ' ';
PathInfo p( path );
if ( !p.isExist() ) {
@@ -392,7 +397,7 @@
}
catch ( boost::filesystem::filesystem_error & excpt )
{
- WAR << " FAILED: " << excpt.what() << std::endl;
+ WAR << " FAILED: " << excpt.what() << endl;
return -1;
}
@@ -406,7 +411,7 @@
//
int clean_dir( const Pathname & path )
{
- DBG << "clean_dir " << path << ' ';
+ MIL << "clean_dir " << path << ' ';
PathInfo p( path );
if ( !p.isExist() ) {
@@ -420,7 +425,7 @@
string cmd( str::form( "cd '%s' && rm -rf --preserve-root -- *", path.asString().c_str() ) );
ExternalProgram prog( cmd, ExternalProgram::Stderr_To_Stdout );
for ( string output( prog.receiveLine() ); output.length(); output = prog.receiveLine() ) {
- DBG << " " << output;
+ MIL << " " << output;
}
int ret = prog.close();
return _Log_Result( ret, "returned" );
@@ -433,7 +438,7 @@
//
int copy_dir( const Pathname & srcpath, const Pathname & destpath )
{
- DBG << "copy_dir " << srcpath << " -> " << destpath << ' ';
+ MIL << "copy_dir " << srcpath << " -> " << destpath << ' ';
PathInfo sp( srcpath );
if ( !sp.isDir() ) {
@@ -461,7 +466,7 @@
};
ExternalProgram prog( argv, ExternalProgram::Stderr_To_Stdout );
for ( string output( prog.receiveLine() ); output.length(); output = prog.receiveLine() ) {
- DBG << " " << output;
+ MIL << " " << output;
}
int ret = prog.close();
return _Log_Result( ret, "returned" );
@@ -474,7 +479,7 @@
//
int copy_dir_content(const Pathname & srcpath, const Pathname & destpath)
{
- DBG << "copy_dir " << srcpath << " -> " << destpath << ' ';
+ MIL << "copy_dir " << srcpath << " -> " << destpath << ' ';
PathInfo sp( srcpath );
if ( !sp.isDir() ) {
@@ -502,7 +507,7 @@
};
ExternalProgram prog( argv, ExternalProgram::Stderr_To_Stdout );
for ( string output( prog.receiveLine() ); output.length(); output = prog.receiveLine() ) {
- DBG << " " << output;
+ MIL << " " << output;
}
int ret = prog.close();
return _Log_Result( ret, "returned" );
@@ -518,7 +523,7 @@
{
retlist.clear();
- DBG << "readdir " << path << ' ';
+ MIL << "readdir " << path << ' ';
DIR * dir = ::opendir( path.asString().c_str() );
if ( ! dir ) {
@@ -624,7 +629,7 @@
//
int unlink( const Pathname & path )
{
- DBG << "unlink " << path;
+ MIL << "unlink " << path;
if ( ::unlink( path.asString().c_str() ) == -1 ) {
return _Log_Result( errno );
}
@@ -638,7 +643,7 @@
//
int rename( const Pathname & oldpath, const Pathname & newpath )
{
- DBG << "rename " << oldpath << " -> " << newpath;
+ MIL << "rename " << oldpath << " -> " << newpath;
if ( ::rename( oldpath.asString().c_str(), newpath.asString().c_str() ) == -1 ) {
return _Log_Result( errno );
}
@@ -652,7 +657,7 @@
//
int copy( const Pathname & file, const Pathname & dest )
{
- DBG << "copy " << file << " -> " << dest << ' ';
+ MIL << "copy " << file << " -> " << dest << ' ';
PathInfo sp( file );
if ( !sp.isFile() ) {
@@ -673,7 +678,7 @@
};
ExternalProgram prog( argv, ExternalProgram::Stderr_To_Stdout );
for ( string output( prog.receiveLine() ); output.length(); output = prog.receiveLine() ) {
- DBG << " " << output;
+ MIL << " " << output;
}
int ret = prog.close();
return _Log_Result( ret, "returned" );
@@ -686,7 +691,7 @@
//
int symlink( const Pathname & oldpath, const Pathname & newpath )
{
- DBG << "symlink " << newpath << " -> " << oldpath;
+ MIL << "symlink " << newpath << " -> " << oldpath;
if ( ::symlink( oldpath.asString().c_str(), newpath.asString().c_str() ) == -1 ) {
return _Log_Result( errno );
}
@@ -700,7 +705,7 @@
//
int hardlink( const Pathname & oldpath, const Pathname & newpath )
{
- DBG << "hardlink " << newpath << " -> " << oldpath;
+ MIL << "hardlink " << newpath << " -> " << oldpath;
if ( ::link( oldpath.asString().c_str(), newpath.asString().c_str() ) == -1 ) {
return _Log_Result( errno );
}
@@ -714,7 +719,7 @@
//
int copy_file2dir( const Pathname & file, const Pathname & dest )
{
- DBG << "copy_file2dir " << file << " -> " << dest << ' ';
+ MIL << "copy_file2dir " << file << " -> " << dest << ' ';
PathInfo sp( file );
if ( !sp.isFile() ) {
@@ -735,7 +740,7 @@
};
ExternalProgram prog( argv, ExternalProgram::Stderr_To_Stdout );
for ( string output( prog.receiveLine() ); output.length(); output = prog.receiveLine() ) {
- DBG << " " << output;
+ MIL << " " << output;
}
int ret = prog.close();
return _Log_Result( ret, "returned" );
@@ -816,7 +821,7 @@
//
int chmod( const Pathname & path, mode_t mode )
{
- DBG << "chmod " << path << ' ' << str::octstring( mode );
+ MIL << "chmod " << path << ' ' << str::octstring( mode );
if ( ::chmod( path.asString().c_str(), mode ) == -1 ) {
return _Log_Result( errno );
}
@@ -886,7 +891,7 @@
//
int touch (const Pathname & path)
{
- DBG << "touch " << path << std::endl;
+ MIL << "touch " << path;
struct ::utimbuf times;
times.actime = ::time( 0 );
times.modtime = ::time( 0 );
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/PathInfo.h new/libzypp-3.22.7/zypp/PathInfo.h
--- old/libzypp-3.22.6/zypp/PathInfo.h 2007-09-10 17:11:06.000000000 +0200
+++ new/libzypp-3.22.7/zypp/PathInfo.h 2007-09-11 15:11:32.000000000 +0200
@@ -521,6 +521,14 @@
/** \name File related functions. */
//@{
/**
+ * Change file's modification and access times.
+ *
+ * \return 0 on success, errno on failure
+ * \see man utime
+ */
+ int touch (const Pathname & path);
+
+ /**
* Like '::unlink'. Delete a file (symbolic link, socket, fifo or device).
*
* @return 0 on success, errno on failure
@@ -659,14 +667,6 @@
{ return mode_r & ~getUmask(); }
//@}
- /**
- * Change file's modification and access times.
- *
- * \return 0 on success, errno on failure
- * \see man utime
- */
- int touch (const Pathname & path);
-
/////////////////////////////////////////////////////////////////
} // namespace filesystem
///////////////////////////////////////////////////////////////////
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/solver/detail/Resolver.h new/libzypp-3.22.7/zypp/solver/detail/Resolver.h
--- old/libzypp-3.22.6/zypp/solver/detail/Resolver.h 2007-09-10 17:11:08.000000000 +0200
+++ new/libzypp-3.22.7/zypp/solver/detail/Resolver.h 2007-09-11 15:11:33.000000000 +0200
@@ -70,6 +70,7 @@
bool initialInstallation; //This item has triggered the installation
//Not already fullfilled requierement only.
+ ItemCapKind() : capKind("FRESHENS") {}
ItemCapKind( PoolItem i, Capability c, Dep k, bool initial)
: cap( c )
, capKind( k )
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/solver/detail/Resolver_problems.cc new/libzypp-3.22.7/zypp/solver/detail/Resolver_problems.cc
--- old/libzypp-3.22.6/zypp/solver/detail/Resolver_problems.cc 2007-09-10 17:11:08.000000000 +0200
+++ new/libzypp-3.22.7/zypp/solver/detail/Resolver_problems.cc 2007-09-11 15:11:32.000000000 +0200
@@ -546,7 +546,7 @@
details = str::form (_("%s is not installed and has been marked as uninstallable"), who.c_str()) + "\n";
details += logAdditionalInfo(collector.additionalInfo, item);
ResolverProblem_Ptr problem = new ResolverProblem (what, details);
- problem->addSolution (new ProblemSolutionInstall (problem, item)); // Install resolvable again
+ problem->addSolution (new ProblemSolutionUninstall (problem, item)); // Uninstall resolvable
problems.push_back (problem);
problem_created = true;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/solver/detail/Resolver_problems.cc.bak new/libzypp-3.22.7/zypp/solver/detail/Resolver_problems.cc.bak
--- old/libzypp-3.22.6/zypp/solver/detail/Resolver_problems.cc.bak 2007-09-10 17:11:08.000000000 +0200
+++ new/libzypp-3.22.7/zypp/solver/detail/Resolver_problems.cc.bak 2007-09-11 15:11:32.000000000 +0200
@@ -136,14 +136,16 @@
collector->problems.insert (make_pair( item, info));
} else {
collector->additionalInfo.insert (make_pair( item, info));
+
if (info->type()==RESOLVER_INFO_TYPE_NEEDED_BY) { // logging reverse needed by
ResolverInfoNeededBy_constPtr needed_by = dynamic_pointer_cast<const ResolverInfoNeededBy>(info);
- for (PoolItemList::const_iterator iter = needed_by->items().begin();
- iter != needed_by->items().end(); ++iter)
+ PoolItemList itemList = needed_by->items();
+ for (PoolItemList::const_iterator iter = itemList.begin();
+ iter != itemList.end(); ++iter)
{
collector->additionalInfo.insert (make_pair( *iter, info));
}
- }
+ }
}
// Collicting items which are providing requirements but they
@@ -707,8 +709,13 @@
break;
case RESOLVER_INFO_TYPE_NO_PROVIDER: { // There are no installable providers of c [for p]
ResolverInfoMisc_constPtr misc_info = dynamic_pointer_cast<const ResolverInfoMisc>(info);
- // TranslatorExplanation %s = name of package, patch, selection ...
- what = str::form (_("%s cannot be installed due to missing dependencies"), whoShort.c_str());
+ if (item.status().isInstalled()) {
+ // TranslatorExplanation %s = name of package, patch, selection ...
+ what = str::form (_("%s has missing dependencies"), whoShort.c_str());
+ } else {
+ // TranslatorExplanation %s = name of package, patch, selection ...
+ what = str::form (_("%s cannot be installed due to missing dependencies"), whoShort.c_str());
+ }
details = misc_info->message() + "\n";
details += logAdditionalInfo(collector.additionalInfo, item);
ResolverProblem_Ptr problem = new ResolverProblem (what, details);
@@ -955,6 +962,8 @@
details += more_details;
}
ResolverProblem_Ptr problem = new ResolverProblem (what, details);
+ // ignore requirement
+ problem->addSolution (new ProblemSolutionIgnoreRequires (problem, PoolItem_Ref(), misc_info->capability()));
problems.push_back (problem);
problem_created = true;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/target/rpm/RpmPackageImpl.cc new/libzypp-3.22.7/zypp/target/rpm/RpmPackageImpl.cc
--- old/libzypp-3.22.6/zypp/target/rpm/RpmPackageImpl.cc 2007-09-10 17:11:07.000000000 +0200
+++ new/libzypp-3.22.7/zypp/target/rpm/RpmPackageImpl.cc 2007-09-11 15:11:32.000000000 +0200
@@ -56,6 +56,7 @@
// we know we are reading english.
_description.setText(data->tag_description(), Locale("en"));
data->tag_du(_disk_usage);
+ SEC << _disk_usage << endl;
_location.setDownloadSize(data->tag_archivesize());
}
@@ -199,7 +200,7 @@
}
/** */
-const DiskUsage & RPMPackageImpl::diskUsage() const
+const DiskUsage & RPMPackageImpl::diskusage() const
{
return _disk_usage;
}
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/target/rpm/RpmPackageImpl.h new/libzypp-3.22.7/zypp/target/rpm/RpmPackageImpl.h
--- old/libzypp-3.22.6/zypp/target/rpm/RpmPackageImpl.h 2007-09-10 17:11:07.000000000 +0200
+++ new/libzypp-3.22.7/zypp/target/rpm/RpmPackageImpl.h 2007-09-11 15:11:32.000000000 +0200
@@ -85,7 +85,7 @@
/** */
virtual std::string type() const;
/** */
- virtual const DiskUsage & diskUsage() const;
+ virtual const DiskUsage & diskusage() const;
/** */
virtual Repository repository() const;
diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/libzypp-3.22.6/zypp/target/store/XMLFilesBackend.cc new/libzypp-3.22.7/zypp/target/store/XMLFilesBackend.cc
--- old/libzypp-3.22.6/zypp/target/store/XMLFilesBackend.cc 2007-09-10 17:11:08.000000000 +0200
+++ new/libzypp-3.22.7/zypp/target/store/XMLFilesBackend.cc 2007-09-11 15:11:32.000000000 +0200
@@ -47,9 +47,6 @@
#include
#include
-#include "boost/filesystem/operations.hpp" // includes boost/filesystem/path.hpp
-#include "boost/filesystem/fstream.hpp" // ditto
-
#include "XMLFilesBackend.h"
#include "serialize.h"
@@ -59,7 +56,6 @@
using std::endl;
using std::string;
using std::list;
-using namespace boost::filesystem;
using namespace zypp;
using namespace zypp::filesystem;
@@ -258,7 +254,7 @@
for ( it_kinds = d->kinds.begin() ; it_kinds != d->kinds.end(); ++it_kinds )
{
Resolvable::Kind kind = (*it_kinds);
- bool isthere = exists(dirForResolvableKind(kind));
+ bool isthere = PathInfo( dirForResolvableKind(kind) ).isExist();
ok = ok && isthere;
}
@@ -266,12 +262,12 @@
for ( it_kinds = d->kinds_flags.begin() ; it_kinds != d->kinds_flags.end(); ++it_kinds )
{
Resolvable::Kind kind = (*it_kinds);
- bool isthere = exists(dirForResolvableKindFlags(kind));
+ bool isthere = PathInfo( dirForResolvableKindFlags(kind) ).isExist();
ok = ok && isthere;
}
// named flags
- bool nmthere = exists(dirForNamedFlags());
+ bool nmthere = PathInfo( dirForNamedFlags() ).isExist();
ok = ok && nmthere;
return ok;
@@ -328,25 +324,19 @@
std::string
XMLFilesBackend::dirForResolvableKind( Resolvable::Kind kind ) const
{
- std::string dir;
- dir += Pathname( d->root + Pathname(ZYPP_DB_DIR) + Pathname(resolvableKindToString(kind, true)) ).asString();
- return dir;
+ return Pathname( d->root + Pathname(ZYPP_DB_DIR) + Pathname(resolvableKindToString(kind, true)) ).asString();
}
std::string
XMLFilesBackend::dirForResolvableKindFlags( Resolvable::Kind kind ) const
{
- std::string dir;
- dir += Pathname( d->root + Pathname(ZYPP_DB_DIR) + Pathname("flags") + Pathname(resolvableKindToString(kind, true)) ).asString();
- return dir;
+ return Pathname( d->root + Pathname(ZYPP_DB_DIR) + Pathname("flags") + Pathname(resolvableKindToString(kind, true)) ).asString();
}
std::string
XMLFilesBackend::dirForNamedFlags() const
{
- std::string dir;
- dir += Pathname( d->root + Pathname(ZYPP_DB_DIR) + Pathname("named-flags")).asString();
- return dir;
+ return Pathname( d->root + Pathname(ZYPP_DB_DIR) + Pathname("named-flags")).asString();
}
std::string
@@ -385,7 +375,7 @@
std::string
XMLFilesBackend::fullPathForResolvable( ResObject::constPtr resolvable ) const
{
- return path( path(dirForResolvable(resolvable)) / path(fileNameForResolvable(resolvable))).string();
+ return( Pathname( dirForResolvable(resolvable) ) / fileNameForResolvable(resolvable) ).asString();
}
std::string
@@ -393,14 +383,14 @@
{
std::stringstream key_stream(key);
std::string key_encoded = Digest::digest("MD5", key_stream);
- return path( path(dirForNamedFlags()) / path(key_encoded)).string();
+ return( Pathname( dirForNamedFlags() ) / key_encoded ).asString();
}
std::string
XMLFilesBackend::fullPathForResolvableFlags( ResObject::constPtr resolvable ) const
{
// flags are in a hidden file with the same name
- return path( path(dirForResolvableFlags(resolvable)) / path(fileNameForResolvable(resolvable))).string();
+ return( Pathname( dirForResolvableFlags(resolvable) ) / fileNameForResolvable(resolvable) ).asString();
}
void
@@ -520,7 +510,7 @@
{
std::setstd::string _flags;
// do we have previous saved flags?
- if (!exists(path(filename)))
+ if ( ! PathInfo( filename ).isExist() )
return _flags;
std::ifstream file(filename.c_str());
@@ -593,8 +583,8 @@
{
try
{
- int ret = filesystem::unlink(Pathname(filename));
- if ( ret != 0 )
+ int ret = filesystem::unlink( filename );
+ if ( ret != 0 && ret != ENOENT )
{
ERR << "Error removing resolvable file " << filename << std::endl;
ZYPP_THROW(Exception("Error deleting " + filename.asString()));
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
---------------------------------------------------------------------
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org