control-toolbox / control-toolbox/CTParser.jl

Widen [compat] to admit CTBase 0.30 (needed for CTFlows 0.18's Makie backend, one level down from CTDirect#629)

Open
#342 0 comments 0 reactions 1 assignee Claimed by @jbcaillau View on GitHub
Dominant language
Julia
Stars
3
Forks
0
Avg merge
4h 22m
Merged PRs (30d)
2

Description

## What

CTParser's newest version (0.9.3-beta) still declares:

```toml
[compat]
CTBase = "0.29"
```

Every other package in OptimalControl's dependency graph that depends on CTBase has already
widened past this floor (CTSolvers 0.5.6-beta: `"0.29-0.30"`, CTLie 0.2.1-beta: `"0.29-0.30"`,
CTFlows 0.18.0-beta: `"0.30"`). CTDirect is the other blocker, tracked separately as
[CTDirect#629](https://github.com/control-toolbox/CTDirect.jl/issues/629) — but CTParser sits
one level under CTDirect in the graph (CTDirect depends on CTParser, and OptimalControl depends
on it directly too), so fixing CTDirect alone isn't enough: CTParser becomes the next blocker as
soon as CTDirect's is resolved.

## Reproduction

Verified directly: took a local CTDirect checkout, patched *only* its own `[compat]` to
`CTBase = "0.29, 0.30"` / `CTModels = "0.18, 0.19"` (i.e. simulated CTDirect#629's fix), `Pkg.develop`ed
it into OptimalControl with `CTBase = "0.30"` in `[compat]`. The resolve then fails on CTParser,
not CTDirect:

```text
ERROR: Unsatisfiable requirements detected for package CTParser [32681960]:
CTParser [32681960] log:
├─possible versions are: 0.2.0 - 0.9.3 or uninstalled
├─restricted to versions 0.9 by OptimalControl [5f98b655], leaving only versions: 0.9.0 - 0.9.3
└─restricted by compatibility requirements with CTBase [54762871] to versions: uninstalled — no versions left
└─CTBase [54762871] log:
├─possible versions are: 0.11.2 - 0.30.2 or uninstalled
└─restricted to versions 0.30 by OptimalControl [5f98b655], leaving only versions: 0.30.0 - 0.30.2
```

## Ask

A CTParser release that widens

```toml
CTBase = "0.29, 0.30" # or "0.30" if 0.29 support isn't worth keeping in range
```

No source change expected — pure compat-range widening, same shape as CTSolvers#225 / CTLie#33 /
the fix for CTDirect#629, unless CTParser's own code touches something CTBase 0.30 changed.

## Why it matters downstream

Same reason as CTDirect#629: this is one of the two things (alongside CTDirect#629) standing
between OptimalControl and documenting the completed Makie plotting backend — tracked in
[control-toolbox/OptimalControl.jl `.reports/campaign/upstream.md`](https://github.com/control-toolbox/OptimalControl.jl/blob/main/.reports/campaign/upstream.md).
Found while re-checking whether CTDirect#629's fix alone would be sufficient.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.