• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

sandialabs / LoQS / 41145590705
90%

Build:
DEFAULT BRANCH: main
Ran 30 Oct 2026 11:43PM UTC
Jobs 1
Files 84
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

30 Oct 2026 11:37PM UTC coverage: 88.913% (+0.07%) from 88.844%
41145590705

push

github

web-flow
Close checkpointing gaps for thread executors, submitit/MPI runs and Windows (#160)

* Refuse thread executors under checkpointing

Checkpointing with a ThreadPoolExecutor ran but could silently lose
progress, so it now fails with a ValueError before any work starts.
- QuantumProgram.run refuses a thread shot_executor when checkpoint is
  on, before anything touches disk.
- MultiProgramRunner.run refuses a thread program_executor, live or
  factory-built, under item or shot checkpointing, before runner.h5.
- Minor: refusal tests per axis; a test that ledger recovery leaves a
  file this process holds open alone; parallel.md and run docstring.

Co-authored-by: claude-sonnet-5-5 <noreply@anthropic.com>
Co-authored-by: claude-opus-5-5 <noreply@anthropic.com>

* Add ExecutorSpec constructors for submitit and mpi4py

Checkpointing a submitit run needed a module-level factory stored as
source, which fails from a notebook or __main__, so ExecutorSpec gets
data-only constructors that a runner file stores and a resume rebuilds.
- ExecutorSpec.submitit(folder, cluster, **parameters) builds an
  AutoExecutor and applies parameters via update_parameters.
- ExecutorSpec.mpi4py(**kwargs) builds an MPIPoolExecutor; both store
  only data, so they pickle and round-trip through JSON and HDF5.
- Minor: merge _get_encoding_attr's per-axis branches and name the new
  constructors in its errors; round-trip, MPI stub and checkpointed
  submitit resume tests; parallel.md and docstrings.

Co-authored-by: claude-sonnet-5-5 <noreply@anthropic.com>
Co-authored-by: claude-opus-5-5 <noreply@anthropic.com>

* Recover a killed writer's ledger on Windows

Reusing a killed writer's worker_id failed on Windows, since ledger
recovery needed fcntl, so it now locks and replaces the file there too.
- The writer lock is msvcrt.locking on a byte past the file's end on
  Windows (flock elsewhere), released through a new _release_lock.
- On Windows, recovery drops its lock before the rename a... (continued)

3668 of 4406 branches covered (83.25%)

Branch coverage included in aggregate %.

11914 of 13119 relevant lines covered (90.81%)

0.91 hits per line

Coverage Regressions

Lines Coverage ∆ File
36
92.64
1.19% tools/paralleltools.py
33
82.5
-0.08% internal/swmrledger.py
16
95.83
0.03% tools/multiprogramrunner.py
15
92.99
0.37% core/quantumprogram.py
Jobs
ID Job ID Ran Files Coverage
1 41145590705.1 30 Oct 2026 11:43PM UTC 84
88.91
GitHub Action Run
Source Files on build 41145590705
  • Tree
  • List 84
  • Changed 5
  • Source Changed 0
  • Coverage Changed 5
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #41145590705
  • 76fdf31f on github
  • Prev Build on main (#41141528855)
  • Next Build on main (#41183567566)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc