Skip to content

Remove opam 2.0 support#1054

Open
mtelvers wants to merge 1 commit into
ocurrent:masterfrom
mtelvers:remove-opam-2.0
Open

Remove opam 2.0 support#1054
mtelvers wants to merge 1 commit into
ocurrent:masterfrom
mtelvers:remove-opam-2.0

Conversation

@mtelvers
Copy link
Copy Markdown
Member

@mtelvers mtelvers commented May 4, 2026

The service config pins V2_5 for every build platform and lint.ml
uses V2_2; nothing constructs V2_0, so the V2_0 cases in Variant.pp,
the opam_build depext match, and Opam_version.of_string were never
executed.

Variant.pp also drops the V2_0-as-empty-suffix special case, so all
variants now print with an explicit _opam-X.X suffix. That in turn
makes two more pieces of API redundant:

  • Opam_version.default -- referenced only by Variant.of_string as a
    fallback for un-suffixed variant strings. Now that nothing emits
    un-suffixed strings, of_string rejects them outright.
  • Opam_version.to_string_with_patch -- declared in the .mli, called
    nowhere.

Prepares for ocurrent/docker-base-images#342 and upstream
ocurrent/ocaml-dockerfile#262 to remove the opam-2.0 base images.
Deploy-safe in any order: V2_5 platforms pull the same _opam-2.5 tag
before and after, and V2_0 was already unused.

The service config pins V2_5 for every build platform and lint.ml
uses V2_2; nothing constructs V2_0, so the V2_0 cases in Variant.pp,
the opam_build depext match, and Opam_version.of_string were never
executed.

Variant.pp also drops the V2_0-as-empty-suffix special case, so all
variants now print with an explicit _opam-X.X suffix. That in turn
makes two more pieces of API redundant:

- Opam_version.default -- referenced only by Variant.of_string as a
  fallback for un-suffixed variant strings. Now that nothing emits
  un-suffixed strings, of_string rejects them outright.
- Opam_version.to_string_with_patch -- declared in the .mli, called
  nowhere.

Prepares for ocurrent/docker-base-images#342 and upstream
ocurrent/ocaml-dockerfile#262 to remove the opam-2.0 base images.
Deploy-safe in any order: V2_5 platforms pull the same _opam-2.5 tag
before and after, and V2_0 was already unused.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant