Skip to content

migrate to CTBase#270

Merged
ocots merged 9 commits intodevelopfrom
migration
Feb 4, 2026
Merged

migrate to CTBase#270
ocots merged 9 commits intodevelopfrom
migration

Conversation

@ocots
Copy link
Copy Markdown
Member

@ocots ocots commented Feb 4, 2026

  •  Migration to CTBase
  •  Migration to CTSolvers

@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 4, 2026

Breakage test results
Date: 2026-02-04 15:21:02

Name Latest Stable
CTDirect compat: v0.6.10-beta compat: v0.7.1-beta.1
CTFlows compat: v0.6.10-beta compat: v0.7.1-beta.1
OptimalControl compat: v0.6.10-beta compat: v0.6.10-beta

ocots added 8 commits February 4, 2026 14:19
Complete migration to CTBase exception system with 100% test success

Changes:
- ExtensionError for serialization stubs (JLD2/JSON3)
- NotImplemented: type_info → required_method (19 occurrences)
- IncorrectArgument enriched with contextual fields (8 occurrences)
- 31 source files updated across all modules
- 45 test files updated with proper exception prefixes
- 4213 tests passing (100% success rate)
- Phase 2: Copy 6 modules (Options, Strategies, Orchestration, Optimization, Modelers, DOCP) to migration_to_ctsolvers/
- Phase 3: Adapt CTModels to work without migrated modules
- Remove dependencies on ADNLPModels, ExaModels, MadNLP, NLPModels, SolverCore
- Update CTModels.jl to only load core modules (Utils, OCP, Display, Serialization, InitialGuess)
- Remove imports from Optimization in OCP.jl
- Simplify TestProblems to only include Beam, solution_example, solution_example_dual
- Update runtests.jl to remove migrated package dependencies
- Update Project.toml for CTModels 0.8.0-beta with minimal dependencies
- Preserve CTBase.Exceptions compatibility
- All CTModels core functionality remains intact (tests + documentation ready)

Migration ready for CTSolvers integration
…tion

- Update make.jl: simplify structure (Introduction + API Reference only)
- Rewrite api_reference.jl: use new CTBase.automatic_reference_documentation API
- Update index.md: clarify CTModels role (problem definition) vs CTSolvers (solving)
- Document remaining modules: Utils, OCP, Display, Serialization, InitialGuess
- Add conditional documentation for extensions: Plots, JSON, JLD2
- Remove references to migrated modules (DOCP, Modelers, Optimization, Options, Orchestration, Strategies)
- Add external_modules_to_document parameter to OCP sections in api_reference.jl
- Set warnonly=[:cross_references] in make.jl to allow build with warnings
- Fix syntax error (semicolon -> comma) in api_reference.jl
- Documentation now builds successfully with warnings instead of errors
- Add comprehensive docstring for build_model() following project standards
- Integrate extensions (Plots, JSON, JLD2) into main API documentation
- Remove separate extension documentation pages for better organization
- Clean up generated API files and old documentation
- Update docs/Project.toml dependencies (remove CTModels circular dependency)
- Export plot/plot! from CTModelsPlots extension
- Simplify make.jl by removing package activation (handled externally)
- Documentation builds successfully with only minor time_ns warning

All tests pass (3135/3135) and documentation generates without errors.
@ocots ocots merged commit f547ec0 into develop Feb 4, 2026
10 of 12 checks passed
@ocots ocots deleted the migration branch February 4, 2026 15:18
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