]> git.ipfire.org Git - thirdparty/libsolv.git/log
thirdparty/libsolv.git
6 years agorepodata_schema2id: fix heap-buffer-overflow in memcmp 344/head
Zhipeng Xie [Tue, 6 Aug 2019 01:50:57 +0000 (09:50 +0800)] 
repodata_schema2id: fix heap-buffer-overflow in memcmp

When the length of last schema in data->schemadata is
less than length of input schema, we got a read overflow
in asan test.

Signed-off-by: Zhipeng Xie <xiezhipeng1@huawei.com>
6 years agoImprove fix for issue #343
Michael Schroeder [Fri, 2 Aug 2019 14:33:00 +0000 (16:33 +0200)] 
Improve fix for issue #343

The old commit just checked if the package was identical to the
one we're updating. But we need to check against all the installed
packages.

6 years agoAdd a TODO entry
Michael Schroeder [Fri, 2 Aug 2019 09:43:28 +0000 (11:43 +0200)] 
Add a TODO entry

6 years agoSpecial updaters handling: put identical to installed also on the list
Michael Schroeder [Thu, 1 Aug 2019 14:28:00 +0000 (16:28 +0200)] 
Special updaters handling: put identical to installed also on the list

We need to do this so that repo priority pruning does the right thing.
Fixes issue #343

6 years agotypo
Mikhail Terekhov [Mon, 29 Jul 2019 03:17:45 +0000 (23:17 -0400)] 
typo

6 years agoExpose pool_whatcontainsdep() in the bindings
Daniel Alley [Wed, 17 Jul 2019 18:40:25 +0000 (14:40 -0400)] 
Expose pool_whatcontainsdep() in the bindings

Document both pool_whatcontainsdep() and pool_whatmatchesdep()

closes #335

6 years agoparseRichDep: merge duplicated code into a skipnonwhite() inline function
Michael Schroeder [Tue, 16 Jul 2019 11:20:12 +0000 (13:20 +0200)] 
parseRichDep: merge duplicated code into a skipnonwhite() inline function

6 years agopool_match_dep: support interval REL_WITH deps
Michael Schroeder [Mon, 15 Jul 2019 14:49:02 +0000 (16:49 +0200)] 
pool_match_dep: support interval REL_WITH deps

See https://bugzilla.redhat.com/show_bug.cgi?id=1534123
I have a feeling that I'm going to regret this...

6 years agoMerge pull request #336 from marxin/fix-static-library-lto-bytecode
Michael Schroeder [Fri, 12 Jul 2019 12:12:51 +0000 (14:12 +0200)] 
Merge pull request #336 from marxin/fix-static-library-lto-bytecode

Fix lto-bytecode errors:

6 years agoFix lto-bytecode errors: 336/head
Martin Liska [Wed, 10 Jul 2019 13:31:21 +0000 (15:31 +0200)] 
Fix lto-bytecode errors:

[  250s] libsolv-devel.x86_64: E: lto-bytecode (Badness: 10000) /usr/lib64/libsolv.a
[  250s] libsolv-devel.x86_64: E: lto-bytecode (Badness: 10000) /usr/lib64/libsolvext.a

- Add -ffat-lto-objects to $optflags as the package provides
  static libraries
- Remove NO_BRP_STRIP_DEBUG=true as brp-15-strip-debug will
  not strip debug info for archives

6 years agobindings: make the selection filters return the self object
Michael Schroeder [Tue, 9 Jul 2019 12:44:36 +0000 (14:44 +0200)] 
bindings: make the selection filters return the self object

6 years agoAlways do nevr check for src rpms, even if there are provides
Michael Schroeder [Mon, 1 Jul 2019 12:52:24 +0000 (14:52 +0200)] 
Always do nevr check for src rpms, even if there are provides

Newer rpm versions add a "rpmlib(DynamicBuildRequires)" provides
to source rpms in some cases. Sigh.

6 years agoDocument get/set_considered/disabled_list
Michael Schroeder [Mon, 1 Jul 2019 11:12:26 +0000 (13:12 +0200)] 
Document get/set_considered/disabled_list

6 years agoMerge pull request #323 from wolfv/osx_rpath_cmake
Michael Schroeder [Mon, 1 Jul 2019 09:29:22 +0000 (11:29 +0200)] 
Merge pull request #323 from wolfv/osx_rpath_cmake

OS X rpath handling

6 years agoenable os x rpath usage in cmake 323/head
Wolf Vollprecht [Fri, 19 Apr 2019 10:16:07 +0000 (12:16 +0200)] 
enable os x rpath usage in cmake

6 years agorepo2solv: support zchunk compressed data
Michael Schroeder [Mon, 17 Jun 2019 11:11:02 +0000 (13:11 +0200)] 
repo2solv: support zchunk compressed data

6 years agobindings: add get_disabled_list() and set_disabled_list()
Michael Schroeder [Mon, 17 Jun 2019 09:20:04 +0000 (11:20 +0200)] 
bindings: add get_disabled_list() and set_disabled_list()

6 years agoAdd changes
Michael Schroeder [Thu, 13 Jun 2019 14:16:19 +0000 (16:16 +0200)] 
Add changes

6 years agoExtend the job to the install buddy for erase and lock jobs
Michael Schroeder [Thu, 13 Jun 2019 14:07:46 +0000 (16:07 +0200)] 
Extend the job to the install buddy for erase and lock jobs

This is needed so that a cleandeps erase of a pattern propagates
to the packages, as pattern packages are automagically marked
as userinstalled.

6 years agoAdd changes, bump version to 0.7.5 0.7.5
Michael Schroeder [Wed, 12 Jun 2019 11:39:44 +0000 (13:39 +0200)] 
Add changes, bump version to 0.7.5

6 years agoDo not use the broken RPMLIB_VERSION_LT macro
Michael Schroeder [Wed, 5 Jun 2019 14:35:30 +0000 (16:35 +0200)] 
Do not use the broken RPMLIB_VERSION_LT macro

6 years agorpm-5.2 still had an array index
Michael Schroeder [Wed, 5 Jun 2019 14:16:09 +0000 (16:16 +0200)] 
rpm-5.2 still had an array index

6 years agoMake libsolv work with rpm 5.2
Michael Schroeder [Wed, 5 Jun 2019 13:58:55 +0000 (15:58 +0200)] 
Make libsolv work with rpm 5.2

Version 5.2 still used native endian encoding for the database ids.

6 years agoAdd some casts for clarification
Michael Schroeder [Wed, 5 Jun 2019 13:19:28 +0000 (15:19 +0200)] 
Add some casts for clarification

The rpm database id is a num, thus unsigned. But it gets stored into
an id array.

6 years agoAllow the complete 32bit for the rpm database id
Michael Schroeder [Wed, 5 Jun 2019 13:18:26 +0000 (15:18 +0200)] 
Allow the complete 32bit for the rpm database id

6 years agoRemove unused 'basefile' var
Michael Schroeder [Mon, 3 Jun 2019 14:12:24 +0000 (16:12 +0200)] 
Remove unused 'basefile' var

6 years agoFix warnings found by clang
Michael Schroeder [Mon, 3 Jun 2019 14:08:13 +0000 (16:08 +0200)] 
Fix warnings found by clang

6 years agoAnother deb tweak
Michael Schroeder [Mon, 3 Jun 2019 14:01:07 +0000 (16:01 +0200)] 
Another deb tweak

6 years agoMake testcase run on debian
Michael Schroeder [Mon, 3 Jun 2019 13:59:46 +0000 (15:59 +0200)] 
Make testcase run on debian

6 years agoAdd testcases for last commit
Michael Schroeder [Mon, 3 Jun 2019 13:45:37 +0000 (15:45 +0200)] 
Add testcases for last commit

6 years agoMake lock jobs trump dup and forcebest jobs
Michael Schroeder [Mon, 3 Jun 2019 13:45:00 +0000 (15:45 +0200)] 
Make lock jobs trump dup and forcebest jobs

6 years agoMake repo_lookup_type return the correct type for data stored in the solvable
Michael Schroeder [Mon, 3 Jun 2019 13:21:28 +0000 (15:21 +0200)] 
Make repo_lookup_type return the correct type for data stored in the solvable

Also clean up and speed up the code a bit.

6 years agoMake peace with swig-4.0.0
Michael Schroeder [Tue, 14 May 2019 09:48:28 +0000 (11:48 +0200)] 
Make peace with swig-4.0.0

Patch by Jitka PlesnĂ­ková, thanks!

6 years agoAdd CVE numbers so that SUSE's maintenance engine is happy
Michael Schroeder [Mon, 29 Apr 2019 12:26:27 +0000 (14:26 +0200)] 
Add CVE numbers so that SUSE's maintenance engine is happy

6 years agoDelete superfluous spaces
Michael Schroeder [Thu, 18 Apr 2019 13:48:08 +0000 (15:48 +0200)] 
Delete superfluous spaces

6 years agoMove move_installed_to_front call after sort_by_common_dep
Michael Schroeder [Thu, 18 Apr 2019 13:44:38 +0000 (15:44 +0200)] 
Move move_installed_to_front call after sort_by_common_dep

Staying with the already installed package name is more important
than a common dependency.

6 years agoDeal with update/feature jobs in alternative printing
Michael Schroeder [Thu, 18 Apr 2019 13:43:59 +0000 (15:43 +0200)] 
Deal with update/feature jobs in alternative printing

6 years agoAlso compare build version if only one of the solvables has it
Michael Schroeder [Wed, 17 Apr 2019 11:30:36 +0000 (13:30 +0200)] 
Also compare build version if only one of the solvables has it

Spotted by Wolf Vollprecht

6 years agoMake the conda.h header file available
Michael Schroeder [Wed, 17 Apr 2019 09:57:32 +0000 (11:57 +0200)] 
Make the conda.h header file available

We have the pool_conda_matchspec() function in the public API.

6 years agorepo_conda: Fix type check of build_number
Michael Schroeder [Wed, 17 Apr 2019 09:55:51 +0000 (11:55 +0200)] 
repo_conda: Fix type check of build_number

It's a number, not a string. Problem spotted by Wolf Vollprecht,
thanks!

6 years agoFix two mem leaks
Michael Schroeder [Mon, 15 Apr 2019 13:46:46 +0000 (15:46 +0200)] 
Fix two mem leaks

6 years agopool_conda_matchspec: Use '*' as version when creating a simple name glob
Michael Schroeder [Mon, 15 Apr 2019 11:24:27 +0000 (13:24 +0200)] 
pool_conda_matchspec: Use '*' as version when creating a simple name glob

6 years agoAlso compare buildflavor in version comparison code
Michael Schroeder [Mon, 15 Apr 2019 11:21:05 +0000 (13:21 +0200)] 
Also compare buildflavor in version comparison code

This makes the solver result more deterministic.

6 years agoAdd strfncs.h include for conda.c
Michael Schroeder [Fri, 12 Apr 2019 12:07:05 +0000 (14:07 +0200)] 
Add strfncs.h include for conda.c

6 years agoAdd strfncs.h include
Michael Schroeder [Fri, 12 Apr 2019 12:04:41 +0000 (14:04 +0200)] 
Add strfncs.h include

6 years agoAdd credits for the win32 port
Michael Schroeder [Fri, 12 Apr 2019 11:54:37 +0000 (13:54 +0200)] 
Add credits for the win32 port

6 years agofmemopen.c: free handle if _fdopen fails
Michael Schroeder [Fri, 12 Apr 2019 11:52:58 +0000 (13:52 +0200)] 
fmemopen.c: free handle if _fdopen fails

6 years agoDebug: also dump dup flags
Michael Schroeder [Fri, 12 Apr 2019 10:56:52 +0000 (12:56 +0200)] 
Debug: also dump dup flags

6 years agoFix mem leak in solv_jsonparser
Michael Schroeder [Fri, 12 Apr 2019 09:20:34 +0000 (11:20 +0200)] 
Fix mem leak in solv_jsonparser

jsonparser_free did not free the string buffer

6 years agoFix buildflavor position in testcase_solvid2str
Michael Schroeder [Thu, 11 Apr 2019 15:17:00 +0000 (17:17 +0200)] 
Fix buildflavor position in testcase_solvid2str

The flavor is supposed to come right after the evr.

6 years agoCleanup jsonparser a bit
Michael Schroeder [Thu, 11 Apr 2019 15:01:59 +0000 (17:01 +0200)] 
Cleanup jsonparser a bit

We now no longer set nextc in skipspace(). This should make the
code a bit easier to understand.

6 years agoAdd RESULT_USERINSTALLED testcase output
Michael Schroeder [Thu, 11 Apr 2019 15:00:11 +0000 (17:00 +0200)] 
Add RESULT_USERINSTALLED testcase output

Also allow both '/' and '\' as path separator on windows.

6 years agoMerge pull request #306 from wolfv/msvc_support
Michael Schroeder [Thu, 11 Apr 2019 14:46:23 +0000 (16:46 +0200)] 
Merge pull request #306 from wolfv/msvc_support

Adding MSVC support

6 years agoAdd MSVC compilation support with musl, enable OS X testing 306/head
Wolf Vollprecht [Tue, 19 Mar 2019 08:31:36 +0000 (09:31 +0100)] 
Add MSVC compilation support with musl, enable OS X testing

6 years agoBe more correct with multiversion packages that obsolete their own name
Michael Schroeder [Thu, 11 Apr 2019 12:13:46 +0000 (14:13 +0200)] 
Be more correct with multiversion packages that obsolete their own name

We used to simply ignore the obsoletes. There are use cases which
need them, though. So do the right thing.

6 years agoUse buildversion for comparison if two versions are identical
Michael Schroeder [Tue, 9 Apr 2019 14:32:01 +0000 (16:32 +0200)] 
Use buildversion for comparison if two versions are identical

6 years agopool_conda_matchspec: return a simple dependency if we can
Michael Schroeder [Tue, 9 Apr 2019 14:30:47 +0000 (16:30 +0200)] 
pool_conda_matchspec: return a simple dependency if we can

6 years agoTest last commit
Michael Schroeder [Tue, 9 Apr 2019 11:11:22 +0000 (13:11 +0200)] 
Test last commit

6 years agoFix SOLVER_FLAG_FOCUS_BEST updateing packages without reason
Michael Schroeder [Tue, 9 Apr 2019 11:04:25 +0000 (13:04 +0200)] 
Fix SOLVER_FLAG_FOCUS_BEST updateing packages without reason

6 years agoBetter support for SOLVABLE_BUILDFLAVOR
Michael Schroeder [Tue, 9 Apr 2019 09:36:40 +0000 (11:36 +0200)] 
Better support for SOLVABLE_BUILDFLAVOR

This changes pool_solvable2str, testcase_str2solvid and
testcase_solvid2str to append the build flavor.

6 years agoFix a couple of signed/unsigned comparisons
Michael Schroeder [Tue, 9 Apr 2019 09:35:31 +0000 (11:35 +0200)] 
Fix a couple of signed/unsigned comparisons

6 years agoAllow to lookup a single id with repodata_lookup_idarray
Michael Schroeder [Tue, 9 Apr 2019 09:13:17 +0000 (11:13 +0200)] 
Allow to lookup a single id with repodata_lookup_idarray

I don't see any harm in allowing this and it makes dealing with
things like SOLVABLE_LICENSE easier which can be either an id
(the old way) or an id array (the new way).

6 years agoUse system type rpm in testcase
Michael Schroeder [Mon, 8 Apr 2019 13:07:14 +0000 (15:07 +0200)] 
Use system type rpm in testcase

Otherwise arch 'noarch' is unknown

6 years agoFix tests
Michael Schroeder [Mon, 8 Apr 2019 12:49:07 +0000 (14:49 +0200)] 
Fix tests

All tests should have a results section

6 years agoMerge pull request #315 from ignatenkobrain/todo
Michael Schroeder [Mon, 8 Apr 2019 11:25:55 +0000 (13:25 +0200)] 
Merge pull request #315 from ignatenkobrain/todo

trivial: Drop implemented items from TODO

6 years agotrivial: Drop implemented items from TODO 315/head
Igor Gnatenko [Sun, 7 Apr 2019 09:08:33 +0000 (11:08 +0200)] 
trivial: Drop implemented items from TODO

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6 years agoTweak solvable_identical and pool_solvable2str for conda
Michael Schroeder [Fri, 5 Apr 2019 12:17:09 +0000 (14:17 +0200)] 
Tweak solvable_identical and pool_solvable2str for conda

6 years agoDrop unused diskusagexml2solv.c
Michael Schroeder [Fri, 5 Apr 2019 11:37:04 +0000 (13:37 +0200)] 
Drop unused diskusagexml2solv.c

Whatever that was...

6 years agoSplit testcase repo reading/writing into repo_testcase.c
Michael Schroeder [Fri, 5 Apr 2019 10:01:26 +0000 (12:01 +0200)] 
Split testcase repo reading/writing into repo_testcase.c

This is done so that programs that just want to read/write
repos in testcase format do not need to drag in all of the
solver code. (This matters only for static linking, of course.)

6 years agoAdd repo_add_conda() and conda2solv
Michael Schroeder [Thu, 4 Apr 2019 14:23:39 +0000 (16:23 +0200)] 
Add repo_add_conda() and conda2solv

6 years agoGet rid of the favorq
Michael Schroeder [Wed, 3 Apr 2019 14:37:59 +0000 (16:37 +0200)] 
Get rid of the favorq

We do not need it anymore. It's easier to create the favormap
directly from the job list.

6 years agoMerge pull request #313 from ignatenkobrain/solver-free-favorq
Michael Schroeder [Wed, 3 Apr 2019 14:10:08 +0000 (16:10 +0200)] 
Merge pull request #313 from ignatenkobrain/solver-free-favorq

solver: Free favorq when running solver_solve()

6 years agoMore conda work
Michael Schroeder [Wed, 3 Apr 2019 13:02:02 +0000 (15:02 +0200)] 
More conda work

- add pool_conda_matchspec() to create a REL_CONDA dep from a string
- add name globbing for REL_CONDA
- support build flavor matching

6 years agoEscape \ in file argument before calling ADD_TEST
Michael Schroeder [Wed, 3 Apr 2019 09:28:31 +0000 (11:28 +0200)] 
Escape \ in file argument before calling ADD_TEST

6 years agosolver: Free favorq when running solver_solve() 313/head
Igor Gnatenko [Tue, 2 Apr 2019 12:22:08 +0000 (14:22 +0200)] 
solver: Free favorq when running solver_solve()

Otherwise, favorq leaks from previous executions.

Fixes: https://github.com/openSUSE/libsolv/issues/312
Fixes: 2645bc64b322460ac77d0d051de63434d4a90a0a
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6 years agoAdd solv_cloexec() function
Michael Schroeder [Tue, 2 Apr 2019 11:34:30 +0000 (13:34 +0200)] 
Add solv_cloexec() function

Windows needs a different implementation, and with that solv_cloexec
we need to patch just one place in the code.

6 years agoFix leak in last commit
Michael Schroeder [Mon, 1 Apr 2019 14:29:55 +0000 (16:29 +0200)] 
Fix leak in last commit

6 years agoAllow to build libsolv without stdio cookie opens
Michael Schroeder [Mon, 1 Apr 2019 14:20:33 +0000 (16:20 +0200)] 
Allow to build libsolv without stdio cookie opens

6 years agobuild: use GNUInstallDirs
Igor Gnatenko [Mon, 2 Jul 2018 11:56:41 +0000 (12:56 +0100)] 
build: use GNUInstallDirs

Fixes: #128
Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6 years agoAdd changes, bump version to 0.7.4 0.7.4
Michael Schroeder [Fri, 29 Mar 2019 15:05:11 +0000 (16:05 +0100)] 
Add changes, bump version to 0.7.4

6 years agoMerge pull request #305 from ignatenkobrain/matchsolvable
Igor Gnatenko [Fri, 29 Mar 2019 12:18:25 +0000 (13:18 +0100)] 
Merge pull request #305 from ignatenkobrain/matchsolvable

bindings: Add matchsolvable() for Pool and Selection

6 years agoImplement complex conda version matches
Michael Schroeder [Fri, 29 Mar 2019 10:49:37 +0000 (11:49 +0100)] 
Implement complex conda version matches

This turned out to be easier than expected.

6 years agoAdd support for REL_CONDA
Michael Schroeder [Thu, 28 Mar 2019 14:08:04 +0000 (15:08 +0100)] 
Add support for REL_CONDA

Still to do: support for chaining versions with ',' or '|'.

6 years agoRevert last two commits, we need to do this different
Michael Schroeder [Wed, 27 Mar 2019 12:43:24 +0000 (13:43 +0100)] 
Revert last two commits, we need to do this different

Seems like we really need REL_CONDA to implement conda's MatchSpec.

6 years agoFix REL_EQ for conda, it's "==" and not "="
Michael Schroeder [Wed, 27 Mar 2019 12:20:32 +0000 (13:20 +0100)] 
Fix REL_EQ for conda, it's "==" and not "="

"=" is a fuzzy match.

6 years agoSupport DISTTYPE_CONDA in dep2str()
Michael Schroeder [Wed, 27 Mar 2019 12:16:53 +0000 (13:16 +0100)] 
Support DISTTYPE_CONDA in dep2str()

This basically strips the spaces from the relops and uses ',' for
REL_WITH and '|' for REL_OR.

6 years agorepo_add_rpmdb: do not copy bad solvables from the old solv file
Michael Schroeder [Wed, 27 Mar 2019 11:02:09 +0000 (12:02 +0100)] 
repo_add_rpmdb: do not copy bad solvables from the old solv file

6 years agoDocument rpmdb2solv options
Michael Schroeder [Wed, 27 Mar 2019 11:00:01 +0000 (12:00 +0100)] 
Document rpmdb2solv options

6 years agorepodata_unset_uninternalized: allow to delete all attributes
Michael Schroeder [Wed, 27 Mar 2019 10:55:10 +0000 (11:55 +0100)] 
repodata_unset_uninternalized: allow to delete all attributes

This is done when the keyname is zero.

6 years agoAdd testcase for cleandeps fix
Michael Schroeder [Tue, 26 Mar 2019 10:50:10 +0000 (11:50 +0100)] 
Add testcase for cleandeps fix

6 years agoOptimize last commit a bit
Michael Schroeder [Mon, 25 Mar 2019 15:58:50 +0000 (16:58 +0100)] 
Optimize last commit a bit

There's no need to look at already conflicted packages, they cannot
be in the package list.

6 years agoFix cleandeps updates not updating all packages
Michael Schroeder [Mon, 25 Mar 2019 14:53:52 +0000 (15:53 +0100)] 
Fix cleandeps updates not updating all packages

Issue #309

6 years agoMerge pull request #303 from wolfv/patch-1
Igor Gnatenko [Mon, 25 Mar 2019 08:43:26 +0000 (09:43 +0100)] 
Merge pull request #303 from wolfv/patch-1

Add zlib include directories

6 years agoAdd DISTTYPE_CONDA and implement version comparison
Michael Schroeder [Thu, 21 Mar 2019 14:28:24 +0000 (15:28 +0100)] 
Add DISTTYPE_CONDA and implement version comparison

6 years agoDrop uio.h include
Michael Schroeder [Thu, 21 Mar 2019 14:21:06 +0000 (15:21 +0100)] 
Drop uio.h include

I don't know why it needs to be there. Lets see if removing it
breaks anything.

6 years agobindings: Add matchsolvable() for Pool and Selection 305/head
Igor Gnatenko [Sat, 16 Mar 2019 11:10:21 +0000 (12:10 +0100)] 
bindings: Add matchsolvable() for Pool and Selection

Signed-off-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
6 years agoAdd ZSTD_INCLUDE_DIRS 303/head
Wolf Vollprecht [Wed, 13 Mar 2019 14:14:39 +0000 (15:14 +0100)] 
Add ZSTD_INCLUDE_DIRS

6 years agoAdd include_directory command to more compression libs
Wolf Vollprecht [Wed, 13 Mar 2019 13:09:40 +0000 (14:09 +0100)] 
Add include_directory command to more compression libs

6 years agoAdd zlib include directories
Wolf Vollprecht [Tue, 12 Mar 2019 17:09:10 +0000 (18:09 +0100)] 
Add zlib include directories

6 years agoSplit SOLV_DEBUG_WATCHES from SOLV_DEBUG_PROPAGATE
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.