opam 2.0.2 release
We are pleased to announce the release of opam 2.0.2.
As sandbox scripts have been updated, don't forget to run opam init --reinit -ni
to update yours.
This new version contains mainly backported fixes:
- Doc:
- update man page
- add message for deprecated options
- reinsert removed ones to print a deprecated message instead of fail (e.g.
--alias-of
) - deprecate
no-aspcud
- Pin:
- on pinning, rebuild updated
pin-depends
packages reliably - include descr & url files on pinning 1.2 opam files
- on pinning, rebuild updated
- Sandbox:
- handle symlinks in bubblewrap for system directories such as
/bin
or/lib
(#3661). Fixes sandboxing on some distributions such as CentOS 7 and Arch Linux. - allow use of unix domain sockets on macOS (#3659)
- change one-line conditional to if statement which was incompatible with set -e
- make /var readonly instead of empty and rw
- handle symlinks in bubblewrap for system directories such as
- Path: resolve default opam root path
- System: suffix .out for read_command_output stdout files
- Locked: check consistency with opam file when reading lock file to suggest regeneration message
- Show: remove pin depends messages
- Cudf: Fix closure computation in the presence of cycles to have a complete graph if a cycle is present in the graph (typically
ocaml-base-compiler
⇄ocaml
) - List: Fix some cases of listing coinstallable packages
- Format upgrade: extract archived source files of version-pinned packages
- Core: add is_archive in OpamSystem and OpamFilename
- Init: don't fail if empty compiler given
- Lint: fix light_uninstall flag for error 52
- Build: partial port to dune
- Update cold compiler to 4.07.1
Installation instructions (unchanged):
- From binaries: run
sh <(curl -sL https://raw.githubusercontent.com/ocaml/opam/master/shell/install.sh)
or download manually from the Github "Releases" page to your PATH. In this case, don't forget to run opam init --reinit -ni
to enable sandboxing if you had version 2.0.0~rc manually installed or to update your sandbox script.
- From source, using opam:
opam update; opam install opam-devel
(then copy the opam binary to your PATH as explained, and don't forget to run opam init --reinit -ni
to enable sandboxing if you had version 2.0.0~rc manually installed or to update you sandbox script)
- From source, manually: see the instructions in the README.
We hope you enjoy this new minor version, and remain open to bug reports and suggestions.
NOTE: this article is cross-posted on opam.ocaml.org and ocamlpro.com.
About OCamlPro:
OCamlPro is a R&D lab founded in 2011, with the mission to help industrial users benefit from experts with a state-of-the-art knowledge of programming languages theory and practice.
- We provide audit, support, custom developer tools and training for both the most modern languages, such as Rust, Wasm and OCaml, and for legacy languages, such as COBOL or even home-made domain-specific languages;
- We design, create and implement software with great added-value for our clients. High complexity is not a problem for our PhD-level experts. For example, we helped the French Income Tax Administration re-adapt and improve their internally kept M language, we designed a DSL to model and express revenue streams in the Cinema Industry, codename Niagara, and we also developed the prototype of the Tezos proof-of-stake blockchain from 2014 to 2018.
- We have a long history of creating open-source projects, such as the Opam package manager, the LearnOCaml web platform, and contributing to other ones, such as the Flambda optimizing compiler, or the GnuCOBOL compiler.
- We are also experts of Formal Methods, developing tools such as our SMT Solver Alt-Ergo (check our Alt-Ergo Users' Club) and using them to prove safety or security properties of programs.
Please reach out, we'll be delighted to discuss your challenges: contact@ocamlpro.com or book a quick discussion.
Most Recent Articles
2024
- opam 2.3.0 release!
- Optimisation de Geneweb, 1er logiciel français de Généalogie depuis près de 30 ans
- Alt-Ergo 2.6 is Out!
- Flambda2 Ep. 3: Speculative Inlining
- opam 2.2.0 release!
- Flambda2 Ep. 2: Loopifying Tail-Recursive Functions
- Fixing and Optimizing the GnuCOBOL Preprocessor
- OCaml Backtraces on Uncaught Exceptions
- Opam 102: Pinning Packages
- Flambda2 Ep. 1: Foundational Design Decisions
- Behind the Scenes of the OCaml Optimising Compiler Flambda2: Introduction and Roadmap
- Lean 4: When Sound Programs become a Choice
- Opam 101: The First Steps
2023
- Maturing Learn-OCaml to version 1.0: Gateway to the OCaml World
- The latest release of Alt-Ergo version 2.5.1 is out, with improved SMT-LIB and bitvector support!
- 2022 at OCamlPro
- Autofonce, GNU Autotests Revisited
- Sub-single-instruction Peano to machine integer conversion
- Statically guaranteeing security properties on Java bytecode: Paper presentation at VMCAI 23
- Release of ocplib-simplex, version 0.5