platform/upstream/libsolv.git
11 years agoReimplement state handling in rpm_by functions
Michael Schroeder [Wed, 10 Apr 2013 10:52:08 +0000 (12:52 +0200)]
Reimplement state handling in rpm_by functions

We now have rpm_state_create and rpm_state_free to create/free
the state. API change, but should be pretty internal.

11 years agorefactor: split off openpkgdb()
Michael Schroeder [Wed, 10 Apr 2013 09:57:41 +0000 (11:57 +0200)]
refactor: split off openpkgdb()

11 years agorefactor solv demo a bit
Michael Schroeder [Mon, 8 Apr 2013 11:29:04 +0000 (13:29 +0200)]
refactor solv demo a bit

11 years agoremove strange 5 year old TODO file
Michael Schroeder [Mon, 8 Apr 2013 09:38:46 +0000 (11:38 +0200)]
remove strange 5 year old TODO file

What does "xml metadata: prereq for store" even mean?

11 years agofix bugs in fileconflicts code and prepare for aliased dirs
Michael Schroeder [Mon, 8 Apr 2013 09:36:43 +0000 (11:36 +0200)]
fix bugs in fileconflicts code and prepare for aliased dirs

Breaks API but that should not be a problem as noone seems to
use the function yet.

11 years agoimprove fileconflicts code
Michael Schroeder [Fri, 5 Apr 2013 17:02:35 +0000 (19:02 +0200)]
improve fileconflicts code

11 years agosmall cleanups in pubkey handling
Michael Schroeder [Fri, 5 Apr 2013 15:17:11 +0000 (17:17 +0200)]
small cleanups in pubkey handling

11 years agocleanup hash code, it makes no sense to have an extra type for the mask
Michael Schroeder [Fri, 5 Apr 2013 15:00:30 +0000 (17:00 +0200)]
cleanup hash code, it makes no sense to have an extra type for the mask

11 years agomake queue_insertn more flexible
Michael Schroeder [Fri, 5 Apr 2013 13:51:36 +0000 (15:51 +0200)]
make queue_insertn more flexible

Yes, it's an API change, but I'm pretty sure that nobody
other than the solver itself uses queue_insertn.

11 years agorefactor a bit
Michael Schroeder [Fri, 5 Apr 2013 08:38:13 +0000 (10:38 +0200)]
refactor a bit

11 years agoDo extra checking for choice rules so that they don't interfere with package splits
Michael Schroeder [Thu, 4 Apr 2013 16:45:45 +0000 (18:45 +0200)]
Do extra checking for choice rules so that they don't interfere with package splits

11 years agosmall cleanup
Michael Schroeder [Tue, 2 Apr 2013 11:12:26 +0000 (13:12 +0200)]
small cleanup

11 years agoMerge pull request #27 from weinhold/upstream
Michael Schroeder [Tue, 2 Apr 2013 11:06:52 +0000 (04:06 -0700)]
Merge pull request #27 from weinhold/upstream

Various Portability Improvements

11 years agoMake all public libsolv headers C++ safe
Ingo Weinhold [Sat, 30 Mar 2013 12:02:13 +0000 (12:02 +0000)]
Make all public libsolv headers C++ safe

A few headers already included 'export "C"' blocks, also wrapping
other #include's. This patch cleanly wraps the contents of all public
headers instead.

11 years agosolv_sort(): Fix build for non-glibc without qsort_r()
Ingo Weinhold [Sat, 30 Mar 2013 16:17:39 +0000 (16:17 +0000)]
solv_sort(): Fix build for non-glibc without qsort_r()

11 years agoUse futimens() instead of futimes()
Ingo Weinhold [Sat, 30 Mar 2013 15:40:08 +0000 (15:40 +0000)]
Use futimens() instead of futimes()

futimens() is POSIX, futimes() isn't.

11 years agoImprove C89 compliance
Ingo Weinhold [Sat, 30 Mar 2013 11:12:31 +0000 (11:12 +0000)]
Improve C89 compliance

Make sure variables are declared at the beginning of a block.

11 years agoDefine SYSTEM_LIBRARIES in main CMakeLists.txt
Ingo Weinhold [Sat, 30 Mar 2013 14:10:53 +0000 (14:10 +0000)]
Define SYSTEM_LIBRARIES in main CMakeLists.txt

* There were identical SYSTEM_LIBRARIES definitions in several CMakeLists.txt
  files (well almost identical -- some still checked for DEBIAN instead of
  ENABLE_RPMDB). Now it's defined in the main CMakeLists.txt.
* Remove --as-needed from CMAKE_C_FLAGS and add it to SYSTEM_LIBRARIES. It
  isn't a compiler flag and older gcc's issue a warning when encountering it
  on a compile line.

11 years agoMerge pull request #26 from dirkmueller/master
Michael Schroeder [Wed, 27 Mar 2013 12:47:16 +0000 (05:47 -0700)]
Merge pull request #26 from dirkmueller/master

Add support for aarch64

11 years agoSupport aarch64
Dirk Mueller [Wed, 27 Mar 2013 12:31:31 +0000 (13:31 +0100)]
Support aarch64

11 years agoMerge pull request #25 from andreas-schwab/master
Michael Schroeder [Tue, 26 Mar 2013 09:56:29 +0000 (02:56 -0700)]
Merge pull request #25 from andreas-schwab/master

Fix misuses of memset

11 years agoFix misuses of memset
Andreas Schwab [Tue, 26 Mar 2013 09:11:04 +0000 (10:11 +0100)]
Fix misuses of memset

src/md5.c: In function 'sat_MD5_Final':
src/md5.c:269:23: error: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to dereference it? [-Werror=sizeof-pointer-memaccess]
  memset(ctx, 0, sizeof(ctx));
                       ^
examples/solv.c: In function 'read_repos':
examples/solv.c:1616:27: error: argument to 'sizeof' in 'memset' call is the same expression as the destination; did you mean to remove the addressof? [-Werror=sizeof-pointer-memaccess]
     memset(&stb, 0, sizeof(&stb));
                           ^

11 years agorename "NOOBSOLETES" to "MULTIVERSION"
Michael Schroeder [Fri, 22 Mar 2013 15:42:44 +0000 (16:42 +0100)]
rename "NOOBSOLETES" to "MULTIVERSION"

The name was always not very fitting, but newer rpm versions do look
at the obsoletes and just don't remove packages with the same name,
which makes the old name even worse. So rename to "multiversion",
which seems to be what many package managers use anyway.

11 years agoturn splitprovides off when doing the alreadyrecommended check
Michael Schroeder [Fri, 22 Mar 2013 12:45:45 +0000 (13:45 +0100)]
turn splitprovides off when doing the alreadyrecommended check

11 years agosusetags: don't warn on unknown tags
Michael Schroeder [Fri, 22 Mar 2013 12:02:31 +0000 (13:02 +0100)]
susetags: don't warn on unknown tags

11 years agoimprove pool_solvable2str output if the evr or arch is empty
Michael Schroeder [Wed, 20 Mar 2013 10:26:28 +0000 (11:26 +0100)]
improve pool_solvable2str output if the evr or arch is empty

11 years agocleanup code now that the vendorcheck callback is in the pool
Michael Schroeder [Wed, 6 Mar 2013 17:35:44 +0000 (18:35 +0100)]
cleanup code now that the vendorcheck callback is in the pool

11 years agoget rid of the ugly policy callbacks while we're breaking the ABI, add new pool_set_c...
Michael Schroeder [Wed, 6 Mar 2013 16:53:06 +0000 (17:53 +0100)]
get rid of the ugly policy callbacks while we're breaking the ABI, add new pool_set_custom_vendorcheck function

11 years agoadd changes, bump version upstream/0.3.0
Michael Schroeder [Wed, 6 Mar 2013 15:58:41 +0000 (16:58 +0100)]
add changes, bump version

11 years agoshuffle some ids now that we break the ABI
Michael Schroeder [Wed, 6 Mar 2013 15:55:26 +0000 (16:55 +0100)]
shuffle some ids now that we break the ABI

11 years agofix dataiterator returning random data in some cases
Michael Schroeder [Wed, 6 Mar 2013 14:42:26 +0000 (15:42 +0100)]
fix dataiterator returning random data in some cases

Fixed two issues:
1) iterating over attributes in with vertical storage could return
junk when some other operation paged in some other data.
2) the returned string could also be in the paged area, or also
in tmpspace if stringification was done. We can't simply alloc
memory as this makes things slower, but in most cases the storage
does not matter. So we offer a new function, dataiterator_strdup(),
that makes the kv.str pointer persistent.

WARNING: this commit is an ABI change as it changes the dataiterator
structure. Sorry.

11 years agorefactor a bit, add possibility to test the selection code
Michael Schroeder [Thu, 28 Feb 2013 10:49:34 +0000 (11:49 +0100)]
refactor a bit, add possibility to test the selection code

11 years agofix test so that we no longer flatten when there's just one job
Michael Schroeder [Wed, 27 Feb 2013 14:08:49 +0000 (15:08 +0100)]
fix test so that we no longer flatten when there's just one job

11 years agodo not create solvables with no release
Michael Schroeder [Wed, 27 Feb 2013 13:30:12 +0000 (14:30 +0100)]
do not create solvables with no release

11 years agosupport RPM_ADD_WITH_CHANGELOG in repo_add_rpmdb
Michael Schroeder [Mon, 25 Feb 2013 14:02:24 +0000 (15:02 +0100)]
support RPM_ADD_WITH_CHANGELOG in repo_add_rpmdb

For people who want to make their solv file really big...

11 years agoadd other.xml support to repomd parser
Michael Schroeder [Mon, 25 Feb 2013 12:13:10 +0000 (13:13 +0100)]
add other.xml support to repomd parser

11 years agocosmetics: always return 0 in selection_make if the selection is empty
Michael Schroeder [Tue, 12 Feb 2013 19:02:04 +0000 (20:02 +0100)]
cosmetics: always return 0 in selection_make if the selection is empty

11 years agofix stupid typo introduced when refactoring selection_filter_rel. Argh!
Michael Schroeder [Tue, 12 Feb 2013 18:37:12 +0000 (19:37 +0100)]
fix stupid typo introduced when refactoring selection_filter_rel. Argh!

11 years agoincrease maximum header size for some pathological rpms
Michael Schroeder [Wed, 6 Feb 2013 13:56:40 +0000 (14:56 +0100)]
increase maximum header size for some pathological rpms

11 years agofurther optimize solver_reenablepolicyrules
Michael Schroeder [Tue, 5 Feb 2013 13:06:03 +0000 (14:06 +0100)]
further optimize solver_reenablepolicyrules

11 years agooptimize code a bit to make analyze_unsolvable faster
Michael Schroeder [Mon, 4 Feb 2013 18:23:10 +0000 (19:23 +0100)]
optimize code a bit to make analyze_unsolvable faster

11 years agoreuse solver in examples
Michael Schroeder [Mon, 4 Feb 2013 16:41:31 +0000 (17:41 +0100)]
reuse solver in examples

11 years agodo not call pool_freewhatprovides in pool_add_fileconflicts_deps
Michael Schroeder [Mon, 4 Feb 2013 16:34:33 +0000 (17:34 +0100)]
do not call pool_freewhatprovides in pool_add_fileconflicts_deps

There may be precious job data in the whatprovides area.

11 years agodon't free obsoletes/obsoetes_data in solver cleanup
Michael Schroeder [Mon, 4 Feb 2013 15:11:16 +0000 (16:11 +0100)]
don't free obsoletes/obsoetes_data in solver cleanup

11 years agomake it possible to re-run an existing solver (re-using the rpm rules)
Michael Schroeder [Mon, 4 Feb 2013 14:43:27 +0000 (15:43 +0100)]
make it possible to re-run an existing solver (re-using the rpm rules)

11 years agosmall cleanups
Michael Schroeder [Thu, 31 Jan 2013 15:49:15 +0000 (16:49 +0100)]
small cleanups

11 years agodo not ignore disabled/considered flags for src packages
Michael Schroeder [Tue, 15 Jan 2013 12:59:31 +0000 (13:59 +0100)]
do not ignore disabled/considered flags for src packages

11 years agoadd changes, bump version
Michael Schroeder [Mon, 14 Jan 2013 15:02:47 +0000 (16:02 +0100)]
add changes, bump version

11 years agotrivial_installable: check vendor of affected package to see if a patch should be...
Michael Schroeder [Mon, 14 Jan 2013 14:59:55 +0000 (15:59 +0100)]
trivial_installable: check vendor of affected package to see if a patch should be ignored [bnc#736100]

11 years agofix 'solv patch' command
Michael Schroeder [Mon, 14 Jan 2013 14:57:52 +0000 (15:57 +0100)]
fix 'solv patch' command

11 years agosupport "pooljobs", fixed jobs set in the pool
Michael Schroeder [Fri, 11 Jan 2013 12:54:53 +0000 (13:54 +0100)]
support "pooljobs", fixed jobs set in the pool

Those are normally jobs like USERINSTALLED or NOOBSOLETES.

11 years agofix trivial installable requires handling [bnc#795267]
Michael Schroeder [Thu, 3 Jan 2013 12:54:24 +0000 (13:54 +0100)]
fix trivial installable requires handling [bnc#795267]

11 years agoMerge pull request #23 from johnnypeck/patch-1
Michael Schroeder [Thu, 3 Jan 2013 11:50:54 +0000 (03:50 -0800)]
Merge pull request #23 from johnnypeck/patch-1

Update README

11 years agoUpdate README
Johnny Peck [Thu, 27 Dec 2012 23:54:33 +0000 (18:54 -0500)]
Update README

algorihtm to algorithm

11 years agoimprove repo_add_rpmdb speed a tiny bit
Michael Schroeder [Thu, 20 Dec 2012 16:12:02 +0000 (17:12 +0100)]
improve repo_add_rpmdb speed a tiny bit

11 years agolink libsolvext with libsolv for completeness
Michael Schroeder [Thu, 20 Dec 2012 15:05:14 +0000 (16:05 +0100)]
link libsolvext with libsolv for completeness

11 years agolink libsolvext against the system libraries
Michael Schroeder [Wed, 19 Dec 2012 14:36:51 +0000 (15:36 +0100)]
link libsolvext against the system libraries

11 years agoadd changes, bump version upstream/0.2.3
Michael Schroeder [Tue, 18 Dec 2012 18:22:01 +0000 (19:22 +0100)]
add changes, bump version

11 years agosimplify and fix ruby vendordir check in spec file
Michael Schroeder [Tue, 18 Dec 2012 14:38:07 +0000 (15:38 +0100)]
simplify and fix ruby vendordir check in spec file

11 years agodon't access r->p after solver_addrule is called, as it may realloc the rules
Michael Schroeder [Tue, 18 Dec 2012 12:36:53 +0000 (13:36 +0100)]
don't access r->p after solver_addrule is called, as it may realloc the rules

Thanks valgrind!

11 years agosimplify transaction_obs_pkg a bit
Michael Schroeder [Tue, 18 Dec 2012 12:36:22 +0000 (13:36 +0100)]
simplify transaction_obs_pkg a bit

11 years agocosmetics: fix comments
Michael Schroeder [Mon, 17 Dec 2012 17:24:40 +0000 (18:24 +0100)]
cosmetics: fix comments

11 years agofind_problemrule: don't look at the learnt rule multiple times, it may take really...
Michael Schroeder [Mon, 17 Dec 2012 13:18:18 +0000 (14:18 +0100)]
find_problemrule: don't look at the learnt rule multiple times, it may take really long with some jobs

This basically repeats what's already done in analyze_unsolvable.

11 years agodelete old debug statements
Michael Schroeder [Thu, 13 Dec 2012 14:25:22 +0000 (15:25 +0100)]
delete old debug statements

11 years agosimplify testcase
Michael Schroeder [Thu, 13 Dec 2012 12:20:05 +0000 (13:20 +0100)]
simplify testcase

11 years agotest "addalreadyrecommended"
Michael Schroeder [Thu, 13 Dec 2012 10:47:34 +0000 (11:47 +0100)]
test "addalreadyrecommended"

11 years agosmall optimization: make whatprovidesdata + 2 always contain the systemsolvable
Michael Schroeder [Thu, 13 Dec 2012 10:41:53 +0000 (11:41 +0100)]
small optimization: make whatprovidesdata + 2 always contain the systemsolvable

11 years agoadd testcase for special namespaceprovides jobs
Michael Schroeder [Tue, 11 Dec 2012 15:42:07 +0000 (16:42 +0100)]
add testcase for special namespaceprovides jobs

11 years agosupport special namespace privides install/erase jobs in testcases
Michael Schroeder [Tue, 11 Dec 2012 11:52:55 +0000 (12:52 +0100)]
support special namespace privides install/erase jobs in testcases

11 years agoimplement special install/erase namespace provides hack
Michael Schroeder [Mon, 10 Dec 2012 18:18:31 +0000 (19:18 +0100)]
implement special install/erase namespace provides hack

11 years agoimprove error handling in makedeps
Michael Schroeder [Mon, 10 Dec 2012 09:31:32 +0000 (10:31 +0100)]
improve error handling in makedeps

11 years agoprint bad package name when detecting dependency array mismatches
Michael Schroeder [Fri, 7 Dec 2012 12:52:30 +0000 (13:52 +0100)]
print bad package name when detecting dependency array mismatches

11 years agocosmetics: print number of problems in examples
Michael Schroeder [Thu, 6 Dec 2012 18:43:56 +0000 (19:43 +0100)]
cosmetics: print number of problems in examples

11 years agoadd changes, bump version
Michael Schroeder [Wed, 5 Dec 2012 13:39:55 +0000 (14:39 +0100)]
add changes, bump version

11 years agoAdd Dep.Rel() method and a couple of Selection constructors
Michael Schroeder [Wed, 5 Dec 2012 12:31:53 +0000 (13:31 +0100)]
Add Dep.Rel() method and a couple of Selection constructors

11 years agosimplify some testcases
Michael Schroeder [Wed, 5 Dec 2012 10:26:16 +0000 (11:26 +0100)]
simplify some testcases

11 years agorename selection_limit to selection_filter, add flags to make selection_make more...
Michael Schroeder [Wed, 5 Dec 2012 10:25:10 +0000 (11:25 +0100)]
rename selection_limit to selection_filter, add flags to make selection_make more flexible

11 years agowrite trailing "result" line in -r -r mode
Michael Schroeder [Tue, 4 Dec 2012 14:15:14 +0000 (15:15 +0100)]
write trailing "result" line in -r -r mode

11 years agosupport cleandeps in targeted up/dup cases, add tests
Michael Schroeder [Tue, 4 Dec 2012 13:00:34 +0000 (14:00 +0100)]
support cleandeps in targeted up/dup cases, add tests

11 years agoadapt testcase to last change
Michael Schroeder [Tue, 4 Dec 2012 09:54:45 +0000 (10:54 +0100)]
adapt testcase to last change

11 years agomake cleandeps do less reinstalls, fix cleandeps reset bug
Michael Schroeder [Mon, 3 Dec 2012 17:24:23 +0000 (18:24 +0100)]
make cleandeps do less reinstalls, fix cleandeps reset bug

11 years agofix typos in comments, fix queue free
Michael Schroeder [Mon, 3 Dec 2012 16:03:23 +0000 (17:03 +0100)]
fix typos in comments, fix queue free

11 years agoadd "forcebest" testcases
Michael Schroeder [Mon, 3 Dec 2012 15:06:22 +0000 (16:06 +0100)]
add "forcebest" testcases

11 years agoexpand testcases
Michael Schroeder [Fri, 30 Nov 2012 15:54:25 +0000 (16:54 +0100)]
expand testcases

11 years agosmall optimization for targeted dup
Michael Schroeder [Fri, 30 Nov 2012 13:40:01 +0000 (14:40 +0100)]
small optimization for targeted dup

11 years agoanother targeted dup fix, add testcases
Michael Schroeder [Fri, 30 Nov 2012 13:28:10 +0000 (14:28 +0100)]
another targeted dup fix, add testcases

11 years agofree tmp repodata when repo_solv returns an error
Michael Schroeder [Thu, 29 Nov 2012 13:45:23 +0000 (14:45 +0100)]
free tmp repodata when repo_solv returns an error

11 years agoadd SOLVER_FLAG_NO_AUTOTARGET to testcase code
Michael Schroeder [Thu, 29 Nov 2012 12:52:12 +0000 (13:52 +0100)]
add SOLVER_FLAG_NO_AUTOTARGET to testcase code

11 years agofix targeted dup, we also have to add the obsoleters to the involved map
Michael Schroeder [Thu, 29 Nov 2012 12:51:10 +0000 (13:51 +0100)]
fix targeted dup, we also have to add the obsoleters to the involved map

11 years agoadd SOLVER_TARGETED and SOLVER_FLAG_NO_AUTOTARGET flags
Michael Schroeder [Thu, 29 Nov 2012 11:48:12 +0000 (12:48 +0100)]
add SOLVER_TARGETED and SOLVER_FLAG_NO_AUTOTARGET flags

11 years agosimplify datamatcher code, use datamatcher_checkbasename also in repo_search
Michael Schroeder [Thu, 29 Nov 2012 10:32:34 +0000 (11:32 +0100)]
simplify datamatcher code, use datamatcher_checkbasename also in repo_search

11 years agospeed up filelist matching by pre-matching the basename first
Michael Schroeder [Wed, 28 Nov 2012 16:57:10 +0000 (17:57 +0100)]
speed up filelist matching by pre-matching the basename first

11 years agofurther simplify code: use -1 as 'free' in mapped array, like in mapped_at
Michael Schroeder [Wed, 28 Nov 2012 15:01:59 +0000 (16:01 +0100)]
further simplify code: use -1 as 'free' in mapped array, like in mapped_at

11 years agoreduce memory by splitting the pages array into two mapped_at and file_pages arrays
Michael Schroeder [Wed, 28 Nov 2012 14:31:09 +0000 (15:31 +0100)]
reduce memory by splitting the pages array into two mapped_at and file_pages arrays

11 years agosimplily repopage handling quite a bit
Michael Schroeder [Wed, 28 Nov 2012 13:31:34 +0000 (14:31 +0100)]
simplily repopage handling quite a bit

No more searching for the best place, a much easier algorithm
seems to be better than the complex search.

11 years agooptimize repopagestore_load_page_range
Michael Schroeder [Tue, 27 Nov 2012 18:02:05 +0000 (19:02 +0100)]
optimize repopagestore_load_page_range

11 years agocleanup example code
Michael Schroeder [Tue, 27 Nov 2012 14:24:40 +0000 (15:24 +0100)]
cleanup example code

11 years agofix EXTEND calls in perl bindings
Michael Schroeder [Tue, 27 Nov 2012 14:23:40 +0000 (15:23 +0100)]
fix EXTEND calls in perl bindings

11 years agoxfileno doesn't exist anymore, use fileno() instead
Michael Schroeder [Tue, 27 Nov 2012 12:32:58 +0000 (13:32 +0100)]
xfileno doesn't exist anymore, use fileno() instead

11 years agouse a Selection for the 'search' command so that the repofilter works
Michael Schroeder [Tue, 27 Nov 2012 10:56:19 +0000 (11:56 +0100)]
use a Selection for the 'search' command so that the repofilter works