1
0
mirror of https://github.com/openSUSE/libsolv.git synced 2026-02-05 12:45:46 +01:00

611 Commits

Author SHA1 Message Date
Michael Schroeder
fa4db98316 Move getopt.h include into win32/unistd.h
Fixes issue #605
2026-02-03 13:12:12 +01:00
Christoph Grüninger
4330ca17e8 Add includes for getopt() and strcasecmp()
Found by GCC in C23 mode (implicit-function-declaration).
2025-05-13 19:34:04 +02:00
Michael Schroeder
f31e3d3b4a rpms2solv: add -i option to include the pkgid 2025-04-10 15:43:09 +02:00
Michael Schroeder
b4bec60aed Allow to link the tools/bindings against the static version of the libraries
This is only relevant if both the static and dynamic versions are
built.
2025-03-20 11:06:01 +01:00
Michael Schroeder
fab399d839 Rename APK_ADD_INDEX to APK_ADD_INSTALLED_DB while we can 2025-01-15 11:53:17 +01:00
Michael Schroeder
e423f277a9 Implement decompression in repo_add_apk_repo()
We need this to support apkv3 index files.
2024-12-17 12:15:00 +01:00
Michael Schroeder
9e8476e912 Add forgotten apk2solv.c file 2024-11-28 14:11:40 +01:00
Michael Schroeder
38c088a9d1 Add a package/repo parser for apk
You need to configure with ENABLE_APK to get them.

Note that we currently only support the v2 format. We'll add
v3 support if somebody uses it in the future.
2024-11-28 13:52:43 +01:00
Michael Schroeder
5c3047a780 repo2solv: no longer use "find" to find rpms
This commit implements the file tree work needed
for the "plaindir" format. Like with the "find" command,
we do not follow symlinks to directories in recursive
mode.
2024-07-08 12:27:35 +02:00
Michael Schroeder
8cabc85b5f testsolv: Add missing entries to resultflags2str 2024-04-10 11:04:52 +02:00
Michael Schroeder
34f018f724 Add license blurb to findfileconflicts tool
Like with all the other tools...
2023-11-23 14:40:04 +01:00
Michael Schroeder
e1822814d5 installcheck: use solver_problemruleinfo2str() 2023-11-23 13:26:48 +01:00
Michael Schroeder
aabd639a8f No longer use legacy problem types in installcheck
No functual changes.
2023-11-23 13:03:31 +01:00
Michael Schroeder
ae08a512da Rewrite strlen_comp so that it no longer has its own list of compression types 2023-11-23 12:54:53 +01:00
Fabian Vogt
3d6e070416 installcheck: Support .zst files and fix .lzma 2023-11-23 11:13:09 +01:00
Michael Schroeder
8c7072d4ff Use SOLVER_DECISIONLIST_SORTED in showwhy() 2023-01-13 11:46:40 +01:00
Michael Schroeder
25c5ca6034 Make use of the new solver_decisionlist_merged() function
It's faster and simpler than the old way.
2022-12-12 10:06:07 +01:00
Michael Schroeder
3cf0ec93aa Small code refactoring, no functional changes 2022-12-08 13:37:00 +01:00
Michael Schroeder
5343868f14 Small code cleanup, no functional changes 2022-12-08 11:54:08 +01:00
Michael Schroeder
a33167f7dc Adapt testsolv to latest changes 2022-12-07 13:42:31 +01:00
Michael Schroeder
a3d3baec7e Adapt testsolv to the decision introspection changes 2022-12-06 15:26:03 +01:00
Michael Schroeder
3d566bf0ad More tweaks for the proof reporting in testsolv 2022-12-01 11:42:07 +01:00
Michael Schroeder
526a931e62 Support learnt rules in proof reporting 2022-11-30 12:48:50 +01:00
Michael Schroeder
1e7cd39a42 testsolv: Add -P option that displays the proofs of each problem
Learnt rules are not yet printed.

We might want to move the "multipkg" function in the library in
the future.
2022-11-29 16:06:47 +01:00
Michael Schroeder
cf45eac792 Use new solver_get_decisionlist() interface in testsolv's showwhy() 2022-11-25 11:44:36 +01:00
Michael Schroeder
33350a8946 update showwhy implementation
Use a different output format and simplify the code.
2022-11-21 12:41:15 +01:00
Michael Schroeder
958f993dc0 Add -W option to show why the solver installed/erased the specified package
This shows everything that led to the decision.
2022-11-18 15:05:01 +01:00
Michael Schroeder
cc2da2e789 conda: add support for package signature verification
This commits adds SOLVABLE_SIGNATUREDATA which contains the data
needed to verify the signatures of a package. You will need
to pass CONDA_ADD_WITH_SIGNATUREDATA to the flags in the
repo_add_conda call to enable this.

This is still experimental.
2022-07-07 11:23:21 +02:00
Michael Schroeder
fee19a416c Add support for storing user data in a solv file
Userdata can be arbritrary (binary)data with a maximum size of
65535 bytes. It can be read without reading the complete
solv file, but do not forget to rewind the fp after reading
the user data.

New functions:
void
    void repowriter_set_userdata(Repowriter *writer, const void *data, int len)
    int solv_read_userdata(FILE *fp, unsigned char **datap, int *lenp)
2022-02-25 16:51:59 +01:00
Michael Schroeder
809e18e2bf testsolv: show an error if the testcase could not be written 2022-02-22 18:10:02 +01:00
Aleš Matěj
021ab11d9a Allow accessing toolversion at runtime and increase it 2022-01-27 08:48:55 +01:00
Michael Schroeder
926244b99d Really add code to set dbpath in rpmdb2solv
Should have been in commit f74c5b79c2
2020-12-10 16:39:50 +01:00
Michael Schroeder
437820ed28 Fix all memory errors found in 'make test'
Based on pull request #391 by Aaron D. Marasco. Thanks!
2020-06-03 14:27:10 +02:00
Michael Schroeder
4120051be8 Add support for blacklisted packages
This will be used in SUSE's ptf packages and also to retract
released updates. The idea is that it is not possible to pull in
a blacklisted package via a dependency, they can only be installed
by a job that directly addresses them (the SETEVR bit is set).
2019-11-08 14:34:18 +01:00
Michael Schroeder
a990013c0a repo2solv: support zchunk compressed data 2019-06-17 13:11:02 +02:00
Michael Schroeder
dfe3cb9129 Remove unused 'basefile' var 2019-06-03 16:12:24 +02:00
Wolf Vollprecht
f2f77d9e6a Add MSVC compilation support with musl, enable OS X testing 2019-04-11 16:26:35 +02:00
Michael Schroeder
8b5b1d4679 Drop unused diskusagexml2solv.c
Whatever that was...
2019-04-05 13:37:04 +02:00
Michael Schroeder
66fa37ec35 Add repo_add_conda() and conda2solv 2019-04-04 16:23:39 +02:00
Igor Gnatenko
a8a2de8947 build: use GNUInstallDirs
Fixes: #128
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
2019-03-30 18:08:22 +01:00
Michael Schroeder
67f17114e8 Document rpmdb2solv options 2019-03-27 12:00:01 +01:00
Pekka Vuorela
97f1477489 Fix repo2solv to work with Busybox find tool
Busybox find got quite confused by "." as arg0. Added a new instance of
dot as first real parameter as I could assume that being the original
intention.
2019-01-21 17:25:18 +02:00
Jaroslav Rohel
98a75959e1 Fix: Memory leaks 2018-12-11 13:26:03 +01:00
Michael Schroeder
bbe1280bff Drop support for REPOKEY_TYPE_U32
Six years ago we used it for the rpmdbid of installed packages.
See commit d2b47004c2
2018-09-29 09:20:48 +02:00
Michael Schroeder
2cdefc1660 Fix share handling in repo2solv
We only search the uninternalized data for the repodata we're
extending, so we need to internalize the data before adding
new repodata areas.
2018-09-21 15:31:30 +02:00
Michael Schroeder
d337e3117b Fix shared handling for 'susetags2solv -d'
We need to record the share data, otherwise we miss the share
information when extending the packages.
2018-09-21 15:29:18 +02:00
Michael Schroeder
6c07a3fe14 Support reading of TYPE_DELETED keys 2018-09-19 13:54:53 +02:00
Michael Schroeder
63491bc9c4 Drop undocumented old cruft from the tools code
This is mainly the -b and -n options, which were used to
test solv extension files in the long ago past.
2018-09-19 12:34:12 +02:00
Michael Schroeder
5cf5c51ce2 Add new repowriter interface to write a solv file
This replaces the old write_filtered functions that could
not be extended easily. The old functions are deprecated, do
not use them in new code!
2018-09-19 11:21:47 +02:00
Michael Schroeder
0cfaa8317a rpmdb2solv: support including the package changelogs 2018-09-18 13:58:22 +02:00