Skip to content

Fix Julia CI and validate interrupt callers - #167

Merged
Krastanov merged 5 commits into
JuliaDynamics:masterfrom
Krastanov-agent:codex/concurrentsim-julia113-audit-20260911
Sep 12, 2026
Merged

Krastanov merged 5 commits into
JuliaDynamics:masterfrom
Krastanov-agent:codex/concurrentsim-julia113-audit-20260911

Conversation

@Krastanov-agent

@Krastanov-agent Krastanov-agent commented Sep 11, 2026 •

Copy link
Copy Markdown
Contributor

The Intel macOS job fails during Julia setup because macos-latest selects an ARM runner. The JET job fails because JET 0.12 requires a module argument; correcting that call exposes an invalid InterruptException(nothing, cause) constructor path when an unfinished process is interrupted without an active caller.

This change:

  • selects macos-15-intel for x64 and adds Julia 1.11/1.12 to the existing 1.10/latest-stable Linux matrix with both thread counts;
  • passes the loaded ConcurrentSim module to JET, preserving compatibility with older JET releases;
  • rejects interrupts without an active caller using ArgumentError before changing the event queue. Tests cover rejection before initialization and while suspended, normal completion, and valid caller/cause delivery. Documentation and changelog describe the requirement.

Latest stable now covers Julia 1.13. Completed-process behavior is preserved.

Validation completed on Linux x86_64:

  • Full standard package suite, including manual/docstring doctests and Aqua, passed on Julia 1.10.12, 1.11.9, 1.12.7, and 1.13.0 with both one and five threads. The existing resource-priority @test_broken remains.
  • Fixed process regression tests and JET passed on all four versions with two threads: seven process assertions and zero JET reports. Resolved JET versions were 0.9.18, 0.9.20, and 0.12.1 as supported by Julia.
  • Complete corrected package suite with JET enabled passed on Julia 1.13.0 with two threads.
  • Exact downgrade workflow equivalent passed on master with Julia 1.10.12, DataStructures 0.19.0, ResumableFunctions 1.0.0, coverage, bounds checks, and allow_reresolve=false.
  • Local website builds passed on Julia 1.12.7 and 1.13.0; website tooling requires Julia >=1.12. Package doctests passed on every supported minor.
  • Independent review of all three commits, workflow YAML parsing, and git diff --check passed.

At head fc3352f, hosted checks also completed: full Linux/macOS/Windows/docs CI, JET/alpha, downgrade, changelog, and spelling all passed. Intel macOS and Windows logs confirm Julia 1.13.0.

The sole remaining check failure is the pre-existing missing benchmark suite repaired in #166. Its target-triggered workflow reads the suite from master, so that check recovers once #166 is merged.

@codecov-commenter

codecov-commenter commented Sep 11, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 94.70%. Comparing base (368bfbe) to head (d4766e3).

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #167      +/-   ##
==========================================
+ Coverage   94.65%   94.70%   +0.04%     
==========================================
  Files          13       13              
  Lines         318      321       +3     
==========================================
+ Hits          301      304       +3     
  Misses         17       17              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@Krastanov-agent Krastanov-agent changed the title Fix JET and Intel macOS CI; cover supported Julia minors Fix Julia CI and validate interrupt callers Sep 11, 2026
@github-actions

github-actions Bot commented Sep 12, 2026 •

Copy link
Copy Markdown
Contributor

Benchmark Results (Julia v1)

Time benchmarks
master d4766e3... master / d4766e3...
Fibonacci 9.97 ± 0.29 μs 10.2 ± 0.29 μs 0.974 ± 0.04
MM1 0.571 ± 0.019 ms 0.575 ± 0.017 ms 0.993 ± 0.044
time_to_load 0.0705 ± 0.0012 s 0.0691 ± 0.00094 s 1.02 ± 0.022
Memory benchmarks
master d4766e3... master / d4766e3...
Fibonacci 0.116 k allocs: 4.28 kB 0.116 k allocs: 4.28 kB 1
MM1 11.8 k allocs: 0.55 MB 11.8 k allocs: 0.549 MB 1
time_to_load 0.201 k allocs: 11.8 kB 0.201 k allocs: 11.8 kB 1

@Krastanov
Krastanov merged commit b70eba3 into JuliaDynamics:master Sep 12, 2026
18 checks passed
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.

3 participants