Skip to content

Update mathcomp-dioid dev dependencies - #3790

Open
JasonGross wants to merge 1 commit into
rocq-prover:masterfrom
theorem-labs:codex/update-dioid-dev
Open

Update mathcomp-dioid dev dependencies#3790
JasonGross wants to merge 1 commit into
rocq-prover:masterfrom
theorem-labs:codex/update-dioid-dev

Conversation

@JasonGross

@JasonGross JasonGross commented Jul 28, 2026

Copy link
Copy Markdown
Member

The coq-mathcomp-dioid.dev metadata describes the old Coq 8.13 / MathComp 1.x implementation, so current development switches reject it and may fall back to the incompatible 0.1 release when constraints are ignored. Upstream Dioid master has moved to Hierarchy Builder and the split MathComp package hierarchy; this updates the dev dependencies to match that implementation and math-comp/dioid#1.

The source remains the upstream math-comp/dioid master branch, not the theorem-labs fork. This draft must not merge until the upstream compatibility PR lands.

opam lint passes without warnings, and the upstream compatibility branch builds completely against rocq-dev-testing with make -j4.

The remaining red build is expected because upstream math-comp/dioid#master does not yet carry the migration. complete_lattice.v fails with:

Error: Usage: HB.mixin Record <MixinName> T & F A & … := { … }.

The T & F T binder syntax is core Rocq grammar from rocq-prover/rocq#21611 (merged 2026-02-26, first tagged in 9.3+rc1), replacing ssreflect's T of F T. Packages that can never be installed: is empty, so the solver is satisfied and only the source is stale. ci-skip remains until math-comp/dioid#1 merges.

ci-skip: coq-mathcomp-dioid

Authorship note: this was researched and written by an AI coding agent
(OpenAI Codex), working on Jason Gross's behalf; Jason reviews what is
posted from this account.

Wordsmithed by Codex.

@JasonGross
JasonGross force-pushed the codex/update-dioid-dev branch from 35d948c to 2c42c80 Compare July 31, 2026 19:22
JasonGross added a commit that referenced this pull request Jul 31, 2026
)

Follow-up to #3802, which bounded 38 extra-dev recipes but not these two.

dune 3.24 deleted the `coq` extension:

  File "dune-project", line 2, characters 0-15:
  2 | (using coq 0.8)
  Error: Extension coq was deleted in the 3.24 version of the dune language
  Hint: The Coq Build Language has been replaced by the Rocq Build Language.
  Use (using rocq <version>) instead.

Both upstreams still ship it at the ref their `url` names:
LPCIC/coq-elpi master is `(lang dune 3.13)` + `(using coq 0.8)`, and
rocq-community/micromega-plugin master is `(lang dune 3.8)` + `(using coq 0.8)`.
The extension is rejected regardless of the project's own `(lang dune ...)`
version, so the build dies at `dune subst` before anything is compiled.

Because both are common dependencies, this is currently failing CI on unrelated
pull requests: #3693 (coq-wasm.dev) and #3790 (coq-mathcomp-dioid.dev) both die
with `The compilation of rocq-elpi.dev failed at "dune subst"`.

`opam lint` passes on both files under the opam 2.1.2 that .gitlab-ci.yml pins.


Claude-Session: https://claude.ai/code/session_01L9BGQT7XUuubV6C619DW4b

Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
@JasonGross
JasonGross force-pushed the codex/update-dioid-dev branch 4 times, most recently from 032027e to 4c2d05f Compare July 31, 2026 21:28
@JasonGross
JasonGross marked this pull request as ready for review August 6, 2026 04:05
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