Fix helix2solv conflicts error
[platform/upstream/libsolv.git] / NEWS
diff --git a/NEWS b/NEWS
index 47a699d..0d3e1c6 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,288 @@
 
-This file contains the major changes between
-libsolv versions:
+This file contains the major changes between libsolv versions:
+
+Version 0.7.27
+- selected bug fixes:
+  * add zstd support for the installcheck tool
+  * add putinowndirpool cache to make file list handling in
+    repo_write much faster
+
+Version 0.7.26
+- selected bug fixes:
+  * fix evr roundtrip in testcases
+  * do not use deprecated headerUnload with newer rpm versions
+
+Version 0.7.25
+- selected bug fixes:
+  * support complex deps in SOLVABLE_PREREQ_IGNOREINST
+  * fix minimization not prefering installed packages in some cases
+  * reduce memory usage in repo_updateinfoxml
+  * fix lock-step interfering with architecture selection
+  * fix choice rule handing for package downgrades
+  * fix complex dependencies with an "else" part sometimes leading
+    to unsolved dependencies
+
+Version 0.7.24
+- selected bug fixes:
+  * handle learnt rules in solver_alternativeinfo()
+- new features:
+  * support x86_64_v[234] architecture levels
+  * implement decision sorting for package decisionlists
+
+Version 0.7.23
+- selected bug fixes:
+  * fix "keep installed" jobs not disabling "best update" rules
+  * do not autouninstall suse ptf packages
+  * ensure duplinvolvedmap_all is reset when a solver is reused
+  * special case file dependencies in the testcase writer
+- new features:
+  * support stringification of multiple solvables
+    new function: pool_solvidset2str
+  * new weakdep introspection interface similar to ruleinfos
+    new functions: solver_weakdepinfo, solver_allweakdepinfos
+  * support decision reason queries
+    new functions: solver_get_decisionlist, solver_get_decisionlist_multiple,
+                   solver_get_learnt
+  * support merging of related decissions
+    new functions: solver_decisionlist_solvables, solver_decisionlist_merged,
+                   solver_calc_decisioninfo_bits, solver_merge_decisioninfo_bits
+  * support stringification of ruleinfo, decisioninfo and decision reasons
+    new functions: solver_ruleinfo2str, solver_decisioninfo2str,
+                   solver_decisionreason2str, solver_reason2str
+  * support better info about alternatives
+    new function: solver_alternativeinfo()
+  * new '-P' and '-W' options for testsolv to show proofs and
+    decision reasons
+    
+Version 0.7.22
+- selected bug fixes:
+  * reworked choice rule generation to cover more usecases
+  * support SOLVABLE_PREREQ_IGNOREINST in the ordering code
+- new features:
+  * support parsing of Debian's Multi-Arch indicator
+
+Version 0.7.21
+- selected bug fixes:
+  * fix segfault on conflict resolution when using bindings
+  * fix split provides not working if the update includes a forbidden
+    vendor change
+- new features:
+  * support strict repository priorities
+    new solver flag: SOLVER_FLAG_STRICT_REPO_PRIORITY
+  * support zstd compressed control files in debian packages
+  * add an ifdef allowing to rename Solvable dependency members
+    ("requires" is a keyword in C++20)
+  * support setting/reading userdata in solv files
+    new functions: repowriter_set_userdata, solv_read_userdata
+  * support queying of the custom vendor check function
+    new function: pool_get_custom_vendorcheck
+  * support solv files with an idarray block
+  * allow accessing the toolversion at runtime
+
+Version 0.7.20
+- selected bug fixes:
+  * fix misparsing of '&' in attributes with libxml2
+  * choice rules: treat orphaned packages as newest
+  * fix compatibility with Python 3.10
+- new features:
+  * new SOLVER_EXCLUDEFROMWEAK job to ignore pkgs for weak dependencies
+  * support for environments in comps parser
+
+Version 0.7.19
+- selected bug fixes:
+  * fix rare segfault in resolve_jobrules() that could happen
+    if new rules are learnt
+  * fix a couple of memory leaks in error cases
+  * fix error handling in solv_xfopen_fd()
+
+Version 0.7.18
+- selected bug fixes:
+  * fixed regex code on win32
+  * fixed memory leak in choice rule generation
+- new features:
+  * repo_add_conda: add flag to skip v2 packages
+
+Version 0.7.17
+- selected bug fixes:
+  * repo_write: fix handling of nested flexarray
+  * improve choicerule generation a bit more to cover more cases
+  * harden testcase parser against repos being added too late
+  * support python-3.10
+  * check %_dbpath macro in rpmdb code
+- new features:
+  * handle default/visible/langonly attributes in comps parser
+  * support multiple collections in updateinfo parser
+  * add '-D' option in rpmdb2solv to set the dbpath
+
+Version 0.7.16
+- selected bug fixes:
+  * do not ask the namespace callback for splitprovides when writing
+    a testcase
+  * fix add_complex_recommends() selecting conflicted packages in
+    rare cases leading to crashes
+  * improve choicerule generation so that package updates are
+    prefered in more cases
+  * deal with missing repos in testcase_mangle_repo_names
+
+Version 0.7.15
+- selected bug fixes:
+  * fix deduceq2addedmap clearing bits outside of the map
+  * conda: feature depriorization first
+  * conda: fix startswith implementation
+  * move find_update_seeds() call in cleandeps calculation
+- new features:
+  * set SOLVABLE_BUILDHOST in rpm and rpmmd parsers
+  * new testcase_mangle_repo_names() function
+  * new solv_fmemopen() function
+
+Version 0.7.14
+- added support for ed25519 signatures
+- selected bug fixes:
+  * Support blacklisted packages in solver_findproblemrule()
+  * Support rules with multiple negative literals in choice rule
+    generation
+  * Also detect rpmdb.sqlite in /usr/share/rpm
+
+Version 0.7.13
+- fix solvable swapping messing up uninternalized idarrays
+
+Version 0.7.12
+- conda: support packages.conda repositories
+- conda: de-priorize track features
+- allow win32 to build shared lib
+- selected bug fixes:
+  * fix ruleinfo of complex dependencies returning the wrong origin
+
+Version 0.7.11
+- ENABLE_RPMDB_LIBRPM is now the default
+- selected bug fixes:
+  * fixed solv_zchunk decoding error if large chunks are used
+  * treat retracted pathes as irrelevant
+  * made add_update_target work with multiversion installs
+
+Version 0.7.10
+- new features:
+  * new rpm_stat_database() function
+  * new rpm_hash_database_state() function
+
+Version 0.7.9
+- new features:
+  * support conda constrains dependencies
+
+Version 0.7.8
+- selected bug fixes:
+  * support arch<->noarch package changes when creating patch
+    conflicts from the updateinfo data
+  * also support other rpm database types
+- new features:
+  * support for SOLVER_BLACKLIST jobs that block the installation
+    of matched packages unless they are directly selected by an
+    SOLVER_INSTALL job
+  * libsolv now also parses the patch status in the updateinfo
+    parser
+  * new solvable_matchessolvable() function
+
+Version 0.7.7
+- selected bug fixes:
+  * fix updating of too many packages in focusbest mode
+  * fix handling of disabled installed packages in distupgrade
+- new features
+  * new POOL_FLAG_WHATPROVIDESWITHDISABLED pool flag
+
+Version 0.7.6
+- selected bug fixes:
+  * fix repository priority handling for multiversion packages
+  * better support of inverval deps in pool_match_dep()
+  * support src rpms that have non-empty provides
+- new features
+  * bindings: add get_disabled_list() and set_disabled_list()
+  * bindings: add whatcontainsdep()
+  * bindings: make the selection filters return the self object
+
+Version 0.7.5
+- selected bug fixes:
+  * fix favorq leaking between solver runs if the solver is reused
+  * fix SOLVER_FLAG_FOCUS_BEST updateing packages without reason
+  * be more correct with multiversion packages that obsolete their
+    own name
+  * allow building with swig-4.0.0
+  * lock jobs now take precedence over dup and forcebest jobs
+- new features
+  * MSVC compilation support
+
+Version 0.7.4
+- selected bug fixes:
+  * repo_add_rpmdb: do not copy bad solvables from the old solv file
+  * fix cleandeps updates not updating all packages
+- new features:
+  * bindings: support pool.matchsolvable(), pool.whatmatchessolvable()
+    pool.best_solvables() and selection.matchsolvable()
+  * experimental DISTTYPE_CONDA and REL_CONDA support
+
+Version 0.7.3
+- selected bug fixes:
+  * fixed a couple of null pointer derefs and potential memory
+    leaks
+  * made disfavoring recommended packages work if strong recommends
+    is enabled
+  * no longer disable infarch rules when they don't conflict with
+    the job
+- new features:
+  * do favor evaluation before pruning allowing to (dis)favor
+    specific package versions
+
+Version 0.7.2
+- bug fixes:
+  * do not autouninstall packages because of forcebest updates
+- new features:
+  * support rpm's new '^' version separator
+  * support set/get_considered_list in bindings
+  * new experimental SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED flag
+
+Version 0.7.1
+- fix nasty off-by-one error in repo_write
+
+Version 0.7.0
+- soname bump to "1"
+- incompatible API changes:
+  * bindings: Selection.flags is now an attribute
+  * repodata_lookup_num now works like the other lookup_num functions
+- new functions:
+  * selection_make_matchsolvable
+  * selection_make_matchsolvablelist
+  * pool_whatmatchessolvable
+  * repodata_search_arrayelement
+  * repodata_lookup_kv_uninternalized
+  * repodata_search_uninternalized
+  * repodata_translate_dir
+- new repowriter interface to write solv files allowing better
+  control over what gets written
+- support for filtered file lists with a custom filter
+- dropped support of (since a long time unused) REPOKEY_TYPE_U32
+
+Version 0.6.35
+- new configuration options:
+  * ENABLE_ZSTD_COMPRESSION: support zstd compression
+  * ENABLE_ZCHUNK_COMPRESSION: support zchunk compression
+- new features:
+  * new repodata_set_kv() function
+  * new pool_solvable2id() inline function
+  * bindings: new str2dir, dir2str, add_dirstr repodata methods
+- other changes
+  * new repo2solv tool replacing the old shell script
+
+Version 0.6.34
+- new features:
+  * also look at suggests for package ordering
+
+Version 0.6.33
+- new features:
+  * new Selection.clone() method in the bindings
+  * new pool.parserpmrichdep() method in the bindings
+
+Version 0.6.32
+- fixed bug that could make fileconflict detection very slow
+  in some cases
 
 Version 0.6.31
 - new configuration options: