Imported Upstream version 0.6.14 13/94113/1 upstream/0.6.14
authorDongHun Kwak <dh0128.kwak@samsung.com>
Thu, 27 Oct 2016 05:56:47 +0000 (14:56 +0900)
committerDongHun Kwak <dh0128.kwak@samsung.com>
Thu, 27 Oct 2016 05:56:48 +0000 (14:56 +0900)
Change-Id: I3e83c4ddc30f8d8cfa6f965a85ecca72781d89e4
Signed-off-by: DongHun Kwak <dh0128.kwak@samsung.com>
VERSION.cmake
bindings/perl/CMakeLists.txt
bindings/python/CMakeLists.txt
bindings/ruby/CMakeLists.txt
examples/solv/solv.c
examples/tclsolv
package/libsolv.changes
src/rules.c
src/solver.c
tools/testsolv.c

index f67959d..9ae12b5 100644 (file)
@@ -49,5 +49,5 @@ SET(LIBSOLVEXT_SOVERSION "0")
 
 SET(LIBSOLV_MAJOR "0")
 SET(LIBSOLV_MINOR "6")
-SET(LIBSOLV_PATCH "13")
+SET(LIBSOLV_PATCH "14")
 
index cb9cd37..49a3902 100644 (file)
@@ -28,7 +28,7 @@ ADD_DEFINITIONS(${PERL_CCFLAGS} -Wno-unused -Wno-nonnull)
 LINK_DIRECTORIES (${PERL_CORE_DIR})
 INCLUDE_DIRECTORIES (${PERL_INCLUDE_PATH} ${PERL_CORE_DIR})
 
-ADD_LIBRARY (bindings_perl SHARED solv_perl.c)
+ADD_LIBRARY (bindings_perl MODULE solv_perl.c)
 SET_TARGET_PROPERTIES (bindings_perl PROPERTIES PREFIX "" OUTPUT_NAME "solv")
 SET_TARGET_PROPERTIES (bindings_perl PROPERTIES LINK_FLAGS "${PERL_CCLDFLAGS}")
 TARGET_LINK_LIBRARIES (bindings_perl libsolvext libsolv ${SYSTEM_LIBRARIES})
index 22ddec3..73f2dca 100644 (file)
@@ -24,7 +24,7 @@ ADD_CUSTOM_COMMAND (
 ADD_DEFINITIONS(-Wno-unused)
 INCLUDE_DIRECTORIES (${PYTHON_INCLUDE_PATH})
 
-ADD_LIBRARY (bindings_python SHARED solv_python.c)
+ADD_LIBRARY (bindings_python MODULE solv_python.c)
 SET_TARGET_PROPERTIES (bindings_python PROPERTIES PREFIX "" OUTPUT_NAME "_solv")
 TARGET_LINK_LIBRARIES (bindings_python libsolvext libsolv ${SYSTEM_LIBRARIES})
 
index bc7a1f9..6c3bd50 100644 (file)
@@ -19,7 +19,7 @@ ADD_CUSTOM_COMMAND (
 ADD_DEFINITIONS(-Wno-unused)
 INCLUDE_DIRECTORIES (${RUBY_INCLUDE_PATH})
 
-ADD_LIBRARY (bindings_ruby SHARED solv_ruby.c)
+ADD_LIBRARY (bindings_ruby MODULE solv_ruby.c)
 SET_TARGET_PROPERTIES (bindings_ruby PROPERTIES PREFIX "" OUTPUT_NAME "solv")
 TARGET_LINK_LIBRARIES (bindings_ruby libsolvext libsolv ${SYSTEM_LIBRARIES})
 
index d624bf6..6840a6e 100644 (file)
@@ -661,7 +661,7 @@ main(int argc, char **argv)
   queue_push2(&job, SOLVER_ERASE|SOLVER_CLEANDEPS|SOLVER_SOLVABLE_PROVIDES, pool_rel2id(pool, NAMESPACE_LANGUAGE, 0, REL_NAMESPACE, 1));
 #endif
 
-#if defined(ENABLE_RPMDB) && (defined(SUSE) || defined(FEDORA))
+#if defined(ENABLE_RPMDB) && (defined(SUSE) || defined(FEDORA) || defined(MANDRIVA) || defined(MAGEIA))
 rerunsolver:
 #endif
   solv = solver_create(pool);
index 6f819aa..0fc4e2a 100755 (executable)
@@ -738,7 +738,7 @@ foreach cl [$trans classify [expr $solv::Transaction_SOLVER_TRANSACTION_SHOW_OBS
     set cltype [$cl cget -type]
     if {$cltype == $solv::Transaction_SOLVER_TRANSACTION_UPGRADED || $cltype ==$solv::Transaction_SOLVER_TRANSACTION_DOWNGRADED} {
       set op [$trans othersolvable $p]
-      puts [format {  - %s -> %s} [$p str] [$p str]]
+      puts [format {  - %s -> %s} [$p str] [$op str]]
     } else {
       puts [format {  - %s} [$p str]]
     }
index 5ddad42..745e5bf 100644 (file)
@@ -1,4 +1,12 @@
 -------------------------------------------------------------------
+Mon Oct  5 13:27:25 CEST 2015 - mls@suse.de
+
+- fix bug in recommends handling [bnc#948482]
+- also check installed packages in multiversion handling
+- fix build on Mageia
+- bump version to 0.6.14
+
+-------------------------------------------------------------------
 Fri Sep 25 11:54:02 CEST 2015 - mls@suse.de
 
 - support a generic string for pattern-visible() [bnc#900769]
index 3264e9b..b941986 100644 (file)
@@ -928,7 +928,13 @@ solver_addpkgrulesforsolvable(Solver *solv, Solvable *s, Map *m)
                  /* we still obsolete packages with same nevra, like rpm does */
                  /* (actually, rpm mixes those packages. yuck...) */
                  if (multi && (s->name != ps->name || s->evr != ps->evr || s->arch != ps->arch))
-                   continue;
+                   {
+                     if (isinstalled || ps->repo != installed)
+                       continue;
+                     /* also check the installed package for multi-ness */
+                     if (MAPTST(&solv->multiversion, p))
+                       continue;
+                   }
                  if (!pool->implicitobsoleteusesprovides && s->name != ps->name)
                    continue;
                  if (pool->implicitobsoleteusescolors && !pool_colormatch(pool, s, ps))
@@ -938,7 +944,7 @@ solver_addpkgrulesforsolvable(Solver *solv, Solvable *s, Map *m)
                  if (s->name == ps->name)
                    {
                      /* optimization: do not add the same-name conflict rule if it was
-                      * already added when we looket at the other package.
+                      * already added when we looked at the other package.
                       * (this assumes pool_colormatch is symmetric) */
                      if (p && m && ps->repo != installed && MAPTST(m, p) &&
                          (ps->arch != ARCH_SRC && ps->arch != ARCH_NOSRC) &&
index 3358b6b..c6cad6b 100644 (file)
@@ -2544,13 +2544,20 @@ solver_run_sat(Solver *solv, int disablerules, int doweak)
                    continue;
                  if (solv->decisionmap[p] <= 0)
                    continue;
-                 if (solv->multiversion.size && MAPTST(&solv->multiversion, p))
+                 if (!solv->keepexplicitobsoletes && solv->multiversion.size && MAPTST(&solv->multiversion, p))
                    continue;
                  obsp = s->repo->idarraydata + s->obsoletes;
                  /* foreach obsoletes */
                  while ((obs = *obsp++) != 0)
                    FOR_PROVIDES(po, ppo, obs)
-                     MAPSET(&obsmap, po);
+                     {
+                       Solvable *pos = pool->solvables + po;
+                       if (!pool->obsoleteusesprovides && !pool_match_nevr(pool, pos, obs))
+                         continue;
+                       if (pool->obsoleteusescolors && !pool_colormatch(pool, s, pos))
+                         continue;
+                       MAPSET(&obsmap, po);
+                     }
                }
              for (i = j = 0; i < dqs.count; i++)
                if (!MAPTST(&obsmap, dqs.elements[i]))
index 5c49394..d0328ae 100644 (file)
@@ -25,7 +25,7 @@ static struct resultflags2str {
 };
 
 static void
-usage(ex)
+usage(int ex)
 {
   fprintf(ex ? stderr : stdout, "Usage: testsolv <testcase>\n");
   exit(ex);