Skip to content

Commit a30a895

Browse files
committed
Bump version to 0.21.1-beta and update documentation
1 parent 4813392 commit a30a895

3 files changed

Lines changed: 48 additions & 2 deletions

File tree

BREAKINGS.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,17 @@
22

33
This document outlines all breaking changes introduced in CTBase v0.18.0-beta compared to v0.17.4. Use this guide to migrate your code and understand the impact of these changes.
44

5-
## Non-breaking note (0.21.x)
5+
## Non-breaking note (0.21.1-beta)
66

77
- **Module renamed**: `CTBase.Extensions``CTBase.DevTools`
88
- The submodule previously named `Extensions` is now named `DevTools` to better reflect its purpose (internal developer tools, not a general extension system)
99
- All tag types and functions are unchanged: `run_tests`, `postprocess_coverage`, `automatic_reference_documentation`, `AbstractTestRunnerTag`, `TestRunnerTag`, `AbstractDocumenterReferenceTag`, `DocumenterReferenceTag`, `AbstractCoveragePostprocessingTag`, `CoveragePostprocessingTag`
1010
- **Migration**: replace `CTBase.Extensions` with `CTBase.DevTools` and `import CTBase.Extensions` with `import CTBase.DevTools` at all call sites
11+
- **Core utilities**: Added generic building blocks to CTBase.Core for sharing across control-toolbox ecosystem
12+
- `AbstractCache`: abstract base type for computation caches (e.g. prepared AD plans), exported from Core
13+
- `make_coerce`: shape-matching coercion helper (`only` for scalars, `identity` for arrays), exported from Core
14+
- Both moved from CTFlows to CTBase for reuse across packages
15+
- No breaking changes; purely additive public API. No migration required.
1116

1217
## Non-breaking note (0.21.0-beta)
1318

CHANGELOGS.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,47 @@ All notable changes to CTBase will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.21.1-beta] - 2026-06-23
9+
10+
### 🔄 Breaking Changes
11+
12+
#### **Module Rename: Extensions → DevTools**
13+
14+
- **Renamed submodule**: `CTBase.Extensions``CTBase.DevTools` to better reflect its purpose (internal developer tools, not a general extension system)
15+
- **Unchanged API**: All tag types and functions remain unchanged:
16+
- `run_tests`
17+
- `postprocess_coverage`
18+
- `automatic_reference_documentation`
19+
- `AbstractTestRunnerTag`, `TestRunnerTag`
20+
- `AbstractDocumenterReferenceTag`, `DocumenterReferenceTag`
21+
- `AbstractCoveragePostprocessingTag`, `CoveragePostprocessingTag`
22+
- **Migration**: Replace `CTBase.Extensions` with `CTBase.DevTools` and `import CTBase.Extensions` with `import CTBase.DevTools` at all call sites
23+
24+
### ✨ New Features
25+
26+
#### **Core Utilities**
27+
28+
- **AbstractCache**: Added abstract base type for computation caches in `Core/caches.jl`
29+
- Generic type for storing pre-allocated buffers and prepared plans (e.g. AD plans)
30+
- Concrete cache subtypes defined by packages/extensions providing specific backends
31+
- Exported from `CTBase.Core` for reuse across control-toolbox ecosystem
32+
- **make_coerce**: Added shape-matching coercion helper in `Core/function_utils.jl`
33+
- Returns `only` for scalars to extract single element from 1-element vectors
34+
- Returns `identity` for arrays (`AbstractVector`, `AbstractMatrix`) as no-op
35+
- Used to map uniform vector-valued results back to natural input shape
36+
- Exported from `CTBase.Core` for reuse across control-toolbox ecosystem
37+
38+
### 🏗️ Architecture
39+
40+
- **Shared infrastructure**: Moved generic, dependency-free building blocks from CTFlows to CTBase.Core
41+
- Enables sharing across control-toolbox packages without duplication
42+
- `AbstractCache` provides common interface for computation caches
43+
- `make_coerce` provides uniform shape coercion strategy
44+
45+
### 🧹 Maintenance
46+
47+
- **Version bump**: Bumped to 0.21.1-beta for module rename and core utilities.
48+
849
## [0.21.0-beta] - 2026-06-22
950

1051
### ✨ New Features

Project.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
name = "CTBase"
22
uuid = "54762871-cc72-4466-b8e8-f6c8b58076cd"
3-
version = "0.21.0-beta"
3+
version = "0.21.1-beta"
44
authors = ["Olivier Cots <olivier.cots@irit.fr>", "Jean-Baptiste Caillau <caillau@univ-cotedazur.fr>"]
55

66
[deps]

0 commit comments

Comments
 (0)