Skip to content

Fix unsoundness in JsValueStore by replacing unsafe raw pointer mutation of Arc with safe OnceLock#5408

Open
mansiverma897993 wants to merge 3 commits into
boa-dev:mainfrom
mansiverma897993:fix/unsound-jsvaluestore-replace
Open

Fix unsoundness in JsValueStore by replacing unsafe raw pointer mutation of Arc with safe OnceLock#5408
mansiverma897993 wants to merge 3 commits into
boa-dev:mainfrom
mansiverma897993:fix/unsound-jsvaluestore-replace

Conversation

@mansiverma897993

Copy link
Copy Markdown
Contributor

This Pull Request fixes/closes #5392.

It changes the following:

  • Fix unsoundness in JsValueStore by replacing unsafe raw pointer mutation of Arc with safe OnceLock

@mansiverma897993 mansiverma897993 requested a review from a team as a code owner June 20, 2026 08:28
@github-actions github-actions Bot added the Waiting On Review Waiting on reviews from the maintainers label Jun 20, 2026
@github-actions github-actions Bot added this to the v1.0.0 milestone Jun 20, 2026
@github-actions github-actions Bot added C-Tests Issues and PRs related to the tests. C-Runtime Issues and PRs related to Boa's runtime features labels Jun 20, 2026
@github-actions

Copy link
Copy Markdown

Test262 conformance changes

Test result main count PR count difference
Total 53,125 53,125 0
Passed 51,072 51,072 0
Ignored 1,482 1,482 0
Failed 571 571 0
Panics 0 0 0
Conformance 96.14% 96.14% 0.00%

Tested main commit: 7ce9cae84ac9bf54fe528bb05b997ac24af808a4
Tested PR commit: 15efcccd5b510d1661538c3f6e7a8971f0e16f63
Compare commits: 7ce9cae...15efccc

@codecov

codecov Bot commented Jun 20, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 46.87500% with 17 lines in your changes missing coverage. Please review.
✅ Project coverage is 60.22%. Comparing base (6ddc2b4) to head (15efccc).
⚠️ Report is 982 commits behind head on main.

Files with missing lines Patch % Lines
core/macros/src/lib.rs 0.00% 17 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##             main    #5408       +/-   ##
===========================================
+ Coverage   47.24%   60.22%   +12.98%     
===========================================
  Files         476      567       +91     
  Lines       46892    63158    +16266     
===========================================
+ Hits        22154    38040    +15886     
- Misses      24738    25118      +380     

☔ 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.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@hansl hansl left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is the macro change part of this PR? Feels like it should be its own PR, can you split them?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

C-Runtime Issues and PRs related to Boa's runtime features C-Tests Issues and PRs related to the tests. Waiting On Review Waiting on reviews from the maintainers

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dubious use of unsafe in runtime::store::JsValueStore.replace()

2 participants