Commit Graph

2678 Commits

Author SHA1 Message Date
3855d2e2fb xbps-pkgdb(8): check pkg file mtime (iff the obj is available). 2015-02-22 18:45:47 +01:00
2cae0cba01 xbps-create(8): store file mtime in metadata for upcoming changes. 2015-02-22 18:20:32 +01:00
ae8ce64542 Restore pkg file timestamps while unpacking as regular user.
Requested by @dominikh.
2015-02-21 16:52:27 +01:00
3692ecb537 xbps-query/search: fix previous. 2015-02-20 11:07:35 +01:00
341e8a10ae xbps-query/search: minor optimizations. 2015-02-20 11:01:18 +01:00
7e21f1ee1a xbps_symlink_target: rename var to avoid shadowing a global var. 2015-02-19 11:44:10 +01:00
9083191e4b xbps_symlink_target: double free in rootdir == '/' case. 2015-02-19 11:39:59 +01:00
6d65e76f91 xbps_symlink_target: fix a memleak. 2015-02-19 11:36:09 +01:00
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
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
2f9dd7237b NEWS: mention xbps-pkgdb(8) recent fixes. 2015-02-19 10:33:43 +01:00
67eba7d912 Improve detection of target file in relative symlinks.
If xbps-create(8) did not guess the target file of relative symlinks for
some reason, just compare the current symlink and what's stored as is,
without converting it to absolute.

This might happen with dangling relative symlinks or existing binary
packages that were not created with a newer xbps-create(8).
2015-02-19 10:24:24 +01:00
05f879ec09 Introduce xbps_symlink_target() and use it in two places.
This code is now shared by xbps-pkgdb and libxbps/xbps-remove.
2015-02-19 09:47:09 +01:00
69e3a50e75 xbps-create: handle correctly another case of relative symlinks. 2015-02-19 09:44:09 +01:00
9c47bc0b1a xbps-re{configure,move}: fix previous. 2015-02-18 17:02:50 +01:00
96b76c28e5 xbps-reconfigure: do not bother to print useless msgs about unknown states.
Those states are not meaningful for the application.
2015-02-18 16:56:34 +01:00
73c0d68acd xbps-remove: do not bother to print useless msgs about unknown states.
Those states are not meaningful for the application.
2015-02-18 16:55:42 +01:00
45f624eae2 tests: another test case to verify removal of dangling symlinks. 2015-02-18 16:46:45 +01:00
c4acbbe698 tests: more test cases to verify removal of symlinks. 2015-02-18 16:10:08 +01:00
1722635e08 Introduce xbps_sanitize_path() to fix #78 properly.
This removes multiple slashes of a path and returns you a buffer with
the sanitized string.
2015-02-18 15:12:39 +01:00
3c34c300d1 xbps-create(8): record target file or relative symlinks correctly. 2015-02-18 14:55:54 +01:00
628a344560 libxbps: fix a memleak introduced in 1403826fa. 2015-02-17 16:39:04 +01:00
1403826fa6 libxbps: detect and remove properly symlinks with relative targets.
Close #78
2015-02-17 11:59:05 +01:00
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
7cdba2ed14 xbps-checkvers(8): fixed segfaults with missing vars on templates. 2015-02-16 18:53:45 +01:00
07d5e93bb0 tests/xbps-checkvers: new tests to detect incorrect behaviour. 2015-02-16 17:25:37 +01:00
c0c3771965 xbps-remove.8: improve -F desc. 2015-02-16 11:19:09 +01:00
0fc297a471 lib/transaction_ops.c: minor optimization. 2015-02-16 11:18:58 +01:00
2aa844f3f7 lib/Makefile: remove some disabled warnings for lib{fetch,portableproplib}.
There's no need to set _GNU_SOURCE and disable those compiler warning flags.
2015-02-15 05:47:35 +01:00
b8b4694b33 portableproplib: use posix_madvise rather than madvise.
The posix variant is the standardized version of madvise.
2015-02-15 05:42:18 +01:00
6d57c6db4b README: remove two "features" that are not quite true. 2015-02-10 11:06:56 +01:00
4e0ce0fbb4 libxbps: make the vpkg_provider_and_revdeps_downgrade test case work. 2015-02-10 10:55:05 +01:00
1cf8646a2d tests: two new test cases for downgrading vpkg providers. 2015-02-08 10:41:50 +01:00
1ebb245672 xbps_transaction_store: print repo too. 2015-02-05 10:26:53 +01:00
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
d607655371 libxbps: globally check for unresolved reverse dependencies.
Close #46. See NEWS for more information.
2015-02-03 10:20:13 +01:00
7d23a7e69c tests: remove: three new test cases to verify pkg removal of revdeps. 2015-02-03 09:58:24 +01:00
1d0a8649da bin/xbps-install/util.c: properly report pkgs to be removed. 2015-02-02 09:49:16 +01:00
88fe064e36 tests: remove: add a test case to verify revdeps with xbps-remove(8). 2015-02-02 09:38:05 +01:00
3bc6354550 lib/repo_pkgdeps.c: fix some debug printfs. 2015-02-02 09:37:34 +01:00
0c208bb744 xbps-query(8): ownedby: do not follow symlinks and print target file too. 2015-01-29 17:32:14 +01:00
20276fc068 xbps-install: add additional actions to the column output.
- downgrade if new version in repos is less than installed one.
- reinstall if both versions are equal.

and additionally always print installed pkg version, irrespectively of
the transaction mode.

Close #72
2015-01-29 09:58:32 +01:00
e95300e952 xbps-install/util: print installed version in pkgs on hold mode. 2015-01-28 18:06:58 +01:00
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
9bc3275515 xbps-install/state_cb: log XBPS_STATE_UPDATE via syslog too.
This way the updates are also recorded via syslog.
2015-01-28 09:48:20 +01:00
1e0b005482 tests: another test to verify moving files to dependency without replaces. 2015-01-28 08:27:40 +01:00
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
f324ea5352 tests: another test case to verify that moving files between pkgs work. 2015-01-27 11:26:34 +01:00
d519ed3d15 xbps-checkvers: misc changes to fix issues I've found.
- Clear completely the rcv struct.
- Remove unapplicable free()a before assignment (wtf)
- Fix usage, -C expects a path to a directory not a filename.
- Remove obsolete xbps.conf handling, this is unnecessary (xbps.d(5)).
- Random tweaks after a quick inspection.
2015-01-22 18:44:39 +01:00
cbf1cfe0f5 libxbps: improve debug messages again. 2015-01-21 11:39:45 +01:00