Skip to content

Keep primitive list types on web - #343

Merged
Rexios80 merged 8 commits into
mainfrom
feature/fix-web-primitive-lists
Oct 13, 2026
Merged

Rexios80 merged 8 commits into
mainfrom
feature/fix-web-primitive-lists

Conversation

@Rexios80

@Rexios80 Rexios80 commented Oct 9, 2026 •

Copy link
Copy Markdown
Member

Summary

  • On web, List<double>, List<bool>, and List<String> were stored as JS arrays and read back as List<Object?>, so a typed box threw on get after a reopen.
  • Those lists are now stored with Hive type IDs.
  • Values already saved as JS arrays still read as List<Object?> until they are written again.

Fixes #342

Test plan

  • VM: typed primitive list tests
  • Chrome dart2js and dart2wasm: those tests plus the web storage backend tests
  • CI

@codecov

codecov Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.72%. Comparing base (16adeda) to head (a13d69f).

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #343      +/-   ##
==========================================
+ Coverage   93.68%   93.72%   +0.03%     
==========================================
  Files          66       66              
  Lines        2678     2678              
==========================================
+ Hits         2509     2510       +1     
+ Misses        169      168       -1     

☔ 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.

@Rexios80
Rexios80 merged commit 32c3dd2 into main Oct 13, 2026
26 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.

Box<List<String>> throws on web after a reload

1 participant