structuredClone reads user-overridden RegExp properties
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 127k
- Forks
- 25.3k
- Avg merge
- 1d 23h
- Merged PRs (30d)
- 4
Description
Description
The React Native structuredClone polyfill reads value.source and value.flags, so own overrides replace a RegExp's internal pattern/flags while cloning. Capturing only the aggregate flags getter is also insufficient because it reads user-visible per-flag properties such as global.
Expected behavior
RegExp cloning should read the built-in internal source and canonical d g i m s u v y flags without invoking or trusting own overrides, matching native structuredClone.
React Native Version
0.87.1 and current main
Affected Platforms
JavaScript runtime - All
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the React Native structuredClone polyfill entry point and inspect its RegExp handling. Add regression coverage for own overrides of source, flags, and individual flag properties, then run the relevant structuredClone tests. Done means RegExp clones use the built-in pattern and canonical flags without invoking user overrides.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, react-native
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100