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

source-academy / py-slang / 33768009256
86%

Build:
DEFAULT BRANCH: main
Ran 03 Sep 2026 02:53PM UTC
Jobs 1
Files 139
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

03 Sep 2026 02:38PM UTC coverage: 85.748%. Remained the same
33768009256

push

github

web-flow
Pyodide: fix a temp-file rename race in concurrent asset downloads (#449)

ensureLocalPyodideAssets wrote each cold-cache asset to a shared
"<dest>.tmp" path before renaming it into place. When two callers race a
cold cache concurrently (e.g. several Jest workers, each loading a fresh
pyodide instance in test:pyodide's CI step), both write to the same tmp
path; whichever renames first consumes it, so the other's own rename then
fails with ENOENT ("no such file or directory, rename
'pyodide.asm.js.tmp' -> 'pyodide.asm.js'"), crashing that test file.

Give the tmp path a per-call unique suffix (pid + random) instead, so
concurrent downloads never share one tmp file. Node's fs.rename overwrites
an existing destination atomically rather than erroring, so the loser of
the race just harmlessly overwrites dest with identical content (both
downloaded the same URL) instead of crashing.

Verified locally: yarn test:pyodide passes repeatedly against a cold
/tmp cache (rm -rf'd between runs), where it previously could hit this
race.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>

4889 of 6128 branches covered (79.78%)

Branch coverage included in aggregate %.

10916 of 12304 relevant lines covered (88.72%)

162161.78 hits per line

Jobs
ID Job ID Ran Files Coverage
1 33768009256.1 03 Sep 2026 02:53PM UTC 139
85.75
GitHub Action Run
Source Files on build 33768009256
  • Tree
  • List 139
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Github Actions Build #33768009256
  • b7c5a120 on github
  • Prev Build on main (#33767654208)
  • Next Build on main (#33769722877)
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