2 This file contains the major changes between
7 * support conda constrains dependencies
11 * support arch<->noarch package changes when creating patch
12 conflicts from the updateinfo data
13 * also support other rpm database types
15 * support for SOLVER_BLACKLIST jobs that block the installation
16 of matched packages unless they are directly selected by an
18 * libsolv now also parses the patch status in the updateinfo
20 * new solvable_matchessolvable() function
24 * fix updating of too many packages in focusbest mode
25 * fix handling of disabled installed packages in distupgrade
27 * new POOL_FLAG_WHATPROVIDESWITHDISABLED pool flag
31 * fix repository priority handling for multiversion packages
32 * better support of inverval deps in pool_match_dep()
33 * support src rpms that have non-empty provides
35 * bindings: add get_disabled_list() and set_disabled_list()
36 * bindings: add whatcontainsdep()
37 * bindings: make the selection filters return the self object
41 * fix favorq leaking between solver runs if the solver is reused
42 * fix SOLVER_FLAG_FOCUS_BEST updateing packages without reason
43 * be more correct with multiversion packages that obsolete their
45 * allow building with swig-4.0.0
46 * lock jobs now take precedence over dup and forcebest jobs
48 * MSVC compilation support
52 * repo_add_rpmdb: do not copy bad solvables from the old solv file
53 * fix cleandeps updates not updating all packages
55 * bindings: support pool.matchsolvable(), pool.whatmatchessolvable()
56 pool.best_solvables() and selection.matchsolvable()
57 * experimental DISTTYPE_CONDA and REL_CONDA support
61 * fixed a couple of null pointer derefs and potential memory
63 * made disfavoring recommended packages work if strong recommends
65 * no longer disable infarch rules when they don't conflict with
68 * do favor evaluation before pruning allowing to (dis)favor
69 specific package versions
73 * do not autouninstall packages because of forcebest updates
75 * support rpm's new '^' version separator
76 * support set/get_considered_list in bindings
77 * new experimental SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED flag
80 - fix nasty off-by-one error in repo_write
84 - incompatible API changes:
85 * bindings: Selection.flags is now an attribute
86 * repodata_lookup_num now works like the other lookup_num functions
88 * selection_make_matchsolvable
89 * selection_make_matchsolvablelist
90 * pool_whatmatchessolvable
91 * repodata_search_arrayelement
92 * repodata_lookup_kv_uninternalized
93 * repodata_search_uninternalized
94 * repodata_translate_dir
95 - new repowriter interface to write solv files allowing better
96 control over what gets written
97 - support for filtered file lists with a custom filter
98 - dropped support of (since a long time unused) REPOKEY_TYPE_U32
101 - new configuration options:
102 * ENABLE_ZSTD_COMPRESSION: support zstd compression
103 * ENABLE_ZCHUNK_COMPRESSION: support zchunk compression
105 * new repodata_set_kv() function
106 * new pool_solvable2id() inline function
107 * bindings: new str2dir, dir2str, add_dirstr repodata methods
109 * new repo2solv tool replacing the old shell script
113 * also look at suggests for package ordering
117 * new Selection.clone() method in the bindings
118 * new pool.parserpmrichdep() method in the bindings
121 - fixed bug that could make fileconflict detection very slow
125 - new configuration options:
126 * ENABLE_RPMDB_LIBRPM: use librpm to read the package
128 * ENABLE_RPMPKG_LIBRPM: use librpm to access information
131 * new pool_set_whatprovides function to manually change
132 the whatprovides data
133 * new selection_subtract function to remove packages of
134 one selection from another selection
135 * new selection flags SELECTION_FILTER,
136 SELECTION_WITH_DISABLED and SELECTION_WITH_BADARCH
137 * new map_invertall function to invert a bitmap
138 * new map_clr_at function to clear some bits
142 * many fixes and extenstions for cleandeps, e.g.
143 cleandeps now works for "update all packages"
144 * support debian packages with xz compressed control.tar
145 * always create dup rules for "distupgrade" jobs
146 * use recommends also for ordering packages
150 * support for REL_WITHOUT and REL_UNLESS dependencies
151 * solver_get_recommendations available in bindings
155 * new pool_best_solvables() function
159 * allow building with libxml2 instead of libexpat
160 * better handing of "forcebest with uninstall"
161 * speed improvements for "name = md5sum" dependencies
164 - export solvable_matchesdep function, as we now
165 use it in the bindings
169 * new SOLVER_FLAG_STRONG_RECOMMENDS flag
170 * new SOLVER_FLAG_INSTALL_ALSO_UPDATES flag
171 * new matchesdep() method in bindings
172 * SOLVABLE_NAME selects nevr matching for
173 pool_whatmatchesdep and solvable_matchesdep
177 * new SOLVER_FLAG_FOCUS_BEST flag
179 Version 0.6.22, 0.6.23
180 - bug fix releases, no new features
184 * SOLVER_FAVOR and SOLVER_DISFAVOR job types
186 * selection_make_matchdepid
187 * pool_whatcontainsdep
188 * pool_parserpmrichdep
192 * filter Requires(pre,post) for installed packages
196 * SOLVER_ALLOWUNINSTALL job type
197 * ordercycle introspection
199 * transaction_order_get_cycle
200 * transaction_order_get_cycleids
210 * pool_ids2whatprovides
214 * much improved package choosing code
215 * new testcase dependency format
216 * alternatives introspection
218 * pool_deb_get_autoinstalled
219 * solver_alternative2str
220 * solver_alternatives_count
221 * solver_get_alternative
222 * solver_rule2pkgrule
227 * support yum style obsolete handling
231 repodata_stringify() now returns the string
233 * add BREAK_ORPHANS and KEEP_ORPHANS solver flags
236 - ABI change: cleaned up and reordered knownid.h
237 - added support for sha224/sha384/sha512
238 - API change in the bindings:
239 * dropped solvid arg from most Dataiterator
241 * changed Datamatch results from methods to
243 * automatically delete the pool if the owner
244 object is freed (use the disown method to
245 get the old behavior).
247 * pool_add_userinstalled_jobs
248 * solver_get_userinstalled