Skip to content

ImmutableList 0.6.0: Julia collection interfaces - #20

Open
JKRT wants to merge 5 commits into
OpenModelica:masterfrom
JKRT:omparser-absyn
Open

JKRT wants to merge 5 commits into
OpenModelica:masterfrom
JKRT:omparser-absyn

Conversation

@JKRT

@JKRT JKRT commented Nov 10, 2026 •

Copy link
Copy Markdown
Member

Julia's collection interfaces for lists: last(l) is the last element and tail(l) the rest; map, filter, vcat, reverse and sort return lists; indexing; ==, isequal and hash by element; List(itr); show. Loading it invalidates nothing. List{T}(gen) calls the function in order, and a debug println is removed.

The license matches OMJulia.jl's: BSD 3-Clause LICENSE.md, and the OSMC header (BSD new, GPL v3 or OSMC-PL).

This is breaking, hence 0.6.0. Merging and registering it is safe on its own. Every registered version of a dependent that declares ImmutableList compat (checked in OpenModelicaRegistry) allows at most 0.5, so their resolution does not change. The dependents move to 0.6 with the OMParser 1.0 chain (branches omparser-absyn).

Tests: ImmutableList's pass (the new collection-interfaces set: 49). The OMFrontend, OMBackend and OM.jl suites pass with this branch in the omparser-absyn chain.

Replaces #19: the same commit (272f6bd), from the branch omparser-absyn, so the omjl jobs take the chain's siblings instead of the master ones (which pin ImmutableList 0.5).

Chain omparser-absyn, merge in this order (each after the previous ones are registered): #20 → OpenModelica/MetaModelica.jl#78 → OpenModelica/ArrayUtil.jl#6, OpenModelica/DoubleEnded.jl#7 → OpenModelica/ListUtil.jl#12 → OpenModelica/OMParser.jl#37 → OpenModelica/OMFrontend.jl#113 → OpenModelica/OMBackend.jl#99 → OpenModelica/OMLibraryTesting.jl#18 → JKRT/OM.jl#84 (last; releases on merge).

🤖 Generated with Claude Code

JKRT added 5 commits November 9, 2026 17:32
last(l) is the last element, tail(l) the rest; map/filter/vcat/reverse/sort
return lists; indexing, ==/isequal/hash by element, List(itr), show.
No invalidations on load.

Assisted-by: Claude Opus 5.5
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