Mailinglist Archive: opensuse-commit (869 mails)

< Previous Next >
commit yast2-pkg-bindings for openSUSE:Factory
  • From: root@xxxxxxxxxxxxxxx (h_root)
  • Date: Mon, 25 Oct 2010 18:02:52 +0200
  • Message-id: <20101025160252.CEF532021C@xxxxxxxxxxxxxxx>

Hello community,

here is the log from the commit of package yast2-pkg-bindings for
openSUSE:Factory
checked in at Mon Oct 25 18:02:52 CEST 2010.



--------
--- yast2-pkg-bindings/yast2-pkg-bindings.changes 2010-09-30
19:45:39.000000000 +0200
+++ yast2-pkg-bindings/yast2-pkg-bindings.changes 2010-10-25
09:38:02.000000000 +0200
@@ -1,0 +2,9 @@
+Mon Oct 25 07:29:56 UTC 2010 - lslezak@xxxxxxx
+
+- ignore just the failed repository during autorefresh, load the
+ other repositories (bnc#620895)
+- put a backtrace to y2log when an unhandled excecptinon is caught
+ in the global catch section for easy debugging
+- 2.20.2
+
+-------------------------------------------------------------------

calling whatdependson for head-i586


Old:
----
yast2-pkg-bindings-2.20.1.tar.bz2

New:
----
yast2-pkg-bindings-2.20.2.tar.bz2

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

Other differences:
------------------
++++++ yast2-pkg-bindings-devel-doc.spec ++++++
--- /var/tmp/diff_new_pack.wi1NC7/_old 2010-10-25 18:01:59.000000000 +0200
+++ /var/tmp/diff_new_pack.wi1NC7/_new 2010-10-25 18:01:59.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-pkg-bindings-devel-doc (Version 2.20.1)
+# spec file for package yast2-pkg-bindings-devel-doc (Version 2.20.2)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -20,12 +20,12 @@

Name: yast2-pkg-bindings-devel-doc

-Version: 2.20.1
+Version: 2.20.2
Release: 1
License: GPL
Group: Documentation/HTML
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-pkg-bindings-2.20.1.tar.bz2
+Source0: yast2-pkg-bindings-2.20.2.tar.bz2
Prefix: %_prefix

# same as in the main package (because we use the same configure.in.in)
@@ -42,7 +42,7 @@
from the pkg-bindings sources.

%prep
-%setup -n yast2-pkg-bindings-2.20.1
+%setup -n yast2-pkg-bindings-2.20.2
# build only documentation, ignore all other directories
echo "doc" > SUBDIRS


++++++ yast2-pkg-bindings.spec ++++++
--- /var/tmp/diff_new_pack.wi1NC7/_old 2010-10-25 18:01:59.000000000 +0200
+++ /var/tmp/diff_new_pack.wi1NC7/_new 2010-10-25 18:01:59.000000000 +0200
@@ -1,5 +1,5 @@
#
-# spec file for package yast2-pkg-bindings (Version 2.20.1)
+# spec file for package yast2-pkg-bindings (Version 2.20.2)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
@@ -19,11 +19,11 @@


Name: yast2-pkg-bindings
-Version: 2.20.1
+Version: 2.20.2
Release: 1

BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-pkg-bindings-2.20.1.tar.bz2
+Source0: yast2-pkg-bindings-2.20.2.tar.bz2

Prefix: /usr

@@ -42,7 +42,7 @@
library in YaST2.

%prep
-%setup -n yast2-pkg-bindings-2.20.1
+%setup -n yast2-pkg-bindings-2.20.2
# build only the library, ignore documentation (it is in devel-doc package)
echo "src" > SUBDIRS


++++++ yast2-pkg-bindings-2.20.1.tar.bz2 -> yast2-pkg-bindings-2.20.2.tar.bz2
++++++
++++ 11080 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-pkg-bindings-2.20.1/VERSION new/yast2-pkg-bindings-2.20.2/VERSION
--- old/yast2-pkg-bindings-2.20.1/VERSION 2010-09-30 19:20:06.000000000
+0200
+++ new/yast2-pkg-bindings-2.20.2/VERSION 2010-10-25 09:15:13.000000000
+0200
@@ -1 +1 @@
-2.20.1
+2.20.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-pkg-bindings-2.20.1/config.h.in
new/yast2-pkg-bindings-2.20.2/config.h.in
--- old/yast2-pkg-bindings-2.20.1/config.h.in 2010-01-19 08:06:16.000000000
+0100
+++ new/yast2-pkg-bindings-2.20.2/config.h.in 2010-10-25 09:34:18.000000000
+0200
@@ -64,6 +64,9 @@
/* Define to the one symbol short name of this package. */
#undef PACKAGE_TARNAME

+/* Define to the home page for this package. */
+#undef PACKAGE_URL
+
/* Define to the version of this package. */
#undef PACKAGE_VERSION

diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-pkg-bindings-2.20.1/configure.in
new/yast2-pkg-bindings-2.20.2/configure.in
--- old/yast2-pkg-bindings-2.20.1/configure.in 2010-01-19 08:06:00.000000000
+0100
+++ new/yast2-pkg-bindings-2.20.2/configure.in 2010-10-25 09:34:03.000000000
+0200
@@ -3,7 +3,7 @@
dnl -- This file is generated by y2autoconf 2.18.11 - DO NOT EDIT! --
dnl (edit configure.in.in instead)

-AC_INIT(yast2-pkg-bindings, 2.19.0, http://bugs.opensuse.org/,
yast2-pkg-bindings)
+AC_INIT(yast2-pkg-bindings, 2.20.2, http://bugs.opensuse.org/,
yast2-pkg-bindings)
dnl Check for presence of file 'RPMNAME'
AC_CONFIG_SRCDIR([RPMNAME])

@@ -18,7 +18,7 @@
AM_INIT_AUTOMAKE(tar-ustar -Wno-portability)

dnl Important YaST2 variables
-VERSION="2.19.0"
+VERSION="2.20.2"
RPMNAME="yast2-pkg-bindings"
MAINTAINER="Ladislav Slezák <lslezak@xxxxxxx>"

diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-pkg-bindings-2.20.1/src/Source_Load.cc
new/yast2-pkg-bindings-2.20.2/src/Source_Load.cc
--- old/yast2-pkg-bindings-2.20.1/src/Source_Load.cc 2009-12-03
09:21:00.000000000 +0100
+++ new/yast2-pkg-bindings-2.20.2/src/Source_Load.cc 2010-10-25
09:15:13.000000000 +0200
@@ -19,7 +19,7 @@
*/

/*
- File: $Id: Source_Load.cc 59922 2009-12-03 08:20:59Z lslezak $
+ File: $Id: Source_Load.cc 62668 2010-10-22 07:05:35Z lslezak $
Author: Ladislav Slezák <lslezak@xxxxxxxxxx>
Summary: Functions for initializing the package manager
Namespace: Pkg
@@ -248,6 +248,10 @@
bool refresh_started_called = false;
bool network_is_running = NetworkDetected();

+ // remember failed repositories during autorefresh,
+ // don't load packages from them
+ RepoCont failed_refresh;
+
if (repos_to_refresh > 0)
{
// refresh metadata
@@ -287,17 +291,16 @@
}
}

-
- zypp::RepoManager::RefreshCheckStatus ref_stat =
repomanager.checkIfToRefreshMetadata((*it)->repoInfo(),
*((*it)->repoInfo().baseUrlsBegin()));
-
- if (ref_stat != zypp::RepoManager::REFRESH_NEEDED)
- {
- y2internal("Skipping repository '%s' - refresh is
not needed", (*it)->repoInfo().alias().c_str());
- continue;
- }
-
try
{
+ zypp::RepoManager::RefreshCheckStatus ref_stat =
repomanager.checkIfToRefreshMetadata((*it)->repoInfo(),
*((*it)->repoInfo().baseUrlsBegin()));
+
+ if (ref_stat != zypp::RepoManager::REFRESH_NEEDED)
+ {
+ y2internal("Skipping repository '%s' - refresh
is not needed", (*it)->repoInfo().alias().c_str());
+ continue;
+ }
+
y2milestone("Autorefreshing source: %s",
(*it)->repoInfo().alias().c_str());
// refresh the repository
if (!refresh_started_called)
@@ -312,6 +315,9 @@
// no need to handle them in the exception code
catch (const zypp::Exception& excpt)
{
+ // remember the failed autorefresh
+ failed_refresh.push_back(*it);
+
if (autorefresh_skipped)
{
y2warning("autorefresh_skipped, ignoring the
exception");
@@ -428,6 +434,14 @@
// load resolvables only from enabled repos which are not deleted
if ((*it)->repoInfo().enabled() && !(*it)->isDeleted())
{
+ // check whether the refresh failed or not
+ RepoCont::iterator failed_it = find(failed_refresh.begin(),
failed_refresh.end(), *it);
+ if (failed_it != failed_refresh.end())
+ {
+ y2warning("Ignoring packages from repository '%s' (%s) -
refresh has failed", (*it)->repoInfo().name().c_str(),
(*it)->repoInfo().alias().c_str());
+ continue;
+ }
+
y2debug("Loading: %s, Status: %lld",
(*it)->repoInfo().alias().c_str(), prog_total.val());

// subtask
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-pkg-bindings-2.20.1/src/Y2PkgFunction.cc
new/yast2-pkg-bindings-2.20.2/src/Y2PkgFunction.cc
--- old/yast2-pkg-bindings-2.20.1/src/Y2PkgFunction.cc 2008-03-31
15:48:07.000000000 +0200
+++ new/yast2-pkg-bindings-2.20.2/src/Y2PkgFunction.cc 2010-10-25
09:15:13.000000000 +0200
@@ -35,6 +35,10 @@

#include <ycp/y2log.h>

+// use backtrace_symbols()
+#include <execinfo.h>
+
+
Y2PkgFunction::Y2PkgFunction (string name, PkgFunctions* instance,
unsigned int pos) :
m_position (pos)
, m_instance (instance)
@@ -102,6 +106,26 @@
return true;
}

+ void Y2PkgFunction::log_backtrace()
+ {
+ // see 'man backtrace_symbols' for more details
+ #define BACKTRACE_BUFFER_SIZE 100
+ void *buffer[BACKTRACE_BUFFER_SIZE];
+ int ptrs = backtrace(buffer, BACKTRACE_BUFFER_SIZE);
+
+ char **strings = backtrace_symbols(buffer, ptrs);
+ if (strings != NULL) {
+ y2internal("-------- Backtrace begin (use c++filt tool for
converting to symbols) --------");
+
+ for (int j = 0; j < ptrs; j++)
+ y2internal(" Frame %d: %s", j, strings[j]);
+
+ y2internal("-------- Backtrace end --------");
+
+ free(strings);
+ }
+ }
+
YCPValue Y2PkgFunction::evaluateCall ()
{
ycpmilestone ("Pkg Builtin called: %s", name().c_str() );
@@ -115,10 +139,12 @@
catch (const std::exception& excpt)
{
y2internal("Caught an unhandled exception: %s", excpt.what());
+ log_backtrace();
}
catch (...)
{
y2internal("Caught an unhandled exception");
+ log_backtrace();
}

return YCPNull ();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude
config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4
--exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh
old/yast2-pkg-bindings-2.20.1/src/Y2PkgFunction.h
new/yast2-pkg-bindings-2.20.2/src/Y2PkgFunction.h
--- old/yast2-pkg-bindings-2.20.1/src/Y2PkgFunction.h 2008-01-03
10:03:38.000000000 +0100
+++ new/yast2-pkg-bindings-2.20.2/src/Y2PkgFunction.h 2010-10-25
09:15:13.000000000 +0200
@@ -16,6 +16,8 @@
YCPValue m_param4;
YCPValue m_param5;
string m_name;
+
+ void log_backtrace();
public:

Y2PkgFunction (string name, PkgFunctions* instance, unsigned int pos);


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



Remember to have fun...

--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-commit+help@xxxxxxxxxxxx

< Previous Next >
This Thread