[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#684913: (pre-)unblock: cupt/2.5.9



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: unblock

Please pre-unblock new proposed version of the package 'cupt', which
contain two recent bug fixes which I believe should be in wheezy.

Full proposed commit diffs attached.

unblock cupt/2.5.9

-- System Information:
Debian Release: wheezy/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'stable-updates'), (500, 'unstable'), (500, 'stable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 3.2.0-2-686-pae (SMP w/2 CPU cores)
Locale: LANG=fi_FI.UTF-8, LC_CTYPE=fi_FI.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
commit 97172e5a8463f1e87f84c3ea2efc878eeef83bb0
Author: Eugene V. Lyubimkin <jackyf.devel@gmail.com>
Date:   Mon Aug 6 20:05:07 2012 +0300

    all: starting development of 2.5.9

diff --git a/debian/changelog b/debian/changelog
index 89a18c4..ef256fd 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+cupt (2.5.9~) UNRELEASED; urgency=low
+
+  * 
+
+ -- Eugene V. Lyubimkin <jackyf@debian.org>  Mon, 06 Aug 2012 20:03:23 +0300
+
 cupt (2.5.8) unstable; urgency=low
 
   * lib:

commit b5a6d6f498de41f75771ff601ae112b222008b8b
Author: Eugene V. Lyubimkin <jackyf.devel@gmail.com>
Date:   Tue Aug 7 22:40:35 2012 +0300

    lib: download: uri: constructor: accept single- or triple-slashes after the ':' character

diff --git a/cpp/lib/src/download/uri.cpp b/cpp/lib/src/download/uri.cpp
index a9e2c72..084e91e 100644
--- a/cpp/lib/src/download/uri.cpp
+++ b/cpp/lib/src/download/uri.cpp
@@ -48,11 +48,10 @@ Uri::Uri(const string& uri)
 	if (uri[__data->hostStartPosition] == '/')
 	{
 		// "//" is dropped
-		if (uri.size() < __data->hostStartPosition + 2 || uri[__data->hostStartPosition+1] != '/')
+		if (uri.size() >= __data->hostStartPosition + 2 && uri[__data->hostStartPosition+1] == '/')
 		{
-			fatal2(__("there should be no or two slashes after a colon in the URI '%s'"), uri);
+			__data->hostStartPosition += 2;
 		}
-		__data->hostStartPosition += 2;
 	}
 }
 
diff --git a/debian/changelog b/debian/changelog
index ef256fd..b1f7ce4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,10 @@
 cupt (2.5.9~) UNRELEASED; urgency=low
 
-  * 
+  * lib:
+    - download/uri:
+      - Constructor: accept single- or triple-slashes after the ':' character,
+        which is the usual situation for 'file' or 'copy' schemes.
+        Thanks to Alexey Ivanov for the report. (Closes: #683873)
 
  -- Eugene V. Lyubimkin <jackyf@debian.org>  Mon, 06 Aug 2012 20:03:23 +0300
 

commit a1c973913b6ffe0bbb95817e7434e676af411bf7
Author: Eugene V. Lyubimkin <jackyf.devel@gmail.com>
Date:   Mon Aug 13 22:15:51 2012 +0300

    lib: internal: nativeresolver: solution: SolutionStorage: __update_broken_successors: fixed possible double-adding
    
    In extremely rare but happened in practice cases, if there is a pair of
    supplementary half-circular-dependencies in couple of releases without a
    fully circular dependency in any of releases (for example A->B in
    squeeze and B->A in wheezy, but nor A->A or B->B in either of them;
    practical example: perl-modules&libclass-isa-perl), the algorithm in
    __update_broken_successors() incorrectly adds the dependency relation
    twice which breaks the invariant.
    
    Releases themselves are not important, any very unlucky pair of available
    versions of two packages with properties above will cause this.
    
    Handle this corner case by not considering in the second adding loop
    elements which were considered (successfully or not) in the first adding
    loop.

diff --git a/cpp/lib/src/internal/nativeresolver/solution.cpp b/cpp/lib/src/internal/nativeresolver/solution.cpp
index d338d7d..a80dac9 100644
--- a/cpp/lib/src/internal/nativeresolver/solution.cpp
+++ b/cpp/lib/src/internal/nativeresolver/solution.cpp
@@ -302,6 +302,7 @@ void SolutionStorage::__update_broken_successors(Solution& solution,
 	for (auto predecessorElementPtr: predecessorsOfOld)
 	{
 		if (isPresent(predecessorsOfNew, predecessorElementPtr)) continue;
+		if (isPresent(successorsOfNew, predecessorElementPtr)) continue;
 
 		if (reverseDependencyExists(predecessorElementPtr))
 		{

commit dbb94513969fc2b0fd353ec78aaa7557b0f281ed
Author: Eugene V. Lyubimkin <jackyf.devel@gmail.com>
Date:   Tue Aug 14 19:09:24 2012 +0300

    debian: changelog: inserted an explanation for the previous commit

diff --git a/debian/changelog b/debian/changelog
index b1f7ce4..f3cdf4f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -5,6 +5,11 @@ cupt (2.5.9~) UNRELEASED; urgency=low
       - Constructor: accept single- or triple-slashes after the ':' character,
         which is the usual situation for 'file' or 'copy' schemes.
         Thanks to Alexey Ivanov for the report. (Closes: #683873)
+    - system/nativeresolver:
+      - Fixed 'internal error: conflicting elements' in the corner case when
+        one version of package A depends on a certain version which in turn
+        depends on a different version of package A, plus additional
+        circumstances apply.
 
  -- Eugene V. Lyubimkin <jackyf@debian.org>  Mon, 06 Aug 2012 20:03:23 +0300
 

Reply to: