Juan RP
b4fdc39e67
Revert "Sign repodata"
...
This reverts commit 04194f44c8 .
2020-01-06 14:31:40 +01:00
Juan RP
9c61e341b1
configure: added --enable-lto (default disabled).
2020-01-06 12:47:50 +01:00
Juan RP
d5e91cb7d8
xbps_transaction_store: fix memleak.
2020-01-06 12:47:13 +01:00
Juan RP
802a6eae09
xbps_dbg_printf{,_append}: add assertion
2020-01-06 12:10:47 +01:00
Juan RP
9be9679b5d
configure: re-add --enable-debug (enabled by default).
...
And fix debugging in the shared library with tcc.
2020-01-06 12:09:28 +01:00
Juan RP
fabe148261
LICENSE: hi 2020
2020-01-05 10:56:19 +01:00
Juan RP
e2050269b0
.travis.yml: switch to pkgconf
2020-01-05 09:58:25 +01:00
Juan RP
1f1f7e31e7
tests: improve update_xbps_with_indirect_revdeps test case.
2020-01-05 09:26:38 +01:00
Juan RP
10075c28e5
libxbps: ignore indirect broken revdeps while updating xbps.
...
This fixes the long standing issue that has been a plague for
a long time.
See the test case for more information.
2020-01-04 13:01:28 +01:00
Juan RP
d68ff7ebf0
xbps-install: fix --reproducable.
...
The 'repository' obj also needs to be skipped to be fully
reproducable between different repositories.
Updated the test case accordingly.
2019-12-29 16:31:23 +01:00
Juan RP
2c7c4e1bf0
tests/xbps-create: fix the rejectfifo test.
...
It was using -a (alternatives) rather than -A (architecture)
so the test wasn't checking the exact error branch.
2019-12-29 16:24:33 +01:00
Juan RP
b05f4b4db5
xbps-install: added --reproducible long option.
...
If set, enables reproducible mode in pkgdb.
Added a new test case.
2019-12-29 11:02:51 +01:00
Juan RP
95a3ba651f
libxbps: added XBPS_FLAG_INSTALL_REPRO for xbps_handle::flags.
...
If set, enable reproducible mode; skips adding the
"install-date" obj into pkgdb.
2019-12-29 11:02:51 +01:00
Juan RP
d1c93bed52
xbps-rindex: stop adding the "build-date" pkg obj.
...
This was just setting the current date when the pkg
is being added to the repository index.
It does not make any sense, so get rid of it completely.
This "build-date" string obj needs to be added via
xbps-create(1) not xbps-rindex(1)!
Another step towards reproducability (#55 )
2019-12-29 09:57:54 +01:00
Juan RP
2e08cbef7a
tests: fixed tests to not use host's xbps.d confdir.
2019-12-28 13:42:30 +01:00
Juan RP
34471902ed
README.md: update requirements; prefer pkgconf.
2019-12-28 11:55:11 +01:00
Juan RP
6210955010
xbps-create: fix memleak introduced in 0f3ed2067c
2019-12-27 23:15:21 +01:00
Juan RP
67707657a4
xbps-create: always sanitize gathered symlinks.
...
Added a new test case.
Close #199
2019-12-27 23:15:21 +01:00
Juan RP
166caab986
Do not silently update xbps on any install/update transaction.
...
When there's a new xbps update, xbps-install(1) will now return
EBUSY (16) and a message (if dry-run disabled) explaining
how to proceed.
If there's an update and transaction does not contain xbps, it will
error out unless the 'xbps' pkg is the only target pkg, i.e:
# xbps-install -Su
# echo $?
16
To update xbps, the only way to proceed is to explicitly declare
it as an update, i.e:
# xbps-install -u xbps
The dry-run mode will still show there's an xbps update.
Modified the existing test cases to satisfy the new behaviour.
Closes #166
Closes #142
2019-12-27 21:35:40 +01:00
Juan RP
c81a2806ff
xbps_transaction_prepare: optimize a bit.
...
If all packages in transaction are on hold, there's no
need to check for conflicts, shlibs, etc.
This makes `xbps-install -un` work faster on my system:
~0.450ms -> ~0.250ms
There's still room for more improvements :-)
2019-12-27 21:32:54 +01:00
Juan RP
73e0668840
libxbps: fix issue found by the recent glvnd switch.
...
See the new test case for details, but this simulates
the recent glvnd switch, with mesa, nvidia and libglvnd.
Thanks @st3r4g for the fix! this indeed fixes the new test case.
Close #186
2019-12-27 20:25:05 +01:00
Juan RP
34a1ab51d0
xbps-checkvers: version cache file.
...
We do not want obsolete files from previous versions, so that
we version the filename of that working version.
2019-12-27 18:23:46 +01:00
Juan RP
64aeabf3f6
xbps-checkvers: restore previous behaviour after 7a220b37db.
...
The '%n' pkgname fmt option still needs to be the sourcepkg
for xbps-src to work with no additional changes.
This restores previous behaviour, and uses binpkg's pkgname
while checking for pkgdb/repo.
2019-12-27 18:04:53 +01:00
Juan RP
90c040f37f
configure: bump version to 0.58.
...
not yet released but 0.58 will be next version.
2019-12-27 16:35:03 +01:00
Juan RP
2f51b4c0bc
xbps_init: fix warning on glibc.
2019-12-27 16:23:56 +01:00
Juan RP
7f75fd840a
xbps_init: autodetect musl libc variant at compile time.
...
This way we don't need to set the 'architecture' xbps.d
setting when the binaries are compiled for musl.
Close #195
2019-12-27 16:23:56 +01:00
Juan RP
66b07bb795
xbps_array_foreach_cb_multi: fix previous.
2019-12-27 16:22:40 +01:00
Juan RP
f5d93caf15
xbps_array_foreach_cb_multi: improve previous (v2).
...
As suggested by @CasperVector reuse the 'i' var to
wait for threads that were created successfully.
2019-12-27 15:47:43 +01:00
Juan RP
a3a1c372cb
xbps_array_foreach_cb_multi: improve previous.
...
Do not wait for the other threads to finish, just exit early.
2019-12-27 15:19:22 +01:00
Juan RP
08a1c61a4d
xbps_array_foreach_cb_multi: error out if pthread_create(3) fails.
...
We do not want to continue processing more threads
if pthread_create(3) fails, rather return an error.
This is for #182 but not yet fixed, there might be a
memleak somewhere.
2019-12-27 14:27:51 +01:00
Juan RP
7a220b37db
xbps-checkvers: use binpkg's pkgname rather than srcpkgs.
...
Up until now `xbps-checkvers` would only check for the
real sourcepkg, this broke detection of binary packages
that are subpkgs.
Added a new test case.
Close #192
2019-12-27 12:24:16 +01:00
Juan RP
0e1482917a
Fix maybe-uninitialized warnings detected by LTO.
2019-12-27 10:53:10 +01:00
Juan RP
9775a20dbc
configure: use pkg-config found via PATH.
...
We only care if the `pkg-config` bin is there, don't override
it with the result from _which(). In the xbps-src world,
pkg-config is a wrapper, that makes it cross compile easily.
2019-12-26 15:29:03 +01:00
Juan RP
be05118aa8
libxbps: verify repodata signatures even if rootdir is unset.
...
xbps-rindex(1) has a -r option that sets the remove mode,
due to the changes added to sign repodata we need to access
to the correct directory where repository public keys are
stored. This makes the code use `$PWD/keys` before falling
back to `metadir`.
Fixes the test suite to run with unprivileged users (non root).
2019-11-24 12:52:50 +01:00
Juan RP
f723edbca1
trans/revdeps: ignore pkgs on hold.
...
shlib checking is still performed later on...
2019-11-24 11:44:21 +01:00
Juan RP
5c9be1eefd
travis: update xbps and system and then install deps.
...
code is too strict (or stupid) to allow unmatched versions.
2019-11-17 12:18:44 +01:00
Juan RP
6886a73288
Bump to 0.57.1 and libxbps micro.
2019-10-27 09:50:11 +01:00
Juan RP
b9b6f43300
package_script.c: fix runtime with tcc
...
Making `shells` a global declaration does not seem to make tcc happy, so make this a local variable in `xbps_pkg_exec_buffer` instead.
2019-10-27 09:38:50 +01:00
Juan RP
9ebe82fdc3
xbps-checkvers: fix a warning with glibc.
...
found by @q66
main.c:195:8: error: ignoring return value of 'fread', declared with attribute warn_unused_result [-Werror=unused-result]
2019-10-27 09:13:46 +01:00
Juan RP
c3a64f60e9
configure: bump to 0.58
2019-10-27 08:57:40 +01:00
Juan RP
98e09e01e1
lib/package_alternatives.c: check if alternative is a symlink before removing it
...
Original commit by @duncaen ... but couldn't find this anywhere.
2019-10-27 08:44:37 +01:00
Juan RP
d927517327
xbps-fbulk: do not make assert() change program behaviour.
...
... otherwise if NDEBUG is set chdir() is skipped completely.
2019-07-06 08:37:47 +02:00
Juan RP
702d64c517
xbps-checkvers/Makefile: re-add -Wno-deprecated-declarations.
...
... it's still necessary due to readdir_r() with glibc.
2019-07-03 02:15:41 +02:00
Juan RP
9addb5e64e
Get rid of some old disabled warnings.
2019-07-03 01:26:07 +02:00
Juan RP
5c828d8667
README.md: remove pcc note; it's in the build matrix now.
2019-06-27 18:12:33 +02:00
Juan RP
51bfc2a395
travis: add pcc/musl to the build matrix.
2019-06-27 18:09:26 +02:00
Juan RP
0677678387
Added LTO support and fix warnings (maybe-uninitialized).
2019-06-27 18:09:26 +02:00
Juan RP
bb96486b12
xbps-install: make sure to call xbps_end() before exiting.
2019-06-27 08:02:19 +02:00
Juan RP
db00ccc3b0
tests/xbps-remove/orphans: use -r root.
2019-06-27 07:57:13 +02:00
Juan RP
c250bdce45
travis: disable tcc/glibc for now.
2019-06-26 16:00:56 +02:00
Juan RP
646115efdc
run-tests: set LIBRARY_PATH for tcc.
2019-06-26 15:55:47 +02:00
Juan RP
815754a0e9
configure: set -Wno-error later for tcc, to override -Werror.
2019-06-26 15:48:46 +02:00
Juan RP
899b8e7abb
Revert "travis: disable tcc again, seems to not obey -Wno-error."
...
This reverts commit 405f4b8379 .
2019-06-26 15:48:35 +02:00
Juan RP
405f4b8379
travis: disable tcc again, seems to not obey -Wno-error.
2019-06-26 15:27:12 +02:00
Juan RP
ab2445e722
configure: use -Wno-error for now with tcc.
2019-06-26 15:13:01 +02:00
Juan RP
ceab3c66b7
travis: tcc builds need binutils.
2019-06-26 15:03:32 +02:00
Juan RP
d6aebd45f0
fetch/http.c: fix tcc build failure.
...
fetch/http.c:1475: warning: function might return no value: 'parse_index'
The code uses abort() before returning anything; return a proper
return value instead.
2019-06-26 14:57:39 +02:00
Juan RP
3c98d7cc4c
README.md: tcc seems to be working ok now to run the testsuite.
2019-06-26 14:53:56 +02:00
Juan RP
2694654317
travis: add tcc glibc/musl to the build matrix.
2019-06-26 14:46:52 +02:00
Juan RP
00cda75a63
Require libarchive>=3.3.3 due to zstd support.
2019-06-26 09:05:37 +02:00
Juan RP
f9477e08a7
tests/update_itself: improve test case on_any_op even more.
2019-06-25 23:13:17 +02:00
Juan RP
83aa486f6b
xbps-remove: skip trans if all pkgs were not found.
...
Restores behaviour with xbps<0.54.
2019-06-25 10:32:02 +02:00
Juan RP
a1a0407548
Bump to 0.57.
2019-06-24 11:28:11 +02:00
Juan RP
81d31ab764
NEWS: prepare 0.56.
2019-06-24 11:26:59 +02:00
Juan RP
e1dafe8f01
NEWS: sync
2019-06-24 10:56:01 +02:00
Juan RP
173c834fc8
lib/pkgdb.c: initialize pkgdb_fd.
...
otherwise xbps_pkgdb_unlock will always succeed.
2019-06-23 11:05:03 +02:00
Juan RP
41b2cec356
xbps-*: use xbps_pkgdb_update() correctly.
...
xbps-{alternatives,pkgdb,reconfigure}: xbps_pkgdb_update()
has been fixed to flush when told so, and we don't need
to update the in-memory copy because we are exiting.
2019-06-22 18:50:40 +02:00
Juan RP
97672bd79f
pkgdb: fix two issues in _update() and _release().
...
xbps_pkgdb_update: inverted condition that made it 'flush' when !flush.
xbps_pkgdb_release: xhp->pkgdb might be NULL, but unlock pkgdb anyway.
2019-06-22 18:47:13 +02:00
Juan RP
58509996aa
xbps-install: skip trans if all pkgs are installed or uptodate.
...
Fixes an issue pointed out by @Johnnynator
2019-06-21 19:19:09 +02:00
Juan RP
2f1fd70a4e
xbps_transaction_prepare: initialize trans dict!
...
... otherwise it will always return ENXIO
2019-06-21 17:13:06 +02:00
Juan RP
1ceefe6f53
Bump to 0.56.
2019-06-21 16:32:38 +02:00
Juan RP
13172c22fc
xbps-install: only print num of downloaded pkgs with -D.
2019-06-21 16:26:08 +02:00
Juan RP
f1181c7415
NEWS: prepare for 0.55.
2019-06-21 16:14:35 +02:00
Juan RP
589a96a50e
xbps-install: with -D there are no pkgs to install/update/configure/remove.
2019-06-21 16:06:42 +02:00
Juan RP
fe943eb7d2
xbps-install(1): added -D, --download-only.
...
Added `-D, --download-only` flag to allow downloading
packages to the cache without attempting to install them.
Contributed by Toyam Cox via #9
Adapted to master by yours truly.
Close #9
2019-06-21 15:57:25 +02:00
Juan RP
4f717dc597
xbps-install(1): added -I, --ignore-file-conflicts.
...
If set it will continue with the transaction and will
just print what are the conflicting files without returning
EEXIST.
This is a temporary solution for void where there are still
some packages with conflicting files (qt5-host-tools vs qt5-tools-devel).
With input by @duncaen
2019-06-21 15:31:04 +02:00
Juan RP
9a72aaf577
xbps_transaction_files: report all conflicting files not just the first.
2019-06-21 13:48:47 +02:00
Juan RP
0f69773273
lib/transaction_ops.c: more debug.
2019-06-21 13:14:24 +02:00
Juan RP
3004085343
NEWS: mention latest bugfix.
2019-06-21 11:31:17 +02:00
Juan RP
288cff37f8
xbps-install: return 0 if pkg is already installed or uptodate.
...
Before this change xbps-install could return EEXIST
when the package is already installed, or already up-to-date.
Return 0 if such condition happens, and only return EEXIST
if there's a file conflict.
Close #51
2019-06-21 11:06:45 +02:00
Juan RP
c44e1f958d
lib/transaction_prepare.c: update for rename.
2019-06-21 10:48:17 +02:00
Juan RP
fcab44dbd3
lib/transaction_dictionary.c -> transaction_prepare.c.
2019-06-21 10:46:32 +02:00
Juan RP
0c3ed93b0e
NEWS: update
2019-06-21 09:31:10 +02:00
Juan RP
5098d03238
mk/prog.mk: set proper target for bins.
...
Fixes build failure in aarch64-musl and cross compilation...
weird it didn't fail on native.
2019-06-20 19:26:43 +02:00
Juan RP
098fea7704
Bump to 0.55.
2019-06-20 17:14:16 +02:00
Juan RP
2c6e0c28d4
xbps-checkvers.1: tweaks
2019-06-20 15:25:14 +02:00
Juan RP
519b979c0b
NEWS: mention how many test cases, issues and contributors.
2019-06-20 15:04:39 +02:00
Juan RP
c19f70622e
NEWS: prepare 0.54.
2019-06-20 14:54:28 +02:00
Juan RP
88e72f9f00
README.md: tweaks
2019-06-20 13:23:24 +02:00
Juan RP
071db09d3e
xbps-alternatives.1: proper credit.
2019-06-20 12:56:17 +02:00
Juan RP
a3209f4b57
tests: rename some tests to make .gitignore effective.
2019-06-20 12:50:10 +02:00
Juan RP
016a06754c
NEWS: mention API/ABI bump.
2019-06-20 12:26:04 +02:00
Juan RP
550bdfdcda
AUTHORS: complete list of contributors.
2019-06-20 12:11:56 +02:00
Juan RP
6390817d7e
xbps-rindex.1: proper credit.
2019-06-20 11:44:45 +02:00
Juan RP
2df0778fcd
xbps-pkgdb.1: proper credit.
2019-06-20 11:42:30 +02:00
Juan RP
b0abcd4997
xbps-checkvers.1: proper credit.
2019-06-20 11:42:09 +02:00
Juan RP
b6a88617d0
NEWS: mention all contributors for 0.54.
2019-06-20 11:34:22 +02:00
Juan RP
75326df2a0
NEWS: dup entry
2019-06-20 11:20:30 +02:00
Juan RP
9a4b6cf9af
NEWS: more items, almost complete now.
2019-06-20 11:17:36 +02:00
Juan RP
3efa7ea2c8
NEWS: tweak
2019-06-20 11:09:36 +02:00