9bdc2d8dcfd1b69d745b6df105890c83fa303471
[platform/upstream/libsolv.git] / NEWS
1
2 This file contains the major changes between
3 libsolv versions:
4
5 Version 0.7.12
6 - conda: support packages.conda repositories
7 - conda: de-priorize track features
8 - allow win32 to build shared lib
9 - selected bug fixes:
10   * fix ruleinfo of complex dependencies returning the wrong origin
11
12 Version 0.7.11
13 - ENABLE_RPMDB_LIBRPM is now the default
14 - selected bug fixes:
15   * fixed solv_zchunk decoding error if large chunks are used
16   * treat retracted pathes as irrelevant
17   * made add_update_target work with multiversion installs
18
19 Version 0.7.10
20 - new features:
21   * new rpm_stat_database() function
22   * new rpm_hash_database_state() function
23
24 Version 0.7.9
25 - new features:
26   * support conda constrains dependencies
27
28 Version 0.7.8
29 - selected bug fixes:
30   * support arch<->noarch package changes when creating patch
31     conflicts from the updateinfo data
32   * also support other rpm database types
33 - new features:
34   * support for SOLVER_BLACKLIST jobs that block the installation
35     of matched packages unless they are directly selected by an
36     SOLVER_INSTALL job
37   * libsolv now also parses the patch status in the updateinfo
38     parser
39   * new solvable_matchessolvable() function
40
41 Version 0.7.7
42 - selected bug fixes:
43   * fix updating of too many packages in focusbest mode
44   * fix handling of disabled installed packages in distupgrade
45 - new features
46   * new POOL_FLAG_WHATPROVIDESWITHDISABLED pool flag
47
48 Version 0.7.6
49 - selected bug fixes:
50   * fix repository priority handling for multiversion packages
51   * better support of inverval deps in pool_match_dep()
52   * support src rpms that have non-empty provides
53 - new features
54   * bindings: add get_disabled_list() and set_disabled_list()
55   * bindings: add whatcontainsdep()
56   * bindings: make the selection filters return the self object
57
58 Version 0.7.5
59 - selected bug fixes:
60   * fix favorq leaking between solver runs if the solver is reused
61   * fix SOLVER_FLAG_FOCUS_BEST updateing packages without reason
62   * be more correct with multiversion packages that obsolete their
63     own name
64   * allow building with swig-4.0.0
65   * lock jobs now take precedence over dup and forcebest jobs
66 - new features
67   * MSVC compilation support
68
69 Version 0.7.4
70 - selected bug fixes:
71   * repo_add_rpmdb: do not copy bad solvables from the old solv file
72   * fix cleandeps updates not updating all packages
73 - new features:
74   * bindings: support pool.matchsolvable(), pool.whatmatchessolvable()
75     pool.best_solvables() and selection.matchsolvable()
76   * experimental DISTTYPE_CONDA and REL_CONDA support
77
78 Version 0.7.3
79 - selected bug fixes:
80   * fixed a couple of null pointer derefs and potential memory
81     leaks
82   * made disfavoring recommended packages work if strong recommends
83     is enabled
84   * no longer disable infarch rules when they don't conflict with
85     the job
86 - new features:
87   * do favor evaluation before pruning allowing to (dis)favor
88     specific package versions
89
90 Version 0.7.2
91 - bug fixes:
92   * do not autouninstall packages because of forcebest updates
93 - new features:
94   * support rpm's new '^' version separator
95   * support set/get_considered_list in bindings
96   * new experimental SOLVER_FLAG_ONLY_NAMESPACE_RECOMMENDED flag
97
98 Version 0.7.1
99 - fix nasty off-by-one error in repo_write
100
101 Version 0.7.0
102 - soname bump to "1"
103 - incompatible API changes:
104   * bindings: Selection.flags is now an attribute
105   * repodata_lookup_num now works like the other lookup_num functions
106 - new functions:
107   * selection_make_matchsolvable
108   * selection_make_matchsolvablelist
109   * pool_whatmatchessolvable
110   * repodata_search_arrayelement
111   * repodata_lookup_kv_uninternalized
112   * repodata_search_uninternalized
113   * repodata_translate_dir
114 - new repowriter interface to write solv files allowing better
115   control over what gets written
116 - support for filtered file lists with a custom filter
117 - dropped support of (since a long time unused) REPOKEY_TYPE_U32
118
119 Version 0.6.35
120 - new configuration options:
121   * ENABLE_ZSTD_COMPRESSION: support zstd compression
122   * ENABLE_ZCHUNK_COMPRESSION: support zchunk compression
123 - new features:
124   * new repodata_set_kv() function
125   * new pool_solvable2id() inline function
126   * bindings: new str2dir, dir2str, add_dirstr repodata methods
127 - other changes
128   * new repo2solv tool replacing the old shell script
129
130 Version 0.6.34
131 - new features:
132   * also look at suggests for package ordering
133
134 Version 0.6.33
135 - new features:
136   * new Selection.clone() method in the bindings
137   * new pool.parserpmrichdep() method in the bindings
138
139 Version 0.6.32
140 - fixed bug that could make fileconflict detection very slow
141   in some cases
142
143 Version 0.6.31
144 - new configuration options:
145   * ENABLE_RPMDB_LIBRPM: use librpm to read the package
146     database
147   * ENABLE_RPMPKG_LIBRPM: use librpm to access information
148     from package headers
149 - new features:
150   * new pool_set_whatprovides function to manually change
151     the whatprovides data
152   * new selection_subtract function to remove packages of
153     one selection from another selection
154   * new selection flags SELECTION_FILTER,
155     SELECTION_WITH_DISABLED and SELECTION_WITH_BADARCH
156   * new map_invertall function to invert a bitmap
157   * new map_clr_at function to clear some bits
158
159 Version 0.6.30
160 - new features:
161   * many fixes and extenstions for cleandeps, e.g.
162     cleandeps now works for "update all packages"
163   * support debian packages with xz compressed control.tar
164   * always create dup rules for "distupgrade" jobs
165   * use recommends also for ordering packages
166
167 Version 0.6.29
168 - new features:
169   * support for REL_WITHOUT and REL_UNLESS dependencies
170   * solver_get_recommendations available in bindings
171
172 Version 0.6.28
173 - new features:
174   * new pool_best_solvables() function
175
176 Version 0.6.27
177 - new features:
178   * allow building with libxml2 instead of libexpat
179   * better handing of "forcebest with uninstall"
180   * speed improvements for "name = md5sum" dependencies
181
182 Version 0.6.26
183 - export solvable_matchesdep function, as we now
184   use it in the bindings
185
186 Version 0.6.25
187 - new features:
188   * new SOLVER_FLAG_STRONG_RECOMMENDS flag
189   * new SOLVER_FLAG_INSTALL_ALSO_UPDATES flag
190   * new matchesdep() method in bindings
191   * SOLVABLE_NAME selects nevr matching for
192     pool_whatmatchesdep and solvable_matchesdep
193  
194 Version 0.6.24
195 - new features:
196   * new SOLVER_FLAG_FOCUS_BEST flag
197
198 Version 0.6.22, 0.6.23
199 - bug fix releases, no new features
200
201 Version 0.6.21
202 - new features:
203   * SOLVER_FAVOR and SOLVER_DISFAVOR job types
204 - new functions:
205   * selection_make_matchdepid
206   * pool_whatcontainsdep
207   * pool_parserpmrichdep
208
209 Version 0.6.20
210 - new features:
211   * filter Requires(pre,post) for installed packages
212
213 Version 0.6.13:
214 - new features:
215   * SOLVER_ALLOWUNINSTALL job type
216   * ordercycle introspection
217 - new functions:
218   * transaction_order_get_cycle
219   * transaction_order_get_cycleids
220
221 Version 0.6.12:
222 - new features:
223   * tcl bindings
224 - new functions:
225   * solv_chksum_cmp
226
227 Version 0.6.11:
228 - new functions:
229   * pool_ids2whatprovides
230
231 Version 0.6.9:
232 - new features:
233   * much improved package choosing code
234   * new testcase dependency format
235   * alternatives introspection
236 - new functions:
237   * pool_deb_get_autoinstalled
238   * solver_alternative2str
239   * solver_alternatives_count
240   * solver_get_alternative
241   * solver_rule2pkgrule
242   * testcase_dep2str
243
244 Version 0.6.5:
245 - new features:
246   * support yum style obsolete handling
247
248 Version 0.6.1:
249 - API change:
250   repodata_stringify() now returns the string
251 - new features:
252   * add BREAK_ORPHANS and KEEP_ORPHANS solver flags
253
254 Version 0.6.0:
255 - ABI change: cleaned up and reordered knownid.h
256 - added support for sha224/sha384/sha512
257 - API change in the bindings:
258   * dropped solvid arg from most Dataiterator
259     constructors
260   * changed Datamatch results from methods to
261     attributes
262   * automatically delete the pool if the owner
263     object is freed (use the disown method to
264     get the old behavior).
265 - new functions:
266   * pool_add_userinstalled_jobs
267   * solver_get_userinstalled
268