@@ -3,6 +3,181 @@ repositories (changes that are automatically handled by the format upgrade tools
3
3
are not marked). Those prefixed with "(+)" are new command/option (since
4
4
2.1.0~alpha2).
5
5
6
+ 2.3.0~alpha1:
7
+ * (*) When loading a repository, don't automatically populate `extra-files:`
8
+ field with found files in `files/` [#5564 @rjbou]
9
+ * Fix most unhelpful conflict explanation message by merging all formulas
10
+ together [#6106 @kit-ty-kate]
11
+ * Silently mark packages requiring an unsupported version of opam as unavailable
12
+ [#5665 @kit-ty-kate - fix #5631]
13
+ * Fix Windows builds with OCaml >= 5.0 [#6189 @kit-ty-kate - fix #6148]
14
+ * (+) Add a new `opam list --latests-only` option to only list the latest
15
+ packages [#5375 @kit-ty-kate]
16
+ * (*) opam switch list-available will not display compilers flagged with
17
+ avoid-version/deprecated unless --all is given
18
+ [#6098 @kit-ty-kate - fix #6089]
19
+ * (*) Fix `opam install --check pkg` when pkg depends on a non-existing package
20
+ [#6121 @kit-ty-kate]
21
+ * (*) Make `opam install --check` check if all dependencies are installed
22
+ recursively [#6122 @kit-ty-kate - fix #6097]
23
+ * (+) Add the `--verbose-on` option to enable verbose mode on specified package
24
+ names [#5682 @desumn @rjbou]
25
+ * (+) Add `opam switch import --deps-only` option to install only dependencies
26
+ of root package at import [#5388 @rjbou - fix #5200]
27
+ * Always list all the repositories with `opam config report` regardless of
28
+ whether or not a switch is currently set [#6116 @kit-ty-kate]
29
+ * Add support for wget2 [#6104 @kit-ty-kate]
30
+ * (*) Make accepted `--repos` URLs on creation consistent with `opam repository`
31
+ [#6091 @Keryan-dev - fix #4673]
32
+ * (*) Fix the value of the 'arch' variable when the current OS is 32bit on a
33
+ 64bit machine [#5950 @kit-ty-kate - fix #5949]
34
+ * Fix package names displayed on conflicts [#6055 @rjbou - fix #6030]
35
+ * Improve the error message when a directory is not available while fetching
36
+ using rsync [#6027 @kit-ty-kate]
37
+ * (*) Fail when git submodule fails to update instead of showing a warning and
38
+ ignoring the error [#6132 @kit-ty-kate - fix #6131]
39
+ * Suppress all the Windows menus when running with `opam init -ya`
40
+ [#6034 @dra27]
41
+ * Improvements to the `builtin-0install` solver:
42
+ * Add support for unordered criteria [#6130 @kit-ty-kate]
43
+ * Add support for the `-changed` criteria to make the solver prefer to keep
44
+ packages installed at their current version [#6130 @kit-ty-kate]
45
+ * Add support for the `-count[avoid-version,solution]` criteria to avoid
46
+ packages marked with `avoid-version` flag [#6130 @kit-ty-kate]
47
+ * The default criteria changed from empty to
48
+ `-changed,-count[avoid-version,solution]` [#6130 @kit-ty-kate]
49
+ * The upgrade and fixup criteria changed from empty to
50
+ `-count[avoid-version,solution]` [#6130 @kit-ty-kate]
51
+ * Fix apt/debian lookup for installed packages [#6054 @rjbou]
52
+ * Make `opam config report` return the actual invariant syntax expected by
53
+ `--invariant` [#5619 @kit-ty-kate - fixes #5491]
54
+ * (*) Make `opam switch set-invariant` return the actual invariant syntax
55
+ expected by `--invariant` [#5619 @kit-ty-kate - fixes #5491]
56
+ * Make fetching an archive from cache add missing symlinks
57
+ [#6068 @kit-ty-kate - fix #6064]
58
+ * Performance improvements:
59
+ * Stop using polymorphic comparison when comparing
60
+ `OpamTypes.switch_selections` [#6102 @kit-ty-kate]
61
+ * Improve performance of `opam install --check` [#6122 @kit-ty-kate]
62
+ * Reduce allocations in `OpamVersionCompare` [#6144 @talex5]
63
+ * Speedup `OpamVersionCompare` by 25% by removing the unused handling of epoch
64
+ [#5518 @kit-ty-kate]
65
+ * Speedup `opam list` on options that do not use availibility information
66
+ [#5317 @kit-ty-kate - fix #5314]
67
+ * Make all writes atomic [#5489 @kit-ty-kate]
68
+ * Warn when setting a variable if an option is shadowed
69
+ [#4904 @rjbou - fix #4730]
70
+ * Changes and improvements to `opam lint`:
71
+ * Add E70 to check `extra-files:` duplicated fields [#5561 @rjbou]
72
+ * Add E71 to check if the same checksum algorithm is used several times for a
73
+ given url in `url` section [#5561 @rjbou]
74
+ * Add E72 to check if the same checksum algorithm is used several times for a
75
+ given url in `extra-sources` section [#5561 @rjbou]
76
+ * Add E73 to check that paths in `extra-files:` are not escapable
77
+ [#5561 @rjbou]
78
+ * Update W59 (no checksum in `url`) to always display a warning, untying it
79
+ from `--check-upstream` [#5561 @rjbou]
80
+ * Changes and improvements to the compilation of opam itself:
81
+ * Unset `OPAM_SWITCH_PREFIX` when using `make cold` [#5534 @kit-ty-kate]
82
+ * Bump the vendored opam-0install-cudf to 0.5.0 [#6130 @kit-ty-kate]
83
+ * Require opam-0install-cudf >= 0.5.0 [#6130 @kit-ty-kate]
84
+ * Bump the vendored mccs to 1.1+18 [#6170 @kit-ty-kate]
85
+ * Upgrade the minimum required version for dune from 2.0.0 to 2.6.0
86
+ [#5381 @dra27]
87
+ * Remove `--with-acl` option from the configure script and its related C stubs
88
+ (reverts a Cygwin fix in #4265) [#5381 @kit-ty-kate - fix #5373]
89
+ * Make the shell environment update hint easier to copy/paste
90
+ [#6159 @kit-ty-kate - fix #6158]
91
+ * Remove unnecessary copies/move when fetching archives
92
+ [#5018 @kit-ty-kate @rjbou]
93
+ * (*) Change the default cache location of `opam admin add-hashes` from
94
+ `~/.cache` to `<opamroot>/download-cache/hash-cache` [#6103 @rjbou]
95
+ * Make `opam admin cache` add missing symlinks [#6068 @kit-ty-kate - fix #6064]
96
+ * Add install.exe to the list of non-shadowed programs when adding Cygwin's bin
97
+ directory to PATH (ocamlfind et al can be affected by Vim for Windows)
98
+ [#6190 @dra27]
99
+ * Propagate future opamfile parse errors correctly [#6199 @dra27]
100
+ * Ensure future syntax errors are only reported when the syntax version is
101
+ greater than the client, not the format library [#6199 @dra27 - fix #6188]
102
+ * Always pass `--no-version-check` and `--no-write-registry` to Cygwin setup
103
+ [#6046 @dra27]
104
+ * Use `--quiet-mode noinput` for the internal Cygwin installation (which is
105
+ definitely a fully-specified command line) and `--quiet-mode unattended` for
106
+ external Cygwin installations (in case the user does need to select something,
107
+ e.g. a mirror) [#6046 @dra27]
108
+ * Add cli version 2.3 [#6045 #6151 @rjbou]
109
+ * Provide a shell/install.ps1 PowerShell script to install opam on Windows
110
+ [#5906 @kit-ty-kate @dra27]
111
+ * Fix opam unable to find executables on systems where users belong to more than
112
+ 32 groups when opam is built using musl libc
113
+ [#5381 #6200 @kit-ty-kate @dra27 - fix #5373]
114
+ * Allow patches to be applied regardless of CRLF or LF line ending
115
+ [#6182 @dra27]
116
+ * Internal changes:
117
+ * Move Windows stubs to opam-core [#5381 @dra27]
118
+ * Remove the meta opam packages opam and opam-admin [#6115 @kit-ty-kate]
119
+ * Improve and extend the tests
120
+ [#6045 #6045 #5989 #6055 #5642 #5327 #6103 #6068 #5377 #5474 #5682 #6125 #6121
121
+ #6139 #5375 #6105 #6146 #6098 #6132 #6122 #5561 #6106 #6199
122
+ @rjbou @kit-ty-kate @dra27 @Keryan-dev @madroach]
123
+ * Improve the benchmarks [#6094 #6078 #6123 #6149 @kit-ty-kate]
124
+ * Improve the test infrastructure
125
+ [#6105 #6155 #6184 #5564 #6079 #6081 #6132 #6074
126
+ @rjbou @kit-ty-kate @Keryan-dev @RyanGibb]
127
+ * Improve the documentation
128
+ [#5988 #5946 #6119 #6138 #6141 #5363
129
+ @kit-ty-kate @rjbou @mbarbin @shonfeder]
130
+ * API changes
131
+ * `OpamACL`: remove module [#5381 @kit-ty-kate]
132
+ * `OpamArg.build_options`: add `--verbose-on` flag [#5682 @desumn @rjbou]
133
+ * `OpamClientConfig.build_options`: add `verbose_on` field [#5682 @desumn]
134
+ * `OpamClientConfig.E`, `OpamArg.environment_variables`: and `OPAMVERBOSEON`
135
+ support [#5682 @desumn @rjbou]
136
+ * `OpamCudfCriteria`, `OpamBuiltinZ3.Syntax`: Move `OpamBuiltinZ3.Syntax`
137
+ into a dedicated module `OpamCudfCriteria` [#6130 @kit-ty-kate]
138
+ * `OpamFilename`: add `might_escape` to check if a path is escapable, ie
139
+ contains `<sep>..<sep>` [#5561 @rjbou]
140
+ * `OpamFileTools`: `read_opam` & `read_repo_opam` stop adding non registered
141
+ extra-files [#5564 @rjbou]
142
+ * `OpamFileTools.add_aux_files`: ignore non registered extra-files and make
143
+ the `files_subdir_hashes` argument optional (defaults to `false`)
144
+ [#5564 @rjbou]
145
+ * `OpamFormula`: add some missing comparison functions for `relop`,
146
+ `version_constraint` and `atom` (`compare_relop`,
147
+ `compare_version_constraint` and `compare_atom` respectively)
148
+ [#6122 @kit-ty-kate]
149
+ * `OpamFormula`: add `exists` [#5317 @kit-ty-kate]
150
+ * `OpamGit.fetch ?full_fetch` is now `true` by default instead of `false`
151
+ [#6146 @kit-ty-kate - fix #6145]
152
+ * `OpamHash`: export `compare_kind` [#5561 @rjbou]
153
+ * `OpamListCommand.selector`: Add `NotFlag` selector [#6098 @kit-ty-kate]
154
+ * `OpamRepository.fetch_from_cache`: when an archive is found, add a symlink
155
+ (or copy) for the ones found in opam file but not in cache
156
+ [#6068 @kit-ty-kate]
157
+ * `OpamStateConfig.opamroot_with_provenance`: restore previous behaviour to
158
+ `OpamStateConfig.opamroot` for compatibility with third party code
159
+ [#6047 @dra27]
160
+ * `OpamSolver.dependency_graph`: make `unavailable` a non-optional argument to
161
+ enforce speedups when availability information is not needed
162
+ [#5317 @kit-ty-kate]
163
+ * `OpamTypes.universe`: make `u_available` and `u_attrs` lazy to speedup
164
+ actions that do not require availiblity information
165
+ [#5317 @kit-ty-kate - fix #5314]
166
+ * `OpamTypesBase.switch_selections_{compare,equal}`: Add proper comparison
167
+ functions for `OpamTypes.switch_selections` [#6102 @kit-ty-kate]
168
+ * `OpamStd.Env`: add `env_string_list` for parsing string list environment
169
+ variables (comma separated) [#5682 @desumn]
170
+ * `OpamStd.Sys.getconf`: add a function to call the `getconf` command
171
+ [#5950 @kit-ty-kate]
172
+ * `OpamStd.Sys.resolve_command`: Fix opam unable to find executables on
173
+ systems where users belong to more than 32 groups when opam is built using
174
+ musl libc [#5381 @kit-ty-kate - fix #5373]
175
+ * `OpamSwitchCommand.import`: add optional `?deps_only` argument to install
176
+ only dependencies of root packages [#5388 @rjbou]
177
+ * `OpamSwitchState.{,reverse_}dependencies`: make `unavailable` a non-optional
178
+ argument to enforce speedups when availability information is not needed
179
+ [#5317 @kit-ty-kate]
180
+
6
181
2.2.1:
7
182
* (*) Fix a regression in `opam install --deps-only` where the direct
8
183
dependencies were not set as root packages [#6125 @rjbou]
0 commit comments