-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: SES lockdown v1.1.0 on Android (Hermes) #8009
Conversation
- Bundling with Metro - Gradle task: createBundleProdDebugJsAndAssets - Building - Running w/o SES hardenIntrinsics() Likely revert and start again, too many invasive changes that could be causingn problems elsewhere
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
This reverts commit 9f4d987.
- More minimal - Less invasive - Cleaner - Code comments
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #8009 +/- ##
=======================================
Coverage 41.47% 41.47%
=======================================
Files 1263 1263
Lines 30605 30605
Branches 3008 3008
=======================================
Hits 12694 12694
Misses 17157 17157
Partials 754 754 ☔ View full report in Codecov by Sentry. |
Quality Gate passedIssues Measures |
This PR has been automatically marked as stale because it has not had recent activity in the last 90 days. It will be closed in 7 days. Thank you for your contributions. |
This PR was closed because there has been no follow up activity in 7 days. Thank you for your contributions. |
Description
SES running on Hermes, follow-up to
Previousasync
bundling errors (fixed exceptload
) no longer relevantses bumped to v1.0.0 refactored to Promises w/o async parts (in seperate PR to not ruin clear diff)feat: SES lockdown v1.0.0 (Android Hermes) #8161Runtime
// assertDirectEvalAvailable(); // SES TypeError
// addIntrinsics(tameRegExpConstructor(regExpTaming)); // SES TypeError
// addIntrinsics(tameSymbolConstructor()); // Metro exception
// addIntrinsics(getAnonymousIntrinsics()); // SES TypeError
// completePrototypes(); // SES TypeError
// whitelistIntrinsics(intrinsics, markVirtualizedNativeFunction); // SES TypeError
// hardenIntrinsics(); // no error, app hangs loading, under investigation
Testing
Object.defineProperty(Object.prototype, 'test', { value: true });
Related issues
Manual testing steps
App functions as normal
yarn watch:clean yarn start:android # react-native run-android --variant=prodDebug
Screenshots/Recordings
Before
After
Pre-merge author checklist
Pre-merge reviewer checklist