2 This file contains the major changes between
6 - ENABLE_RPMDB_LIBRPM is now the default
8 * fixed solv_zchunk decoding error if large chunks are used
9 * treat retracted pathes as irrelevant
10 * made add_update_target work with multiversion installs
14 * new rpm_stat_database() function
15 * new rpm_hash_database_state() function
19 * support conda constrains dependencies
23 * support arch<->noarch package changes when creating patch
24 conflicts from the updateinfo data
25 * also support other rpm database types
27 * support for SOLVER_BLACKLIST jobs that block the installation
28 of matched packages unless they are directly selected by an
30 * libsolv now also parses the patch status in the updateinfo
32 * new solvable_matchessolvable() function
36 * fix updating of too many packages in focusbest mode
37 * fix handling of disabled installed packages in distupgrade
39 * new POOL_FLAG_WHATPROVIDESWITHDISABLED pool flag
43 * fix repository priority handling for multiversion packages
44 * better support of inverval deps in pool_match_dep()
45 * support src rpms that have non-empty provides
47 * bindings: add get_disabled_list() and set_disabled_list()
48 * bindings: add whatcontainsdep()
49 * bindings: make the selection filters return the self object
53 * fix favorq leaking between solver runs if the solver is reused
54 * fix SOLVER_FLAG_FOCUS_BEST updateing packages without reason
55 * be more correct with multiversion packages that obsolete their
57 * allow building with swig-4.0.0
58 * lock jobs now take precedence over dup and forcebest jobs
60 * MSVC compilation support
64 * repo_add_rpmdb: do not copy bad solvables from the old solv file
65 * fix cleandeps updates not updating all packages
67 * bindings: support pool.matchsolvable(), pool.whatmatchessolvable()
68 pool.best_solvables() and selection.matchsolvable()
69 * experimental DISTTYPE_CONDA and REL_CONDA support
73 * fixed a couple of null pointer derefs and potential memory
75 * made disfavoring recommended packages work if strong recommends
77 * no longer disable infarch rules when they don't conflict with
80 * do favor evaluation before pruning allowing to (dis)favor
81 specific package versions
85 * do not autouninstall packages because of forcebest updates
87 * support rpm's new '^' version separator
88 * support set/get_considered_list in bindings
89 * new experimental SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED flag
92 - fix nasty off-by-one error in repo_write
96 - incompatible API changes:
97 * bindings: Selection.flags is now an attribute
98 * repodata_lookup_num now works like the other lookup_num functions
100 * selection_make_matchsolvable
101 * selection_make_matchsolvablelist
102 * pool_whatmatchessolvable
103 * repodata_search_arrayelement
104 * repodata_lookup_kv_uninternalized
105 * repodata_search_uninternalized
106 * repodata_translate_dir
107 - new repowriter interface to write solv files allowing better
108 control over what gets written
109 - support for filtered file lists with a custom filter
110 - dropped support of (since a long time unused) REPOKEY_TYPE_U32
113 - new configuration options:
114 * ENABLE_ZSTD_COMPRESSION: support zstd compression
115 * ENABLE_ZCHUNK_COMPRESSION: support zchunk compression
117 * new repodata_set_kv() function
118 * new pool_solvable2id() inline function
119 * bindings: new str2dir, dir2str, add_dirstr repodata methods
121 * new repo2solv tool replacing the old shell script
125 * also look at suggests for package ordering
129 * new Selection.clone() method in the bindings
130 * new pool.parserpmrichdep() method in the bindings
133 - fixed bug that could make fileconflict detection very slow
137 - new configuration options:
138 * ENABLE_RPMDB_LIBRPM: use librpm to read the package
140 * ENABLE_RPMPKG_LIBRPM: use librpm to access information
143 * new pool_set_whatprovides function to manually change
144 the whatprovides data
145 * new selection_subtract function to remove packages of
146 one selection from another selection
147 * new selection flags SELECTION_FILTER,
148 SELECTION_WITH_DISABLED and SELECTION_WITH_BADARCH
149 * new map_invertall function to invert a bitmap
150 * new map_clr_at function to clear some bits
154 * many fixes and extenstions for cleandeps, e.g.
155 cleandeps now works for "update all packages"
156 * support debian packages with xz compressed control.tar
157 * always create dup rules for "distupgrade" jobs
158 * use recommends also for ordering packages
162 * support for REL_WITHOUT and REL_UNLESS dependencies
163 * solver_get_recommendations available in bindings
167 * new pool_best_solvables() function
171 * allow building with libxml2 instead of libexpat
172 * better handing of "forcebest with uninstall"
173 * speed improvements for "name = md5sum" dependencies
176 - export solvable_matchesdep function, as we now
177 use it in the bindings
181 * new SOLVER_FLAG_STRONG_RECOMMENDS flag
182 * new SOLVER_FLAG_INSTALL_ALSO_UPDATES flag
183 * new matchesdep() method in bindings
184 * SOLVABLE_NAME selects nevr matching for
185 pool_whatmatchesdep and solvable_matchesdep
189 * new SOLVER_FLAG_FOCUS_BEST flag
191 Version 0.6.22, 0.6.23
192 - bug fix releases, no new features
196 * SOLVER_FAVOR and SOLVER_DISFAVOR job types
198 * selection_make_matchdepid
199 * pool_whatcontainsdep
200 * pool_parserpmrichdep
204 * filter Requires(pre,post) for installed packages
208 * SOLVER_ALLOWUNINSTALL job type
209 * ordercycle introspection
211 * transaction_order_get_cycle
212 * transaction_order_get_cycleids
222 * pool_ids2whatprovides
226 * much improved package choosing code
227 * new testcase dependency format
228 * alternatives introspection
230 * pool_deb_get_autoinstalled
231 * solver_alternative2str
232 * solver_alternatives_count
233 * solver_get_alternative
234 * solver_rule2pkgrule
239 * support yum style obsolete handling
243 repodata_stringify() now returns the string
245 * add BREAK_ORPHANS and KEEP_ORPHANS solver flags
248 - ABI change: cleaned up and reordered knownid.h
249 - added support for sha224/sha384/sha512
250 - API change in the bindings:
251 * dropped solvid arg from most Dataiterator
253 * changed Datamatch results from methods to
255 * automatically delete the pool if the owner
256 object is freed (use the disown method to
257 get the old behavior).
259 * pool_add_userinstalled_jobs
260 * solver_get_userinstalled