Commit bcf1847
fix(octave): unblock v4.0 Octave tests on stock Octave 11.1
Three Octave-specific issues surfaced from the b675c27 run's Octave job
(which had already been failing on main pre-merge from PR #138/#139/#143).
1. **ndjsonDecode_mergeStruct_ (line 120)**: `[out(:).(fB{k})] = deal([])`
is the MATLAB-idiomatic broadcast assignment but Octave 11.1 rejects it
as "invalid assignment to cs-list outside multiple assignment". Real bug
that breaks `ndjsonDecode` on Octave for heterogeneous struct merges.
Fix: replace with an explicit for-loop that works in both runtimes.
2. **test_event_log_concurrent**: hits `datetime('now', 'TimeZone', 'UTC')`
inside `ClusterIdentity.resolve()` (called transitively via FileLock
during `EventLog.append`). Octave 11.1 ships `datetime` only via the
optional `datatypes` Forge package, which CI doesn't install.
Fix: skip the entire test on Octave with a fprintf SKIP message.
3. **test_mksqlite_extended_codes_probe**: uses `datetime` directly at
line 109 to timestamp probe output. Same root cause.
Fix: same Octave skip pattern.
The 7 other Octave test failures (test_event_pick_mode, test_toolbar,
test_fastsense_widget_ylimit_modes, test_time_range_selector, etc.) are
inherited from main's PR #138/#139/#143/#144 — they don't pass on main
either. Out of scope for this PR.
Verified: `mh_style libs/ tests/ examples/` clean across 505 files.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent 08b0445 commit bcf1847
3 files changed
Lines changed: 27 additions & 1 deletion
File tree
- libs/Concurrency
- tests
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
118 | 122 | | |
119 | 123 | | |
120 | | - | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
121 | 127 | | |
122 | 128 | | |
123 | 129 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
29 | 29 | | |
30 | 30 | | |
31 | 31 | | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
32 | 43 | | |
33 | 44 | | |
34 | 45 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
27 | 36 | | |
28 | 37 | | |
29 | 38 | | |
| |||
0 commit comments