react-native 0.70.0 → 0.70.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (150) hide show
  1. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +208 -0
  2. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +32 -2
  3. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +4 -0
  4. package/Libraries/Components/Keyboard/Keyboard.js +28 -3
  5. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +19 -6
  6. package/Libraries/Components/ScrollView/ScrollView.js +12 -16
  7. package/Libraries/Core/ReactNativeVersion.js +1 -1
  8. package/Libraries/Core/setUpReactDevTools.js +4 -1
  9. package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
  10. package/Libraries/StyleSheet/StyleSheet.js +6 -1
  11. package/React/AppSetup/RCTAppSetupUtils.h +11 -7
  12. package/React/Base/RCTVersion.m +1 -1
  13. package/React/CoreModules/RCTAccessibilityManager.h +1 -0
  14. package/React/CoreModules/RCTAccessibilityManager.mm +11 -0
  15. package/ReactAndroid/gradle.properties +1 -1
  16. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.java +9 -4
  17. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +11 -1
  18. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/OnLoad.cpp +18 -5
  19. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevLoadingViewController.java +2 -2
  20. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +1 -1
  21. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +3 -1
  22. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
  23. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +6 -4
  24. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +2 -2
  25. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YogaJniException.cpp +1 -1
  26. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  27. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +35 -7
  28. package/ReactCommon/hermes/executor/HermesExecutorFactory.h +9 -1
  29. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +9 -15
  30. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-debug-sources.jar → 0.70.2/hermes-engine-0.70.2-debug-sources.jar} +0 -0
  31. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-debug-sources.jar.md5 → 0.70.2/hermes-engine-0.70.2-debug-sources.jar.md5} +0 -0
  32. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-debug-sources.jar.sha1 → 0.70.2/hermes-engine-0.70.2-debug-sources.jar.sha1} +0 -0
  33. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-debug-sources.jar.sha256 → 0.70.2/hermes-engine-0.70.2-debug-sources.jar.sha256} +0 -0
  34. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-debug-sources.jar.sha512 → 0.70.2/hermes-engine-0.70.2-debug-sources.jar.sha512} +0 -0
  35. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-debug.aar +0 -0
  36. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-debug.aar.md5 +1 -0
  37. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-debug.aar.sha1 +1 -0
  38. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-debug.aar.sha256 +1 -0
  39. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-debug.aar.sha512 +1 -0
  40. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-release-sources.jar → 0.70.2/hermes-engine-0.70.2-release-sources.jar} +0 -0
  41. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-release-sources.jar.md5 → 0.70.2/hermes-engine-0.70.2-release-sources.jar.md5} +0 -0
  42. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-release-sources.jar.sha1 → 0.70.2/hermes-engine-0.70.2-release-sources.jar.sha1} +0 -0
  43. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-release-sources.jar.sha256 → 0.70.2/hermes-engine-0.70.2-release-sources.jar.sha256} +0 -0
  44. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0-release-sources.jar.sha512 → 0.70.2/hermes-engine-0.70.2-release-sources.jar.sha512} +0 -0
  45. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-release.aar +0 -0
  46. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-release.aar.md5 +1 -0
  47. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-release.aar.sha1 +1 -0
  48. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-release.aar.sha256 +1 -0
  49. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2-release.aar.sha512 +1 -0
  50. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0.module → 0.70.2/hermes-engine-0.70.2.module} +33 -33
  51. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.module.md5 +1 -0
  52. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.module.sha1 +1 -0
  53. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.module.sha256 +1 -0
  54. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.module.sha512 +1 -0
  55. package/android/com/facebook/react/hermes-engine/{0.70.0/hermes-engine-0.70.0.pom → 0.70.2/hermes-engine-0.70.2.pom} +1 -1
  56. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.pom.md5 +1 -0
  57. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.pom.sha1 +1 -0
  58. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.pom.sha256 +1 -0
  59. package/android/com/facebook/react/hermes-engine/0.70.2/hermes-engine-0.70.2.pom.sha512 +1 -0
  60. package/android/com/facebook/react/hermes-engine/maven-metadata.xml +4 -4
  61. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.md5 +1 -1
  62. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha1 +1 -1
  63. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha256 +1 -1
  64. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha512 +1 -1
  65. package/android/com/facebook/react/react-native/{0.70.0/react-native-0.70.0-debug-sources.jar → 0.70.2/react-native-0.70.2-debug-sources.jar} +0 -0
  66. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug-sources.jar.md5 +1 -0
  67. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug-sources.jar.sha1 +1 -0
  68. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug-sources.jar.sha256 +1 -0
  69. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug-sources.jar.sha512 +1 -0
  70. package/android/com/facebook/react/react-native/{0.70.0/react-native-0.70.0-debug.aar → 0.70.2/react-native-0.70.2-debug.aar} +0 -0
  71. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug.aar.md5 +1 -0
  72. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug.aar.sha1 +1 -0
  73. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug.aar.sha256 +1 -0
  74. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-debug.aar.sha512 +1 -0
  75. package/android/com/facebook/react/react-native/{0.70.0/react-native-0.70.0-release-sources.jar → 0.70.2/react-native-0.70.2-release-sources.jar} +0 -0
  76. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release-sources.jar.md5 +1 -0
  77. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release-sources.jar.sha1 +1 -0
  78. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release-sources.jar.sha256 +1 -0
  79. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release-sources.jar.sha512 +1 -0
  80. package/android/com/facebook/react/react-native/{0.70.0/react-native-0.70.0-release.aar → 0.70.2/react-native-0.70.2-release.aar} +0 -0
  81. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release.aar.md5 +1 -0
  82. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release.aar.sha1 +1 -0
  83. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release.aar.sha256 +1 -0
  84. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2-release.aar.sha512 +1 -0
  85. package/android/com/facebook/react/react-native/{0.70.0/react-native-0.70.0.module → 0.70.2/react-native-0.70.2.module} +43 -43
  86. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.module.md5 +1 -0
  87. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.module.sha1 +1 -0
  88. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.module.sha256 +1 -0
  89. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.module.sha512 +1 -0
  90. package/android/com/facebook/react/react-native/{0.70.0/react-native-0.70.0.pom → 0.70.2/react-native-0.70.2.pom} +1 -1
  91. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.pom.md5 +1 -0
  92. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.pom.sha1 +1 -0
  93. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.pom.sha256 +1 -0
  94. package/android/com/facebook/react/react-native/0.70.2/react-native-0.70.2.pom.sha512 +1 -0
  95. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -4
  96. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  97. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  98. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -1
  99. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -1
  100. package/jest/setup.js +2 -1
  101. package/package.json +11 -11
  102. package/scripts/cocoapods/utils.rb +6 -4
  103. package/scripts/codegen/generate-artifacts-executor.js +85 -13
  104. package/sdks/.hermesversion +1 -1
  105. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  106. package/sdks/hermesc/osx-bin/hermesc +0 -0
  107. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  108. package/template/package.json +2 -2
  109. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-debug.aar +0 -0
  110. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-debug.aar.md5 +0 -1
  111. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-debug.aar.sha1 +0 -1
  112. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-debug.aar.sha256 +0 -1
  113. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-debug.aar.sha512 +0 -1
  114. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-release.aar +0 -0
  115. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-release.aar.md5 +0 -1
  116. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-release.aar.sha1 +0 -1
  117. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-release.aar.sha256 +0 -1
  118. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0-release.aar.sha512 +0 -1
  119. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.module.md5 +0 -1
  120. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.module.sha1 +0 -1
  121. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.module.sha256 +0 -1
  122. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.module.sha512 +0 -1
  123. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.pom.md5 +0 -1
  124. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.pom.sha1 +0 -1
  125. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.pom.sha256 +0 -1
  126. package/android/com/facebook/react/hermes-engine/0.70.0/hermes-engine-0.70.0.pom.sha512 +0 -1
  127. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug-sources.jar.md5 +0 -1
  128. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug-sources.jar.sha1 +0 -1
  129. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug-sources.jar.sha256 +0 -1
  130. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug-sources.jar.sha512 +0 -1
  131. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug.aar.md5 +0 -1
  132. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug.aar.sha1 +0 -1
  133. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug.aar.sha256 +0 -1
  134. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-debug.aar.sha512 +0 -1
  135. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release-sources.jar.md5 +0 -1
  136. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release-sources.jar.sha1 +0 -1
  137. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release-sources.jar.sha256 +0 -1
  138. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release-sources.jar.sha512 +0 -1
  139. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release.aar.md5 +0 -1
  140. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release.aar.sha1 +0 -1
  141. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release.aar.sha256 +0 -1
  142. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0-release.aar.sha512 +0 -1
  143. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.module.md5 +0 -1
  144. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.module.sha1 +0 -1
  145. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.module.sha256 +0 -1
  146. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.module.sha512 +0 -1
  147. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.pom.md5 +0 -1
  148. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.pom.sha1 +0 -1
  149. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.pom.sha256 +0 -1
  150. package/android/com/facebook/react/react-native/0.70.0/react-native-0.70.0.pom.sha512 +0 -1
@@ -15,6 +15,8 @@ public class HermesExecutorFactory implements JavaScriptExecutorFactory {
15
15
  private static final String TAG = "Hermes";
16
16
 
17
17
  private final RuntimeConfig mConfig;
18
+ private boolean mEnableDebugger = true;
19
+ private String mDebuggerName = "";
18
20
 
19
21
  public HermesExecutorFactory() {
20
22
  this(null);
@@ -24,9 +26,17 @@ public class HermesExecutorFactory implements JavaScriptExecutorFactory {
24
26
  mConfig = config;
25
27
  }
26
28
 
29
+ public void setEnableDebugger(boolean enableDebugger) {
30
+ mEnableDebugger = enableDebugger;
31
+ }
32
+
33
+ public void setDebuggerName(String debuggerName) {
34
+ mDebuggerName = debuggerName;
35
+ }
36
+
27
37
  @Override
28
38
  public JavaScriptExecutor create() {
29
- return new HermesExecutor(mConfig);
39
+ return new HermesExecutor(mConfig, mEnableDebugger, mDebuggerName);
30
40
  }
31
41
 
32
42
  @Override
@@ -69,26 +69,39 @@ class HermesExecutorHolder
69
69
  "Lcom/facebook/hermes/reactexecutor/HermesExecutor;";
70
70
 
71
71
  static jni::local_ref<jhybriddata> initHybridDefaultConfig(
72
- jni::alias_ref<jclass>) {
72
+ jni::alias_ref<jclass>,
73
+ bool enableDebugger,
74
+ std::string debuggerName) {
73
75
  JReactMarker::setLogPerfMarkerIfNeeded();
74
76
 
75
77
  std::call_once(flag, []() {
76
78
  facebook::hermes::HermesRuntime::setFatalHandler(hermesFatalHandler);
77
79
  });
78
- return makeCxxInstance(
79
- std::make_unique<HermesExecutorFactory>(installBindings));
80
+ auto factory = std::make_unique<HermesExecutorFactory>(installBindings);
81
+ factory->setEnableDebugger(enableDebugger);
82
+ if (!debuggerName.empty()) {
83
+ factory->setDebuggerName(debuggerName);
84
+ }
85
+ return makeCxxInstance(std::move(factory));
80
86
  }
81
87
 
82
88
  static jni::local_ref<jhybriddata> initHybrid(
83
89
  jni::alias_ref<jclass>,
90
+ bool enableDebugger,
91
+ std::string debuggerName,
84
92
  jlong heapSizeMB) {
85
93
  JReactMarker::setLogPerfMarkerIfNeeded();
86
94
  auto runtimeConfig = makeRuntimeConfig(heapSizeMB);
87
95
  std::call_once(flag, []() {
88
96
  facebook::hermes::HermesRuntime::setFatalHandler(hermesFatalHandler);
89
97
  });
90
- return makeCxxInstance(std::make_unique<HermesExecutorFactory>(
91
- installBindings, JSIExecutor::defaultTimeoutInvoker, runtimeConfig));
98
+ auto factory = std::make_unique<HermesExecutorFactory>(
99
+ installBindings, JSIExecutor::defaultTimeoutInvoker, runtimeConfig);
100
+ factory->setEnableDebugger(enableDebugger);
101
+ if (!debuggerName.empty()) {
102
+ factory->setDebuggerName(debuggerName);
103
+ }
104
+ return makeCxxInstance(std::move(factory));
92
105
  }
93
106
 
94
107
  static bool canLoadFile(jni::alias_ref<jclass>, const std::string &path) {
@@ -69,9 +69,9 @@ public class DevLoadingViewController {
69
69
  return;
70
70
  }
71
71
 
72
+ int port = parsedURL.getPort() != -1 ? parsedURL.getPort() : parsedURL.getDefaultPort();
72
73
  showMessage(
73
- context.getString(
74
- R.string.catalyst_loading_from_url, parsedURL.getHost() + ":" + parsedURL.getPort()));
74
+ context.getString(R.string.catalyst_loading_from_url, parsedURL.getHost() + ":" + port));
75
75
  }
76
76
 
77
77
  public void showForRemoteJSEnabled() {
@@ -703,7 +703,7 @@ public abstract class DevSupportManagerBase implements DevSupportManager {
703
703
  URL sourceUrl = new URL(getSourceUrl());
704
704
  String path = sourceUrl.getPath().substring(1); // strip initial slash in path
705
705
  String host = sourceUrl.getHost();
706
- int port = sourceUrl.getPort();
706
+ int port = sourceUrl.getPort() != -1 ? sourceUrl.getPort() : sourceUrl.getDefaultPort();
707
707
  mCurrentContext
708
708
  .getJSModule(HMRClient.class)
709
709
  .setup("android", path, host, port, mDevSettings.isHotModuleReplacementEnabled());
@@ -152,7 +152,9 @@ public class ForwardingCookieHandler extends CookieHandler {
152
152
  || (message != null
153
153
  && (message.contains("WebView provider")
154
154
  || message.contains("No WebView installed")
155
- || message.contains("Cannot load WebView")))) {
155
+ || message.contains("Cannot load WebView")
156
+ || message.contains("disableWebView")
157
+ || message.contains("WebView is disabled")))) {
156
158
  return null;
157
159
  } else {
158
160
  throw exception;
@@ -17,6 +17,6 @@ public class ReactNativeVersion {
17
17
  public static final Map<String, Object> VERSION = MapBuilder.<String, Object>of(
18
18
  "major", 0,
19
19
  "minor", 70,
20
- "patch", 0,
20
+ "patch", 2,
21
21
  "prerelease", null);
22
22
  }
@@ -278,14 +278,16 @@ public class ViewProps {
278
278
  }
279
279
  return true;
280
280
  case BORDER_LEFT_COLOR:
281
- return !map.isNull(BORDER_LEFT_COLOR) && map.getInt(BORDER_LEFT_COLOR) == Color.TRANSPARENT;
281
+ return map.getType(BORDER_LEFT_COLOR) == ReadableType.Number
282
+ && map.getInt(BORDER_LEFT_COLOR) == Color.TRANSPARENT;
282
283
  case BORDER_RIGHT_COLOR:
283
- return !map.isNull(BORDER_RIGHT_COLOR)
284
+ return map.getType(BORDER_RIGHT_COLOR) == ReadableType.Number
284
285
  && map.getInt(BORDER_RIGHT_COLOR) == Color.TRANSPARENT;
285
286
  case BORDER_TOP_COLOR:
286
- return !map.isNull(BORDER_TOP_COLOR) && map.getInt(BORDER_TOP_COLOR) == Color.TRANSPARENT;
287
+ return map.getType(BORDER_TOP_COLOR) == ReadableType.Number
288
+ && map.getInt(BORDER_TOP_COLOR) == Color.TRANSPARENT;
287
289
  case BORDER_BOTTOM_COLOR:
288
- return !map.isNull(BORDER_BOTTOM_COLOR)
290
+ return map.getType(BORDER_BOTTOM_COLOR) == ReadableType.Number
289
291
  && map.getInt(BORDER_BOTTOM_COLOR) == Color.TRANSPARENT;
290
292
  case BORDER_WIDTH:
291
293
  return map.isNull(BORDER_WIDTH) || map.getDouble(BORDER_WIDTH) == 0d;
@@ -147,7 +147,7 @@ static int YGJNILogFunc(
147
147
  if (*jloggerPtr) {
148
148
  JNIEnv* env = getCurrentEnv();
149
149
 
150
- jclass cl = env->FindClass("Lcom/facebook/yoga/YogaLogLevel;");
150
+ jclass cl = env->FindClass("com/facebook/yoga/YogaLogLevel");
151
151
  static const jmethodID smethodId =
152
152
  facebook::yoga::vanillajni::getStaticMethodId(
153
153
  env, cl, "fromInt", "(I)Lcom/facebook/yoga/YogaLogLevel;");
@@ -386,7 +386,7 @@ static void jni_YGNodeCalculateLayoutJNI(
386
386
  }
387
387
  } catch (const std::logic_error& ex) {
388
388
  env->ExceptionClear();
389
- jclass cl = env->FindClass("Ljava/lang/IllegalStateException;");
389
+ jclass cl = env->FindClass("java/lang/IllegalStateException");
390
390
  static const jmethodID methodId = facebook::yoga::vanillajni::getMethodId(
391
391
  env, cl, "<init>", "(Ljava/lang/String;)V");
392
392
  auto throwable = env->NewObject(cl, methodId, env->NewStringUTF(ex.what()));
@@ -15,7 +15,7 @@ namespace yoga {
15
15
  namespace vanillajni {
16
16
 
17
17
  YogaJniException::YogaJniException() {
18
- jclass cl = getCurrentEnv()->FindClass("Ljava/lang/RuntimeException;");
18
+ jclass cl = getCurrentEnv()->FindClass("java/lang/RuntimeException");
19
19
  static const jmethodID methodId = facebook::yoga::vanillajni::getMethodId(
20
20
  getCurrentEnv(), cl, "<init>", "()V");
21
21
  auto throwable = getCurrentEnv()->NewObject(cl, methodId);
@@ -17,7 +17,7 @@ namespace facebook::react {
17
17
  constexpr struct {
18
18
  int32_t Major = 0;
19
19
  int32_t Minor = 70;
20
- int32_t Patch = 0;
20
+ int32_t Patch = 2;
21
21
  std::string_view Prerelease = "";
22
22
  } ReactNativeVersion;
23
23
 
@@ -155,15 +155,20 @@ class DecoratedRuntime : public jsi::WithRuntimeDecorator<ReentrancyCheck> {
155
155
  DecoratedRuntime(
156
156
  std::unique_ptr<Runtime> runtime,
157
157
  HermesRuntime &hermesRuntime,
158
- std::shared_ptr<MessageQueueThread> jsQueue)
158
+ std::shared_ptr<MessageQueueThread> jsQueue,
159
+ bool enableDebugger,
160
+ const std::string &debuggerName)
159
161
  : jsi::WithRuntimeDecorator<ReentrancyCheck>(*runtime, reentrancyCheck_),
160
162
  runtime_(std::move(runtime)),
161
163
  hermesRuntime_(hermesRuntime) {
162
164
  #ifdef HERMES_ENABLE_DEBUGGER
163
- auto adapter = std::make_unique<HermesExecutorRuntimeAdapter>(
164
- runtime_, hermesRuntime_, jsQueue);
165
- facebook::hermes::inspector::chrome::enableDebugging(
166
- std::move(adapter), "Hermes React Native");
165
+ enableDebugger_ = enableDebugger;
166
+ if (enableDebugger_) {
167
+ auto adapter = std::make_unique<HermesExecutorRuntimeAdapter>(
168
+ runtime_, hermesRuntime_, jsQueue);
169
+ facebook::hermes::inspector::chrome::enableDebugging(
170
+ std::move(adapter), debuggerName);
171
+ }
167
172
  #else
168
173
  (void)hermesRuntime_;
169
174
  #endif
@@ -171,7 +176,9 @@ class DecoratedRuntime : public jsi::WithRuntimeDecorator<ReentrancyCheck> {
171
176
 
172
177
  ~DecoratedRuntime() {
173
178
  #ifdef HERMES_ENABLE_DEBUGGER
174
- facebook::hermes::inspector::chrome::disableDebugging(*runtime_);
179
+ if (enableDebugger_) {
180
+ facebook::hermes::inspector::chrome::disableDebugging(*runtime_);
181
+ }
175
182
  #endif
176
183
  }
177
184
 
@@ -186,10 +193,21 @@ class DecoratedRuntime : public jsi::WithRuntimeDecorator<ReentrancyCheck> {
186
193
  std::shared_ptr<Runtime> runtime_;
187
194
  ReentrancyCheck reentrancyCheck_;
188
195
  HermesRuntime &hermesRuntime_;
196
+ #ifdef HERMES_ENABLE_DEBUGGER
197
+ bool enableDebugger_;
198
+ #endif
189
199
  };
190
200
 
191
201
  } // namespace
192
202
 
203
+ void HermesExecutorFactory::setEnableDebugger(bool enableDebugger) {
204
+ enableDebugger_ = enableDebugger;
205
+ }
206
+
207
+ void HermesExecutorFactory::setDebuggerName(const std::string &debuggerName) {
208
+ debuggerName_ = debuggerName;
209
+ }
210
+
193
211
  std::unique_ptr<JSExecutor> HermesExecutorFactory::createJSExecutor(
194
212
  std::shared_ptr<ExecutorDelegate> delegate,
195
213
  std::shared_ptr<MessageQueueThread> jsQueue) {
@@ -197,7 +215,11 @@ std::unique_ptr<JSExecutor> HermesExecutorFactory::createJSExecutor(
197
215
  makeHermesRuntimeSystraced(runtimeConfig_);
198
216
  HermesRuntime &hermesRuntimeRef = *hermesRuntime;
199
217
  auto decoratedRuntime = std::make_shared<DecoratedRuntime>(
200
- std::move(hermesRuntime), hermesRuntimeRef, jsQueue);
218
+ std::move(hermesRuntime),
219
+ hermesRuntimeRef,
220
+ jsQueue,
221
+ enableDebugger_,
222
+ debuggerName_);
201
223
 
202
224
  // So what do we have now?
203
225
  // DecoratedRuntime -> HermesRuntime
@@ -221,6 +243,12 @@ std::unique_ptr<JSExecutor> HermesExecutorFactory::createJSExecutor(
221
243
  decoratedRuntime, delegate, jsQueue, timeoutInvoker_, runtimeInstaller_);
222
244
  }
223
245
 
246
+ ::hermes::vm::RuntimeConfig HermesExecutorFactory::defaultRuntimeConfig() {
247
+ return ::hermes::vm::RuntimeConfig::Builder()
248
+ .withEnableSampleProfiling(true)
249
+ .build();
250
+ }
251
+
224
252
  HermesExecutor::HermesExecutor(
225
253
  std::shared_ptr<jsi::Runtime> runtime,
226
254
  std::shared_ptr<ExecutorDelegate> delegate,
@@ -21,21 +21,29 @@ class HermesExecutorFactory : public JSExecutorFactory {
21
21
  JSIExecutor::RuntimeInstaller runtimeInstaller,
22
22
  const JSIScopedTimeoutInvoker &timeoutInvoker =
23
23
  JSIExecutor::defaultTimeoutInvoker,
24
- ::hermes::vm::RuntimeConfig runtimeConfig = ::hermes::vm::RuntimeConfig())
24
+ ::hermes::vm::RuntimeConfig runtimeConfig = defaultRuntimeConfig())
25
25
  : runtimeInstaller_(runtimeInstaller),
26
26
  timeoutInvoker_(timeoutInvoker),
27
27
  runtimeConfig_(std::move(runtimeConfig)) {
28
28
  assert(timeoutInvoker_ && "Should not have empty timeoutInvoker");
29
29
  }
30
30
 
31
+ void setEnableDebugger(bool enableDebugger);
32
+
33
+ void setDebuggerName(const std::string &debuggerName);
34
+
31
35
  std::unique_ptr<JSExecutor> createJSExecutor(
32
36
  std::shared_ptr<ExecutorDelegate> delegate,
33
37
  std::shared_ptr<MessageQueueThread> jsQueue) override;
34
38
 
35
39
  private:
40
+ static ::hermes::vm::RuntimeConfig defaultRuntimeConfig();
41
+
36
42
  JSIExecutor::RuntimeInstaller runtimeInstaller_;
37
43
  JSIScopedTimeoutInvoker timeoutInvoker_;
38
44
  ::hermes::vm::RuntimeConfig runtimeConfig_;
45
+ bool enableDebugger_ = true;
46
+ std::string debuggerName_ = "Hermes React Native";
39
47
  };
40
48
 
41
49
  class HermesExecutor : public JSIExecutor {
@@ -139,7 +139,7 @@ class Connection::Impl : public inspector::InspectorObserver,
139
139
 
140
140
  template <typename C>
141
141
  void runInExecutor(int id, C callback) {
142
- folly::via(executor_.get(), [cb = std::move(callback)]() { cb(); });
142
+ executor_->add([cb = std::move(callback)]() { cb(); });
143
143
  }
144
144
 
145
145
  std::shared_ptr<RuntimeAdapter> runtimeAdapter_;
@@ -1411,20 +1411,14 @@ Connection::Impl::makePropsFromValue(
1411
1411
  }
1412
1412
 
1413
1413
  void Connection::Impl::handle(const m::runtime::GetHeapUsageRequest &req) {
1414
- auto resp = std::make_shared<m::runtime::GetHeapUsageResponse>();
1415
- resp->id = req.id;
1416
-
1417
- inspector_
1418
- ->executeIfEnabled(
1419
- "Runtime.getHeapUsage",
1420
- [this, req, resp](const debugger::ProgramState &state) {
1421
- auto heapInfo = getRuntime().instrumentation().getHeapInfo(false);
1422
- resp->usedSize = heapInfo["hermes_allocatedBytes"];
1423
- resp->totalSize = heapInfo["hermes_heapSize"];
1424
- })
1425
- .via(executor_.get())
1426
- .thenValue([this, resp](auto &&) { sendResponseToClient(*resp); })
1427
- .thenError<std::exception>(sendErrorToClient(req.id));
1414
+ runInExecutor(req.id, [this, req]() {
1415
+ auto heapInfo = getRuntime().instrumentation().getHeapInfo(false);
1416
+ auto resp = std::make_shared<m::runtime::GetHeapUsageResponse>();
1417
+ resp->id = req.id;
1418
+ resp->usedSize = heapInfo["hermes_allocatedBytes"];
1419
+ resp->totalSize = heapInfo["hermes_heapSize"];
1420
+ sendResponseToClient(*resp);
1421
+ });
1428
1422
  }
1429
1423
 
1430
1424
  void Connection::Impl::handle(const m::runtime::GetPropertiesRequest &req) {
@@ -0,0 +1 @@
1
+ f412396cb310fe5c25c5644202117aad
@@ -0,0 +1 @@
1
+ d5a00a8dd7ff77d6c55a92abbb9806bea280d1c8
@@ -0,0 +1 @@
1
+ 11b8beb7cca6f65fb3b7ec9e8672857d8b282fe3d185ccc3602f027678443a55
@@ -0,0 +1 @@
1
+ cef7b8d30257120ba94092c2d77074fa71ff43aa1b37259c165b981745b0c47d2ce0576b2f845399bab7d97058dd07146fffea43311592124e7d793aa77c41fe
@@ -0,0 +1 @@
1
+ be00a0a4d42327cc4e6ec51263fc86a6c29c07e5
@@ -0,0 +1 @@
1
+ cd59b9858ed5d194201f8d87afb94fc6c588d2dad09354a6f65d825142abe4f5
@@ -0,0 +1 @@
1
+ 0a20ac743b57c76f807f45c5c1ef0760e60e59f98c5e5366c67940126bd8d1119d1ae57c8f58c624ba32d4921092ab6ea1ed074a4fa8e64d6fcf9474cc3f007d
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "com.facebook.react",
5
5
  "module": "hermes-engine",
6
- "version": "0.70.0",
6
+ "version": "0.70.2",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -25,13 +25,13 @@
25
25
  },
26
26
  "files": [
27
27
  {
28
- "name": "hermes-engine-0.70.0-debug.aar",
29
- "url": "hermes-engine-0.70.0-debug.aar",
30
- "size": 4033602,
31
- "sha512": "e98174ac10e007c97b2c75acb834bc7913aa0da822498631afcb1a48dc9b657f8fbe9aea3c904d08435190a491e86974572bc1a47a7e8c4879d57ff6a05bad26",
32
- "sha256": "a5b4634eb88243e1a69ec018ebb0fe5e40650d82690997760e72c9df2a88557e",
33
- "sha1": "2ba589fbb8ae99167fd5137e00a3d4eb0f8abb1b",
34
- "md5": "be8d20eb431f6b0999e7992332a4f09f"
28
+ "name": "hermes-engine-0.70.2-debug.aar",
29
+ "url": "hermes-engine-0.70.2-debug.aar",
30
+ "size": 4033708,
31
+ "sha512": "cef7b8d30257120ba94092c2d77074fa71ff43aa1b37259c165b981745b0c47d2ce0576b2f845399bab7d97058dd07146fffea43311592124e7d793aa77c41fe",
32
+ "sha256": "11b8beb7cca6f65fb3b7ec9e8672857d8b282fe3d185ccc3602f027678443a55",
33
+ "sha1": "d5a00a8dd7ff77d6c55a92abbb9806bea280d1c8",
34
+ "md5": "f412396cb310fe5c25c5644202117aad"
35
35
  }
36
36
  ]
37
37
  },
@@ -76,13 +76,13 @@
76
76
  ],
77
77
  "files": [
78
78
  {
79
- "name": "hermes-engine-0.70.0-debug.aar",
80
- "url": "hermes-engine-0.70.0-debug.aar",
81
- "size": 4033602,
82
- "sha512": "e98174ac10e007c97b2c75acb834bc7913aa0da822498631afcb1a48dc9b657f8fbe9aea3c904d08435190a491e86974572bc1a47a7e8c4879d57ff6a05bad26",
83
- "sha256": "a5b4634eb88243e1a69ec018ebb0fe5e40650d82690997760e72c9df2a88557e",
84
- "sha1": "2ba589fbb8ae99167fd5137e00a3d4eb0f8abb1b",
85
- "md5": "be8d20eb431f6b0999e7992332a4f09f"
79
+ "name": "hermes-engine-0.70.2-debug.aar",
80
+ "url": "hermes-engine-0.70.2-debug.aar",
81
+ "size": 4033708,
82
+ "sha512": "cef7b8d30257120ba94092c2d77074fa71ff43aa1b37259c165b981745b0c47d2ce0576b2f845399bab7d97058dd07146fffea43311592124e7d793aa77c41fe",
83
+ "sha256": "11b8beb7cca6f65fb3b7ec9e8672857d8b282fe3d185ccc3602f027678443a55",
84
+ "sha1": "d5a00a8dd7ff77d6c55a92abbb9806bea280d1c8",
85
+ "md5": "f412396cb310fe5c25c5644202117aad"
86
86
  }
87
87
  ]
88
88
  },
@@ -97,8 +97,8 @@
97
97
  },
98
98
  "files": [
99
99
  {
100
- "name": "hermes-engine-0.70.0-debug-sources.jar",
101
- "url": "hermes-engine-0.70.0-debug-sources.jar",
100
+ "name": "hermes-engine-0.70.2-debug-sources.jar",
101
+ "url": "hermes-engine-0.70.2-debug-sources.jar",
102
102
  "size": 62707,
103
103
  "sha512": "b6d659b87a103dd21026d8715420d047b70e76219d39121795598811cff2c7bb6cf3a860d8836fe6eeb753f785d7c2f7b961ea48c5cba27626a6e1cb5b07ee62",
104
104
  "sha256": "1fe6791aeefb0391d319d763c655a6f8232676141b886d0a467b8834a0b86497",
@@ -118,13 +118,13 @@
118
118
  },
119
119
  "files": [
120
120
  {
121
- "name": "hermes-engine-0.70.0-release.aar",
122
- "url": "hermes-engine-0.70.0-release.aar",
123
- "size": 3458065,
124
- "sha512": "4bacc65468346015dedf8f9b248c8f86a713c2662436f81002fc5037276ab87887b9486049610d0b8858ef0e603094bc096f2c6670088ae8a42d5493fde2e2c3",
125
- "sha256": "d8d5e163bcaab5af93ca38f97be5a5eb124a4fa063b97e46bab4dce048b1ed3c",
126
- "sha1": "299bcd3b736f349b076fd53ec1206bd5a22880ff",
127
- "md5": "ab16e23602f335bc03909edbe52637f1"
121
+ "name": "hermes-engine-0.70.2-release.aar",
122
+ "url": "hermes-engine-0.70.2-release.aar",
123
+ "size": 3458418,
124
+ "sha512": "0a20ac743b57c76f807f45c5c1ef0760e60e59f98c5e5366c67940126bd8d1119d1ae57c8f58c624ba32d4921092ab6ea1ed074a4fa8e64d6fcf9474cc3f007d",
125
+ "sha256": "cd59b9858ed5d194201f8d87afb94fc6c588d2dad09354a6f65d825142abe4f5",
126
+ "sha1": "be00a0a4d42327cc4e6ec51263fc86a6c29c07e5",
127
+ "md5": "01b057809e453a9d1afcf25fcce7f830"
128
128
  }
129
129
  ]
130
130
  },
@@ -169,13 +169,13 @@
169
169
  ],
170
170
  "files": [
171
171
  {
172
- "name": "hermes-engine-0.70.0-release.aar",
173
- "url": "hermes-engine-0.70.0-release.aar",
174
- "size": 3458065,
175
- "sha512": "4bacc65468346015dedf8f9b248c8f86a713c2662436f81002fc5037276ab87887b9486049610d0b8858ef0e603094bc096f2c6670088ae8a42d5493fde2e2c3",
176
- "sha256": "d8d5e163bcaab5af93ca38f97be5a5eb124a4fa063b97e46bab4dce048b1ed3c",
177
- "sha1": "299bcd3b736f349b076fd53ec1206bd5a22880ff",
178
- "md5": "ab16e23602f335bc03909edbe52637f1"
172
+ "name": "hermes-engine-0.70.2-release.aar",
173
+ "url": "hermes-engine-0.70.2-release.aar",
174
+ "size": 3458418,
175
+ "sha512": "0a20ac743b57c76f807f45c5c1ef0760e60e59f98c5e5366c67940126bd8d1119d1ae57c8f58c624ba32d4921092ab6ea1ed074a4fa8e64d6fcf9474cc3f007d",
176
+ "sha256": "cd59b9858ed5d194201f8d87afb94fc6c588d2dad09354a6f65d825142abe4f5",
177
+ "sha1": "be00a0a4d42327cc4e6ec51263fc86a6c29c07e5",
178
+ "md5": "01b057809e453a9d1afcf25fcce7f830"
179
179
  }
180
180
  ]
181
181
  },
@@ -190,8 +190,8 @@
190
190
  },
191
191
  "files": [
192
192
  {
193
- "name": "hermes-engine-0.70.0-release-sources.jar",
194
- "url": "hermes-engine-0.70.0-release-sources.jar",
193
+ "name": "hermes-engine-0.70.2-release-sources.jar",
194
+ "url": "hermes-engine-0.70.2-release-sources.jar",
195
195
  "size": 62694,
196
196
  "sha512": "205a0fd395d6d02c27c4611ae1ceca7ccb4f3554f17f44d338f9ffef2e3521e933616e74ac1b17bb7d300891ede5ecf58e966a11becda27f6760f862f2316783",
197
197
  "sha256": "e622d9a7db5ba1a2161785ab8745dda58d1012aad04f7f9489fce207cf567f8a",
@@ -0,0 +1 @@
1
+ 1ac41750642c2df6d6269a9823f77996
@@ -0,0 +1 @@
1
+ 10e06fe25a2c44f2c2e98e5e02fa614002bc42d5
@@ -0,0 +1 @@
1
+ 0453547ea12f485b00da91b94788bd74264b0ca2071def136ae6beb9be99f1d4
@@ -0,0 +1 @@
1
+ 8ce4555dc60b02ac85693817b8523a525864971b46964287bcbcdb3f61ccf9bbbfc83ac2761ddf568aee896e4ada8b226fd0c688bb5a06027216e4a1e9c7f3c3
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>com.facebook.react</groupId>
11
11
  <artifactId>hermes-engine</artifactId>
12
- <version>0.70.0</version>
12
+ <version>0.70.2</version>
13
13
  <packaging>pom</packaging>
14
14
  <dependencies>
15
15
  <dependency>
@@ -0,0 +1 @@
1
+ e36c7054f35ad619256283ea8f803cd7
@@ -0,0 +1 @@
1
+ 50856097b2acf16a0e87200671c3678a6c90bffe
@@ -0,0 +1 @@
1
+ 53670b5cff5978c8b713923980e12f18084ec411274170381aa5c19c7a67ed28
@@ -0,0 +1 @@
1
+ e24206590223e37759d61e476334d9deb9341f19dad727074c902311426673bd8edc890a4ecd193b63bea9dd0e8722dda8d92e212c33c4238ed99d090938efb9
@@ -3,11 +3,11 @@
3
3
  <groupId>com.facebook.react</groupId>
4
4
  <artifactId>hermes-engine</artifactId>
5
5
  <versioning>
6
- <latest>0.70.0</latest>
7
- <release>0.70.0</release>
6
+ <latest>0.70.2</latest>
7
+ <release>0.70.2</release>
8
8
  <versions>
9
- <version>0.70.0</version>
9
+ <version>0.70.2</version>
10
10
  </versions>
11
- <lastUpdated>20220905160335</lastUpdated>
11
+ <lastUpdated>20221004104933</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- e07d39b61faf41a133d3568a10aa708d
1
+ 615201ff8503f66944867d762f0acec9
@@ -1 +1 @@
1
- 4e441fe005646586319116e3dea9d5e51d95df4e
1
+ 1a207abf1ed550505aca6efacbdcd78e776d45b8
@@ -1 +1 @@
1
- 2bbba52e81cec1876f9dc918e339ba903ef701680b60170b8d7524b2877f7b18
1
+ 78a9a2f31380cbfa0b1d3c6296d3d0cef9a879ec67de5d9817a06f33eeb03726
@@ -1 +1 @@
1
- f9acb09710801d0bbd1e25e0f1fb3147559f769a76f21c45ae8a93ce1b7164df85012244b72c48089aec0a027c81da2693310061fbb4d8c83b279218fb9be75a
1
+ 2b99a6161619b898f8d9c5b6bc5702c35b8c1fd28d9adca37c4ddb580a08e92908e578ff7c7575b456a7c4406f1e7c8e915407d4cd0276b7922f24839fc89edd
@@ -0,0 +1 @@
1
+ 5b7b2d084a263dec98968327441e9f889d7d37aa
@@ -0,0 +1 @@
1
+ bee0aa1126b41b09db15e87c66dfc7698822d75d9c9c4eec4ff2fc12103b3c70
@@ -0,0 +1 @@
1
+ 9bf54c5f1a1f754b46cc5dd16af61d5f0f4808fc31ef471a3af215ca529e47c12cf4dcd7f990775093e757c29a118796db718440114ea7edd223cdddfa59cc7e
@@ -0,0 +1 @@
1
+ b817cf892eeccccb017d6934e09ccaca
@@ -0,0 +1 @@
1
+ 78fd0ebc9da16c2c91041a533c3130334e29e483
@@ -0,0 +1 @@
1
+ 35d003885d90acd063d23defacdf0b66659f9ea8c9815b883d33e1d92278cf62
@@ -0,0 +1 @@
1
+ 7d1b15159fca02c3ad958189cb2edcc85fd25702d916899e703382776903917484ac47dc4ee029e5a8aeea16715813c46a5d9c90fafe2c0e1ff084b89060072b
@@ -0,0 +1 @@
1
+ 90532bf0afd6632512f9d343a009fc12cab48b1e