apk-tools/src
Timo Teräs e4dc2373d6 solver: do not auto select virtual-only package with one provider
This reverts most of 0dcbd933 which allowed automatic selection
of package with a "virtual provides" having only one provider.
While convenient, it creates problems if multiple versions of the
same package exist, or if in future other providers would be added
to one of the repositories. This restore the original behaviour,
and improve the error message to tell the user to mention one of
the providers explicitly.

fixes #10810
2022-02-24 14:18:41 +02:00
..
Makefile legacy build system: include libportability headers 2021-12-29 20:14:41 +02:00
adb.c mkpkg, adb: validate version and dependency format 2022-02-01 14:47:27 +02:00
adb.h mkpkg, adb: validate version and dependency format 2022-02-01 14:47:27 +02:00
adb_comp.c remove IS_ERR_OR_NULL 2021-08-23 17:02:50 +03:00
adb_walk_adb.c adbdump: fix dumping signatures 2021-11-09 21:50:11 +02:00
adb_walk_genadb.c adb: refactor struct adb_header to adb_file_header 2021-07-22 16:14:49 +03:00
adb_walk_gentext.c add adbgen applet to generate databases from it's text dump 2021-06-02 22:35:58 +03:00
adb_walk_text.c remove IS_ERR_OR_NULL 2021-08-23 17:02:50 +03:00
apk-static.c static build: do not use openssl engines 2010-06-30 16:55:50 +03:00
apk-test.c test: rewrite the testing framework to use the real applets 2012-02-23 22:05:02 +02:00
apk.c apk: add --preserve-env option 2021-12-29 09:50:50 +02:00
apk.pc.in build: fix includedir in pkgconfig file 2020-04-01 19:14:28 +03:00
apk_adb.c adb: add layer to pkginfo 2022-02-21 10:24:05 +02:00
apk_adb.h adb: add layer to pkginfo 2022-02-21 10:24:05 +02:00
apk_applet.h applet: rework APK_DEFINE_APPLET to use constructor attribute 2021-12-14 12:05:59 -06:00
apk_atom.h make the atom functions not use global state 2020-05-19 12:02:56 +03:00
apk_blob.h portability: take over strlcpy 2021-12-29 20:14:41 +02:00
apk_context.h apk: add --preserve-env option 2021-12-29 09:50:50 +02:00
apk_crypto.h database: implement uvol support 2021-11-09 21:50:11 +02:00
apk_database.h db: sort world dependencies to layers 2022-02-21 10:24:05 +02:00
apk_defines.h mkpkg, adb: validate version and dependency format 2022-02-01 14:47:27 +02:00
apk_extract.h database: implement uvol support 2021-11-09 21:50:11 +02:00
apk_fs.h db, uvol: commit regular files before uvol volumes 2022-02-22 14:03:47 +02:00
apk_hash.h use SPDX-License-Identifier in source files 2020-05-07 10:45:42 +03:00
apk_io.h database: implement uvol support 2021-11-09 21:50:11 +02:00
apk_openssl.h add basic abstraction for cryptographic operations 2021-06-11 13:35:32 +03:00
apk_package.h db: sort world dependencies to layers 2022-02-21 10:24:05 +02:00
apk_pathbuilder.h optimize apk_pathbuilder_pop to get the old length 2021-11-09 21:50:11 +02:00
apk_print.h print: improve indented printing api 2021-12-27 14:34:01 +02:00
apk_provider_data.h use SPDX-License-Identifier in source files 2020-05-07 10:45:42 +03:00
apk_solver.h fix, simplify and document upgrade --ignore 2020-08-24 15:26:25 +03:00
apk_solver_data.h use SPDX-License-Identifier in source files 2020-05-07 10:45:42 +03:00
apk_tar.h Refactor .apk extraction code 2021-07-27 14:09:38 +03:00
apk_trust.h trust: always use have valid struct apk_trust * 2021-08-23 17:02:50 +03:00
apk_version.h add separate vertest applet for version string testing 2020-10-09 16:09:19 +03:00
apk_xattr.h abstract differences between GNU and Apple xattr functions 2021-12-29 20:14:41 +02:00
app_adbdump.c adb: unify various interfaces to adb_m_process 2021-07-22 15:30:08 +03:00
app_adbsign.c adb: make adb mmap/stream parser more united, add ADB_BLOCK_DATAX 2021-07-22 16:14:49 +03:00
app_add.c fix fetching of depdencies only packages 2021-11-15 13:35:59 +02:00
app_audit.c db, audit: support sha256-160 hashes for v3 pkg compat 2021-11-03 15:37:10 +02:00
app_cache.c cache: allow various flags, and addition of dependencies 2022-01-21 14:36:31 +02:00
app_convdb.c Refactor .apk extraction code 2021-07-27 14:09:38 +03:00
app_convndx.c Further refactor extract API to have separate ops vtable 2021-07-27 16:28:22 +03:00
app_del.c print: improve indented printing api 2021-12-27 14:34:01 +02:00
app_dot.c make apk_database optional for applets that don't need it 2020-10-09 16:09:19 +03:00
app_extract.c database: implement uvol support 2021-11-09 21:50:11 +02:00
app_fetch.c fetch: add --url option to print the download URLs 2021-11-12 13:10:31 +02:00
app_fix.c make apk_database optional for applets that don't need it 2020-10-09 16:09:19 +03:00
app_index.c db, add: support adding v3 package files 2021-10-27 16:14:45 +03:00
app_info.c remove IS_ERR_OR_NULL 2021-08-23 17:02:50 +03:00
app_list.c list: sort options alphabetically 2021-12-27 10:34:17 +02:00
app_manifest.c optimize apk_pathbuilder_pop to get the old length 2021-11-09 21:50:11 +02:00
app_mkndx.c extract: pass root object instead of database 2021-09-03 13:44:48 +03:00
app_mkpkg.c mkpkg, adb: validate version and dependency format 2022-02-01 14:47:27 +02:00
app_policy.c db: prepare database reading for layers 2022-02-21 10:24:05 +02:00
app_search.c make apk_database optional for applets that don't need it 2020-10-09 16:09:19 +03:00
app_stats.c make apk_database optional for applets that don't need it 2020-10-09 16:09:19 +03:00
app_update.c apk_update: use URL_PRINTF 2020-12-29 13:52:29 +02:00
app_upgrade.c make apk_database optional for applets that don't need it 2020-10-09 16:09:19 +03:00
app_verify.c Refactor .apk extraction code 2021-07-27 14:09:38 +03:00
app_version.c add missing apk_trust.h 2020-10-09 16:18:23 +03:00
app_vertest.c make apk_database optional for applets that don't need it 2020-10-09 16:09:19 +03:00
applet.c support building with uncompressed help databases 2022-01-13 14:13:53 +00:00
atom.c make the atom functions not use global state 2020-05-19 12:02:56 +03:00
blob.c portability: take over strlcpy 2021-12-29 20:14:41 +02:00
commit.c solver: do not auto select virtual-only package with one provider 2022-02-24 14:18:41 +02:00
common.c everywhere: use stdlib.h for malloc(3) definition, not GNU-specific malloc.h 2021-12-14 16:23:29 +00:00
context.c context: fix 'uvol' default path 2022-02-13 09:50:50 +01:00
crypto_openssl.c db, audit: support sha256-160 hashes for v3 pkg compat 2021-11-03 15:37:10 +02:00
database.c db, uvol: commit regular files before uvol volumes 2022-02-22 14:03:47 +02:00
extract_v2.c extract_v2: handle "untrusted package" as normal error 2021-11-15 15:41:59 +02:00
extract_v3.c extract_v3: make sure empty file's hash is copied too 2021-12-03 15:06:49 +02:00
fs_fsys.c db, uvol: commit regular files before uvol volumes 2022-02-22 14:03:47 +02:00
fs_uvol.c db, uvol: commit regular files before uvol volumes 2022-02-22 14:03:47 +02:00
genhelp.lua genhelp: fix upper case substition 2022-01-21 14:47:54 +02:00
hash.c make the atom functions not use global state 2020-05-19 12:02:56 +03:00
io.c io: use opendirectory for UID/GID lookups on macOS 2021-12-29 20:14:41 +02:00
io_gunzip.c io_gunzip: fix handling short reads near end-of-file 2022-02-21 12:36:46 +02:00
io_url.c defines: provide APKE_REMOTE_IO as portable alternative to EREMOTEIO 2021-12-14 18:48:18 +00:00
lua-apk.c lua: remove features.h 2021-12-13 14:44:21 -06:00
meson.build support building with uncompressed help databases 2022-01-13 14:13:53 +00:00
package.c adb: add layer to pkginfo 2022-02-21 10:24:05 +02:00
pathbuilder.c pathbuilder: fix push return value 2021-11-11 11:24:49 +02:00
print.c mkpkg, adb: validate version and dependency format 2022-02-01 14:47:27 +02:00
solver.c solver: do not auto select virtual-only package with one provider 2022-02-24 14:18:41 +02:00
tar.c tar: allow for space as numeric field terminator 2022-02-21 08:26:20 +00:00
template.c use SPDX-License-Identifier in source files 2020-05-07 10:45:42 +03:00
trust.c trust: always use have valid struct apk_trust * 2021-08-23 17:02:50 +03:00
version.c version: increase number of digits supported in version component 2021-10-25 13:30:40 +03:00