Supporting a decade of opam
summary
OPAM evolves from 1.2 (2014) to 2.0, 2.1 and an imminent 2.2; development bottlenecks arise when two major versions coexist and plugins compiled against one corrupt another’s root. The team refactors the root format to add opam 2.1 root metadata so older clients read but never write, implements CLI versioning (Dune-style) to preserve legacy flags, and introduces switch invariants to lock compiler semantics. Other outcomes: opam install accepts declarative formulas, a Software Heritage fallback for missing archives, many bug fixes, and upstream native Windows support.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 1:35Open 12 20
- 3:19Open 21 20
- 5:05Opam Duneland
- 7:11Readonly access
- 8:22Update invariant
- 10:36CLI versioning
- 12:00Openvar
- 13:12Default CLI
related talks
22mState of the OCaml Platform 2023
43mOCaml at LexiFi
35mOCaml Package Management with (only!) Dune
38mAdvanced Oomph Setup Authoring
36mOP Stack Deep Dive
12mBuilding for Core Devs How OP Labs Accelerates Protocol Eng.
26mBuck2 for OCaml Users & Developers
30mBreaking backwards compatibility: The easy way!
