Working version changelog, used as a base for the changelog and the release note. Prefixes used to help generate release notes, changes, and blog posts:
- ✘ Possibly scripts breaking changes
- ◈ New option/command/subcommand
- [BUG] for bug fixes
- [NEW] for new features (not a command itself)
- [API] api updates 🕮 If there is changes in the API (new non optional argument, function renamed or moved, etc.), please update the API updates part (it helps opam library users)
- Fix typo in error message for opam var [#4786 @kit-ty-kate - fix #4785]
- Add cli 2.2 handling [#4853 @rjbou]
--no-depextsis the default in CLI 2.0 mode [#4908 @dra27]- [BUG] Fix behaviour on closed stdout/stderr [#4901 @altgr - fix #4216]
- Add
OPAMREPOSITORYTARRINGenvironment variable to enable repository tarring optimisation, it is disabled by default because it is an optimisation only on some os/configurations [#5015 @rjbou] - Refresh the actions list output, now sorted by action/package rather than dependency [#5045 @kit-ty-kate @AltGr - fix #5041]
- Put back the actions summary as part of confirmation question [#5045 @AltGr]
- Error report display: print action name [#5045 @AltGr]
- Refactored depext-related questions, with a flat menu instead of nested y/n questions [#5053 @AltGr - fix #5026]
- [BUG] Fix default cli handling for simple flags [#5099 @rjbou]
- Add
experimentalflags handling [#5099 @rjbou]
- Run the sandbox check in the temporary directory [#4787 @dra27 - fix #4783]
- [BUG] Fix
opam initandopam init --reinitwhen thejobsvariable has been set in the opamrc or the current config. [#5056 @rjbou]
- Add a
'Fetchaction with several packages: one node to download once and prepare source once for packages that share same archive [#4893 @rjbou - fix #3741]
- Make the status of pinned packages more explicit during installation [#4987 @kit-ty-kate - fix #4925]
- Better recognize depexts on Gentoo, NetBSD, OpenBSD [#5065 @mndrix]
- Reimplement deps-only [#4975 @AltGr]
- ◈ Add
--formulaoption to specify a formula to install [#4975 @AltGr]
- Fix message when running
opam removeon an unavailable package [@AltGr - fix #4890] - Fix removal of root packages with
-aand an optional dependency explicitely specified [@AltGr - fix #4727]
- Put back support for switch creation with packages argument and
--packagesoption with cli 2.0, and a specific error message for cli 2.1 [#4853 @rjbou - fix #4843] - Ensure setenv can use package variables defined during the build [#4841 @dra27]
- [BUG] Fix `set-invariant: default repos were loaded instead of switch repos [#4866 @rjbou]
- Add support for
opam switch -(go to previous non-local switch) [#4910 @kit-ty-kate - fix 4866] - On loading, check for executable external files if they are in
PATH, and warn if not the case [#4932 @rjbou - fix #4923]
- Switch the default version when undefined from ~dev to dev [#4949 @kit-ty-kate]
- ◈ New option
opam pin --currentto fix a package in its current state (avoiding pending reinstallations or removals from the repository) [#4973 @AltGr - fix #4970] - [BUG] Fix using
--working-dirwith non pinned packages: it was not downloading sources as they were remove from package that need sources [#5082 @rjbou - fix #5060]
- Some optimisations to 'opam list --installable' queries combined with other filters [#4882 @altgr - fix #4311]
- Improve performance of some opam list combination (e.g. --available --installable) [#4999 @kit-ty-kate]
- Improve performance of opam list --conflicts-with when combined with other filters [#4999 @kit-ty-kate]
- Fix coinstallability filter corner case [#5024 @AltGr]
- Add
depextsto default printer [#4898 @rjbou] - Make
opam show --list-files <pkg>fail with not found when<pkg>is not installed [#4956 @kit-ty-kate - fix #4930] - Improve performance of opam show by 300% when the package to show is given explicitly or unique [#4998 @kit-ty-kate - fix #4997 and partially #4172]
- Don't error when displaying if switch is not set [#5027 @rjbou - fix #5025]
- Try to set a variable with option
--switch <sw>fails instead of writing a wrongswitch-configfile [#5027 @rjbou] - When a field is defined in switch and global scope, try to determine the scope also by checking switch selection [#5027 @rjbou]
- [NEW] Add
opam exec --no-switch[#4957 @kit-ty-kate - fix #4951]
- [BUG] Fix directory display in dev mode [#5102 @rjbou]
- Download source even if no switch is set [#4850 @rjbou @zapashcanon - fix #4809]
- [NEW] Add
--no-switchoption [#4850 @rjbou - fix #4858]
- W68: add warning for missing license field [#4766 @kit-ty-kate - partial fix #4598]
- W62: use the spdx_licenses library to check for valid licenses. This allows to use compound expressions such as "MIT AND (GPL-2.0-only OR LGPL-2.0-only)", as well as user defined licenses e.g. "LicenseRef-my-custom-license" [#4768 @kit-ty-kate - fixes #4598]
- E57 (capital on synopsis) not trigger W47 (empty descr) [#5070 @rjbou]
- When several checksums are specified, instead of adding in the cache only the archive by first checksum, name by best one and link others to this archive [#4696 rjbou]
- Update opam repository man doc regarding removal of the last repository in a switch [#4435 - fixes #4381]
- Don't display global message when
this-switchis given [#4899 @rjbou - fix #4889] - Set the priority of user-set archive-mirrors higher than the repositories'. This allows opam-repository to use the default opam.ocaml.org cache and be more resilient to changed/force-pushed or unavailable archives. [#4830 @kit-ty-kate - fixes #4411]
- Repository tarring "optimisation" no more needed, removed in favor of a plain directory. It still can be used with environment variable
OPAMREPOSITORYTARRING. [#5015 @kit-ty-kate @rjbou @AltGr - fix #4586]- Fix loading a plain repository froma tarred one [#5109 @rjbou]
- Fix lock generation of multiple interdependent packages [#4993 @AltGr]
- [NEW] Add
--untrackedoption to remove interactively untracked files [{4915 @rjbou - fix #4831]
- Fix substring errors in preserved_format [#4941 @rjbou - fix #4936]
- Set
DEBIAN_FRONTEND=noninteractivefor unsafe-yes confirmation level [#4735 @dra27 - partially fix #4731] [2.1.0~rc2 #4739] - Fix depext alpine tagged repositories handling [#4763 @rjbou] [2.1.0~rc2 #4758]
- Homebrew: Add support for casks and full-names [#4801 @kit-ty-kate]
- Disable the detection of available packages on RHEL-based distributions. This fixes an issue on RHEL-based distributions where yum list used to detect available and installed packages would wait for user input without showing any output and/or fail in some cases [#4791 @kit-ty-kate - fixes #4790]
- Archlinux: handle virtual package detection [#4831 @rjbou - partial fix #4759]
- Fallback on dnf if yum does not exist on RHEL-based systems [#4825 @kit-ty-kate]
- Stop zypper from upgrading packages on updates on OpenSUSE [#4978 @kit-ty-kate]
- Fix format upgrade when there is missing local switches in the config file [#4763 @rjbou - fix #4713] [2.1.0~rc2 #4715]
- Fix not recorded local switch handling, with format upgrade [#4763 @rjbou] [2.1.0~rc2 #4715]
- Set opam root version to 2.1 [#4763 @rjbou] [2.1.0~rc2 #4715]
- Fix 2.1
alpha2 to 2.1 format upgrade with reinit [#4763 @rjbou - fix #4748] [2.1.0rc2 #4750] - Fix bypass-check handling on reinit [#4750 @rjbou] [#4763 @rjbou] [2.1.0~rc2 #4750 #4756]
- Sync the behaviour of the macOS sandbox script with Linux's: /tmp is now ready-only [#4719 @kit-ty-kate]
- Always mount every directories under / on Linux [#4795 @kit-ty-kate]
- Get rid of OPAM_USER_PATH_RO (never used on macOS and no longer needed on Linux) [#4795 @kit-ty-kate]
- Print error message if command doesn't exist [#4971 @kit-ty-kat - fix #4112]
- Pass --depth=1 to git-fetch in the Git repo backend [#4442 @dra27]
- Use 4.08's unnamed functor arguments to silence warning 67 [#4775 @dra27]
- git: disable colored output [#4884 @rjbou]
- Bump src_exts and fix build compat with Dune 2.9.0 [#4752 @dra27]
- Upgrade to dose3 >= 6.1 and vendor dose3 7.0.0 [#4760 @kit-ty-kate]
- Change minimum required OCaml to 4.03.0 [#4770 @dra27]
- Change minimum required Dune to 2.0 [#4770 @dra27]
- Change minimum required OCaml to 4.08.0 for everything except opam-core, opam-format and opam-installer [#4775 @dra27]
- Fix the cold target in presence of an older OCaml compiler version on macOS [#4802 @kit-ty-kate - fix #4801]
- Harden the check for a C++ compiler [#4776 @dra27 - fix #3843]
- Add
--without-duneto configure to force compiling vendored Dune [#4776 @dra27] - Use
--without-duneinmake coldto avoid picking up external Dune [#4776 @dra27 - fix #3987] - Add
--with-vendored-depsto replacemake lib-extinstruction [#4776 @dra27 - fix #4772] - Fix vendored build on mingw-w64 with g++ 11.2 [#4835 @dra27]
- Switch to vendored build if spdx_licenses is missing [#4842 @dra27]
- Check versions of findlib packages in configure [#4842 @dra27]
- Fix dose3 download url since gforge is gone [#4870 @avsm]
- Update bootstrap ocaml to 4.12.1 to integrate mingw fix [#4927 @rjbou]
- Update bootstrap to use
-jfor Unix (Windows already does) [#4988 @dra27] - Update cold compiler to 4.13 [#5017 @dra27]
- Bring the autogen script from ocaml/ocaml to be compatible with non-ubuntu-patched autoconf [#5090 @kit-ty-kate #5093 @dra27]
- configure: Use gmake instead of make on Unix systems (fixes BSDs) [#5090 @kit-ty-kate]
- Patch ocaml-opam/ocaml-mccs#36 in the src_ext build to fix Cygwin32 [#5094 @dra27]
- Silence warning 70 [#5104 @dra27]
- Add
jsonm(anduutf) dependency [#5098 @rjbou - fix #5085] - Bump opam-file-format to 2.1.4 [#5117 @kit-ty-kate - fix #5116]
- Add
shadependency [#5042 @kit-ty-kate] - Add a 'test' target [#5129 @kit-ty-kate @mehdid - partially fixes #5058]
- Fix caching of Cygwin compiler on AppVeyor [#4988 @dra27]
- Small update to GHA scripts [#5055 @dra27]
- Adapt Windows CI to new safe.directory setting [#5119 @dra27]
- Bid a fond farewell to AppVeyor, with thanks for 5100+ CI builds [#5134 @dra27]
- ✘
opam admin cachenow ignores all already present cache files. Option--check-allrestores the previous behaviour of validating all checksums. - [BUG] Fix repo-upgrade internal error [#4965 @AltGr]
- Handle empty environment variable updates - missed cherry-pick from 2.0 [#4840 @dra27]
- Repository state: stop scanning directory once opam file is found [#4847 @rgrinberg]
- Fix reverting environment additions to PATH-like variables when several dirs added at once [#4861 @dra27]
- Actually allow multiple state caches to co-exist [#4934 @dra27 - fix #4554 properly this time]
- Don’t rebuild packages when updating dependencies or availablity, unless the current state needs to be changed [#5118 @kit-ty-kate - fix #4647]
- Rebuild packages when removing or adding the "plugin" flag [#5118 @kit-ty-kate]
- [BUG] Remove z3 debug output [#4723 @rjbou - fix #4717] [2.1.0~rc2 #4720]
- Fix and improve the Z3 solver backend [#4880 @altgr]
- Refactored, fixed, improved and optimised the z3 solver backend [#4878 @altgr]
- Add an explanation for "no longer available" packages [#4969 @AltGr]
- Orphan packages are now handled at the solver level instead of a pre-processing phase, better ensuring consistency [#4969 @altgr]
- Make the 0install solver non-optional [#4909 @kit-ty-kate]
- Optimised reverse dependencies calculation [#5005 @AltGr]
- Enable cudf preprocessing for (co)insallability calculation, resulting in a x20 speedup [@AltGr]
- Make sure that
--best-effortonly installs root package versions that where requested [#4796 @LasseBlaauwbroek] - Ask users to report errors when no explanations are given to them [#4981 @kit-ty-kate]
- Add bultin support for the 'deprecated' flag. Any packages flagged with deprecated would be avoided by the solver unless there is no other choice (e.g. some user wants to install package a which depends on b which is deprecated) If it is installed, show up a note after installation notifying the user that the package is deprecated. [#4523 @kit-ty-kate]
- Check whether the repository might need updating more often [#4935 @kit-ty-kate]
- ✘ It is no longer possible to process actions on packages that depend on a package that was removed upstream [#4969 @altgr]
- Fix (at least some of the) empty conflict explanations [#4982 @kit-ty-kate]
- Add license and lowerbounds to opam files [#4714 @kit-ty-kate]
- Bump version to 2.2.0
alphadev [#4725 @dra27] - Add specific comparison function on several module (that includes
OpamStd.ABSTRACT) [#4918 @rjbou] - Homogeneise is_archive tar & zip: if file exists check magic number, otherwise check extension [#4964 @rjbou]
- [BUG] Remove windows double printing on commands and their output [#4940 @rjbou]
- OpamParallel, MakeGraph(_).to_json: fix incorrect use of List.assoc [#5038 @Armael]
- [BUG] Fix display of command when parallelised [#5091 @rjbou]
- Add some debug log to OpamCudf.extract_explanations to help debug #4373 [#4981 @kit-ty-kate]
- Make SHA computation faster by using ocaml-sha [#5042 @kit-ty-kate]
- Support MSYS2: treat MSYS2 and Cygwin as equivalent [#4813 @jonahbeckford]
- Process control: close stdin by default for Windows subprocesses and on all platforms for the download command [#4615 @dra27]
- [BUG] handle converted variables correctly when no_undef_expand is true [#4811 @timbertson]
- [BUG] check Unix.has_symlink before using Unix.symlink [#4962 @jonahbeckford]
- OpamCudf: provide machine-readable information on conflicts caused by cycles [#4039 @gasche]
- Remove memoization from
best_effort ()to allow for multiple different settings during the same session (useful for libaray users) [#4805 @LasseBlaauwbroek] - [BUG] Catch
EACCESin lock function [#4948 @oandrieu - fix #4944] - Permissions: chmod+unlink before copy [#4827 @jonahbeckford @dra27]
- Support MSYS2: two-phase rsync on MSYS2 to allow MSYS2's behavior of copying rather than symlinking [#4817 @jonahbeckford]
- Update crowbar with compare functions [#4918 @rjbou]
- Add switch-invariant test [#4866 @rjbou]
- opam root version: add local switch cases [#4763 @rjbou] [2.1.0~rc2 #4715]
- opam root version: add reinit test casess [#4763 @rjbou] [2.1.0~rc2 #4750]
- Add & update env tests [#4861 #4841 @rjbou @dra27]
- Port opam-rt tests: orphans, dep-cycles, reinstall, and big-upgrade [#4979 @AltGr]
- Add & update env tests [#4861 #4841 #4974 @rjbou @dra27 @AltGr]
- Add remove test [#5004 @AltGr]
- Add some simple tests for the "opam list" command [#5006 @kit-ty-kate]
- Add clean test for untracked option [#4915 @rjbou]
- Harmonise some repo hash to reduce opam repository checkout [#5031 @AltGr]
- Add repo optim enable/disable test [#5015 @rjbou]
- Update list with co-instabillity [#5024 @AltGr]
- Add lint test [#4967 @rjbou]
- Add lock test [#4963 @rjbou]
- Add working dir/inplace/assume-built test [#5081 @rjbou]
- Fix github url:
git://form no more handled [#5097 @rjbou] - Add source test [#5101 @rjbou]
- Add upgrade (and update) test [#5106 @rjbou]
- Update var-option test with no switch examples [#5025]
- Escape for cmdliner.1.1.1 output change [#5131 @rjbou]
- Add deprectaed flag test [#4523 @kit-ty-kate]
- Escape for cmdliner.1.1.1 output chane [#5131 @rjbou]
- Add deps-only, install formula [#4975 @AltGr]
- Add
opam-catto normalise opam file printing [#4763 @rjbou @dra27] [2.1.0~rc2 #4715] - Fix meld reftest: open only with failing ones [#4913 @rjbou]
- Add
BASEDIRto environement [#4913 @rjbou] - Replace opam bin path [#4913 @rjbou]
- Add
grep -vcommand [#4913 @rjbou] - Apply grep & seds on file order [#4913 @rjbou]
- Precise
OPAMTMPregexp,hexainstead of'alphanumto avoid confusion withBASEDIR[#4913 @rjbou] - Hackish way to have several replacement in a single line [#4913 @rjbou]
- Substitution in regexp pattern (for environment variables) [#4913 @rjbou]
- Substitution for opam-cat content [#4913 @rjbou]
- Allow one char package name on repo [#4966 @AltGr]
- Remove opam output beginning with
###[#4966 @AltGr] - Add
<pin:path>header to specify incomplete opam files to pin, it is updated from a template in reftest run (no lint errors) [#4966 @rjbou] - Unescape output [#4966 @rjbou]
- Clean outputs from opam error reporting block [#4966 @rjbou]
- Avoid diff when the repo is too old [#4979 @AltGr]
- Escape regexps characters in string replacements primitives [#5009 @kit-ty-kate]
- Automatically update default repo when adding a package file [#5004 @AltGr]
- Make all the tests work on macOS/arm64 [#5019 @kit-ty-kate]
- Add unix only tests handling [#5031 @AltGr]
- Add switch-set test [#4910 @kit-ty-kate]
- Replace vars on the right-hand of exports [#5024 @AltGr]
- Add solver backends compile test [#4723 @rjbou] [2.1.0~rc2 #4720]
- Fix ocaml link (http -> https) [#4729 @rjbou]
- Separate code from install workflow [#4773 @rjbou]
- Specify whitelist of changed files to launch workflow [#473 @rjbou]
- Update changelog checker list [#4773 @rjbou]
- Launch main hygiene job on configure/src_ext changes [#4773 @rjbou]
- Add opam.ocaml.org cache to reach disappearing archive [#4865 @rjbou]
- Update ocaml version frm 4.11.2 to 4.12.0 (because of macos failure) [#4865 @rjbou]
- Add a depext checkup, launched only is
OpamSysInteractis changed [#4788 @rjbou] - Arrange scripts directory [#4922 @rjbou]
- Run ci on tests changes [#4966 @rjbou]
- GHA: Fix caching for the "test" job [#5090 @dra27 @kit-ty-kate]
- Add gentoo depext test [#5067 @rjbou]
- Add more constraint path for launch of workflow [#5067 @rjbou]
- Upgrade packages for sovler jobs, in case depext changed [#5010 @rjbou]
- fish: fix deprecated redirection syntax
^[#4736 @vzaliva]
- Standardise
macOSuse [#4782 @kit-ty-kate] - Fix
spantag in mannual [#4855 @rjbou - fix #4848] - Add
avoid-versiondoc [#4896 @AltGR - fix #4864] - Document custom licenses [#4863 @kit-ty-kate - fix #4862]
- Add OpenBSD & FreeBSD in the precompiled binaries list [#5001 @mndrix]
- install.md: fix brew instructions, spelling [#4421 @johnwhitington]
- document the options of OpamSolver.dependencies [#5040 @gasche @Armael]
- Add github
git://protocol deprecation note [#5097 @rjbou] - Add src_ext/HACKING.md [#5095 @dra27]
OpamStd.ABSTRACT: addcompareandequal, that added those functions toOpamCLIVersion[#4918 @rjbou]OpamConfigCommand: add a labelled argumentno_switchtoexec[#4957 @kit-ty-kate]OpamClient: fixupdate_with_init_config, when ``jobswas set ininit_config`, it dropped rest of `config` update [#5056 @rjbou]- Add an optional argument to
OpamArg.mk_subdocfor extra default elements:?extra_defaults:(validity * string * string) list[#4910 @kit-ty-kate] - Add
OpamSwitchCommand.previous_switch[#4910 @kit-ty-kate] OpamClient:requestedargument moved fromname_package_settopackage_set, to precise installed packages with--best-effort[#4796 @LasseBlaauwbroek]OpamConfigCommand:set_opt_switch,set_var_switch,options_list_switch, andvar_list_switchnow raise configuration error exception (50) if no switch is found [#5027 @rjbou]OpamArgs,OpamArgTools: addexperimentaloptional argument tocli_fromand replacedefaultbyoption:['experimental | 'ëefault]forcli_between, to handle experimental features [#5099 @rjbou]- OpamAction:
prepare_package_sourcecan now take any switch state (previously requiredrw) [#4850 @rjbou] OpamClient: handle formula on several functions, adding aformulalabelled or optional argument (upgrade_t,compute_upgrade_t,upgrade,fixup,install_t,install,remove_t, andremove) [#4975 @AltGr]OpamSolution: addprint_requestedto print actions reasons [#4975 @AltGr]OpamSolution.apply: take an optional argumentskip, to avoid filtering solution beforehand [#4975 @AltGr]
OpamRepositoryConfig: add in config recordrepo_tarringfield and as an argument to config functions, and a new constructorREPOSITORYTARRINGinEenvironment module and its access function [#5015 @rjbou]- New download functions for shared source, old ones kept [#4893 @rjbou]
OpamClient.filter_unpinned_locallynow display a warning of skipped packages instead of debug log [#5083 @rjbou]OpamSolution.parallel_apply: fix sources_needed package set, now integrate requested but not locally pinned packages [#5082 @rjbou]
OpamSwitchState.universe:requestedargument moved fromname_package_settopackage_set, to precise installed packages with--best-effort[#4796 @LasseBlaauwbroek]OpamSwitchState.universe: add a chrono for universe loading [#4975 @AltGr]
OpamCudf: Change type ofconflict_case.Conflict_cycle(string list listtoCudf.package action list list) andcycle_conflict,string_of_explanations,conflict_explanations_rawtypes accordingly [#4039 @gasche]OpamCudf: addconflict_cycles[#4039 @gasche]OpamCudf: addtrim_universe[#5024 @AltGr]OpamSolver.cudf_versions_map: no more takes a package set as argument, compute whole packages (repo + installed) and take accounet of invariant [#5024 @AltGr]OpamSolver.load_cudf_universe: change staging ofadd_invariant[#5024 @AltGr]OpamSolver.coinstallable_subset: addadd_invariantoptional argument [#5024 @AltGr]OpamSolver.installable: useinstallable_subsetthat usescoinstallable_subset[#5024 @kit_ty_kate]OpamSolver.explicit: when adding fetch nodes, add shared source ones. Change ofsources_neededargument type [#4893 @rjbou]OpamActionGraph.to_aligned_strings: addexplicitoptional argument to print action name in utf8 [#5045 @AltGr]OpamSolver.print_solution: change output format [#5045 @AltGr]OpamSolver,OpamCudf: Several changes to handle installation from a formula [#4975 @AltGr]OpamCudf: addtrim_universe,opam_deprequest_package_name, andopam_deprequest_package[#4975 @AltGr]OpamCudf.print_solution: add optionalskip, to avoid filtering solution beforehand [#4975 @AltGr]OpamCudf.filter_solution: can do not remove recursively actions with optional~recursive:true[#4975 @AltGr]
OpamStd.ABSTRACT: addcompareandequal, that added those functions toOpamSysPkgandOpamVariable[#4918 @rjbou]- Add OpamPackage.Version.default returning the version number used when no version is given for a package [#4949 @kit-ty-kate]
- Add
OpamPath.Switch.man_dirs[#4915 @rjbou] OpamFile.Config: order list of installed switches according their last use, updatewith_switchaccordingly, and addprevious_switch[#4910 @AltGr]- Change ``Fetch` action to take several packages, in order to handle shared fetching of packages [#4893 @rjbou]
OpamFile.OPAM.to_string_with_preserved_format: handle substring errors [#4941 @rjbou - fix #4936]OpamFile.OPAM.effective_partandOpamFile.OPAM.effectively_equalnow take an optional?modulo_state:boolparameter, that iftrue, eliminates the fields relying on the state of the switch (depends, available, …). This isfalseby default. [#5118 @kit-ty-kate]OpamTypes:request.wish_installnow takes a formula instead of a conjunction [#4975 @AltGr]
- OpamSystem: avoid calling Unix.environment at top level [#4789 @hannesm]
OpamStd.ABSTRACT: addcompareandequal, that added those functions toOpamFilename,OpamHash,OpamStd,OpamStd,OpamUrl, andOpamVersion[#4918 @rjbou]OpamHash: addsortfrom strongest to weakest kindOpamSystem.real_path: Remove the double chdir trick on OCaml >= 4.13.0 [#4961 @kit-ty-kate]OpamProcess.wait_one: display command in verbose mode for finished found process [#5091 @rjbou]OpamStd.Config.E: add aREMOVEDvariant to allow removing completely an environment variable handling [#5112 @rjbou]OpamHash: addis_nullOpamStd.Sys: addget_windows_executable_variantto use instead ofis_cygwin_variant[#4817 @jonahbeckford]OpamSystem.copy_dir: two-passrsynccopy forMSYS2, to handle symlinks [#4817 @jonahbeckford]OpamSHA: use now onlysha, some function removed (shaxxx,shaxxx_bytes, etc.) [#5042 @kit-ty-kate]OpamCoreConfig.r: remove openssl related config:use_opensslparameter & config field, andOPAMUSEOPENSSLenvironment variable [#5042 @kit-ty-kate]