From 51cb5aca842deb3ca4b9b4982f23bbab68319cf7 Mon Sep 17 00:00:00 2001 From: Duncaen Date: Fri, 31 Jan 2020 16:35:44 +0100 Subject: [PATCH] xbps: fix regression --- srcpkgs/xbps/patches/regression-218.patch | 45 +++++++++++++++++++++++ srcpkgs/xbps/template | 2 +- 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 srcpkgs/xbps/patches/regression-218.patch diff --git a/srcpkgs/xbps/patches/regression-218.patch b/srcpkgs/xbps/patches/regression-218.patch new file mode 100644 index 00000000000..2a3c5fa3ea9 --- /dev/null +++ b/srcpkgs/xbps/patches/regression-218.patch @@ -0,0 +1,45 @@ +commit 8637269b38d9cd59fe946dc797a455e3c8009ea0 +Author: Duncan Overbruck +Date: Fri Jan 31 16:32:38 2020 +0100 + + lib/transaction_revdeps.c: fix provides/replaces #218 + + This reverts a change that solved another issue and marks the test case + for the other issue as expected failure. + + The other issue is not as important as this, as it blocks updating a lot + of systems. + +diff --git lib/transaction_revdeps.c lib/transaction_revdeps.c +index 39cc6d05..73edd21c 100644 +--- lib/transaction_revdeps.c ++++ lib/transaction_revdeps.c +@@ -232,6 +232,16 @@ xbps_transaction_revdeps(struct xbps_handle *xhp, xbps_array_t pkgs) + free(pkgname); + continue; + } ++ /* ++ * Installed package conflicts with package ++ * in transaction being updated, check ++ * if a new version of this conflicting package ++ * is in the transaction. ++ */ ++ if (xbps_find_pkg_in_array(pkgs, pkgname, "update")) { ++ free(pkgname); ++ continue; ++ } + free(pkgname); + broken_pkg(mdeps, curpkgver, pkgver, tract); + } +diff --git tests/xbps/libxbps/shell/install_test.sh tests/xbps/libxbps/shell/install_test.sh +index c0fe9a1a..eb30ba82 100644 +--- tests/xbps/libxbps/shell/install_test.sh ++++ tests/xbps/libxbps/shell/install_test.sh +@@ -598,6 +598,7 @@ atf_test_case update_and_install + + update_and_install_head() { + atf_set "descr" "Tests for pkg install: update installed version and install new from other repo" ++ atf_expect_fail "fix introduced a regression" + } + + update_and_install_body() { diff --git a/srcpkgs/xbps/template b/srcpkgs/xbps/template index 0cb9f0c1ebe..7e8499442e7 100644 --- a/srcpkgs/xbps/template +++ b/srcpkgs/xbps/template @@ -1,7 +1,7 @@ # Template file for 'xbps' pkgname=xbps version=0.58 -revision=2 +revision=3 bootstrap=yes build_style=configure short_desc="XBPS package system utilities"