]>
git.ipfire.org Git - thirdparty/libsolv.git/log
Wolf Vollprecht [Wed, 13 Mar 2019 14:14:39 +0000 (15:14 +0100)]
Add ZSTD_INCLUDE_DIRS
Wolf Vollprecht [Wed, 13 Mar 2019 13:09:40 +0000 (14:09 +0100)]
Add include_directory command to more compression libs
Wolf Vollprecht [Tue, 12 Mar 2019 17:09:10 +0000 (18:09 +0100)]
Add zlib include directories
Michael Schroeder [Tue, 5 Mar 2019 13:03:32 +0000 (14:03 +0100)]
Split SOLV_DEBUG_WATCHES from SOLV_DEBUG_PROPAGATE
Looking at the watches move from literal to literal is tedious
and distracts from the interesting messages.
Also make the debug output a bit less noisy.
Michael Schroeder [Wed, 13 Feb 2019 13:02:31 +0000 (14:02 +0100)]
Simplify moldule code
Use repodata_set_poolstr instead of converting the string to an id
and calling repodata_set_id.
Michael Schroeder [Wed, 13 Feb 2019 12:54:41 +0000 (13:54 +0100)]
Merge pull request #296 from j-mracek/module-updateinfo
Add support for modular updateinfo.xml data
Michael Schroeder [Wed, 13 Feb 2019 12:41:29 +0000 (13:41 +0100)]
Remove identical pool check for now
We'll use SolvableId like DepId in the future, so this needs to
be done in a different way.
Michael Schroeder [Wed, 13 Feb 2019 12:34:57 +0000 (13:34 +0100)]
Merge pull request #298 from ignatenkobrain/bindings
bindings: Add best_solvables/whatmatchessolvable
Igor Gnatenko [Sat, 9 Feb 2019 20:51:32 +0000 (21:51 +0100)]
bindings: Add pool.whatmatchessolvable()
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
Igor Gnatenko [Sat, 9 Feb 2019 17:30:29 +0000 (18:30 +0100)]
bindings: Add pool.best_solvables()
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
Igor Gnatenko [Tue, 12 Feb 2019 22:10:39 +0000 (23:10 +0100)]
doc: remove whitespaces at EOL
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
Jaroslav Mracek [Thu, 17 Jan 2019 11:48:05 +0000 (12:48 +0100)]
Add support for modular updateinfo.xml data
Module advisory data can specify which advisory is applicable for which
modular stream. Module information can be absent or there could be
multiple entries.
If there is a module entry in advisory and none of modules in advisory
is enabled on the system, advisory is not relevant for the system and
should be ignored.
Michael Schroeder [Thu, 7 Feb 2019 12:11:02 +0000 (13:11 +0100)]
Merge pull request #297 from adelcast/dev/adelcast/recommends
solver_solve: only disfavor recommends if there are any
Alejandro del Castillo [Wed, 6 Feb 2019 19:24:04 +0000 (13:24 -0600)]
solver_solve: only disfavor recommends if there are any
In a repo that have pkg 'a' and 'b' available, and 'b' is disfavored,
but 'a' doesn't recommend 'b', libsolv segfaults on
solver_addrecommendsrules, since solv->recommendsruleq is null. Only
call solver_addrecommendsrules if there are recommends rules.
Signed-off-by: Alejandro del Castillo <alejandro.delcastillo@ni.com>
Michael Schroeder [Wed, 30 Jan 2019 15:09:51 +0000 (16:09 +0100)]
Add changes, bump version to 0.7.3
Michael Schroeder [Wed, 30 Jan 2019 14:46:04 +0000 (15:46 +0100)]
Specify source directoy for cmake call
This becomes mandatory with cmake 3.13.3.
Michael Schroeder [Thu, 24 Jan 2019 15:26:21 +0000 (16:26 +0100)]
zchunk: support skipping of optional elements
Michael Schroeder [Wed, 16 Jan 2019 12:00:32 +0000 (13:00 +0100)]
Make solver_addinfarchrules slightly more readable
Michael Schroeder [Tue, 22 Jan 2019 08:57:46 +0000 (09:57 +0100)]
Merge pull request #295 from pvuorela/master
Fix repo2solv to work with Busybox find tool
Pekka Vuorela [Mon, 21 Jan 2019 14:45:04 +0000 (16:45 +0200)]
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.
Michael Schroeder [Tue, 15 Jan 2019 13:10:38 +0000 (14:10 +0100)]
Add testcase for last commit
Michael Schroeder [Tue, 15 Jan 2019 13:06:08 +0000 (14:06 +0100)]
Do not disable infarch rules when they don't conflict with the job
Otherwise installing a package with the best arch might allow to
pull in the inferior arch as well.
Michael Schroeder [Mon, 7 Jan 2019 13:45:45 +0000 (14:45 +0100)]
Change pool_str2id calls to use "1" instead of "9"
Michael Schroeder [Thu, 20 Dec 2018 16:32:13 +0000 (17:32 +0100)]
testcase: support more selection types in disable commands
Michael Schroeder [Thu, 20 Dec 2018 15:26:37 +0000 (16:26 +0100)]
Small cleanup
Michael Schroeder [Wed, 19 Dec 2018 13:25:01 +0000 (14:25 +0100)]
Rename bestrules_pkg to bestrules_info, choicerules_ref to choicerules_info
Michael Schroeder [Tue, 18 Dec 2018 15:55:29 +0000 (16:55 +0100)]
Add testcase for the last commit
Michael Schroeder [Tue, 18 Dec 2018 15:40:00 +0000 (16:40 +0100)]
Make disfavoring recommended packages work if strong recommends is enabled
Unfortunately this needs a new rule type, which is just the original
recommends rule minus the disfavored packages.
Michael Schroeder [Tue, 18 Dec 2018 14:08:20 +0000 (15:08 +0100)]
bindings: support SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED
Michael Schroeder [Tue, 18 Dec 2018 12:57:48 +0000 (13:57 +0100)]
Refactor weak rule handling
Michael Schroeder [Tue, 11 Dec 2018 13:25:07 +0000 (14:25 +0100)]
Cleanups
Michael Schroeder [Tue, 11 Dec 2018 12:58:00 +0000 (13:58 +0100)]
Merge pull request #291 from jrohel/fix/memLeaks_memAccess
Fix: memory leaks, memory access, non used values
Michael Schroeder [Tue, 11 Dec 2018 12:51:54 +0000 (13:51 +0100)]
Cosmetics
Jaroslav Rohel [Tue, 11 Dec 2018 11:58:34 +0000 (12:58 +0100)]
Don't set values that are never read
Jaroslav Rohel [Tue, 11 Dec 2018 11:40:42 +0000 (12:40 +0100)]
Fix: Be sure that NONBLOCK is set
Jaroslav Rohel [Tue, 11 Dec 2018 09:27:15 +0000 (10:27 +0100)]
Fix: testsolv segfaults
ERROR: AddressSanitizer: SEGV on unknown address 0x0000000002f0 (pc 0x7f31501d3bd2 bp 0x7ffcfe4d4a50 sp 0x7ffcfe4d4a30 T0)
0 0x7f31501d3bd1 in pool_whatprovides /home/company/real_sanitize/libsolv-master/src/pool.h:331
1 0x7f31501d895e in testcase_str2solvid /home/company/real_sanitize/libsolv-master/ext/testcase.c:793
2 0x7f31501e8388 in testcase_read /home/company/real_sanitize/libsolv-master/ext/testcase.c:2807
3 0x402aa5 in main /home/company/real_sanitize/libsolv-master/tools/testsolv.c:148
4 0x7f314fa8da3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)
5 0x401bb8 in _start (/home/company/real_sanitize/libsolv-master/build/install/bin/testsolv+0x401bb8)
ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7f5af9e7815f bp 0x7ffc4c843a40 sp 0x7ffc4c8436c0 T0)
0 0x7f5af9e7815e in testcase_read /home/company/real_sanitize/libsolv-master/ext/testcase.c:2799
1 0x402aa5 in main /home/company/real_sanitize/libsolv-master/tools/testsolv.c:148
2 0x7f5af971da3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)
3 0x401bb8 in _start (/home/company/real_sanitize/libsolv-master/build/install/bin/testsolv+0x401bb8)
Jaroslav Rohel [Tue, 11 Dec 2018 09:22:09 +0000 (10:22 +0100)]
Fix: testsolv segfault
ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7fab0e11bf2b bp 0x7ffdfc044b70 sp 0x7ffdfc044a90 T0)
0 0x7fab0e11bf2a in testcase_str2dep_complex /home/company/real_sanitize/libsolv-master/ext/testcase.c:577
1 0x7fab0e11c80f in testcase_str2dep /home/company/real_sanitize/libsolv-master/ext/testcase.c:656
2 0x7fab0e12e64a in testcase_read /home/company/real_sanitize/libsolv-master/ext/testcase.c:2952
3 0x402aa5 in main /home/company/real_sanitize/libsolv-master/tools/testsolv.c:148
4 0x7fab0d9d2a3f in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x20a3f)
5 0x401bb8 in _start (/home/company/real_sanitize/libsolv-master/build/install/bin/testsolv+0x401bb8)
Jaroslav Rohel [Tue, 11 Dec 2018 09:14:04 +0000 (10:14 +0100)]
Fix: Memory leaks
Jaroslav Rohel [Tue, 11 Dec 2018 08:50:06 +0000 (09:50 +0100)]
Fix: Add va_end() before return
The va_end() performs cleanup.
If va_end() is not called before a function that calls va_start() returns,
the behavior is undefined.
Jaroslav Rohel [Fri, 7 Dec 2018 06:05:10 +0000 (07:05 +0100)]
Fix: Dereference of null pointer
Michael Schroeder [Mon, 10 Dec 2018 14:05:39 +0000 (15:05 +0100)]
Do favor evaluation before pruning
This allows to support favoring single packages. As a side effect,
we'll have the best version displayed as alternative.
This changes the code to use a favor id for every solvable, which
means that it uses quite a bit of memory but makes the code much
easier and faster.
Michael Schroeder [Fri, 7 Dec 2018 14:17:15 +0000 (15:17 +0100)]
Add changes, bump version to 0.7.2
Michael Schroeder [Fri, 7 Dec 2018 14:05:11 +0000 (15:05 +0100)]
Get rid of the solve_helper function
We now use a special typemap to convert an array of Job objects
into a queue. (We already did that for tcl.)
Also generalize the DepId array code, we can now easily support
other dual types.
Michael Schroeder [Fri, 7 Dec 2018 14:03:14 +0000 (15:03 +0100)]
tclsolv: Adapt to Selection-flags change
Should have been in commit
c6b300573f9974706db9dfd061b6e6c5b0e81bf8
Michael Schroeder [Thu, 6 Dec 2018 13:42:01 +0000 (14:42 +0100)]
Docu tweaks
Michael Schroeder [Fri, 30 Nov 2018 15:16:51 +0000 (16:16 +0100)]
Tweak README
Michael Schroeder [Fri, 30 Nov 2018 14:05:33 +0000 (15:05 +0100)]
Do not autouninstall packages because of forcebest updates
Michael Schroeder [Fri, 30 Nov 2018 13:35:16 +0000 (14:35 +0100)]
Note to self: do not commit unfinished test cases...
Michael Schroeder [Fri, 30 Nov 2018 13:28:59 +0000 (14:28 +0100)]
Do not auto-erase disabled packages
Michael Schroeder [Mon, 26 Nov 2018 13:20:16 +0000 (14:20 +0100)]
Switch order of tilde and caret check in evr.c
Tilde must come before caret, so that 1.0~1 < 1.0^1
Also add this to the testcase.
Michael Schroeder [Mon, 26 Nov 2018 11:57:48 +0000 (12:57 +0100)]
Also look at recommends in only_namespace_recommended mode
We cheat by just checking if the dependency contains a namespace
relation. This is not 100% correct for complex dependencies where
we have multiple blocks after normalsation. But doing it right
is a lot of effort and there should be no difference in practice.
Michael Schroeder [Mon, 26 Nov 2018 11:55:20 +0000 (12:55 +0100)]
Enable support for new rpm's caret comparison
And add a testcase.
Michael Schroeder [Fri, 23 Nov 2018 13:19:16 +0000 (14:19 +0100)]
Add a small json parser
It's always good to have a json parser...
Michael Schroeder [Thu, 22 Nov 2018 15:18:56 +0000 (16:18 +0100)]
Add experimental SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED flag
This limits the recommends/supplements to namespace dependencies.
Michael Schroeder [Thu, 22 Nov 2018 12:28:38 +0000 (13:28 +0100)]
Fix last commit. Oops.
Michael Schroeder [Thu, 22 Nov 2018 11:53:20 +0000 (12:53 +0100)]
Get rid of the xmlparser's error callback
It's much simpler to just return an error from the parse
call.
Michael Schroeder [Thu, 22 Nov 2018 11:52:15 +0000 (12:52 +0100)]
Add a solvable_free() inline helper function
Michael Schroeder [Thu, 22 Nov 2018 11:04:45 +0000 (12:04 +0100)]
Allow arch == NULL packages if arch testing is disabled
Michael Schroeder [Thu, 22 Nov 2018 11:02:00 +0000 (12:02 +0100)]
Fix off-by-one error in the "oneof" parsing code
Fixes issue#289
Michael Schroeder [Wed, 21 Nov 2018 13:15:34 +0000 (14:15 +0100)]
Support caret in rpm's EVR comparison
Currently only active if RPM_CARET_DEPS is defined, so that Igor
can do some testing.
Michael Schroeder [Wed, 14 Nov 2018 15:39:36 +0000 (16:39 +0100)]
bindings: implement set/get_considered_list
This is just a first version to play with. It's based
on pull request #288 from milan. Thanks!
Michael Schroeder [Wed, 31 Oct 2018 12:52:19 +0000 (13:52 +0100)]
Add changes, bump version to 0.7.1
Michael Schroeder [Wed, 31 Oct 2018 12:46:04 +0000 (13:46 +0100)]
repo_autopatten: also copy the category from the solvable defining the pattern
This makes it possible to have the (translated) categories in susedata.xml
instead of getting them from the package provides.
Michael Schroeder [Wed, 31 Oct 2018 12:02:28 +0000 (13:02 +0100)]
Fix off-by-one error in relation writing code
This tended to mess up the first relation in the solv file.
Counting is hard sometimes...
Michael Schroeder [Mon, 29 Oct 2018 08:47:08 +0000 (08:47 +0000)]
fix
Michael Schroeder [Mon, 29 Oct 2018 08:46:15 +0000 (08:46 +0000)]
Format a bit
Michael Schroeder [Wed, 24 Oct 2018 08:51:19 +0000 (10:51 +0200)]
Add changes, bump version to 0.7.0
Michael Schroeder [Wed, 24 Oct 2018 08:41:57 +0000 (10:41 +0200)]
Oops, bring back repo_write_filtered and repodata_write_filtered
They are deprectaed, but old code may still use them for now.
Michael Schroeder [Wed, 24 Oct 2018 08:28:31 +0000 (10:28 +0200)]
Adapt documentation to the last change.
Michael Schroeder [Wed, 24 Oct 2018 08:23:37 +0000 (10:23 +0200)]
Bindings: make Selection-flags an attribute
Incompatible API change! I hope this doesn't bite too many
bindings users. But better late than never, having a flags()
function does not make much sense.
Michael Schroeder [Wed, 24 Oct 2018 08:21:18 +0000 (10:21 +0200)]
Always set the filelisttype when creating a filelist stub
We used to do this only if there was a filtered filelist, but that
leads to problems if the filtered filelist is not in the same repodata
as the extension list.
Michael Schroeder [Mon, 22 Oct 2018 13:40:29 +0000 (15:40 +0200)]
Merge pull request #260 from berolinux/armv8
Add armv8 (32-bit mode of aarch64 CPUs)
Michael Schroeder [Mon, 22 Oct 2018 13:35:43 +0000 (15:35 +0200)]
Fix reserved identifier violation
See issue#104. We now prefix with "s_" instead of just "_".
Michael Schroeder [Mon, 22 Oct 2018 13:18:54 +0000 (15:18 +0200)]
Small cleanups
Michael Schroeder [Mon, 22 Oct 2018 12:46:17 +0000 (14:46 +0200)]
Incompatible ABI change: change transaction_calc_installsizechange from int to long long
Michael Schroeder [Mon, 22 Oct 2018 12:38:13 +0000 (14:38 +0200)]
Incompatible ABI change: change pool_calc_installsizechange and solvable_lookup_sizek from int to long long
Michael Schroeder [Mon, 22 Oct 2018 09:13:46 +0000 (11:13 +0200)]
Incompatible ABI change: change diskusage from int to long long
The diskusage is in kilobytes anyway, but this should make things
more future proof.
Igor Gnatenko [Mon, 8 Oct 2018 12:31:04 +0000 (14:31 +0200)]
Merge pull request #282 from jdieter/fix-parens
Add missing parenthesis
Jonathan Dieter [Mon, 8 Oct 2018 11:55:56 +0000 (12:55 +0100)]
Add missing parenthesis
Signed-off-by: Jonathan Dieter <jdieter@gmail.com>
Michael Schroeder [Mon, 8 Oct 2018 11:24:57 +0000 (13:24 +0200)]
Refactor selection code
Michael Schroeder [Mon, 8 Oct 2018 11:23:36 +0000 (13:23 +0200)]
Test selection_matchsolvable
Michael Schroeder [Mon, 8 Oct 2018 11:21:51 +0000 (13:21 +0200)]
Split away solvable_matchessolvable_int function
To be used in the selection code as well.
Michael Schroeder [Mon, 8 Oct 2018 09:55:13 +0000 (11:55 +0200)]
Tweak system zchunk code
- rename USE_SYSTEM_ZCHUNK to WITH_SYSTEM_ZCHUNK
- fix file descriptor leak
- fix memory leaks
Michael Schroeder [Mon, 8 Oct 2018 09:01:14 +0000 (11:01 +0200)]
Merge pull request #270 from jdieter/zchunk
Add zchunk support
Michael Schroeder [Fri, 5 Oct 2018 12:41:20 +0000 (14:41 +0200)]
Add selection_make_matchsolvable and selection_make_matchsolvablelist
This is like pool_whatmatchessolvable, but works on a selection.
The advantage is that it supports filtering.
Michael Schroeder [Fri, 5 Oct 2018 11:58:56 +0000 (13:58 +0200)]
Improve alldeps code in example solver
Michael Schroeder [Thu, 4 Oct 2018 15:22:43 +0000 (17:22 +0200)]
Add pool_whatmatchessolvable() function to match against the provides of a solvable
Michael Schroeder [Wed, 3 Oct 2018 07:29:55 +0000 (09:29 +0200)]
Clean up filelist mode code
Michael Schroeder [Mon, 1 Oct 2018 21:51:44 +0000 (23:51 +0200)]
Move key mapping after key pruning
That way we'll not pollute the spool so much. The
downside is that we need to have some extra room on
the needid array for the keys.
Michael Schroeder [Sat, 29 Sep 2018 21:39:41 +0000 (23:39 +0200)]
Improve main schema generation
Now less complex and may result in a smaller solv file,
Michael Schroeder [Sat, 29 Sep 2018 21:18:21 +0000 (23:18 +0200)]
Improve handling of dirs in repo_write
Again, what was I thinking?
Michael Schroeder [Sat, 29 Sep 2018 07:20:48 +0000 (09:20 +0200)]
Drop support for REPOKEY_TYPE_U32
Six years ago we used it for the rpmdbid of installed packages.
See commit
d2b47004c22a7df3b92eaa8cbbb3a42ea32d047e
Michael Schroeder [Sat, 29 Sep 2018 07:13:40 +0000 (09:13 +0200)]
Improve handling of relations in repo_write
The old way was way to complex. What was I thinking?
Jonathan Dieter [Mon, 28 May 2018 18:52:31 +0000 (21:52 +0300)]
Add system zchunk support
Signed-off-by: Jonathan Dieter <jdieter@gmail.com>
Michael Schroeder [Fri, 28 Sep 2018 12:48:14 +0000 (14:48 +0200)]
Make sure that targeted updates don't do reinstalls
We already had code in add_update_target() to do this, but it did
not cover the multiversion case where more than one package with
the same name is installed.
Michael Schroeder [Mon, 24 Sep 2018 11:04:50 +0000 (13:04 +0200)]
Improve handing over of the parant kv in subarray searches
We now pass it disguised as keyskip.
Michael Schroeder [Mon, 24 Sep 2018 11:03:16 +0000 (13:03 +0200)]
Change data_fetch so that it always returns the first entry
It did something different for fix/flexarrays.
Michael Schroeder [Mon, 24 Sep 2018 10:59:20 +0000 (12:59 +0200)]
Allow writing of repodatas in state LOADING
Broken with commit
241123391fdbd0fa4b38b2a30b78e85de9c9fd5d
Michael Schroeder [Fri, 21 Sep 2018 13:35:54 +0000 (15:35 +0200)]
Generalize uninternalized lookups
We now have the generic repodata_lookup_kv_uninternalized and
repodata_search_uninternalized to access uninternalized data.
Drop the old interface, the functions were only used in some
metadata parsers. So it's an API change but nobody should notice.
Michael Schroeder [Fri, 21 Sep 2018 13:31:30 +0000 (15:31 +0200)]
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.