libxbps: make sure to remove pkg metadata file on upgrades with skip-obsoletes.

This fixes the following case:

 - A-1.0_1 is installed and owns bin/foo.
 - A-1.1_1 is in the transaction and depends on B-1.0_1 that owns bin/foo.
 - B-1.0_1 is in the transaction and replaces A<1.1_1.
 - A-1.1_1 in the transaction now has "skip-obsoletes".
 - A is updated to 1.1_1, its metadata file (<pkgname>-files.plist) wasn't removed.

Added two new test cases to verify moving files from/to a dependency.
This commit is contained in:
Juan RP
2015-01-27 17:53:37 +01:00
parent f324ea5352
commit 571d96fa92
3 changed files with 53 additions and 6 deletions

4
NEWS
View File

@@ -1,5 +1,9 @@
xbps-0.44 (???):
* libxbps: make sure to remove the pkg metadata file if a pkg upgrade does not
own any file and a dependency replaces it due to moving files between them.
Added two new test cases to verify its correctness.
* xbps-query(8): --regex option now matches EREs in case insensitive mode.
* libxbps: globally check for unresolved shared libraries before accepting