Duncaen
d1667fd931
Add the ability to ignore packages
...
The previous idea was to use virtual packages in the users configuration
to satisfy dependencies by mapping them to existing installed packages.
Using virtual packages for it doesn't work as expected and trying to make
it work would break other functionalities of virtual packages, like the
version satisfaction checks for `provides` and the ability to replace
virtual packages with real packages. The virtual package functionality
should be used exclusively for virtual packages.
This allows users to specify packages packages that should be ignored.
Ignored packages in dependencies are always satisfied without installing
the package, while updating or installing a package that depends on an
ignored package.
This does NOT ignore the shlib checks, ignoring a package that provides
required shared libraries will abort the transaction as if there was no
package that provides the required shared library.
2019-04-19 23:07:59 +02:00
Juan RP
291faddf8c
xbps now also updates revdeps of itself if there's an update.
...
Close https://github.com/void-linux/xbps/issues/77
Closes : #78 [via git-merge-pr]
2019-04-19 22:57:42 +02:00
Juan RP
580a5ba29b
xbps_get_pkg_fulldeptree(): fix all known bugs and make it 50x faster.
...
faster: use a hash table with pkg names on the transaction dict,
the process of collecting and sorting is now 50x faster or
even more (kde5).
bugs: this now detects cyclic deps and returns with an appropropiate
return value: ELOOP and ENOENT in xbps-query(1) --fulldeptree.
Ping me if you need more details :-)
Close https://github.com/void-linux/xbps/issues/16
Close https://github.com/void-linux/xbps/issues/5
2019-04-19 22:57:42 +02:00
Duncaen
25427fca7d
tests: xbps-create with fifo in destdir
2019-04-14 12:37:24 +02:00
Duncaen
4e267de72d
tests: fix downgrade hold test
2019-04-14 12:08:49 +02:00
Duncaen
53e6f5c75f
tests: add downgrade hold test
2019-04-14 11:53:07 +02:00
Cameron Nemo
31737ff946
tests/xbps/libxbps/config: safer string handling
...
Closes : #61 [via git-merge-pr]
2019-03-22 19:14:08 +01:00
Duncaen
d41cafbe52
tests: add test for shlib-provides with replaces
2019-03-22 19:14:08 +01:00
Duncaen
d7c2e87d55
tests: make tests POSIX shell compatible
2019-03-22 19:14:08 +01:00
Enno Boland
219f6c2310
xbps-rindex: add test to trigger stage deadlock
2018-06-28 13:30:14 +02:00
Duncaen
dd7a0d073b
lib/package_alternatives.c: remove previous symlinks
2016-09-05 02:03:30 +02:00
Enno Boland
3a067f2e20
tests: check if empty stage correctly gets removed
2016-03-22 09:47:25 +01:00
Enno Boland
b9ce711848
tests: add tests to ensure that packages in stage are not removed
2016-03-21 11:23:48 +01:00
Enno Boland
abde080ac1
tests: add test for staged packages
2016-03-21 08:31:18 +01:00
Enno Boland
5b66679929
tests: xbps-rindex add missing atf_test_case
2016-03-20 21:36:30 +01:00
Juan RP
067687ce28
libxbps: ignore updates for pkgs with held deps. Close #143
2016-02-06 09:03:54 +01:00
Juan RP
b759ca4b07
xbps-install(1): do not exit if pkg is up-to-date in dry-run mode.
...
Close #145
2016-02-05 11:27:40 +01:00
Juan RP
0fa676f50c
tests/libxbps/update_hold: fix previous.
2016-02-05 11:27:07 +01:00
Juan RP
d211825a18
tests: move and rename on hold test to the correct file.
2016-02-05 11:14:18 +01:00
Juan RP
bd00a0b096
tests: comment out the cyclic_dep_full test for now.
2016-02-04 10:41:10 +01:00
Juan RP
ccc4b3ccf0
tests: cyclic_deps/cyclic_dep_full: set timeout to 5.
2016-02-04 10:38:58 +01:00
Juan RP
377ec33ecf
tests/xbps-install: #143 has not yet been resolved; mark as known bug for now.
2016-02-02 11:08:05 +01:00
yupi2
099d11a448
tests: reproducible segfault
2016-01-02 13:47:38 -06:00
Enno Boland
4e7cc1fb39
tests: fixing a wrong return value.
2016-01-02 18:29:09 +01:00
Enno Boland
35e4f31234
tests: fix test as it was failing for the wrong reason.
2016-01-02 18:21:26 +01:00
Enno Boland
87b9c2e099
tests: add test case for issue #143
...
Segfault when attempting to install a package on hold
2016-01-02 17:43:58 +01:00
Juan RP
93b50bc4dc
alternatives: preserve order while updating pkgs (thanks chris2/duncaen).
2015-11-17 16:32:12 +01:00
Juan RP
b3c7d27c6b
alternatives: fix creation of symlinks with unexistent dirs.
...
If an alternative needs to create /usr/bin/foo, and /usr/bin
does not exist, this directory must be created prior to create
the symlink.
2015-11-14 07:26:27 +01:00
Juan RP
2202482e0e
conflicts: really fix the issue with on hold pkgs and update test case.
2015-11-12 13:23:00 +01:00
Juan RP
784e43d876
conflicts: do not take into account conflicts for on hold pkgs.
2015-11-12 12:24:33 +01:00
Juan RP
0cf4a2c0c0
conflicts: another bugfix + test case.
2015-11-10 15:36:25 +01:00
Enno Boland
635db51c27
lib/package_alternatives.c: always use relative symlinks in alternatives
...
This commit adds relative link support to lib/package_alternatives.c.
Instead of creating absolute links, xbps will create relative links
to the target. This allows to follow links on systems even if the
aren't mounted on /.
2015-11-07 08:40:57 +01:00
Juan RP
9b0cde3267
xbps-alternatives: dangling symlinks are now supported.
2015-11-02 21:02:37 +01:00
Joey Gouly
b4ef9954e7
Fix #120 by stripping comments from the end of lines.
...
The debug printing is also moved after variable substitution.
Now it prints:
foo/template: _var foo
foo/template: pkgname foo
It used to print:
foo/template: _var foo
foo/template: pkgname ${_var}
2015-10-31 16:49:55 +00:00
Juan RP
512122da4c
alternatives: really make relative symlinks this time.
2015-10-31 14:01:20 +01:00
Juan RP
e3a0164355
tests/xbps-alternatives: extend register_one_relative test case.
2015-10-31 13:08:13 +01:00
Joey Gouly
b06ce15136
Allow relative symlinks in xbps-alternatives.
2015-10-31 11:54:01 +00:00
Juan RP
59a8d3d20e
alternatives: skip dup alternative groups.
2015-10-31 11:47:58 +01:00
Juan RP
cb857dfc27
Alternatives framework for xbps (2/2).
...
See xbps-alternatives(1) for more information.
Thanks to all who helped to design this and for fixing grammar in
the manual page.
2015-10-30 12:24:46 +01:00
Juan RP
03f8cad872
tests/libxbps/conflicts: add 4 new tests cases.
2015-10-29 08:43:59 +01:00
Juan RP
a13a7fa896
Implemented reverse conflicts for pkgs in pkgdb and transaction.
2015-10-28 05:23:42 +01:00
Juan RP
4de397c5a2
tests: add two test cases for xbps-checkvers(1); #120 remains unfixed.
2015-10-21 09:29:45 +02:00
Juan RP
e16ca06d5b
tests/xbps/libxbps/shell/cyclic_deps.sh: use atf_expect_death instead.
2015-10-21 09:29:21 +02:00
Juan RP
24af8cde9b
xbps-install(1): implement #109 .
...
-n/--dry-run mode now prints "installed_size" obj as 5th argument,
and "filename-size" as 6th argument (if available).
Close #109
2015-10-19 19:02:26 +02:00
Juan RP
103caf0694
libxbps: extend the fix for #116 even more for the expected case.
...
This now catches both test cases correctly.
2015-10-19 18:19:24 +02:00
Juan RP
b069eb14ae
libxbps: fixed issue #116 (vpkg does not replace pkg with update in trans).
...
Thanks to @dominikh for the test case.
2015-10-19 18:01:43 +02:00
Juan RP
782ec10111
xbps-create(1): timestamps of metadata files are now set to epoch.
...
Thanks to @Gottox for finding the real issue.
2015-09-03 11:12:49 +02:00
Juan RP
0d5385ad2b
xbps-checkvers: fixed an endless loop with "reverts" containing extra alphanumeric chars.
2015-07-27 09:44:25 +02:00
Juan RP
22ffc14026
Override and use a sane umask when performing pkg configuration.
...
Close #106
2015-06-28 05:14:02 +02:00
Juan RP
c5d6556c50
xbps-remove: fix #95 (xbps-remove -R pkg lists/removes orphans)
2015-05-06 17:21:13 +02:00
Juan RP
68a8b8543d
tests: new tests to verify xbps autoupdating itself.
2015-03-29 09:57:37 +02:00
Juan RP
bb4ebf8152
tests: add test case when installing a pkg with unresolved circular deps.
2015-03-21 11:48:26 +01:00
Juan RP
dc47dfd593
xbps_get_pkg_fulldeptree: detect pkgs depending on itself via virtual pkgs.
...
Reported by Duncan Overbrook.
Update NEWS with recent changes.
2015-03-20 08:03:06 +01:00
Juan RP
441f147f05
Fix reinstallation of pkgs in repolock mode.
...
At the time we've been searching for the pkg in a repo, no repos
were registered resulting in EINVAL. While here, if there's no
declared repos return ENOENT instead.
2015-03-05 21:23:58 +01:00
Juan RP
7bff8aa350
tests/update_repolock: fix repo order and use readlink -f to fix travis-ci.
2015-03-03 12:57:49 +01:00
Juan RP
4922c808f4
Implemented feature #77 (Add package repository locked mode)
...
Close #77
2015-03-03 12:11:28 +01:00
Juan RP
976718417b
libxbps: remove "skip-obsoletes" handling; unnecessary with the mtime checks.
2015-02-26 19:51:03 +01:00
Juan RP
b6b446d32e
libxbps: properly detect obsolete files with files being between pkgs.
...
120 test cases now successfully pass, and all known issues about
pkg updates that move files between them should be gone (hopefully).
2015-02-26 19:37:46 +01:00
Juan RP
8de52caa2f
tests: two more test cases to verify moving files between pkgs.
...
There are now 2 broken test cases thanks to the fixed xbps-pkgdb(8).
2015-02-26 12:02:06 +01:00
Juan RP
7c52471ff6
tests: add test case to verify pkg file timestamps are updated correctly.
2015-02-26 10:40:15 +01:00
Juan RP
ae8ce64542
Restore pkg file timestamps while unpacking as regular user.
...
Requested by @dominikh.
2015-02-21 16:52:27 +01:00
Juan RP
a05e039cce
Revert "Stop converting relative symlinks to absolute."
...
This reverts commit 9ae3638429
.
This change is ok, but cannot be used right now because all existing
binpkgs were created with an old xbps-create(8).
2015-02-19 11:11:58 +01:00
Juan RP
9ae3638429
Stop converting relative symlinks to absolute.
...
There's no reason to make them absolute, simply store in the metadata
the target file as is. This vastly simplifies the code and makes all
test pass correctly.
2015-02-19 11:04:34 +01:00
Juan RP
69e3a50e75
xbps-create: handle correctly another case of relative symlinks.
2015-02-19 09:44:09 +01:00
Juan RP
45f624eae2
tests: another test case to verify removal of dangling symlinks.
2015-02-18 16:46:45 +01:00
Juan RP
c4acbbe698
tests: more test cases to verify removal of symlinks.
2015-02-18 16:10:08 +01:00
Juan RP
3c34c300d1
xbps-create(8): record target file or relative symlinks correctly.
2015-02-18 14:55:54 +01:00
Juan RP
1403826fa6
libxbps: detect and remove properly symlinks with relative targets.
...
Close #78
2015-02-17 11:59:05 +01:00
Juan RP
38e71e8e1c
xbps-checkvers: more fixes and new test cases.
...
- This now checks for vars that have refs to other vars:
pkgname=${_myvar}
- This now checks for unwanted garbage before assignment:
. ./source/file
pkgname=${_myvar}
- Misc tweaks to use my coding style.
2015-02-17 10:20:59 +01:00
Juan RP
7cdba2ed14
xbps-checkvers(8): fixed segfaults with missing vars on templates.
2015-02-16 18:53:45 +01:00
Juan RP
07d5e93bb0
tests/xbps-checkvers: new tests to detect incorrect behaviour.
2015-02-16 17:25:37 +01:00
Juan RP
1cf8646a2d
tests: two new test cases for downgrading vpkg providers.
2015-02-08 10:41:50 +01:00
Juan RP
c0d7d930de
libxbps: make sure that revdeps of vpkg providers are always resolved.
...
Added new test cases to verify its correctness in upgrades and removals.
2015-02-05 10:04:42 +01:00
Juan RP
d607655371
libxbps: globally check for unresolved reverse dependencies.
...
Close #46 . See NEWS for more information.
2015-02-03 10:20:13 +01:00
Juan RP
7d23a7e69c
tests: remove: three new test cases to verify pkg removal of revdeps.
2015-02-03 09:58:24 +01:00
Juan RP
88fe064e36
tests: remove: add a test case to verify revdeps with xbps-remove(8).
2015-02-02 09:38:05 +01:00
Juan RP
076b3f8c44
libxbps: add pkgs on hold mode to the transaction, but ignore them.
...
Those are there mostly to be shown by the clients and notify that
there's an update in repos that is being ignored.
Idea by @chneukirchen.
2015-01-28 12:07:47 +01:00
Juan RP
1e0b005482
tests: another test to verify moving files to dependency without replaces.
2015-01-28 08:27:40 +01:00
Juan RP
571d96fa92
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.
2015-01-27 17:53:37 +01:00
Juan RP
f324ea5352
tests: another test case to verify that moving files between pkgs work.
2015-01-27 11:26:34 +01:00
Juan RP
9d8e2d0250
tests: issue31: test should fail with ENOTEMPTY rather than 0.
2015-01-18 10:06:46 +01:00
Juan RP
94e9754fb1
tests: another test to verify revdeps with unknown shlib providers.
2015-01-17 06:10:49 +01:00
Juan RP
bb3c404d5f
tests: update_shlibs: improve two tests and fix descr for another one.
2015-01-17 05:54:55 +01:00
Juan RP
757d1bda68
tests: add test for another kind of versioned soname bump.
...
This fails currently... working in a solution that works globally.
2015-01-17 03:19:45 +01:00
Juan RP
7b3a500139
libxbps: the provides obj now expects exact pkgver strings.
...
This reduces extra allocs and simplifies the code, which was just
there to workaround some broken pkgs anyway.
2015-01-10 07:26:23 +01:00
Juan RP
1f6a5c0e47
libxbps: detection of orphaned packages is now 66% faster.
2015-01-10 05:43:35 +01:00
Juan RP
9d582abe0f
Fixed a regression with virtual packages declared via xbps.d(5).
...
Added a new test case to verify its correctness. Somehow virtual packages
declared via xbps.d(5) were not working correctly for dependencies.
This now works as expected with vpkgs declared with and without a version
component.
2015-01-05 16:04:22 +01:00
Juan RP
eee895c6d8
Fixed a regression in vpkgs and improve xbps.d(5) virtualpkg declarations.
...
See the NEWS file for more information.
2014-12-31 08:51:45 +01:00
Juan RP
89d11e871f
xbps-{install,query}: added -i to ignore repos defined in xbps.d.
...
See the NEWS file for more information.
2014-11-21 10:56:41 +01:00
Juan RP
428a747fad
Fix #69 (No way to set globally a custom architecture)
...
The "architecture" configuration keyword is now available to override
the native machine architecture returned by (uname(2)).
The XBPS_ARCH environment variable still has preference.
2014-11-19 11:36:09 +01:00
Juan RP
b2bc7af66e
Fix #68 (xbps_binpkg_arch() asserts if arch contains a dash)
2014-11-19 11:14:37 +01:00
Juan RP
3afb9d709d
Get rid of repodata index-files; the archive is now 8x smaller.
...
See the NEWS file for more information.
2014-11-13 17:09:43 +01:00
Juan RP
805cabc1c4
tests: add another test case to verify pkg files are replaced correctly.
2014-11-13 11:20:06 +01:00
Juan RP
e81a71129c
tests: new test case to verify pkg files are replaced correctly.
2014-11-13 09:21:24 +01:00
Juan RP
039a155918
xbps-create(8): fix #64 "incorrect installed-size with hardlinks"
2014-11-12 12:37:35 +01:00
Juan RP
53f13d579e
Added the "bestmatching" configuration keyword to enable pkg best matching.
...
See the NEWS file for more information.
2014-11-07 10:07:51 +01:00
Juan RP
759f7e7fba
tests: use abs path to repodir in xbps-rindex.
2014-11-06 11:21:32 +01:00
Juan RP
5183b0a7e7
tests: enable debugging in xbps-rindex (2/2).
2014-11-06 11:02:14 +01:00
Juan RP
4086c0a4c6
tests: enable debugging in xbps-rindex to see what's going on.
2014-11-06 10:56:15 +01:00
Juan RP
5b522109f7
Replaced config/system {repo,preserve,virtualpkg}.d with a single directory.
...
See the NEWS file for more information.
2014-11-06 09:58:04 +01:00