Duncan Overbruck
fa23602561
lib/transaction_files.c: rename remove to removepkg to not shadow remove(3)
2019-08-05 15:56:04 +02:00
Duncan Overbruck
df22b0384d
lib/package_remove.c: fix uninitialized xbps_array_t
2019-08-05 15:48:11 +02:00
Duncan Overbruck
c815d3d5f5
lib/package_remove.c: fix check_remove_pkg_files if euid is 0
...
True means the check failed, false means success
2019-08-05 15:41:23 +02:00
Duncan Overbruck
e59ded73ae
lib/conf.c: don't stop after the first error and print error
...
This fixes void-linux/xbps#153 .
2019-08-05 15:28:24 +02:00
Duncan Overbruck
745ba32641
lib/package_remove.c: use obsolete_files from transaction
2019-08-05 14:56:21 +02:00
Duncan Overbruck
f0d90d3fec
lib/transaction_files.c: prepare to use obsolete files detection on package removal
2019-08-05 14:55:21 +02:00
Duncan Overbruck
f103b91663
Revert "lib/transaction_{revdeps,prepare}.c: try to update packages if necessary"
...
This reverts commit 0e950156fc .
2019-08-05 11:48:15 +02:00
Duncan Overbruck
cb28e7959a
Revert "lib/transaction_ops.c: remove updating all reverse dependencies"
...
This reverts commit 5e4d33a58f .
2019-08-05 11:48:11 +02:00
Duncaen and Juan RP
0e950156fc
lib/transaction_{revdeps,prepare}.c: try to update packages if necessary
...
`xbps_transaction_revdeps` will now try to add updates for packages to the
transaction if the dependency is not satisified anymore due to a package
install/update.
`xbps_transaction_prepare` will now check the return value of
`xbps_transaction_revdeps` and repeat the dependency resolution,
until `xbps_transaction_revdeps` returns 0, which means that it didn't
add any new packages to the transaction.
2019-07-03 00:48:57 +02:00
Duncaen and Juan RP
5e4d33a58f
lib/transaction_ops.c: remove updating all reverse dependencies
2019-07-03 00:48:57 +02:00
Duncaen and Juan RP
041eed8255
lib/package_fulldeptree.c: also use the initial item from the hashtable
2019-07-02 09:48:05 +02:00
Duncaen and Juan RP
7c3029589c
lib/package_fulldeptree.c: don't add the package itself to the fulldeptree result
...
This was noticed a few days ago by @leah2.
2019-07-02 09:48:05 +02:00
Duncaen and Juan RP
57256c2328
lib/package_fulldeptree.c: add items to result if they are found in the hashtable
2019-07-02 09:48:05 +02:00
Duncaen and Juan RP
b60054267b
lib/package_orphans.c: the argument is not UNUSED
2019-07-02 09:48:05 +02:00
Juan RP
0677678387
Added LTO support and fix warnings (maybe-uninitialized).
2019-06-27 18:09:26 +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
Duncaen
d72091a206
lib/transaction_files.c: fix returning error on hash mismatch
2019-06-26 13:07:16 +02:00
Duncaen and Duncan Overbruck
b39e341426
libxbps: don't check revdeps on removal of ignored packages
2019-06-23 12:23:17 +02:00
Johannes Brechtmann and Duncan Overbruck
11e5190a36
lib/fetch: happy_eyeballs_connect check for waiting connections before
...
decrementing them, remove dead code
2019-06-23 12:14:21 +02:00
Duncaen and Juan RP
66f66ab7a1
Revert "xbps_array_foreach_cb_multi: fix incorrect array counter."
...
This reverts commit 08aa44602f .
The element still has to be processed and ignored by one of the
threads, it is not the last entry this will make the actually last item
be ignored.
2019-06-23 11:14:37 +02:00
Duncaen and Juan RP
a4dd0221ac
lib/plist.c: fix xbps_array_foreach_cb_multi processing entries multiple times
...
the first thread to finish will start again from 0 (`reserved`) until
0+slicecount, next thread will then start from the end of the previous
thread which is already wrong, resulting in processing the first
slicecount*maxthreads entries twice.
The first slicecount*maxthreads entries are accounted by the thread
creation loop and `reserved` has to start at the first unaccounted index.
2019-06-23 11:14:37 +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
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
Duncaen
7e762cc357
lib/fetch.c: ignore EADDRNOTAVAIL and try next ip
2019-06-21 20:23:55 +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
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
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
q66 and Juan RP
a72cbf3c23
lib/package_unpack.c: silence gcc false positive
...
On some systems, something like this happens:
package_unpack.c:375:11: error: 'buf' may be used uninitialized in this function
This is not actually a bug as logically `buf` is always initialized
in that place, but gcc doesn't like it anyway.
2019-06-21 08:59:46 +02:00
Duncaen
70867bd774
lib/transaction_files.c: fix size_t printf
2019-06-20 18:04:47 +02:00
Duncaen and Duncan Overbruck
dc547d9f50
lib/transaction_files.c: skip preserved files while looking for obsoletes
2019-06-20 14:53:08 +02:00
Duncaen
093950dba2
lib/fetch: remove port from happy eyeballs verbose logs, wrong cast and redundant
2019-06-20 13:28:14 +02:00
Duncaen
81a736a5ac
lib/fetch: cleanup happy eyeballs and add verbose logging
2019-06-20 12:15:30 +02:00
Duncaen and Duncan Overbruck
a3af0e5559
lib/fetch: remember if ipv6 or ipv4 are unreachable and don't try to connect again
2019-06-20 11:32:12 +02:00
Duncaen and Duncan Overbruck
3527a1374a
lib/fetch: set connect timeout to 300 seconds
2019-06-20 11:32:12 +02:00
Juan RP
3a00a9eb9b
xbps_rpool_foreach: process all entries in order.
...
if xbps_repo_open() fails then the repo is removed from array
xbps_repo_remove() but as we've removed the entry from it,
the index won't be valid any more, resulting in skipped entries.
If a entry is removed restart again at the correct index.
Close #127
2019-06-18 23:44:36 +02:00
Juan RP
6627ffb84f
xbps_package_remove: use xbps_set_pkg_state_dictionary().
...
fixes a use-after-free found by @duncaen via gcc -fsanitize=address.
2019-06-18 20:55:47 +02:00
Juan RP
829c5835f1
alternatives: respect (and love) current provider.
...
Added a new test case to verify.
Close #126
2019-06-18 20:47:55 +02:00
Duncaen and Duncan Overbruck
8837e8c607
lib/transaction_files.c: better handle preserve files
2019-06-18 19:54:22 +02:00
Duncaen and Duncan Overbruck
f2b119ef31
lib/transaction_files.c: better error and debug messages and minor cleanup
2019-06-18 19:54:22 +02:00
Duncaen and Duncan Overbruck
6877d28139
lib/package_find_obsoletes.c: remove in favor of transaction file checks
2019-06-18 19:54:22 +02:00
Duncaen and Duncan Overbruck
0efb59a979
lib/transaction_files.c: fix undefined behaviour
2019-06-18 19:54:22 +02:00
Duncaen and Duncan Overbruck
f45c6798c9
lib/transaction_files.c: update package archive compressions
2019-06-18 19:54:22 +02:00
Duncaen and Duncan Overbruck
8a81f6ce86
lib/package_unpack.c: use transaction obsolete detection
2019-06-18 19:54:22 +02:00
Duncaen and Duncan Overbruck
658f87b9c5
lib/transaction_files.c: rework to remove obsoletes before unpacking
2019-06-18 19:54:22 +02:00
Duncaen and Duncan Overbruck
29f1433afd
lib/transaction_files.c: collect file installs/removals to correctly find obsoletes
2019-06-18 19:54:22 +02:00
Juan RP
00d552424d
lib/repo.c: fix dead assignment.
...
Found by clang-analyzer.
Bug Summary
File: lib/repo.c
Warning: line 162, column 3
Value stored to 'rv' is never read
2019-06-18 18:49:29 +02:00