react-native 0.71.4 → 0.71.6

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.
@@ -105,6 +105,12 @@ class Blob {
105
105
  blobId: this.data.blobId,
106
106
  offset,
107
107
  size,
108
+ /* Since `blob.slice()` creates a new view onto the same binary
109
+ * data as the original blob, we should re-use the same collector
110
+ * object so that the underlying resource gets deallocated when
111
+ * the last view into the data is released, not the first.
112
+ */
113
+ __collector: this.data.__collector,
108
114
  });
109
115
  }
110
116
 
@@ -349,6 +349,9 @@ type IOSProps = $ReadOnly<{|
349
349
  /**
350
350
  * Give the keyboard and the system information about the
351
351
  * expected semantic meaning for the content that users enter.
352
+ * `autoComplete` property accomplishes same behavior and is recommended as its supported by both platforms.
353
+ * Avoid using both `autoComplete` and `textContentType`, you can use `Platform.select` for differing platform behaviors.
354
+ * For backwards compatibility, when both set, `textContentType` takes precedence on iOS.
352
355
  * @platform ios
353
356
  */
354
357
  textContentType?: ?TextContentType,
@@ -1630,16 +1633,20 @@ const ExportedForwardRef: React.AbstractComponent<
1630
1633
  }
1631
1634
  autoComplete={
1632
1635
  Platform.OS === 'android'
1633
- ? // $FlowFixMe
1636
+ ? // $FlowFixMe[invalid-computed-prop]
1637
+ // $FlowFixMe[prop-missing]
1634
1638
  autoCompleteWebToAutoCompleteAndroidMap[autoComplete] ??
1635
1639
  autoComplete
1636
1640
  : undefined
1637
1641
  }
1638
1642
  textContentType={
1639
- Platform.OS === 'ios' &&
1640
- autoComplete &&
1641
- autoComplete in autoCompleteWebToTextContentTypeMap
1642
- ? // $FlowFixMe
1643
+ textContentType != null
1644
+ ? textContentType
1645
+ : Platform.OS === 'ios' &&
1646
+ autoComplete &&
1647
+ autoComplete in autoCompleteWebToTextContentTypeMap
1648
+ ? // $FlowFixMe[invalid-computed-prop]
1649
+ // $FlowFixMe[prop-missing]
1643
1650
  autoCompleteWebToTextContentTypeMap[autoComplete]
1644
1651
  : textContentType
1645
1652
  }
@@ -12,6 +12,6 @@
12
12
  exports.version = {
13
13
  major: 0,
14
14
  minor: 71,
15
- patch: 4,
15
+ patch: 6,
16
16
  prerelease: null,
17
17
  };
@@ -23,7 +23,7 @@ NSDictionary* RCTGetReactNativeVersion(void)
23
23
  __rnVersion = @{
24
24
  RCTVersionMajor: @(0),
25
25
  RCTVersionMinor: @(71),
26
- RCTVersionPatch: @(4),
26
+ RCTVersionPatch: @(6),
27
27
  RCTVersionPrerelease: [NSNull null],
28
28
  };
29
29
  });
@@ -1,4 +1,4 @@
1
- VERSION_NAME=0.71.4
1
+ VERSION_NAME=0.71.6
2
2
  GROUP=com.facebook.react
3
3
 
4
4
  # JVM Versions
@@ -39,15 +39,21 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap {
39
39
  return mJniCallCounter;
40
40
  }
41
41
 
42
- private HashMap<String, Object> getLocalMap() {
43
- if (mLocalMap != null) {
44
- return mLocalMap;
45
- }
42
+ private void ensureKeysAreImported() {
46
43
  synchronized (this) {
47
44
  if (mKeys == null) {
48
45
  mKeys = Assertions.assertNotNull(importKeys());
49
46
  mJniCallCounter++;
50
47
  }
48
+ }
49
+ }
50
+
51
+ private HashMap<String, Object> getLocalMap() {
52
+ if (mLocalMap != null) {
53
+ return mLocalMap;
54
+ }
55
+ ensureKeysAreImported();
56
+ synchronized (this) {
51
57
  if (mLocalMap == null) {
52
58
  Object[] values = Assertions.assertNotNull(importValues());
53
59
  mJniCallCounter++;
@@ -69,11 +75,8 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap {
69
75
  if (mLocalTypeMap != null) {
70
76
  return mLocalTypeMap;
71
77
  }
78
+ ensureKeysAreImported();
72
79
  synchronized (this) {
73
- if (mKeys == null) {
74
- mKeys = Assertions.assertNotNull(importKeys());
75
- mJniCallCounter++;
76
- }
77
80
  // check that no other thread has already updated
78
81
  if (mLocalTypeMap == null) {
79
82
  Object[] types = Assertions.assertNotNull(importTypes());
@@ -187,48 +190,47 @@ public class ReadableNativeMap extends NativeMap implements ReadableMap {
187
190
 
188
191
  @Override
189
192
  public @NonNull Iterator<Map.Entry<String, Object>> getEntryIterator() {
190
- if (mKeys == null) {
191
- mKeys = Assertions.assertNotNull(importKeys());
192
- }
193
+ ensureKeysAreImported();
193
194
  final String[] iteratorKeys = mKeys;
194
- final Object[] iteratorValues = Assertions.assertNotNull(importValues());
195
- return new Iterator<Map.Entry<String, Object>>() {
196
- int currentIndex = 0;
195
+ synchronized (this) {
196
+ final Object[] iteratorValues = Assertions.assertNotNull(importValues());
197
197
 
198
- @Override
199
- public boolean hasNext() {
200
- return currentIndex < iteratorKeys.length;
201
- }
198
+ return new Iterator<Map.Entry<String, Object>>() {
199
+ int currentIndex = 0;
202
200
 
203
- @Override
204
- public Map.Entry<String, Object> next() {
205
- final int index = currentIndex++;
206
- return new Map.Entry<String, Object>() {
207
- @Override
208
- public String getKey() {
209
- return iteratorKeys[index];
210
- }
211
-
212
- @Override
213
- public Object getValue() {
214
- return iteratorValues[index];
215
- }
216
-
217
- @Override
218
- public Object setValue(Object value) {
219
- throw new UnsupportedOperationException(
220
- "Can't set a value while iterating over a ReadableNativeMap");
221
- }
222
- };
223
- }
224
- };
201
+ @Override
202
+ public boolean hasNext() {
203
+ return currentIndex < iteratorKeys.length;
204
+ }
205
+
206
+ @Override
207
+ public Map.Entry<String, Object> next() {
208
+ final int index = currentIndex++;
209
+ return new Map.Entry<String, Object>() {
210
+ @Override
211
+ public String getKey() {
212
+ return iteratorKeys[index];
213
+ }
214
+
215
+ @Override
216
+ public Object getValue() {
217
+ return iteratorValues[index];
218
+ }
219
+
220
+ @Override
221
+ public Object setValue(Object value) {
222
+ throw new UnsupportedOperationException(
223
+ "Can't set a value while iterating over a ReadableNativeMap");
224
+ }
225
+ };
226
+ }
227
+ };
228
+ }
225
229
  }
226
230
 
227
231
  @Override
228
232
  public @NonNull ReadableMapKeySetIterator keySetIterator() {
229
- if (mKeys == null) {
230
- mKeys = Assertions.assertNotNull(importKeys());
231
- }
233
+ ensureKeysAreImported();
232
234
  final String[] iteratorKeys = mKeys;
233
235
  return new ReadableMapKeySetIterator() {
234
236
  int currentIndex = 0;
@@ -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", 71,
20
- "patch", 4,
20
+ "patch", 6,
21
21
  "prerelease", null);
22
22
  }
@@ -17,7 +17,7 @@ namespace facebook::react {
17
17
  constexpr struct {
18
18
  int32_t Major = 0;
19
19
  int32_t Minor = 71;
20
- int32_t Patch = 4;
20
+ int32_t Patch = 6;
21
21
  std::string_view Prerelease = "";
22
22
  } ReactNativeVersion;
23
23
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "react-native",
3
- "version": "0.71.4",
3
+ "version": "0.71.6",
4
4
  "bin": "./cli.js",
5
5
  "description": "A framework for building native apps using React",
6
6
  "license": "MIT",
@@ -110,9 +110,9 @@
110
110
  },
111
111
  "dependencies": {
112
112
  "@jest/create-cache-key-function": "^29.2.1",
113
- "@react-native-community/cli": "10.2.0",
113
+ "@react-native-community/cli": "10.2.2",
114
114
  "@react-native-community/cli-platform-android": "10.2.0",
115
- "@react-native-community/cli-platform-ios": "10.2.0",
115
+ "@react-native-community/cli-platform-ios": "10.2.1",
116
116
  "@react-native/assets": "1.0.0",
117
117
  "@react-native/normalize-color": "2.1.0",
118
118
  "@react-native/polyfills": "2.0.0",
@@ -125,15 +125,15 @@
125
125
  "jest-environment-node": "^29.2.1",
126
126
  "jsc-android": "^250231.0.0",
127
127
  "memoize-one": "^5.0.0",
128
- "metro-react-native-babel-transformer": "0.73.8",
129
- "metro-runtime": "0.73.8",
130
- "metro-source-map": "0.73.8",
128
+ "metro-react-native-babel-transformer": "0.73.9",
129
+ "metro-runtime": "0.73.9",
130
+ "metro-source-map": "0.73.9",
131
131
  "mkdirp": "^0.5.1",
132
132
  "nullthrows": "^1.1.1",
133
133
  "pretty-format": "^26.5.2",
134
134
  "promise": "^8.3.0",
135
135
  "react-devtools-core": "^4.26.1",
136
- "react-native-gradle-plugin": "^0.71.16",
136
+ "react-native-gradle-plugin": "^0.71.17",
137
137
  "react-refresh": "^0.4.0",
138
138
  "react-shallow-renderer": "^16.15.0",
139
139
  "regenerator-runtime": "^0.13.2",
@@ -182,8 +182,8 @@
182
182
  "jest": "^29.2.1",
183
183
  "jest-junit": "^10.0.0",
184
184
  "jscodeshift": "^0.13.1",
185
- "metro-babel-register": "0.73.8",
186
- "metro-memory-fs": "0.73.8",
185
+ "metro-babel-register": "0.73.9",
186
+ "metro-memory-fs": "0.73.9",
187
187
  "mkdirp": "^0.5.1",
188
188
  "mock-fs": "^5.1.4",
189
189
  "prettier": "^2.4.1",
@@ -85,7 +85,7 @@ class CodegenUtils
85
85
  'source' => { :git => '' },
86
86
  'header_mappings_dir' => './',
87
87
  'platforms' => {
88
- 'ios' => '11.0',
88
+ 'ios' => min_ios_version_supported,
89
89
  },
90
90
  'source_files' => "**/*.{h,mm,cpp}",
91
91
  'pod_target_xcconfig' => { "HEADER_SEARCH_PATHS" =>
Binary file
Binary file
package/template/Gemfile CHANGED
@@ -1,6 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  # You may use http://rbenv.org/ or https://rvm.io/ to install and use this version
4
- ruby File.read(File.join(__dir__, '.ruby-version')).strip
4
+ ruby '>= 2.6.10'
5
5
 
6
- gem 'cocoapods', '~> 1.11', '>= 1.11.3'
6
+ gem 'cocoapods', '>= 1.11.3'
@@ -11,7 +11,7 @@
11
11
  },
12
12
  "dependencies": {
13
13
  "react": "18.2.0",
14
- "react-native": "0.71.4"
14
+ "react-native": "0.71.6"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@babel/core": "^7.20.0",
@@ -25,7 +25,7 @@
25
25
  "babel-jest": "^29.2.1",
26
26
  "eslint": "^8.19.0",
27
27
  "jest": "^29.2.1",
28
- "metro-react-native-babel-preset": "0.73.8",
28
+ "metro-react-native-babel-preset": "0.73.9",
29
29
  "prettier": "^2.4.1",
30
30
  "react-test-renderer": "18.2.0",
31
31
  "typescript": "4.8.4"
@@ -1 +0,0 @@
1
- 2.7.6