react-native-macos/scripts
Ramanpreet Nara 0486640571 Introduce NativeModulePerfLogger
Summary:
## Description
This diff introduces `NativeModulePerfLogger`, its BUCK, Cocoapod, android-ndk targets. This diff also wires up those targets into the React Native bridge and TurboModules targets, so that we get signal on if the code compiles.

This diff also introduces `TurboModulePerfLogger`, which is a namespace that holds the `NativeModulePerfLogger` that'll do perf-logging for TurboModules.

## How will perflogging work on iOS?
1. Each application will, during React Native initialization, create a NativeModule perf logger.
2. If TurboModules are enabled, we'll call `TurboModulePerfLogger::setInstance(perfLogger)`. If TurboModules are disabled, we'll call `NativeModulePerfLogger::setInstance(perfLogger)`.
3. TurboModules, when they're created and used, will log events via `TurboModulePerfLogger::getInstance()`. NativeModules (i.e: bridge modules), when they're created and used, will log events via the `NativeModulePerfLogger::getInstance()`.

> **Note:** The NativeModule system will log events for non-TurboModules as well. Maybe we should log events for only NativeModules that conform to the `TurboModule` interface, when TurboModules are disabled. This'll ensure a fair comparison between the two systems.

## How will perflogging work on Android?
Please see the subsequent diff.

allow-large-files

Changelog:
[Both][Added] - Introduce `NativeModulePerfLogger`

Reviewed By: PeteTheHeat

Differential Revision: D21318053

fbshipit-source-id: 6ddf5b5a80bdc4076d2dd6588067e2b0ec8c2c6b
2020-05-13 20:28:15 -07:00
..
circleci Fix CIRCLE_PR_NUMBER may not always be set (#28640) 2020-04-15 11:46:33 -07:00
versiontemplates Stamp React Native Version Into C++ Code (#28036) 2020-02-27 06:42:14 -08:00
.packager.env Move YGStyle to seperate file and add constructors 2018-02-20 05:55:36 -08:00
.tests.env Upgrade tests to Xcode 11.3.1 (#28498) 2020-04-03 11:56:21 -07:00
android-e2e-test.js Remove unused packages from xplat/js/package.json 2020-04-17 09:24:08 -07:00
android-setup.sh Move non-license comments out of license header 2019-10-15 20:12:12 -07:00
bump-oss-version.js fbshipit-source-id: da15f69185e724eaf7d4bc78dbc61fcdcb3074d5 2020-03-13 21:46:45 -07:00
compose-source-maps.js Tidy up license headers [2/n] 2019-10-16 10:06:34 -07:00
generate-api-docs.js Generate doc info for RN components 2019-09-19 18:36:25 -07:00
generate-native-modules-specs.sh Add script to generate native modules specs with react-native-codegen 2020-05-08 12:23:35 -07:00
generate-rncore.sh Move non-license comments out of license header 2019-10-15 20:12:12 -07:00
ios-configure-glog.sh Upgrade folly to v2018.10.22.00 for iOS (#21976) 2018-10-29 12:13:11 -07:00
launchPackager.bat Metro Bundler -> Metro 2019-08-16 10:37:10 -07:00
launchPackager.command Metro Bundler -> Metro 2019-08-16 10:37:10 -07:00
node-binary.sh Fix: use NODE_BINARY when starting packager (#24156) 2019-04-10 07:39:23 -07:00
objc-test.sh Use Xcode 11.3.0 and iOS 13.3 in tests (#27783) 2020-01-17 16:42:56 -08:00
packager.sh Use CocoaPods-based RNTesterPods for iOS tests (#25416) 2019-06-28 19:18:10 -07:00
process-podspecs.sh Update copyright headers to yearless format 2018-09-11 15:33:07 -07:00
publish-npm.js Back out "Upgrade Prettier from 1.17 to 2.0.2." 2020-03-24 21:47:35 -07:00
react-native-xcode.sh Check en0..en8 when generating ip.txt for iOS debug builds (#28764) 2020-04-28 09:32:55 -07:00
react_native_pods.rb Introduce NativeModulePerfLogger 2020-05-13 20:28:15 -07:00
run-android-ci-instrumentation-tests.js Upgrade Prettier in Xplat to version 1.19.1 2020-04-09 11:01:58 -07:00
run-android-emulator.sh Move non-license comments out of license header 2019-10-15 20:12:12 -07:00
run-android-local-integration-tests.sh Updating the URLs to point at new domain name reactnative.dev 2020-02-24 13:09:11 -08:00
run-android-local-unit-tests.sh Updating the URLs to point at new domain name reactnative.dev 2020-02-24 13:09:11 -08:00
run-ci-e2e-tests.js chore: remove tvOS from the e2e CI tests (#28743) 2020-04-26 21:38:16 -07:00
run-ci-javascript-tests.js Add react-native-oss-e2e job to Sandcastle, running JavaScript e2e tests from open source 2019-04-15 11:07:54 -07:00
run-instrumentation-tests-via-adb-shell.sh Move non-license comments out of license header 2019-10-15 20:12:12 -07:00
set-rn-template-version.js Adjust test manual e2e script to work with new init (#24583) 2019-04-25 02:03:10 -07:00
sync-css-layout.sh Clean up instances of scripts/signedsource.py 2019-03-14 13:42:27 -07:00
test-manual-e2e.sh chore: update `./scripts/test-manual-e2e.sh` (#28653) 2020-04-16 17:48:14 -07:00
try-n-times.js Fix linting issues (#22062) 2018-11-01 14:29:16 -07:00
validate-android-device-env.sh Update Broken Link #devcjog25 (#27025) 2019-10-28 12:11:45 -07:00
validate-android-sdk.sh Updating the URLs to point at new domain name reactnative.dev 2020-02-24 13:09:11 -08:00
validate-android-test-env.sh Updating the URLs to point at new domain name reactnative.dev 2020-02-24 13:09:11 -08:00
validate-ios-test-env.sh Updating the URLs to point at new domain name reactnative.dev 2020-02-24 13:09:11 -08:00