Skip to content

compat: support CTBase 0.25 (beta)#277

Closed
ocots wants to merge 2 commits into
mainfrom
compat/ctbase-0.25
Closed

compat: support CTBase 0.25 (beta)#277
ocots wants to merge 2 commits into
mainfrom
compat/ctbase-0.25

Conversation

@ocots

@ocots ocots commented Jun 27, 2026

Copy link
Copy Markdown
Member

Context

Part of the CTBase 0.25 ecosystem migration. CTModels 0.13 / CTSolvers 0.4 / CTBase 0.25 form a consistent stack, but CTParser was still pinned to CTBase = "0.18", which blocked resolving that stack downstream (notably the CTDirect test environment, where CTParser is a test dependency used to define OCPs via @def).

CTParser only uses CTBase.ctindices / CTBase.ctupperscripts, both of which still exist in CTBase 0.25, so this is a pure compat bump.

Changes

  • CTBase = "0.25"
  • Parameters = "0.12, 0.13" (Parameters 0.13 is pulled by CTModels 0.13)
  • OrderedCollections = "1, 2" (pulled by the new stack)
  • version -> 0.8.16-beta

Verified: CTParser precompiles and loads against CTBase 0.25.0-beta.

Scope — this is a beta

This release only validates the ADNLPModels path, which is sufficient to unblock CTDirect. It is intentionally shipped as a beta.

⚠️ Follow-up required: update the ExaModels calls

This PR does not migrate the ExaModels integration. ExaModels must be bumped to 0.11, which implies non-trivial changes to the ExaModels call sites (the 0.10 → 0.11 API change is substantial). That migration is out of scope for this beta and should be done in a dedicated follow-up before a non-beta release.

🤖 Generated with Claude Code

CTParser only uses CTBase.ctindices / CTBase.ctupperscripts, both present in
CTBase 0.25, so bump the bounds to unblock the CTModels 0.13 / CTSolvers 0.4 /
CTBase 0.25 stack (Parameters 0.13 and OrderedCollections 2 are pulled by the
new stack).

- CTBase = "0.25"
- Parameters = "0.12, 0.13"
- OrderedCollections = "1, 2"
- version -> 0.8.16-beta

This beta only validates the ADNLPModels path, which is what CTDirect needs.
The ExaModels integration still has to be migrated (see PR description).

Verified: CTParser precompiles and loads against CTBase 0.25.0-beta.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- test/Project.toml: CTBase 0.25, CTModels 0.13, ExaModels "0.9, 0.11",
  CUDA "5, 6", MadNLP/MadNLPGPU bumps, OrderedCollections "1, 2"
- docs/Project.toml: CTBase 0.25
- test_control_zero.jl: CTModels.OCP submodule was removed in CTModels 0.13;
  use CTModels.* directly

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@ocots
ocots marked this pull request as draft June 27, 2026 08:53
@github-actions

github-actions Bot commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

Breakage test results
Date: 2026-06-27 08:58:12

Name Latest Stable
OptimalControl compat: v0.8.15 compat: v0.8.15

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.

2 participants