react-native-windows 0.83.0 → 0.83.3

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 (954) hide show
  1. package/Common/unicode.cpp +36 -0
  2. package/Common/unicode.h +8 -0
  3. package/Directory.Build.props +2 -17
  4. package/Folly/ThreadNameStub.cpp +4 -6
  5. package/Microsoft.ReactNative/Fabric/Composition/CompositionEventHandler.cpp +17 -4
  6. package/Microsoft.ReactNative/Fabric/Composition/ParagraphComponentView.cpp +6 -4
  7. package/Microsoft.ReactNative/Fabric/Composition/TextDrawing.cpp +1 -1
  8. package/Microsoft.ReactNative/Fabric/Composition/TextInput/WindowsTextInputComponentView.cpp +8 -4
  9. package/Microsoft.ReactNative/Fabric/platform/react/renderer/textlayoutmanager/WindowsTextLayoutManager.cpp +1 -1
  10. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj +4 -9
  11. package/Microsoft.ReactNative/Microsoft.ReactNative.vcxproj.filters +0 -3
  12. package/Microsoft.ReactNative/ReactNativeAppBuilder.idl +3 -0
  13. package/Microsoft.ReactNative/Utils/LocalBundleReader.cpp +33 -25
  14. package/Microsoft.ReactNative/Utils/LocalBundleReader.h +5 -3
  15. package/Microsoft.ReactNative/Utils/UwpScriptStore.cpp +2 -2
  16. package/Microsoft.ReactNative/Utils/UwpScriptStore.h +3 -2
  17. package/Microsoft.ReactNative.Cxx/Microsoft.ReactNative.Cxx.vcxitems +16 -0
  18. package/Microsoft.ReactNative.Managed/Microsoft.ReactNative.Managed.csproj +3 -3
  19. package/Microsoft.ReactNative.Managed.CodeGen/Microsoft.ReactNative.Managed.CodeGen.csproj +10 -10
  20. package/Microsoft.ReactNative.Managed.CodeGen/Properties/PublishProfiles/DeployAsTool-Debug.pubxml +1 -1
  21. package/Microsoft.ReactNative.Managed.CodeGen/Properties/PublishProfiles/DeployAsTool-Release.pubxml +1 -1
  22. package/PropertySheets/CIBuildOptimizations.props +2 -2
  23. package/PropertySheets/Generated/PackageVersion.g.props +3 -3
  24. package/PropertySheets/JSEngine.props +1 -1
  25. package/PropertySheets/NuGet.LockFile.props +9 -1
  26. package/PropertySheets/React.Cpp.props +7 -6
  27. package/PropertySheets/WinUI.props +4 -3
  28. package/ReactCommon/ReactCommon.vcxproj +0 -5
  29. package/Scripts/ConfigureYarnPackageAgeGate.ps1 +25 -0
  30. package/Scripts/EnableInternalWinAppSDKFeed.ps1 +12 -5
  31. package/Scripts/JustMyXaml.ps1 +8 -8
  32. package/Scripts/NuGetRestoreForceEvaluateAllSolutions.ps1 +103 -6
  33. package/Scripts/RunRnwInitWindows.js +37 -0
  34. package/Scripts/Tfs/Layout-Desktop-Headers.ps1 +4 -37
  35. package/Scripts/UnitTest.ps1 +3 -1
  36. package/Scripts/UpdateNightlyDependencies.ps1 +47 -0
  37. package/Scripts/creaternwapp.cmd +35 -12
  38. package/Scripts/creaternwlib.cmd +41 -18
  39. package/Scripts/rnw-dependencies.ps1 +15 -16
  40. package/Shared/DevSupportManager.cpp +55 -48
  41. package/Shared/DevSupportManager.h +0 -1
  42. package/Shared/Modules/IWebSocketModuleContentHandler.h +15 -0
  43. package/Shared/Modules/WebSocketModule.cpp +8 -3
  44. package/Shared/Networking/DefaultBlobResource.cpp +37 -0
  45. package/Shared/Networking/DefaultBlobResource.h +12 -0
  46. package/Shared/Networking/WinRTWebSocketResource.h +5 -1
  47. package/Shared/Shared.vcxitems +2 -0
  48. package/{Folly → external}/.clang-format +0 -1
  49. package/external/External.vcxitems +10 -0
  50. package/external/fast-float/.syncignore +10 -0
  51. package/external/fast-float/LICENSE-APACHE +190 -0
  52. package/external/fast-float/LICENSE-BOOST +23 -0
  53. package/external/fast-float/LICENSE-MIT +27 -0
  54. package/external/fast-float/README.md +545 -0
  55. package/external/fast-float/cgmanifest.json +15 -0
  56. package/external/fast-float/fast-float.vcxitems +14 -0
  57. package/external/fast-float/include/fast_float/ascii_number.h +588 -0
  58. package/external/fast-float/include/fast_float/bigint.h +638 -0
  59. package/external/fast-float/include/fast_float/constexpr_feature_detect.h +46 -0
  60. package/external/fast-float/include/fast_float/decimal_to_binary.h +212 -0
  61. package/external/fast-float/include/fast_float/digit_comparison.h +457 -0
  62. package/external/fast-float/include/fast_float/fast_float.h +59 -0
  63. package/external/fast-float/include/fast_float/fast_table.h +708 -0
  64. package/external/fast-float/include/fast_float/float_common.h +1240 -0
  65. package/external/fast-float/include/fast_float/parse_number.h +399 -0
  66. package/external/fast-float/sync-config.json +8 -0
  67. package/external/fmt/.syncignore +10 -0
  68. package/external/fmt/CONTRIBUTING.md +20 -0
  69. package/external/fmt/LICENSE +27 -0
  70. package/external/fmt/README.md +484 -0
  71. package/external/fmt/doc/ChangeLog-old.md +3290 -0
  72. package/external/fmt/doc/api.md +650 -0
  73. package/external/fmt/doc/fmt.css +61 -0
  74. package/external/fmt/doc/fmt.js +4 -0
  75. package/external/fmt/doc/get-started.md +222 -0
  76. package/external/fmt/doc/index.md +151 -0
  77. package/external/fmt/doc/perf.svg +1 -0
  78. package/external/fmt/doc/python-license.txt +290 -0
  79. package/external/fmt/doc/syntax.md +887 -0
  80. package/external/fmt/fmt.vcxitems +28 -0
  81. package/external/fmt/include/fmt/args.h +228 -0
  82. package/external/fmt/include/fmt/base.h +3077 -0
  83. package/external/fmt/include/fmt/chrono.h +2432 -0
  84. package/external/fmt/include/fmt/color.h +612 -0
  85. package/external/fmt/include/fmt/compile.h +529 -0
  86. package/external/fmt/include/fmt/core.h +5 -0
  87. package/external/fmt/include/fmt/format-inl.h +1928 -0
  88. package/external/fmt/include/fmt/format.h +4427 -0
  89. package/external/fmt/include/fmt/os.h +439 -0
  90. package/external/fmt/include/fmt/ostream.h +211 -0
  91. package/external/fmt/include/fmt/printf.h +656 -0
  92. package/external/fmt/include/fmt/ranges.h +882 -0
  93. package/external/fmt/include/fmt/std.h +699 -0
  94. package/external/fmt/include/fmt/xchar.h +322 -0
  95. package/external/fmt/src/fmt.cc +135 -0
  96. package/external/fmt/src/format.cc +43 -0
  97. package/external/fmt/src/os.cc +403 -0
  98. package/external/fmt/sync-config.json +8 -0
  99. package/external/folly/.syncignore +60 -0
  100. package/external/folly/LICENSE +200 -0
  101. package/external/folly/README.md +263 -0
  102. package/{fmt → external/folly/folly}/.clang-format +0 -1
  103. package/external/folly/folly/AtomicHashArray-inl.h +546 -0
  104. package/external/folly/folly/AtomicHashArray.h +431 -0
  105. package/external/folly/folly/AtomicHashMap-inl.h +653 -0
  106. package/external/folly/folly/AtomicHashMap.h +484 -0
  107. package/external/folly/folly/AtomicIntrusiveLinkedList.h +206 -0
  108. package/external/folly/folly/AtomicLinkedList.h +110 -0
  109. package/external/folly/folly/AtomicUnorderedMap.h +522 -0
  110. package/external/folly/folly/BUCK +1631 -0
  111. package/external/folly/folly/BUILD_MODE.bzl +72 -0
  112. package/external/folly/folly/Benchmark.cpp +986 -0
  113. package/external/folly/folly/Benchmark.h +680 -0
  114. package/external/folly/folly/BenchmarkUtil.h +47 -0
  115. package/external/folly/folly/Bits.h +17 -0
  116. package/external/folly/folly/CMakeLists.txt +110 -0
  117. package/external/folly/folly/CPortability.h +338 -0
  118. package/external/folly/folly/CancellationToken-inl.h +449 -0
  119. package/external/folly/folly/CancellationToken.cpp +250 -0
  120. package/external/folly/folly/CancellationToken.h +365 -0
  121. package/external/folly/folly/Chrono.h +132 -0
  122. package/external/folly/folly/ClockGettimeWrappers.cpp +93 -0
  123. package/external/folly/folly/ClockGettimeWrappers.h +29 -0
  124. package/external/folly/folly/ConcurrentBitSet.h +157 -0
  125. package/external/folly/folly/ConcurrentLazy.h +74 -0
  126. package/external/folly/folly/ConcurrentSkipList-inl.h +341 -0
  127. package/external/folly/folly/ConcurrentSkipList.h +824 -0
  128. package/external/folly/folly/ConstructorCallbackList.h +158 -0
  129. package/external/folly/folly/Conv.h +2026 -0
  130. package/external/folly/folly/CppAttributes.h +170 -0
  131. package/external/folly/folly/CpuId.h +297 -0
  132. package/external/folly/folly/DefaultKeepAliveExecutor.h +172 -0
  133. package/external/folly/folly/Demangle.cpp +255 -0
  134. package/external/folly/folly/Demangle.h +73 -0
  135. package/external/folly/folly/DiscriminatedPtr.h +236 -0
  136. package/external/folly/folly/DynamicConverter.h +17 -0
  137. package/external/folly/folly/Exception.h +150 -0
  138. package/external/folly/folly/ExceptionString.cpp +51 -0
  139. package/external/folly/folly/ExceptionString.h +33 -0
  140. package/external/folly/folly/ExceptionWrapper-inl.h +264 -0
  141. package/external/folly/folly/ExceptionWrapper.cpp +37 -0
  142. package/external/folly/folly/ExceptionWrapper.h +377 -0
  143. package/external/folly/folly/Executor.cpp +111 -0
  144. package/external/folly/folly/Executor.h +351 -0
  145. package/external/folly/folly/Expected.h +1725 -0
  146. package/external/folly/folly/FBString.h +2888 -0
  147. package/external/folly/folly/FBVector.h +17 -0
  148. package/external/folly/folly/File.cpp +180 -0
  149. package/external/folly/folly/File.h +177 -0
  150. package/external/folly/folly/FileUtil.cpp +378 -0
  151. package/external/folly/folly/FileUtil.h +332 -0
  152. package/external/folly/folly/Fingerprint.cpp +135 -0
  153. package/external/folly/folly/Fingerprint.h +289 -0
  154. package/external/folly/folly/FixedString.h +2965 -0
  155. package/external/folly/folly/FollyMemcpy.cpp +30 -0
  156. package/external/folly/folly/FollyMemcpy.h +23 -0
  157. package/external/folly/folly/FollyMemset.cpp +29 -0
  158. package/external/folly/folly/FollyMemset.h +25 -0
  159. package/external/folly/folly/Format-inl.h +1152 -0
  160. package/external/folly/folly/Format.cpp +429 -0
  161. package/external/folly/folly/Format.h +463 -0
  162. package/external/folly/folly/FormatArg.h +285 -0
  163. package/external/folly/folly/FormatTraits.h +65 -0
  164. package/external/folly/folly/Function.h +1159 -0
  165. package/external/folly/folly/GLog.h +85 -0
  166. package/external/folly/folly/GroupVarint.cpp +153 -0
  167. package/external/folly/folly/GroupVarint.h +630 -0
  168. package/external/folly/folly/Hash.h +20 -0
  169. package/external/folly/folly/IPAddress.cpp +490 -0
  170. package/external/folly/folly/IPAddress.h +667 -0
  171. package/external/folly/folly/IPAddressException.h +82 -0
  172. package/external/folly/folly/IPAddressV4.cpp +305 -0
  173. package/external/folly/folly/IPAddressV4.h +495 -0
  174. package/external/folly/folly/IPAddressV6.cpp +541 -0
  175. package/external/folly/folly/IPAddressV6.h +627 -0
  176. package/external/folly/folly/Indestructible.h +164 -0
  177. package/external/folly/folly/IndexedMemPool.h +550 -0
  178. package/external/folly/folly/IntrusiveList.h +17 -0
  179. package/external/folly/folly/Lazy.h +142 -0
  180. package/external/folly/folly/Likely.h +76 -0
  181. package/external/folly/folly/MPMCPipeline.h +280 -0
  182. package/external/folly/folly/MPMCQueue.h +1556 -0
  183. package/external/folly/folly/MacAddress.cpp +188 -0
  184. package/external/folly/folly/MacAddress.h +260 -0
  185. package/external/folly/folly/MapUtil.h +17 -0
  186. package/external/folly/folly/Math.h +258 -0
  187. package/external/folly/folly/MaybeManagedPtr.h +120 -0
  188. package/external/folly/folly/Memory.h +900 -0
  189. package/external/folly/folly/MicroLock.cpp +76 -0
  190. package/external/folly/folly/MicroLock.h +354 -0
  191. package/external/folly/folly/MicroSpinLock.h +17 -0
  192. package/external/folly/folly/MoveWrapper.h +76 -0
  193. package/external/folly/folly/ObserverContainer.h +1026 -0
  194. package/external/folly/folly/Optional.h +743 -0
  195. package/external/folly/folly/Overload.h +325 -0
  196. package/external/folly/folly/PackedSyncPtr.h +147 -0
  197. package/external/folly/folly/Padded.h +464 -0
  198. package/external/folly/folly/Poly-inl.h +230 -0
  199. package/external/folly/folly/Poly.h +1095 -0
  200. package/external/folly/folly/PolyException.h +43 -0
  201. package/external/folly/folly/Portability.h +644 -0
  202. package/external/folly/folly/Preprocessor.h +236 -0
  203. package/external/folly/folly/ProducerConsumerQueue.h +182 -0
  204. package/external/folly/folly/RWSpinLock.h +17 -0
  205. package/external/folly/folly/Random-inl.h +86 -0
  206. package/external/folly/folly/Random.cpp +184 -0
  207. package/external/folly/folly/Random.h +434 -0
  208. package/external/folly/folly/Range.h +1772 -0
  209. package/external/folly/folly/Replaceable.h +636 -0
  210. package/external/folly/folly/ScopeGuard.cpp +29 -0
  211. package/external/folly/folly/ScopeGuard.h +420 -0
  212. package/external/folly/folly/SharedMutex.cpp +81 -0
  213. package/external/folly/folly/SharedMutex.h +1751 -0
  214. package/external/folly/folly/Singleton-inl.h +332 -0
  215. package/external/folly/folly/Singleton.cpp +512 -0
  216. package/external/folly/folly/Singleton.h +891 -0
  217. package/external/folly/folly/SingletonThreadLocal.cpp +53 -0
  218. package/external/folly/folly/SingletonThreadLocal.h +263 -0
  219. package/external/folly/folly/SocketAddress.cpp +786 -0
  220. package/external/folly/folly/SocketAddress.h +768 -0
  221. package/external/folly/folly/SpinLock.h +55 -0
  222. package/external/folly/folly/String-inl.h +668 -0
  223. package/external/folly/folly/String.cpp +777 -0
  224. package/external/folly/folly/String.h +767 -0
  225. package/external/folly/folly/Subprocess.cpp +1142 -0
  226. package/external/folly/folly/Subprocess.h +1055 -0
  227. package/external/folly/folly/Synchronized.h +1833 -0
  228. package/external/folly/folly/SynchronizedPtr.h +106 -0
  229. package/external/folly/folly/ThreadCachedInt.h +175 -0
  230. package/external/folly/folly/ThreadLocal.h +478 -0
  231. package/external/folly/folly/TimeoutQueue.cpp +78 -0
  232. package/external/folly/folly/TimeoutQueue.h +123 -0
  233. package/external/folly/folly/TokenBucket.h +673 -0
  234. package/external/folly/folly/Traits.h +1442 -0
  235. package/external/folly/folly/Try-inl.h +372 -0
  236. package/external/folly/folly/Try.cpp +23 -0
  237. package/external/folly/folly/Try.h +728 -0
  238. package/external/folly/folly/UTF8String.h +56 -0
  239. package/external/folly/folly/Unicode.cpp +201 -0
  240. package/external/folly/folly/Unicode.h +94 -0
  241. package/external/folly/folly/Unit.h +65 -0
  242. package/external/folly/folly/Uri-inl.h +101 -0
  243. package/external/folly/folly/Uri.cpp +190 -0
  244. package/external/folly/folly/Uri.h +142 -0
  245. package/external/folly/folly/Utility.h +932 -0
  246. package/external/folly/folly/VERSION +1 -0
  247. package/external/folly/folly/Varint.h +230 -0
  248. package/external/folly/folly/VirtualExecutor.h +17 -0
  249. package/external/folly/folly/algorithm/simd/BUCK +47 -0
  250. package/external/folly/folly/algorithm/simd/Contains.cpp +42 -0
  251. package/external/folly/folly/algorithm/simd/Contains.h +116 -0
  252. package/external/folly/folly/algorithm/simd/FindFixed.h +301 -0
  253. package/external/folly/folly/algorithm/simd/Ignore.h +52 -0
  254. package/external/folly/folly/algorithm/simd/Movemask.h +207 -0
  255. package/external/folly/folly/algorithm/simd/detail/BUCK +70 -0
  256. package/external/folly/folly/algorithm/simd/detail/ContainsImpl.h +91 -0
  257. package/external/folly/folly/algorithm/simd/detail/SimdAnyOf.h +83 -0
  258. package/external/folly/folly/algorithm/simd/detail/SimdForEach.h +209 -0
  259. package/external/folly/folly/algorithm/simd/detail/SimdPlatform.h +445 -0
  260. package/external/folly/folly/algorithm/simd/detail/Traits.h +125 -0
  261. package/external/folly/folly/algorithm/simd/detail/UnrollUtils.h +126 -0
  262. package/external/folly/folly/base64.h +264 -0
  263. package/external/folly/folly/chrono/BUCK +29 -0
  264. package/external/folly/folly/chrono/Clock.h +65 -0
  265. package/external/folly/folly/chrono/Conv.h +712 -0
  266. package/external/folly/folly/chrono/test/BUCK +26 -0
  267. package/external/folly/folly/chrono/test/ClockTest.cpp +68 -0
  268. package/external/folly/folly/chrono/test/ConvTest.cpp +652 -0
  269. package/external/folly/folly/concurrency/AtomicSharedPtr.h +387 -0
  270. package/external/folly/folly/concurrency/BUCK +170 -0
  271. package/external/folly/folly/concurrency/CacheLocality.h +460 -0
  272. package/external/folly/folly/concurrency/ConcurrentHashMap.h +822 -0
  273. package/external/folly/folly/concurrency/CoreCachedSharedPtr.h +232 -0
  274. package/external/folly/folly/concurrency/DeadlockDetector.cpp +27 -0
  275. package/external/folly/folly/concurrency/DeadlockDetector.h +44 -0
  276. package/external/folly/folly/concurrency/DynamicBoundedQueue.h +751 -0
  277. package/external/folly/folly/concurrency/PriorityUnboundedQueueSet.h +207 -0
  278. package/external/folly/folly/concurrency/ProcessLocalUniqueId.cpp +46 -0
  279. package/external/folly/folly/concurrency/ProcessLocalUniqueId.h +38 -0
  280. package/external/folly/folly/concurrency/SingletonRelaxedCounter.h +325 -0
  281. package/external/folly/folly/concurrency/ThreadCachedSynchronized.h +227 -0
  282. package/external/folly/folly/concurrency/UnboundedQueue.h +891 -0
  283. package/external/folly/folly/concurrency/container/BUCK +77 -0
  284. package/external/folly/folly/concurrency/container/FlatCombiningPriorityQueue.h +426 -0
  285. package/external/folly/folly/concurrency/container/LockFreeRingBuffer.h +306 -0
  286. package/external/folly/folly/concurrency/container/RelaxedConcurrentPriorityQueue.h +1212 -0
  287. package/external/folly/folly/concurrency/container/SingleWriterFixedHashMap.h +322 -0
  288. package/external/folly/folly/concurrency/container/atomic_grow_array.h +564 -0
  289. package/external/folly/folly/concurrency/container/test/BUCK +75 -0
  290. package/external/folly/folly/concurrency/container/test/FlatCombiningPriorityQueueTest.cpp +570 -0
  291. package/external/folly/folly/concurrency/container/test/LockFreeRingBufferTest.cpp +276 -0
  292. package/external/folly/folly/concurrency/container/test/RelaxedConcurrentPriorityQueueTest.cpp +1570 -0
  293. package/external/folly/folly/concurrency/container/test/SingleWriterFixedHashMapTest.cpp +401 -0
  294. package/external/folly/folly/concurrency/container/test/atomic_grow_array_test.cpp +187 -0
  295. package/external/folly/folly/concurrency/detail/AtomicSharedPtr-detail.h +212 -0
  296. package/external/folly/folly/concurrency/detail/ConcurrentHashMap-detail.h +1911 -0
  297. package/external/folly/folly/concurrency/memory/AtomicReadMostlyMainPtr.cpp +43 -0
  298. package/external/folly/folly/concurrency/memory/AtomicReadMostlyMainPtr.h +190 -0
  299. package/external/folly/folly/concurrency/memory/BUCK +53 -0
  300. package/external/folly/folly/concurrency/memory/PrimaryPtr.h +338 -0
  301. package/external/folly/folly/concurrency/memory/ReadMostlySharedPtr.h +511 -0
  302. package/external/folly/folly/concurrency/memory/TLRefCount.h +228 -0
  303. package/external/folly/folly/concurrency/memory/test/AtomicReadMostlyMainPtrBenchmark.cpp +56 -0
  304. package/external/folly/folly/concurrency/memory/test/AtomicReadMostlyMainPtrTest.cpp +454 -0
  305. package/external/folly/folly/concurrency/memory/test/BUCK +95 -0
  306. package/external/folly/folly/concurrency/memory/test/PrimaryPtrTest.cpp +303 -0
  307. package/external/folly/folly/concurrency/memory/test/ReadMostlySharedPtrBenchmark.cpp +138 -0
  308. package/external/folly/folly/concurrency/memory/test/ReadMostlySharedPtrStressTest.cpp +75 -0
  309. package/external/folly/folly/concurrency/memory/test/ReadMostlySharedPtrTest.cpp +378 -0
  310. package/external/folly/folly/concurrency/memory/test/RefCountBenchmark.cpp +90 -0
  311. package/external/folly/folly/concurrency/memory/test/RefCountTest.cpp +168 -0
  312. package/external/folly/folly/concurrency/test/AtomicSharedPtrCounted.h +156 -0
  313. package/external/folly/folly/concurrency/test/AtomicSharedPtrPerformance.cpp +255 -0
  314. package/external/folly/folly/concurrency/test/AtomicSharedPtrTest.cpp +257 -0
  315. package/external/folly/folly/concurrency/test/BUCK +229 -0
  316. package/external/folly/folly/concurrency/test/CacheLocalityBenchmark.cpp +392 -0
  317. package/external/folly/folly/concurrency/test/CacheLocalityTest.cpp +1229 -0
  318. package/external/folly/folly/concurrency/test/ConcurrentHashMapBench.cpp +260 -0
  319. package/external/folly/folly/concurrency/test/ConcurrentHashMapTest.cpp +1242 -0
  320. package/external/folly/folly/concurrency/test/CoreCachedSharedPtrTest.cpp +408 -0
  321. package/external/folly/folly/concurrency/test/DynamicBoundedQueueTest.cpp +984 -0
  322. package/external/folly/folly/concurrency/test/PriorityUnboundedQueueSetTest.cpp +73 -0
  323. package/external/folly/folly/concurrency/test/ProcessLocalUniqueIdTest.cpp +66 -0
  324. package/external/folly/folly/concurrency/test/SingletonRelaxedCounterBench.cpp +101 -0
  325. package/external/folly/folly/concurrency/test/SingletonRelaxedCounterTest.cpp +185 -0
  326. package/external/folly/folly/concurrency/test/ThreadCachedSynchronizedBench.cpp +76 -0
  327. package/external/folly/folly/concurrency/test/ThreadCachedSynchronizedTest.cpp +93 -0
  328. package/external/folly/folly/concurrency/test/UnboundedQueueTest.cpp +1302 -0
  329. package/external/folly/folly/container/Access.h +57 -0
  330. package/external/folly/folly/container/Array.h +87 -0
  331. package/external/folly/folly/container/BUCK +353 -0
  332. package/external/folly/folly/container/BitIterator.h +203 -0
  333. package/external/folly/folly/container/Enumerate.h +162 -0
  334. package/external/folly/folly/container/EvictingCacheMap.h +730 -0
  335. package/external/folly/folly/container/F14.md +300 -0
  336. package/external/folly/folly/container/F14Map-fwd.h +113 -0
  337. package/external/folly/folly/container/F14Map.h +2108 -0
  338. package/external/folly/folly/container/F14Set-fwd.h +95 -0
  339. package/external/folly/folly/container/F14Set.h +1603 -0
  340. package/external/folly/folly/container/FBVector.h +1711 -0
  341. package/external/folly/folly/container/Foreach-inl.h +316 -0
  342. package/external/folly/folly/container/Foreach.h +209 -0
  343. package/external/folly/folly/container/HeterogeneousAccess-fwd.h +33 -0
  344. package/external/folly/folly/container/HeterogeneousAccess.h +171 -0
  345. package/external/folly/folly/container/IntrusiveHeap.h +268 -0
  346. package/external/folly/folly/container/IntrusiveList.h +131 -0
  347. package/external/folly/folly/container/Iterator.h +843 -0
  348. package/external/folly/folly/container/MapUtil.h +376 -0
  349. package/external/folly/folly/container/Merge.h +90 -0
  350. package/external/folly/folly/container/RegexMatchCache.cpp +521 -0
  351. package/external/folly/folly/container/RegexMatchCache.h +699 -0
  352. package/external/folly/folly/container/Reserve.h +109 -0
  353. package/external/folly/folly/container/SparseByteSet.h +123 -0
  354. package/external/folly/folly/container/View.h +81 -0
  355. package/external/folly/folly/container/WeightedEvictingCacheMap.h +651 -0
  356. package/external/folly/folly/container/detail/BUCK +115 -0
  357. package/external/folly/folly/container/detail/BitIteratorDetail.h +87 -0
  358. package/external/folly/folly/container/detail/F14Defaults.h +34 -0
  359. package/external/folly/folly/container/detail/F14IntrinsicsAvailability.h +67 -0
  360. package/external/folly/folly/container/detail/F14MapFallback.h +717 -0
  361. package/external/folly/folly/container/detail/F14Mask.h +235 -0
  362. package/external/folly/folly/container/detail/F14Policy.h +1523 -0
  363. package/external/folly/folly/container/detail/F14SetFallback.h +528 -0
  364. package/external/folly/folly/container/detail/F14Table.cpp +71 -0
  365. package/external/folly/folly/container/detail/F14Table.h +2680 -0
  366. package/external/folly/folly/container/detail/Util.h +303 -0
  367. package/external/folly/folly/container/detail/tape_detail.h +135 -0
  368. package/external/folly/folly/container/detail/test/BUCK +14 -0
  369. package/external/folly/folly/container/detail/test/F14DetailTest.cpp +47 -0
  370. package/external/folly/folly/container/heap_vector_types.h +1683 -0
  371. package/external/folly/folly/container/range_traits.h +81 -0
  372. package/external/folly/folly/container/small_vector.h +1476 -0
  373. package/external/folly/folly/container/sorted_vector_types.h +1652 -0
  374. package/external/folly/folly/container/span.h +408 -0
  375. package/external/folly/folly/container/tape.h +608 -0
  376. package/external/folly/folly/container/test/.clang-tidy +12 -0
  377. package/external/folly/folly/container/test/AccessTest.cpp +138 -0
  378. package/external/folly/folly/container/test/ArrayTest.cpp +84 -0
  379. package/external/folly/folly/container/test/BUCK +568 -0
  380. package/external/folly/folly/container/test/BitIteratorBench.cpp +112 -0
  381. package/external/folly/folly/container/test/BitIteratorTest.cpp +109 -0
  382. package/external/folly/folly/container/test/EnumerateTest.cpp +294 -0
  383. package/external/folly/folly/container/test/EvictingCacheMapBench.cpp +80 -0
  384. package/external/folly/folly/container/test/EvictingCacheMapTest.cpp +842 -0
  385. package/external/folly/folly/container/test/F14AsanSupportTest.cpp +143 -0
  386. package/external/folly/folly/container/test/F14FwdTest.cpp +37 -0
  387. package/external/folly/folly/container/test/F14InterprocessTest.cpp +404 -0
  388. package/external/folly/folly/container/test/F14MapTest.cpp +2543 -0
  389. package/external/folly/folly/container/test/F14PolicyTest.cpp +49 -0
  390. package/external/folly/folly/container/test/F14SetTest.cpp +1738 -0
  391. package/external/folly/folly/container/test/F14SmallOverheads.cpp +215 -0
  392. package/external/folly/folly/container/test/F14TestUtil.h +117 -0
  393. package/external/folly/folly/container/test/FBVectorBenchmark.cpp +380 -0
  394. package/external/folly/folly/container/test/FBVectorBenchmarks.cpp.h +100 -0
  395. package/external/folly/folly/container/test/FBVectorTest.cpp +326 -0
  396. package/external/folly/folly/container/test/FBVectorTests.cpp.h +304 -0
  397. package/external/folly/folly/container/test/ForeachBenchmark.cpp +388 -0
  398. package/external/folly/folly/container/test/ForeachTest.cpp +338 -0
  399. package/external/folly/folly/container/test/HashMapsBench.cpp +458 -0
  400. package/external/folly/folly/container/test/HeterogeneousAccessTest.cpp +242 -0
  401. package/external/folly/folly/container/test/IntrusiveHeapTest.cpp +262 -0
  402. package/external/folly/folly/container/test/IteratorTest.cpp +989 -0
  403. package/external/folly/folly/container/test/MapUtilTest.cpp +365 -0
  404. package/external/folly/folly/container/test/MergeTest.cpp +66 -0
  405. package/external/folly/folly/container/test/RegexMatchCacheTest.cpp +634 -0
  406. package/external/folly/folly/container/test/ReserveTest.cpp +173 -0
  407. package/external/folly/folly/container/test/SparseByteSetBenchmark.cpp +153 -0
  408. package/external/folly/folly/container/test/SparseByteSetTest.cpp +117 -0
  409. package/external/folly/folly/container/test/TrackingTypes.h +584 -0
  410. package/external/folly/folly/container/test/UtilTest.cpp +609 -0
  411. package/external/folly/folly/container/test/WeightedEvictingCacheMapTest.cpp +800 -0
  412. package/external/folly/folly/container/test/heap_vector_types_test.cpp +1774 -0
  413. package/external/folly/folly/container/test/range_traits_test.cpp +59 -0
  414. package/external/folly/folly/container/test/small_vector_test.cpp +1571 -0
  415. package/external/folly/folly/container/test/sorted_vector_test.cpp +1589 -0
  416. package/external/folly/folly/container/test/span_test.cpp +520 -0
  417. package/external/folly/folly/container/test/tape_bench.cpp +200 -0
  418. package/external/folly/folly/container/test/tape_test.cpp +590 -0
  419. package/external/folly/folly/defs.bzl +238 -0
  420. package/external/folly/folly/detail/AsyncTrace.cpp +36 -0
  421. package/external/folly/folly/detail/AsyncTrace.h +44 -0
  422. package/external/folly/folly/detail/AtomicHashUtils.h +42 -0
  423. package/external/folly/folly/detail/AtomicUnorderedMapUtils.h +80 -0
  424. package/external/folly/folly/detail/BUCK +406 -0
  425. package/external/folly/folly/detail/DiscriminatedPtrDetail.h +172 -0
  426. package/external/folly/folly/detail/FileUtilDetail.cpp +63 -0
  427. package/external/folly/folly/detail/FileUtilDetail.h +85 -0
  428. package/external/folly/folly/detail/FileUtilVectorDetail.h +81 -0
  429. package/external/folly/folly/detail/FingerprintPolynomial.h +132 -0
  430. package/external/folly/folly/detail/Futex-inl.h +123 -0
  431. package/external/folly/folly/detail/Futex.cpp +273 -0
  432. package/external/folly/folly/detail/Futex.h +109 -0
  433. package/external/folly/folly/detail/GroupVarintDetail.h +101 -0
  434. package/external/folly/folly/detail/IPAddress.cpp +37 -0
  435. package/external/folly/folly/detail/IPAddress.h +57 -0
  436. package/external/folly/folly/detail/IPAddressSource.h +278 -0
  437. package/external/folly/folly/detail/Iterators.h +156 -0
  438. package/external/folly/folly/detail/MPMCPipelineDetail.h +122 -0
  439. package/external/folly/folly/detail/MemoryIdler.cpp +233 -0
  440. package/external/folly/folly/detail/MemoryIdler.h +216 -0
  441. package/external/folly/folly/detail/PerfScoped.cpp +112 -0
  442. package/external/folly/folly/detail/PerfScoped.h +70 -0
  443. package/external/folly/folly/detail/PolyDetail.h +921 -0
  444. package/external/folly/folly/detail/RangeCommon.cpp +55 -0
  445. package/external/folly/folly/detail/RangeCommon.h +93 -0
  446. package/external/folly/folly/detail/RangeSse42.cpp +198 -0
  447. package/external/folly/folly/detail/RangeSse42.h +30 -0
  448. package/external/folly/folly/detail/SimpleSimdStringUtils.cpp +31 -0
  449. package/external/folly/folly/detail/SimpleSimdStringUtils.h +27 -0
  450. package/external/folly/folly/detail/SimpleSimdStringUtilsImpl.h +63 -0
  451. package/external/folly/folly/detail/Singleton.h +34 -0
  452. package/external/folly/folly/detail/SlowFingerprint.h +90 -0
  453. package/external/folly/folly/detail/SocketFastOpen.cpp +175 -0
  454. package/external/folly/folly/detail/SocketFastOpen.h +89 -0
  455. package/external/folly/folly/detail/SplitStringSimd.cpp +84 -0
  456. package/external/folly/folly/detail/SplitStringSimd.h +151 -0
  457. package/external/folly/folly/detail/SplitStringSimdImpl.h +149 -0
  458. package/external/folly/folly/detail/Sse.cpp +35 -0
  459. package/external/folly/folly/detail/Sse.h +45 -0
  460. package/external/folly/folly/detail/StaticSingletonManager.cpp +119 -0
  461. package/external/folly/folly/detail/StaticSingletonManager.h +298 -0
  462. package/external/folly/folly/detail/ThreadLocalDetail.cpp +492 -0
  463. package/external/folly/folly/detail/ThreadLocalDetail.h +800 -0
  464. package/external/folly/folly/detail/TrapOnAvx512.cpp +41 -0
  465. package/external/folly/folly/detail/TrapOnAvx512.h +21 -0
  466. package/external/folly/folly/detail/TurnSequencer.h +295 -0
  467. package/external/folly/folly/detail/TypeList.h +551 -0
  468. package/external/folly/folly/detail/UniqueInstance.cpp +136 -0
  469. package/external/folly/folly/detail/UniqueInstance.h +68 -0
  470. package/external/folly/folly/detail/base64_detail/BUCK +102 -0
  471. package/external/folly/folly/detail/base64_detail/Base64Api.cpp +40 -0
  472. package/external/folly/folly/detail/base64_detail/Base64Api.h +101 -0
  473. package/external/folly/folly/detail/base64_detail/Base64Common.h +80 -0
  474. package/external/folly/folly/detail/base64_detail/Base64Constants.h +79 -0
  475. package/external/folly/folly/detail/base64_detail/Base64HiddenConstants.h +129 -0
  476. package/external/folly/folly/detail/base64_detail/Base64SWAR.cpp +161 -0
  477. package/external/folly/folly/detail/base64_detail/Base64SWAR.h +32 -0
  478. package/external/folly/folly/detail/base64_detail/Base64Scalar.h +262 -0
  479. package/external/folly/folly/detail/base64_detail/Base64Simd.h +102 -0
  480. package/external/folly/folly/detail/base64_detail/Base64_SSE4_2.cpp +42 -0
  481. package/external/folly/folly/detail/base64_detail/Base64_SSE4_2.h +33 -0
  482. package/external/folly/folly/detail/base64_detail/Base64_SSE4_2_Platform.h +167 -0
  483. package/external/folly/folly/detail/base64_detail/README.md +392 -0
  484. package/external/folly/folly/detail/base64_detail/tests/BUCK +36 -0
  485. package/external/folly/folly/detail/base64_detail/tests/Base64AgainstScalarTest.cpp +141 -0
  486. package/external/folly/folly/detail/base64_detail/tests/Base64PlatformTest.cpp +273 -0
  487. package/external/folly/folly/detail/base64_detail/tests/Base64SpecialCasesTest.cpp +555 -0
  488. package/external/folly/folly/detail/test/AsyncTraceTest.cpp +43 -0
  489. package/external/folly/folly/detail/test/BUCK +118 -0
  490. package/external/folly/folly/detail/test/FileUtilDetailTest.cpp +56 -0
  491. package/external/folly/folly/detail/test/PerfScopedTest.cpp +107 -0
  492. package/external/folly/folly/detail/test/SimpleSimdStringUtilsTest.cpp +92 -0
  493. package/external/folly/folly/detail/test/SplitStringSimdTest.cpp +242 -0
  494. package/external/folly/folly/detail/test/StaticSingletonManagerTest.cpp +121 -0
  495. package/external/folly/folly/detail/test/ThreadLocalBenchmark.cpp +116 -0
  496. package/external/folly/folly/detail/test/ThreadLocalDetailTest.cpp +194 -0
  497. package/external/folly/folly/detail/test/TrapOnAvx512TestNegative.cpp +29 -0
  498. package/external/folly/folly/detail/test/UniqueInstanceTest.cpp +60 -0
  499. package/external/folly/folly/detail/thread_local_globals.cpp +69 -0
  500. package/external/folly/folly/detail/thread_local_globals.h +36 -0
  501. package/external/folly/folly/docs/AtomicHashMap.md +134 -0
  502. package/external/folly/folly/docs/Benchmark.md +310 -0
  503. package/external/folly/folly/docs/Conv.md +291 -0
  504. package/external/folly/folly/docs/Dynamic.md +220 -0
  505. package/external/folly/folly/docs/DynamicConverter.md +71 -0
  506. package/external/folly/folly/docs/Executors.md +63 -0
  507. package/external/folly/folly/docs/FBString.md +46 -0
  508. package/external/folly/folly/docs/FBVector.md +200 -0
  509. package/external/folly/folly/docs/Fbvector--graphical_solutions.png +0 -0
  510. package/external/folly/folly/docs/Format.md +177 -0
  511. package/external/folly/folly/docs/Function.md +92 -0
  512. package/external/folly/folly/docs/Futures.md +263 -0
  513. package/external/folly/folly/docs/GroupVarint.md +46 -0
  514. package/external/folly/folly/docs/Histogram.md +104 -0
  515. package/external/folly/folly/docs/MapUtils.md +80 -0
  516. package/external/folly/folly/docs/Overview.md +263 -0
  517. package/external/folly/folly/docs/PackedSyncPtr.md +77 -0
  518. package/external/folly/folly/docs/Poly.md +500 -0
  519. package/external/folly/folly/docs/ProducerConsumerQueue.md +82 -0
  520. package/external/folly/folly/docs/Rcu.md +218 -0
  521. package/external/folly/folly/docs/SmallLocks.md +24 -0
  522. package/external/folly/folly/docs/Synchronized.md +793 -0
  523. package/external/folly/folly/docs/ThreadCachedInt.md +98 -0
  524. package/external/folly/folly/docs/ThreadLocal.md +105 -0
  525. package/external/folly/folly/docs/Traits.md +161 -0
  526. package/external/folly/folly/docs/small_vector.md +64 -0
  527. package/external/folly/folly/docs/style.css +23 -0
  528. package/external/folly/folly/dynamic-inl.h +17 -0
  529. package/external/folly/folly/dynamic.h +17 -0
  530. package/external/folly/folly/folly_extended_library.bzl +28 -0
  531. package/external/folly/folly/functional/ApplyTuple.h +204 -0
  532. package/external/folly/folly/functional/BUCK +57 -0
  533. package/external/folly/folly/functional/Invoke.h +880 -0
  534. package/external/folly/folly/functional/Partial.h +130 -0
  535. package/external/folly/folly/functional/protocol.h +203 -0
  536. package/external/folly/folly/functional/test/ApplyTupleTest.cpp +549 -0
  537. package/external/folly/folly/functional/test/BUCK +57 -0
  538. package/external/folly/folly/functional/test/InvokeTest.cpp +483 -0
  539. package/external/folly/folly/functional/test/PartialTest.cpp +141 -0
  540. package/external/folly/folly/functional/test/protocol_test.cpp +177 -0
  541. package/external/folly/folly/functional/test/traits_test.cpp +551 -0
  542. package/external/folly/folly/functional/traits.h +675 -0
  543. package/external/folly/folly/hash/BUCK +86 -0
  544. package/external/folly/folly/hash/Checksum.cpp +275 -0
  545. package/external/folly/folly/hash/Checksum.h +94 -0
  546. package/external/folly/folly/hash/FarmHash.h +46 -0
  547. package/external/folly/folly/hash/Hash.h +1045 -0
  548. package/external/folly/folly/hash/MurmurHash.h +86 -0
  549. package/external/folly/folly/hash/SpookyHashV1.cpp +391 -0
  550. package/external/folly/folly/hash/SpookyHashV1.h +307 -0
  551. package/external/folly/folly/hash/SpookyHashV2.cpp +392 -0
  552. package/external/folly/folly/hash/SpookyHashV2.h +339 -0
  553. package/external/folly/folly/hash/detail/BUCK +26 -0
  554. package/external/folly/folly/hash/detail/ChecksumDetail.cpp +296 -0
  555. package/external/folly/folly/hash/detail/ChecksumDetail.h +137 -0
  556. package/external/folly/folly/hash/detail/Crc32CombineDetail.cpp +191 -0
  557. package/external/folly/folly/hash/detail/Crc32cDetail.cpp +303 -0
  558. package/external/folly/folly/hash/test/BUCK +132 -0
  559. package/external/folly/folly/hash/test/ChecksumBenchmark.cpp +91 -0
  560. package/external/folly/folly/hash/test/ChecksumTest.cpp +587 -0
  561. package/external/folly/folly/hash/test/FarmHashTest.cpp +41 -0
  562. package/external/folly/folly/hash/test/HashBenchmark.cpp +238 -0
  563. package/external/folly/folly/hash/test/HashTest.cpp +997 -0
  564. package/external/folly/folly/hash/test/MurmurHashTest.cpp +76 -0
  565. package/external/folly/folly/hash/test/SpookyHashV1Test.cpp +559 -0
  566. package/external/folly/folly/hash/test/SpookyHashV2Test.cpp +549 -0
  567. package/external/folly/folly/hash/test/traits_test.cpp +69 -0
  568. package/external/folly/folly/hash/traits.h +115 -0
  569. package/external/folly/folly/json/BUCK +155 -0
  570. package/external/folly/folly/json/DynamicConverter.h +464 -0
  571. package/external/folly/folly/json/DynamicParser-inl.h +316 -0
  572. package/external/folly/folly/json/DynamicParser.cpp +198 -0
  573. package/external/folly/folly/json/DynamicParser.h +394 -0
  574. package/external/folly/folly/json/JSONSchema.cpp +1030 -0
  575. package/external/folly/folly/json/JSONSchema.h +73 -0
  576. package/external/folly/folly/json/JsonMockUtil.h +73 -0
  577. package/external/folly/folly/json/JsonTestUtil.cpp +167 -0
  578. package/external/folly/folly/json/JsonTestUtil.h +88 -0
  579. package/external/folly/folly/json/bser/BUCK +24 -0
  580. package/external/folly/folly/json/bser/Bser.h +107 -0
  581. package/external/folly/folly/json/bser/Dump.cpp +253 -0
  582. package/external/folly/folly/json/bser/Load.cpp +246 -0
  583. package/external/folly/folly/json/bser/test/BUCK +14 -0
  584. package/external/folly/folly/json/bser/test/BserTest.cpp +149 -0
  585. package/external/folly/folly/json/dynamic.cpp +552 -0
  586. package/external/folly/folly/json/dynamic.h +1346 -0
  587. package/external/folly/folly/json/json.h +238 -0
  588. package/external/folly/folly/json/json_patch.cpp +325 -0
  589. package/external/folly/folly/json/json_patch.h +126 -0
  590. package/external/folly/folly/json/json_pointer.cpp +114 -0
  591. package/external/folly/folly/json/json_pointer.h +87 -0
  592. package/external/folly/folly/json/test/BUCK +147 -0
  593. package/external/folly/folly/json/test/DynamicBenchmark.cpp +146 -0
  594. package/external/folly/folly/json/test/DynamicConverterTest.cpp +518 -0
  595. package/external/folly/folly/json/test/DynamicOtherTest.cpp +344 -0
  596. package/external/folly/folly/json/test/DynamicParserTest.cpp +443 -0
  597. package/external/folly/folly/json/test/DynamicTest.cpp +1647 -0
  598. package/external/folly/folly/json/test/JSONSchemaTest.cpp +450 -0
  599. package/external/folly/folly/json/test/JsonBenchmark.cpp +264 -0
  600. package/external/folly/folly/json/test/JsonOtherTest.cpp +51 -0
  601. package/external/folly/folly/json/test/JsonTest.cpp +1153 -0
  602. package/external/folly/folly/json/test/JsonTestUtilTest.cpp +97 -0
  603. package/external/folly/folly/json/test/json_patch_test.cpp +361 -0
  604. package/external/folly/folly/json/test/json_pointer_test.cpp +58 -0
  605. package/external/folly/folly/json/tool/BUCK +13 -0
  606. package/external/folly/folly/json/tool/JSONSchemaTester.cpp +58 -0
  607. package/external/folly/folly/json.h +17 -0
  608. package/external/folly/folly/json_patch.h +17 -0
  609. package/external/folly/folly/json_pointer.h +17 -0
  610. package/external/folly/folly/lang/Access.h +29 -0
  611. package/external/folly/folly/lang/Align.h +240 -0
  612. package/external/folly/folly/lang/Aligned.h +92 -0
  613. package/external/folly/folly/lang/Assume.h +82 -0
  614. package/external/folly/folly/lang/BUCK +287 -0
  615. package/external/folly/folly/lang/Badge.h +108 -0
  616. package/external/folly/folly/lang/Bits.h +570 -0
  617. package/external/folly/folly/lang/BitsClass.h +312 -0
  618. package/external/folly/folly/lang/Builtin.h +74 -0
  619. package/external/folly/folly/lang/CArray.h +34 -0
  620. package/external/folly/folly/lang/CString.cpp +86 -0
  621. package/external/folly/folly/lang/CString.h +55 -0
  622. package/external/folly/folly/lang/Cast.h +51 -0
  623. package/external/folly/folly/lang/CheckedMath.h +253 -0
  624. package/external/folly/folly/lang/CustomizationPoint.h +58 -0
  625. package/external/folly/folly/lang/Exception.cpp +822 -0
  626. package/external/folly/folly/lang/Exception.h +716 -0
  627. package/external/folly/folly/lang/Extern.h +55 -0
  628. package/external/folly/folly/lang/Hint-inl.h +144 -0
  629. package/external/folly/folly/lang/Hint.h +238 -0
  630. package/external/folly/folly/lang/Keep.h +98 -0
  631. package/external/folly/folly/lang/New.h +124 -0
  632. package/external/folly/folly/lang/Ordering.h +140 -0
  633. package/external/folly/folly/lang/Pretty.h +159 -0
  634. package/external/folly/folly/lang/PropagateConst.h +413 -0
  635. package/external/folly/folly/lang/RValueReferenceWrapper.h +152 -0
  636. package/external/folly/folly/lang/SafeAssert.cpp +589 -0
  637. package/external/folly/folly/lang/StaticConst.h +33 -0
  638. package/external/folly/folly/lang/Thunk.h +100 -0
  639. package/external/folly/folly/lang/TypeInfo.h +58 -0
  640. package/external/folly/folly/lang/UncaughtExceptions.cpp +17 -0
  641. package/external/folly/folly/lang/UncaughtExceptions.h +19 -0
  642. package/external/folly/folly/lang/test/AlignTest.cpp +87 -0
  643. package/external/folly/folly/lang/test/AlignedTest.cpp +130 -0
  644. package/external/folly/folly/lang/test/BUCK +258 -0
  645. package/external/folly/folly/lang/test/BadgeTest.cpp +89 -0
  646. package/external/folly/folly/lang/test/BitsBenchmark.cpp +164 -0
  647. package/external/folly/folly/lang/test/BitsClassBenchmark.cpp +122 -0
  648. package/external/folly/folly/lang/test/BitsClassTest.cpp +379 -0
  649. package/external/folly/folly/lang/test/BitsTest.cpp +577 -0
  650. package/external/folly/folly/lang/test/CStringTest.cpp +60 -0
  651. package/external/folly/folly/lang/test/CastTest.cpp +47 -0
  652. package/external/folly/folly/lang/test/CheckedMathTest.cpp +394 -0
  653. package/external/folly/folly/lang/test/ExceptionBench.cpp +427 -0
  654. package/external/folly/folly/lang/test/ExceptionTest.cpp +413 -0
  655. package/external/folly/folly/lang/test/ExternTest.cpp +39 -0
  656. package/external/folly/folly/lang/test/HintTest.cpp +100 -0
  657. package/external/folly/folly/lang/test/NewTest.cpp +38 -0
  658. package/external/folly/folly/lang/test/OrderingTest.cpp +105 -0
  659. package/external/folly/folly/lang/test/PrettyTest.cpp +44 -0
  660. package/external/folly/folly/lang/test/PropagateConstTest.cpp +356 -0
  661. package/external/folly/folly/lang/test/RValueReferenceWrapperTest.cpp +85 -0
  662. package/external/folly/folly/lang/test/SafeAssertTest.cpp +75 -0
  663. package/external/folly/folly/lang/test/ThunkTest.cpp +105 -0
  664. package/external/folly/folly/lang/test/ToAsciiBench.cpp +466 -0
  665. package/external/folly/folly/lang/test/ToAsciiTest.cpp +266 -0
  666. package/external/folly/folly/lang/test/TypeInfoTest.cpp +56 -0
  667. package/external/folly/folly/memcpy.S +292 -0
  668. package/external/folly/folly/memcpy_select_aarch64.cpp +145 -0
  669. package/external/folly/folly/memory/Arena-inl.h +83 -0
  670. package/external/folly/folly/memory/Arena.h +325 -0
  671. package/external/folly/folly/memory/BUCK +191 -0
  672. package/external/folly/folly/memory/JemallocHugePageAllocator.cpp +449 -0
  673. package/external/folly/folly/memory/JemallocHugePageAllocator.h +105 -0
  674. package/external/folly/folly/memory/JemallocHugePageAllocatorTest.cpp +341 -0
  675. package/external/folly/folly/memory/JemallocNodumpAllocator.cpp +176 -0
  676. package/external/folly/folly/memory/JemallocNodumpAllocator.h +119 -0
  677. package/external/folly/folly/memory/JemallocNodumpAllocatorTest.cpp +61 -0
  678. package/external/folly/folly/memory/MallctlHelper.cpp +37 -0
  679. package/external/folly/folly/memory/MallctlHelper.h +167 -0
  680. package/external/folly/folly/memory/Malloc.h +551 -0
  681. package/external/folly/folly/memory/MemoryResource.h +57 -0
  682. package/external/folly/folly/memory/ReentrantAllocator.cpp +162 -0
  683. package/external/folly/folly/memory/ReentrantAllocator.h +261 -0
  684. package/external/folly/folly/memory/SanitizeAddress.cpp +75 -0
  685. package/external/folly/folly/memory/SanitizeAddress.h +117 -0
  686. package/external/folly/folly/memory/SanitizeLeak.cpp +119 -0
  687. package/external/folly/folly/memory/SanitizeLeak.h +108 -0
  688. package/external/folly/folly/memory/ThreadCachedArena.cpp +53 -0
  689. package/external/folly/folly/memory/ThreadCachedArena.h +90 -0
  690. package/external/folly/folly/memory/UninitializedMemoryHacks.h +426 -0
  691. package/external/folly/folly/memory/detail/BUCK +10 -0
  692. package/external/folly/folly/memory/detail/MallocImpl.cpp +52 -0
  693. package/external/folly/folly/memory/detail/MallocImpl.h +97 -0
  694. package/external/folly/folly/memory/not_null-inl.h +522 -0
  695. package/external/folly/folly/memory/not_null.h +449 -0
  696. package/external/folly/folly/memory/test/ArenaTest.cpp +354 -0
  697. package/external/folly/folly/memory/test/BUCK +146 -0
  698. package/external/folly/folly/memory/test/MallctlHelperTest.cpp +169 -0
  699. package/external/folly/folly/memory/test/MallocBenchmark.cpp +91 -0
  700. package/external/folly/folly/memory/test/MallocTest.cpp +78 -0
  701. package/external/folly/folly/memory/test/MemoryResourceTest.cpp +31 -0
  702. package/external/folly/folly/memory/test/ReentrantAllocatorTest.cpp +144 -0
  703. package/external/folly/folly/memory/test/SanitizeAddressTest.cpp +67 -0
  704. package/external/folly/folly/memory/test/SanitizeLeakTest.cpp +139 -0
  705. package/external/folly/folly/memory/test/ThreadCachedArenaTest.cpp +276 -0
  706. package/external/folly/folly/memory/test/UninitializedMemoryHacksODR.cpp +21 -0
  707. package/external/folly/folly/memory/test/UninitializedMemoryHacksTest.cpp +327 -0
  708. package/external/folly/folly/memory/test/not_null_test.cpp +608 -0
  709. package/external/folly/folly/memset.S +245 -0
  710. package/external/folly/folly/memset_select_aarch64.cpp +72 -0
  711. package/external/folly/folly/portability/Asm.h +50 -0
  712. package/external/folly/folly/portability/Atomic.h +31 -0
  713. package/external/folly/folly/portability/BUCK +456 -0
  714. package/external/folly/folly/portability/Builtins.cpp +31 -0
  715. package/external/folly/folly/portability/Builtins.h +161 -0
  716. package/external/folly/folly/portability/Config.h +43 -0
  717. package/external/folly/folly/portability/Constexpr.h +145 -0
  718. package/external/folly/folly/portability/Dirent.cpp +140 -0
  719. package/external/folly/folly/portability/Dirent.h +41 -0
  720. package/external/folly/folly/portability/Event.h +44 -0
  721. package/external/folly/folly/portability/Fcntl.cpp +120 -0
  722. package/external/folly/folly/portability/Fcntl.h +67 -0
  723. package/external/folly/folly/portability/Filesystem.cpp +67 -0
  724. package/external/folly/folly/portability/Filesystem.h +114 -0
  725. package/external/folly/folly/portability/FmtCompile.h +40 -0
  726. package/external/folly/folly/portability/GFlags.h +139 -0
  727. package/external/folly/folly/portability/GMock.h +35 -0
  728. package/external/folly/folly/portability/GTest.h +35 -0
  729. package/external/folly/folly/portability/IOVec.h +34 -0
  730. package/external/folly/folly/portability/Libgen.cpp +59 -0
  731. package/external/folly/folly/portability/Libgen.h +29 -0
  732. package/external/folly/folly/portability/Libunwind.h +21 -0
  733. package/external/folly/folly/portability/Malloc.cpp +31 -0
  734. package/external/folly/folly/portability/Malloc.h +53 -0
  735. package/external/folly/folly/portability/Math.h +90 -0
  736. package/external/folly/folly/portability/Memory.h +26 -0
  737. package/external/folly/folly/portability/OpenSSL.cpp +17 -0
  738. package/external/folly/folly/portability/OpenSSL.h +102 -0
  739. package/external/folly/folly/portability/PThread.cpp +697 -0
  740. package/external/folly/folly/portability/PThread.h +148 -0
  741. package/external/folly/folly/portability/README.md +21 -0
  742. package/external/folly/folly/portability/Sched.cpp +41 -0
  743. package/external/folly/folly/portability/Sched.h +45 -0
  744. package/external/folly/folly/portability/Sockets.cpp +245 -0
  745. package/external/folly/folly/portability/Sockets.h +155 -0
  746. package/external/folly/folly/portability/SourceLocation.h +49 -0
  747. package/external/folly/folly/portability/Stdio.cpp +77 -0
  748. package/external/folly/folly/portability/Stdio.h +32 -0
  749. package/external/folly/folly/portability/Stdlib.cpp +172 -0
  750. package/external/folly/folly/portability/Stdlib.h +64 -0
  751. package/external/folly/folly/portability/String.cpp +53 -0
  752. package/external/folly/folly/portability/String.h +39 -0
  753. package/external/folly/folly/portability/SysFile.cpp +46 -0
  754. package/external/folly/folly/portability/SysFile.h +27 -0
  755. package/external/folly/folly/portability/SysMembarrier.cpp +104 -0
  756. package/external/folly/folly/portability/SysMembarrier.h +26 -0
  757. package/external/folly/folly/portability/SysMman.cpp +242 -0
  758. package/external/folly/folly/portability/SysMman.h +68 -0
  759. package/external/folly/folly/portability/SysResource.cpp +108 -0
  760. package/external/folly/folly/portability/SysResource.h +71 -0
  761. package/external/folly/folly/portability/SysStat.cpp +66 -0
  762. package/external/folly/folly/portability/SysStat.h +52 -0
  763. package/external/folly/folly/portability/SysSyscall.h +73 -0
  764. package/external/folly/folly/portability/SysTime.cpp +62 -0
  765. package/external/folly/folly/portability/SysTime.h +50 -0
  766. package/external/folly/folly/portability/SysTypes.h +44 -0
  767. package/external/folly/folly/portability/SysUio.cpp +179 -0
  768. package/external/folly/folly/portability/SysUio.h +51 -0
  769. package/external/folly/folly/portability/Syslog.h +39 -0
  770. package/external/folly/folly/portability/Time.cpp +357 -0
  771. package/external/folly/folly/portability/Time.h +74 -0
  772. package/external/folly/folly/portability/Unistd.h +111 -0
  773. package/external/folly/folly/portability/Windows.h +108 -0
  774. package/external/folly/folly/portability/openat2.c +30 -0
  775. package/external/folly/folly/portability/openat2.h +39 -0
  776. package/external/folly/folly/portability/test/BUCK +59 -0
  777. package/external/folly/folly/portability/test/ConstexprTest.cpp +102 -0
  778. package/external/folly/folly/portability/test/FilesystemTest.cpp +35 -0
  779. package/external/folly/folly/portability/test/LibgenTest.cpp +35 -0
  780. package/external/folly/folly/portability/test/OpenSSLPortabilityTest.cpp +108 -0
  781. package/external/folly/folly/portability/test/PThreadTest.cpp +80 -0
  782. package/external/folly/folly/portability/test/TimeTest.cpp +90 -0
  783. package/external/folly/folly/small_vector.h +17 -0
  784. package/external/folly/folly/somerge_defs.bzl +399 -0
  785. package/external/folly/folly/sorted_vector_types.h +17 -0
  786. package/external/folly/folly/stop_watch.h +317 -0
  787. package/external/folly/folly/synchronization/AsymmetricThreadFence.cpp +91 -0
  788. package/external/folly/folly/synchronization/AsymmetricThreadFence.h +60 -0
  789. package/external/folly/folly/synchronization/AtomicNotification-inl.h +146 -0
  790. package/external/folly/folly/synchronization/AtomicNotification.cpp +34 -0
  791. package/external/folly/folly/synchronization/AtomicNotification.h +117 -0
  792. package/external/folly/folly/synchronization/AtomicRef.h +181 -0
  793. package/external/folly/folly/synchronization/AtomicStruct.h +150 -0
  794. package/external/folly/folly/synchronization/AtomicUtil-inl.h +482 -0
  795. package/external/folly/folly/synchronization/AtomicUtil.h +179 -0
  796. package/external/folly/folly/synchronization/BUCK +418 -0
  797. package/external/folly/folly/synchronization/Baton.h +419 -0
  798. package/external/folly/folly/synchronization/CallOnce.h +263 -0
  799. package/external/folly/folly/synchronization/DelayedInit.h +179 -0
  800. package/external/folly/folly/synchronization/DistributedMutex-inl.h +1744 -0
  801. package/external/folly/folly/synchronization/DistributedMutex.cpp +27 -0
  802. package/external/folly/folly/synchronization/DistributedMutex.h +342 -0
  803. package/external/folly/folly/synchronization/EventCount.h +200 -0
  804. package/external/folly/folly/synchronization/FlatCombining.h +629 -0
  805. package/external/folly/folly/synchronization/Hazptr-fwd.h +217 -0
  806. package/external/folly/folly/synchronization/Hazptr.cpp +36 -0
  807. package/external/folly/folly/synchronization/Hazptr.h +209 -0
  808. package/external/folly/folly/synchronization/HazptrDomain.cpp +68 -0
  809. package/external/folly/folly/synchronization/HazptrDomain.h +832 -0
  810. package/external/folly/folly/synchronization/HazptrHolder.h +431 -0
  811. package/external/folly/folly/synchronization/HazptrObj.h +533 -0
  812. package/external/folly/folly/synchronization/HazptrObjLinked.h +315 -0
  813. package/external/folly/folly/synchronization/HazptrRec.h +68 -0
  814. package/external/folly/folly/synchronization/HazptrThrLocal.h +180 -0
  815. package/external/folly/folly/synchronization/HazptrThreadPoolExecutor.cpp +46 -0
  816. package/external/folly/folly/synchronization/HazptrThreadPoolExecutor.h +25 -0
  817. package/external/folly/folly/synchronization/Latch.h +160 -0
  818. package/external/folly/folly/synchronization/LifoSem.h +767 -0
  819. package/external/folly/folly/synchronization/Lock.h +887 -0
  820. package/external/folly/folly/synchronization/MicroSpinLock.h +154 -0
  821. package/external/folly/folly/synchronization/NativeSemaphore.h +187 -0
  822. package/external/folly/folly/synchronization/ParkingLot.cpp +37 -0
  823. package/external/folly/folly/synchronization/ParkingLot.h +330 -0
  824. package/external/folly/folly/synchronization/PicoSpinLock.h +167 -0
  825. package/external/folly/folly/synchronization/RWSpinLock.h +549 -0
  826. package/external/folly/folly/synchronization/Rcu.cpp +26 -0
  827. package/external/folly/folly/synchronization/Rcu.h +553 -0
  828. package/external/folly/folly/synchronization/RelaxedAtomic.h +336 -0
  829. package/external/folly/folly/synchronization/SanitizeThread.cpp +141 -0
  830. package/external/folly/folly/synchronization/SanitizeThread.h +166 -0
  831. package/external/folly/folly/synchronization/SaturatingSemaphore.h +324 -0
  832. package/external/folly/folly/synchronization/SmallLocks.h +36 -0
  833. package/external/folly/folly/synchronization/ThrottledLifoSem.h +362 -0
  834. package/external/folly/folly/synchronization/WaitOptions.cpp +25 -0
  835. package/external/folly/folly/synchronization/WaitOptions.h +75 -0
  836. package/external/folly/folly/synchronization/detail/AtomicUtils.h +59 -0
  837. package/external/folly/folly/synchronization/detail/BUCK +104 -0
  838. package/external/folly/folly/synchronization/detail/Hardware.cpp +192 -0
  839. package/external/folly/folly/synchronization/detail/Hardware.h +75 -0
  840. package/external/folly/folly/synchronization/detail/HazptrUtils.h +339 -0
  841. package/external/folly/folly/synchronization/detail/InlineFunctionRef.h +229 -0
  842. package/external/folly/folly/synchronization/detail/Sleeper.cpp +27 -0
  843. package/external/folly/folly/synchronization/detail/Sleeper.h +62 -0
  844. package/external/folly/folly/synchronization/detail/Spin.h +96 -0
  845. package/external/folly/folly/synchronization/detail/ThreadCachedLists.h +174 -0
  846. package/external/folly/folly/synchronization/detail/ThreadCachedReaders.h +189 -0
  847. package/external/folly/folly/synchronization/detail/ThreadCachedTag.h +26 -0
  848. package/external/folly/folly/synchronization/detail/test/BUCK +28 -0
  849. package/external/folly/folly/synchronization/detail/test/HardwareTest.cpp +74 -0
  850. package/external/folly/folly/synchronization/detail/test/InlineFunctionRefTest.cpp +286 -0
  851. package/external/folly/folly/synchronization/example/BUCK +27 -0
  852. package/external/folly/folly/synchronization/example/HazptrLockFreeLIFO.h +88 -0
  853. package/external/folly/folly/synchronization/example/HazptrSWMRSet.h +133 -0
  854. package/external/folly/folly/synchronization/example/HazptrWideCAS.h +62 -0
  855. package/external/folly/folly/synchronization/test/AtomicNotificationTest.cpp +236 -0
  856. package/external/folly/folly/synchronization/test/AtomicRefTest.cpp +170 -0
  857. package/external/folly/folly/synchronization/test/AtomicStructTest.cpp +65 -0
  858. package/external/folly/folly/synchronization/test/AtomicUtilBench.cpp +457 -0
  859. package/external/folly/folly/synchronization/test/AtomicUtilTest.cpp +650 -0
  860. package/external/folly/folly/synchronization/test/BUCK +495 -0
  861. package/external/folly/folly/synchronization/test/Barrier.h +52 -0
  862. package/external/folly/folly/synchronization/test/BarrierTest.cpp +56 -0
  863. package/external/folly/folly/synchronization/test/BatonBenchmark.cpp +77 -0
  864. package/external/folly/folly/synchronization/test/BatonTest.cpp +164 -0
  865. package/external/folly/folly/synchronization/test/BatonTestHelpers.h +118 -0
  866. package/external/folly/folly/synchronization/test/CallOnceBenchmark.cpp +72 -0
  867. package/external/folly/folly/synchronization/test/CallOnceTest.cpp +153 -0
  868. package/external/folly/folly/synchronization/test/DelayedInitTest.cpp +281 -0
  869. package/external/folly/folly/synchronization/test/DistributedMutexTest.cpp +2074 -0
  870. package/external/folly/folly/synchronization/test/EventCountTest.cpp +124 -0
  871. package/external/folly/folly/synchronization/test/FlatCombiningBenchmark.cpp +1789 -0
  872. package/external/folly/folly/synchronization/test/FlatCombiningExamples.h +222 -0
  873. package/external/folly/folly/synchronization/test/FlatCombiningTest.cpp +121 -0
  874. package/external/folly/folly/synchronization/test/FlatCombiningTestHelpers.h +227 -0
  875. package/external/folly/folly/synchronization/test/HazptrTest.cpp +1689 -0
  876. package/external/folly/folly/synchronization/test/LatchTest.cpp +224 -0
  877. package/external/folly/folly/synchronization/test/LifoSemBench.cpp +185 -0
  878. package/external/folly/folly/synchronization/test/LifoSemTests.cpp +353 -0
  879. package/external/folly/folly/synchronization/test/LockTest.cpp +1239 -0
  880. package/external/folly/folly/synchronization/test/NativeSemaphoreTest.cpp +37 -0
  881. package/external/folly/folly/synchronization/test/ParkingLotBenchmark.cpp +239 -0
  882. package/external/folly/folly/synchronization/test/ParkingLotTest.cpp +170 -0
  883. package/external/folly/folly/synchronization/test/RWSpinLockTest.cpp +235 -0
  884. package/external/folly/folly/synchronization/test/RcuBench.cpp +66 -0
  885. package/external/folly/folly/synchronization/test/RcuTest.cpp +330 -0
  886. package/external/folly/folly/synchronization/test/RelaxedAtomicTest.cpp +389 -0
  887. package/external/folly/folly/synchronization/test/SaturatingSemaphoreTest.cpp +166 -0
  888. package/external/folly/folly/synchronization/test/Semaphore.h +242 -0
  889. package/external/folly/folly/synchronization/test/SemaphoreTest.cpp +271 -0
  890. package/external/folly/folly/synchronization/test/SmallLocksBenchmark.cpp +1296 -0
  891. package/external/folly/folly/synchronization/test/SmallLocksTest.cpp +510 -0
  892. package/external/folly/folly/synchronization/test/ThreadCachedEpochBench.h +67 -0
  893. package/external/folly/folly/synchronization/test/ThreadCachedReadersBench.cpp +42 -0
  894. package/external/folly/folly/synchronization/test/ThreadCachedReadersTest.cpp +52 -0
  895. package/external/folly/folly/synchronization/test/ThrottledLifoSemTest.cpp +243 -0
  896. package/external/folly/folly/system/AtFork.cpp +205 -0
  897. package/external/folly/folly/system/AtFork.h +116 -0
  898. package/external/folly/folly/system/AuxVector.h +198 -0
  899. package/external/folly/folly/system/BUCK +144 -0
  900. package/external/folly/folly/system/EnvUtil.cpp +93 -0
  901. package/external/folly/folly/system/EnvUtil.h +113 -0
  902. package/external/folly/folly/system/HardwareConcurrency.cpp +39 -0
  903. package/external/folly/folly/system/HardwareConcurrency.h +23 -0
  904. package/external/folly/folly/system/MemoryMapping.cpp +477 -0
  905. package/external/folly/folly/system/MemoryMapping.h +287 -0
  906. package/external/folly/folly/system/Pid.cpp +87 -0
  907. package/external/folly/folly/system/Pid.h +34 -0
  908. package/external/folly/folly/system/Shell.cpp +33 -0
  909. package/external/folly/folly/system/Shell.h +93 -0
  910. package/external/folly/folly/system/ThreadId.cpp +89 -0
  911. package/external/folly/folly/system/ThreadId.h +62 -0
  912. package/external/folly/folly/system/ThreadName.cpp +330 -0
  913. package/external/folly/folly/system/ThreadName.h +72 -0
  914. package/external/folly/folly/system/test/AtForkTest.cpp +309 -0
  915. package/external/folly/folly/system/test/AuxVectorTest.cpp +55 -0
  916. package/external/folly/folly/system/test/BUCK +120 -0
  917. package/external/folly/folly/system/test/EnvUtilSubprocess.cpp +26 -0
  918. package/external/folly/folly/system/test/EnvUtilTest.cpp +197 -0
  919. package/external/folly/folly/system/test/MemoryMappingTest.cpp +179 -0
  920. package/external/folly/folly/system/test/PidTest.cpp +46 -0
  921. package/external/folly/folly/system/test/ShellTest.cpp +66 -0
  922. package/external/folly/folly/system/test/ThreadIdTest.cpp +114 -0
  923. package/external/folly/folly/system/test/ThreadNameTest.cpp +85 -0
  924. package/external/folly/folly.vcxitems +164 -0
  925. package/external/folly/static/logo.svg +1 -0
  926. package/external/folly/sync-config.json +8 -0
  927. package/just-task.js +13 -2
  928. package/package.json +6 -6
  929. package/template/cpp-lib/proj/MyLib.sln +0 -33
  930. package/template/cs-lib/proj/MyLib.sln +0 -33
  931. package/templates/cpp-app/windows/MyApp/MyApp.vcxproj +1 -1
  932. package/templates/cpp-app/windows/MyApp.sln +0 -33
  933. package/templates/cpp-lib/example/metro.config.js +30 -4
  934. package/templates/cpp-lib/windows/MyLib/MyLib.vcxproj +1 -1
  935. package/templates/cpp-lib/windows/MyLib.sln +0 -33
  936. package/Folly/Folly.vcxproj +0 -376
  937. package/Folly/Folly.vcxproj.filters +0 -558
  938. package/fmt/fmt.vcxproj +0 -153
  939. package/fmt/fmt.vcxproj.filters +0 -59
  940. package/fmt/pch.cpp +0 -4
  941. package/fmt/pch.h +0 -2
  942. /package/{fmt → external/fmt}/cgmanifest.json +0 -0
  943. /package/{Folly → external/folly}/Folly.natvis +0 -0
  944. /package/{Folly → external/folly}/cgmanifest.json +0 -0
  945. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/ConstexprMath.h +0 -0
  946. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/Conv.cpp +0 -0
  947. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/chrono/Hardware.h +0 -0
  948. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/concurrency/CacheLocality.cpp +0 -0
  949. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/json/dynamic-inl.h +0 -0
  950. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/json/json.cpp +0 -0
  951. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/lang/SafeAssert.h +0 -0
  952. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/lang/ToAscii.cpp +0 -0
  953. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/lang/ToAscii.h +0 -0
  954. /package/{Folly/TEMP_UntilFollyUpdate → external/folly/folly}/portability/Unistd.cpp +0 -0
@@ -93,6 +93,42 @@ std::wstring Utf8ToUtf16(const std::string &utf8) {
93
93
  return Utf8ToUtf16(utf8.c_str(), utf8.length());
94
94
  }
95
95
 
96
+ size_t Utf8ToUtf16Length(const char *utf8, size_t utf8Len) {
97
+ if (utf8Len == 0) {
98
+ return 0;
99
+ }
100
+
101
+ if (utf8Len > static_cast<size_t>((std::numeric_limits<int>::max)())) {
102
+ throw std::overflow_error("Length of input string to Utf8ToUtf16Length() must fit into an int.");
103
+ }
104
+
105
+ const int utf8Length = static_cast<int>(utf8Len);
106
+
107
+ constexpr DWORD flags = 0;
108
+
109
+ const int utf16Length = ::MultiByteToWideChar(
110
+ CP_UTF8, // Source string is in UTF-8.
111
+ flags, // Conversion flags.
112
+ utf8, // Source UTF-8 string pointer.
113
+ utf8Length, // Length of the source UTF-8 string, in chars.
114
+ nullptr, // Do not convert, just request the size.
115
+ 0 // Request size of destination buffer, in wchar_ts.
116
+ );
117
+
118
+ if (utf16Length == 0) {
119
+ throw UnicodeConversionException(
120
+ "Cannot get result string length when converting from UTF-8 to UTF-16 "
121
+ "(MultiByteToWideChar failed).",
122
+ GetLastError());
123
+ }
124
+
125
+ return static_cast<size_t>(utf16Length);
126
+ }
127
+
128
+ size_t Utf8ToUtf16Length(const std::string &utf8) {
129
+ return Utf8ToUtf16Length(utf8.c_str(), utf8.length());
130
+ }
131
+
96
132
  #if _HAS_CXX17
97
133
  std::wstring Utf8ToUtf16(const std::string_view &utf8) {
98
134
  return Utf8ToUtf16(utf8.data(), utf8.length());
package/Common/unicode.h CHANGED
@@ -55,6 +55,14 @@ class UnicodeConversionException : public std::runtime_error {
55
55
  /* (4) */ std::wstring Utf8ToUtf16(const std::string_view &utf8);
56
56
  #endif
57
57
 
58
+ // The following functions return the length of the UTF-16 string that would
59
+ // result from converting the input UTF-8 string, without actually performing
60
+ // the conversion or allocating a temporary std::wstring. This is useful in
61
+ // hot paths where only the length is needed (e.g. DirectWrite text ranges).
62
+ //
63
+ size_t Utf8ToUtf16Length(const char *utf8, size_t utf8Len);
64
+ size_t Utf8ToUtf16Length(const std::string &utf8);
65
+
58
66
  // The following functions convert UTF-16BE strings to UTF-8 strings. Their
59
67
  // behaviors mirror those of the above Utf8ToUtf16 functions.
60
68
  //
@@ -15,7 +15,7 @@
15
15
 
16
16
  <!--
17
17
  SourceLink is disabled by default since customer projects are still building our projects and therefore we don't want to force customers to use this.
18
- The PR (windows-vs-pr.yml) and CI (publish.yml() turn it back on.
18
+ In-repo builds (BuildingInRnwRepo=true) turn it back on below.
19
19
  -->
20
20
  <EnableSourceLink Condition="'$(EnableSourceLink)' == '' AND '$(BuildingInRnwRepo)' == 'true'">true</EnableSourceLink>
21
21
  <EnableSourceLink Condition="'$(EnableSourceLink)' == ''">false</EnableSourceLink>
@@ -25,14 +25,6 @@
25
25
  <DebugType Condition="'$(Configuration)' == 'Release'">pdbonly</DebugType>
26
26
  <IncludeSymbols Condition="'$(Configuration)' == 'Release'">true</IncludeSymbols>
27
27
  <IncludeSource Condition="'$(Configuration)' == 'Release'">false</IncludeSource>
28
- <!-- When bumping the Folly version, be sure to bump the git hash of that version's commit, find the matching fastfloat dependency and build Folly.vcxproj (to update its cgmanifest.json) too. -->
29
- <FollyVersion>2024.10.14.00</FollyVersion>
30
- <FastFloatVersion>8.0.0</FastFloatVersion>
31
- <FollyCommitHash>ad90720829db5ba0c3d0e44994856dcce33d7940</FollyCommitHash>
32
- <FastFloatCommitHash>77cc847c842c49e7e3477c1e95da2b6540166d66</FastFloatCommitHash>
33
- <!-- When bumping the fmt version, be sure to bump the git hash of that version's commit and build fmt.vcxproj (to update its cgmanifest.json) too. -->
34
- <FmtVersion>11.0.2</FmtVersion>
35
- <FmtCommitHash>0c9fce2ffefecfdce794e1859584e25877b7b592</FmtCommitHash>
36
28
  <!-- Commit hash for https://github.com/microsoft/node-api-jsi code. -->
37
29
  <NodeApiJsiCommitHash>4b8a4a59c4e1b7b988b809dedffd89a7662aa785</NodeApiJsiCommitHash>
38
30
  </PropertyGroup>
@@ -49,14 +41,7 @@
49
41
 
50
42
  <YogaDir Condition="'$(YogaDir)' == ''">$(ReactNativeDir)ReactCommon\yoga</YogaDir>
51
43
 
52
- <FollyDir Condition="'$(FollyDir)' == '' AND Exists('$([MSBuild]::NormalizeDirectory($(ReactNativeDir)..\..\node_modules))')">$(ReactNativeDir)..\..\node_modules\.folly\folly-$(FollyVersion)</FollyDir>
53
- <FollyDir>$([MSBuild]::NormalizeDirectory($(FollyDir)))</FollyDir>
54
-
55
- <FastFloatDir Condition="'$(FastFloatDir)' == '' AND Exists('$([MSBuild]::NormalizeDirectory($(ReactNativeDir)..\..\node_modules))')">$(ReactNativeDir)..\..\node_modules\.fastfloat\fast_float-$(FastFloatVersion)</FastFloatDir>
56
- <FastFloatDir>$([MSBuild]::NormalizeDirectory($(FastFloatDir)))</FastFloatDir>
57
-
58
- <FmtDir Condition="'$(FmtDir)' == '' AND Exists('$([MSBuild]::NormalizeDirectory($(ReactNativeDir)..\..\node_modules))')">$(ReactNativeDir)..\..\node_modules\.fmt\fmt-$(FmtVersion)</FmtDir>
59
- <FmtDir>$([MSBuild]::NormalizeDirectory($(FmtDir)))</FmtDir>
44
+ <ExternalDir Condition="'$(ExternalDir)' == ''">$(ReactNativeWindowsDir)external\</ExternalDir>
60
45
 
61
46
  <NodeApiJsiDir Condition="'$(NodeApiJsiDir)' == '' AND Exists('$([MSBuild]::NormalizeDirectory($(ReactNativeDir)..\..\node_modules))')">$(ReactNativeDir)..\..\node_modules\.node-api-jsi\node-api-jsi-$(NodeApiJsiCommitHash)</NodeApiJsiDir>
62
47
  <NodeApiJsiDir>$([MSBuild]::NormalizeDirectory($(NodeApiJsiDir)))</NodeApiJsiDir>
@@ -2,9 +2,7 @@
2
2
 
3
3
  // Avoid bringing in a bunch of folly threading just for setThreadName
4
4
  namespace folly {
5
- bool setThreadName(StringPiece)
6
- {
7
- return false;
8
- }
9
- }
10
-
5
+ bool setThreadName(StringPiece) {
6
+ return false;
7
+ }
8
+ } // namespace folly
@@ -1318,8 +1318,16 @@ bool CompositionEventHandler::CapturePointer(
1318
1318
  auto targetComponentView =
1319
1319
  fabricuiManager->GetViewRegistry().componentViewDescriptorWithTag(m_pointerCapturingComponentTag).view;
1320
1320
 
1321
- winrt::get_self<winrt::Microsoft::ReactNative::implementation::ComponentView>(targetComponentView)
1322
- ->OnPointerCaptureLost();
1321
+ // Guard against a stale capturing tag. If the previously-capturing component
1322
+ // was unmounted (e.g. list/ScrollView virtualization recycled it during a pan)
1323
+ // without releasing capture, componentViewDescriptorWithTag returns a
1324
+ // descriptor whose .view is null - and the unguarded get_self(...) call then
1325
+ // dereferences null and crashes the process (0xc0000005). Skip the notify when
1326
+ // the view is gone; the tag is overwritten just below.
1327
+ if (targetComponentView) {
1328
+ winrt::get_self<winrt::Microsoft::ReactNative::implementation::ComponentView>(targetComponentView)
1329
+ ->OnPointerCaptureLost();
1330
+ }
1323
1331
  }
1324
1332
  }
1325
1333
 
@@ -1350,8 +1358,13 @@ bool CompositionEventHandler::releasePointerCapture(PointerId pointerId, faceboo
1350
1358
  auto targetComponentView =
1351
1359
  fabricuiManager->GetViewRegistry().componentViewDescriptorWithTag(m_pointerCapturingComponentTag).view;
1352
1360
 
1353
- winrt::get_self<winrt::Microsoft::ReactNative::implementation::ComponentView>(targetComponentView)
1354
- ->OnPointerCaptureLost();
1361
+ // Same stale-tag null-view guard as CapturePointer above: a pointer release
1362
+ // after the capturing component was unmounted would otherwise dereference a
1363
+ // null view and crash (0xc0000005).
1364
+ if (targetComponentView) {
1365
+ winrt::get_self<winrt::Microsoft::ReactNative::implementation::ComponentView>(targetComponentView)
1366
+ ->OnPointerCaptureLost();
1367
+ }
1355
1368
  }
1356
1369
 
1357
1370
  if (m_capturedPointers.size() == 0) {
@@ -153,11 +153,12 @@ facebook::react::SharedViewEventEmitter ParagraphComponentView::eventEmitterAtPo
153
153
  uint32_t textPosition = metrics.textPosition;
154
154
 
155
155
  for (auto fragment : m_attributedStringBox.getValue().getFragments()) {
156
- if (textPosition < fragment.string.length()) {
156
+ uint32_t utf16Length = static_cast<uint32_t>(::Microsoft::Common::Unicode::Utf8ToUtf16Length(fragment.string));
157
+ if (textPosition < utf16Length) {
157
158
  return std::static_pointer_cast<const facebook::react::ViewEventEmitter>(
158
159
  fragment.parentShadowView.eventEmitter);
159
160
  }
160
- textPosition -= static_cast<uint32_t>(fragment.string.length());
161
+ textPosition -= utf16Length;
161
162
  }
162
163
  }
163
164
  }
@@ -210,10 +211,11 @@ bool ParagraphComponentView::IsTextSelectableAtPoint(facebook::react::Point pt)
210
211
 
211
212
  // Finds which fragment contains this text position
212
213
  for (auto fragment : m_attributedStringBox.getValue().getFragments()) {
213
- if (textPosition < fragment.string.length()) {
214
+ uint32_t utf16Length = static_cast<uint32_t>(::Microsoft::Common::Unicode::Utf8ToUtf16Length(fragment.string));
215
+ if (textPosition < utf16Length) {
214
216
  return true;
215
217
  }
216
- textPosition -= static_cast<uint32_t>(fragment.string.length());
218
+ textPosition -= utf16Length;
217
219
  }
218
220
  }
219
221
  }
@@ -66,7 +66,7 @@ void RenderText(
66
66
  unsigned int position = 0;
67
67
  unsigned int length = 0;
68
68
  for (auto fragment : attributedString.getFragments()) {
69
- length = static_cast<UINT32>(fragment.string.length());
69
+ length = static_cast<UINT32>(::Microsoft::Common::Unicode::Utf8ToUtf16Length(fragment.string));
70
70
  DWRITE_TEXT_RANGE range = {position, length};
71
71
  if (fragment.textAttributes.foregroundColor &&
72
72
  (fragment.textAttributes.foregroundColor != textAttributes.foregroundColor) ||
@@ -1276,7 +1276,7 @@ void WindowsTextInputComponentView::updateLayoutMetrics(
1276
1276
  facebook::react::LayoutMetrics const &oldLayoutMetrics) noexcept {
1277
1277
  // Set Position & Size Properties
1278
1278
 
1279
- if ((layoutMetrics.pointScaleFactor != m_layoutMetrics.pointScaleFactor)) {
1279
+ if (m_textServices && layoutMetrics.pointScaleFactor > 0) {
1280
1280
  LRESULT res;
1281
1281
  winrt::check_hresult(m_textServices->TxSendMessage(
1282
1282
  (WM_USER + 328), // EM_SETDPI
@@ -1690,7 +1690,7 @@ winrt::com_ptr<::IDWriteTextLayout> WindowsTextInputComponentView::CreatePlaceho
1690
1690
  const auto &props = windowsTextInputProps();
1691
1691
  facebook::react::TextAttributes textAttributes = props.textAttributes;
1692
1692
  if (std::isnan(props.textAttributes.fontSize)) {
1693
- facebook::react::TextAttributes::defaultTextAttributes().fontSize;
1693
+ textAttributes.fontSize = facebook::react::TextAttributes::defaultTextAttributes().fontSize;
1694
1694
  }
1695
1695
  textAttributes.fontSizeMultiplier = m_fontSizeMultiplier;
1696
1696
  fragment1.string = props.placeholder;
@@ -1698,8 +1698,12 @@ winrt::com_ptr<::IDWriteTextLayout> WindowsTextInputComponentView::CreatePlaceho
1698
1698
  attributedString.appendFragment(std::move(fragment1));
1699
1699
 
1700
1700
  facebook::react::LayoutConstraints constraints;
1701
- constraints.maximumSize.width = static_cast<FLOAT>(m_imgWidth);
1702
- constraints.maximumSize.height = static_cast<FLOAT>(m_imgHeight);
1701
+ // m_imgWidth/m_imgHeight are physical pixels (frame * pointScaleFactor), but
1702
+ // LayoutConstraints are expressed in DIPs. Feeding physical px laid the
1703
+ // placeholder out in a box pointScaleFactor x too large, so the placeholder was
1704
+ // measured/positioned at a different height than the typed text. Convert to DIPs.
1705
+ constraints.maximumSize.width = static_cast<FLOAT>(m_imgWidth) / m_layoutMetrics.pointScaleFactor;
1706
+ constraints.maximumSize.height = static_cast<FLOAT>(m_imgHeight) / m_layoutMetrics.pointScaleFactor;
1703
1707
 
1704
1708
  facebook::react::WindowsTextLayoutManager::GetTextLayout(
1705
1709
  facebook::react::AttributedStringBox(attributedString), {} /*TODO*/, constraints, textLayout);
@@ -267,7 +267,7 @@ void WindowsTextLayoutManager::GetTextLayout(
267
267
  attachments.push_back(attachment);
268
268
  position += 1;
269
269
  } else {
270
- unsigned int length = static_cast<UINT32>(fragment.string.length());
270
+ unsigned int length = static_cast<UINT32>(Microsoft::Common::Unicode::Utf8ToUtf16Length(fragment.string));
271
271
  DWRITE_TEXT_RANGE range = {position, length};
272
272
  TextAttributes attributes = fragment.textAttributes;
273
273
  DWRITE_FONT_STYLE fragmentStyle = DWRITE_FONT_STYLE_NORMAL;
@@ -10,7 +10,7 @@
10
10
  <ProjectName>Microsoft.ReactNative</ProjectName>
11
11
  <RootNamespace>Microsoft.ReactNative</RootNamespace>
12
12
  <DefaultLanguage>en-US</DefaultLanguage>
13
- <MinimumVisualStudioVersion>17.0</MinimumVisualStudioVersion>
13
+ <MinimumVisualStudioVersion>18.0</MinimumVisualStudioVersion>
14
14
  <AppContainerApplication>true</AppContainerApplication>
15
15
  <ApplicationType>Windows Store</ApplicationType>
16
16
  <ApplicationTypeRevision>10.0</ApplicationTypeRevision>
@@ -96,9 +96,10 @@
96
96
  <PrecompiledHeaderOutputFile>$(IntDir)pch.pch</PrecompiledHeaderOutputFile>
97
97
  <ForcedIncludeFiles>pch.h</ForcedIncludeFiles>
98
98
  <WarningLevel>Level4</WarningLevel>
99
- <AdditionalOptions>/await %(AdditionalOptions) /bigobj /ZH:SHA_256</AdditionalOptions>
99
+ <AdditionalOptions>%(AdditionalOptions) /bigobj /ZH:SHA_256</AdditionalOptions>
100
+ <AdditionalOptions Condition="$(PlatformToolsetVersion)&lt;145">%(AdditionalOptions) /await</AdditionalOptions>
100
101
  <AdditionalIncludeDirectories>
101
- $(FmtDir)\include;
102
+ $(ExternalDir)fmt\include;
102
103
  $(ReactNativeWindowsDir)Microsoft.ReactNative;
103
104
  $(ReactNativeWindowsDir)Microsoft.ReactNative\Pch;
104
105
  $(ReactNativeWindowsDir)Microsoft.ReactNative\ReactHost;
@@ -411,16 +412,10 @@
411
412
  </PreprocessorDefinitions>
412
413
  </ResourceCompile>
413
414
  </ItemGroup>
414
- <ItemGroup>
415
- <Natvis Include="$(ReactNativeWindowsDir)Folly\Folly.natvis" />
416
- </ItemGroup>
417
415
  <ItemGroup>
418
416
  <ProjectReference Include="..\Common\Common.vcxproj">
419
417
  <Project>{fca38f3c-7c73-4c47-be4e-32f77fa8538d}</Project>
420
418
  </ProjectReference>
421
- <ProjectReference Include="..\Folly\Folly.vcxproj">
422
- <Project>{a990658c-ce31-4bcc-976f-0fc6b1af693d}</Project>
423
- </ProjectReference>
424
419
  <ProjectReference Include="..\ReactCommon\ReactCommon.vcxproj">
425
420
  <Project>{a9d95a91-4db7-4f72-beb6-fe8a5c89bfbd}</Project>
426
421
  </ProjectReference>
@@ -1,8 +1,5 @@
1
1
  <?xml version="1.0" encoding="utf-8"?>
2
2
  <Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
- <ItemGroup>
4
- <Natvis Include="$(ReactNativeWindowsDir)Folly\Folly.natvis" />
5
- </ItemGroup>
6
3
  <ItemGroup>
7
4
  <ClCompile Include="$(GeneratedFilesDir)module.g.cpp" />
8
5
  <ClCompile Include="XamlLoadState.cpp" />
@@ -3,6 +3,7 @@ import "ReactNativeHost.idl";
3
3
  import "ReactNativeIsland.idl";
4
4
  import "ReactInstanceSettings.idl";
5
5
  import "IReactPackageProvider.idl";
6
+ import "ReactNativeWindow.idl";
6
7
 
7
8
  #include "DocString.h"
8
9
 
@@ -14,6 +15,8 @@ namespace Microsoft.ReactNative {
14
15
  // Properties
15
16
  Microsoft.UI.Windowing.AppWindow AppWindow {get;};
16
17
 
18
+ ReactNativeWindow ReactNativeWindow {get;};
19
+
17
20
  ReactNativeHost ReactNativeHost {get;};
18
21
 
19
22
  ReactViewOptions ReactViewOptions {get;};
@@ -54,7 +54,29 @@ std::string GetBundleFromEmbeddedResource(const winrt::Windows::Foundation::Uri
54
54
  return std::string(start, start + size);
55
55
  }
56
56
 
57
- std::future<std::string> LocalBundleReader::LoadBundleAsync(const std::wstring bundleUri) {
57
+ namespace {
58
+
59
+ std::string BufferToString(const winrt::Windows::Storage::Streams::IBuffer &buffer) {
60
+ std::string result(buffer.Length(), '\0');
61
+ if (!result.empty()) {
62
+ auto reader = winrt::Windows::Storage::Streams::DataReader::FromBuffer(buffer);
63
+ reader.ReadBytes(winrt::array_view<uint8_t>{
64
+ reinterpret_cast<uint8_t *>(&result[0]), reinterpret_cast<uint8_t *>(&result[result.length()])});
65
+ }
66
+ return result;
67
+ }
68
+
69
+ winrt::Windows::Storage::Streams::IBuffer BytesToBuffer(const void *data, uint32_t size) {
70
+ winrt::Windows::Storage::Streams::DataWriter writer;
71
+ auto bytes = static_cast<const uint8_t *>(data);
72
+ writer.WriteBytes(winrt::array_view<const uint8_t>(bytes, bytes + size));
73
+ return writer.DetachBuffer();
74
+ }
75
+
76
+ } // namespace
77
+
78
+ winrt::Windows::Foundation::IAsyncOperation<winrt::Windows::Storage::Streams::IBuffer>
79
+ LocalBundleReader::LoadBundleAsync(const std::wstring bundleUri) {
58
80
  try {
59
81
  co_await winrt::resume_background();
60
82
 
@@ -66,41 +88,26 @@ std::future<std::string> LocalBundleReader::LoadBundleAsync(const std::wstring b
66
88
  file = co_await winrt::Windows::Storage::StorageFile::GetFileFromApplicationUriAsync(uri);
67
89
  } else if (bundleUri.starts_with(L"resource://")) {
68
90
  winrt::Windows::Foundation::Uri uri(bundleUri);
69
- co_return GetBundleFromEmbeddedResource(uri);
91
+ auto bytes = GetBundleFromEmbeddedResource(uri);
92
+ co_return BytesToBuffer(bytes.data(), static_cast<uint32_t>(bytes.size()));
70
93
  } else {
71
94
  file = co_await winrt::Windows::Storage::StorageFile::GetFileFromPathAsync(bundleUri);
72
95
  }
73
96
 
74
- // Read the buffer manually to avoid a Utf8 -> Utf16 -> Utf8 encoding
75
- // roundtrip.
76
- auto fileBuffer{co_await winrt::Windows::Storage::FileIO::ReadBufferAsync(file)};
77
- auto dataReader{winrt::Windows::Storage::Streams::DataReader::FromBuffer(fileBuffer)};
78
-
79
- // No need to use length + 1, STL guarantees that string storage is null-terminated.
80
- std::string script(fileBuffer.Length(), '\0');
81
-
82
- // Construct the array_view to slice into the first fileBuffer.Length bytes.
83
- // DataReader.ReadBytes will read as many bytes as are present in the
84
- // array_view. The backing string has fileBuffer.Length() + 1 bytes, without
85
- // an explicit end it will read 1 byte to many and throw.
86
- dataReader.ReadBytes(winrt::array_view<uint8_t>{
87
- reinterpret_cast<uint8_t *>(&script[0]), reinterpret_cast<uint8_t *>(&script[script.length()])});
88
- dataReader.Close();
89
-
90
- co_return script;
97
+ co_return co_await winrt::Windows::Storage::FileIO::ReadBufferAsync(file);
91
98
  }
92
99
  // RuntimeScheduler only handles std::exception or jsi::JSError
93
- catch (winrt::hresult_error const &e) {
94
- throw std::exception(winrt::to_string(e.message()).c_str());
100
+ catch (winrt::hresult_error const &) {
101
+ throw;
95
102
  }
96
103
  }
97
104
 
98
105
  std::string LocalBundleReader::LoadBundle(const std::wstring &bundlePath) {
99
- return LoadBundleAsync(bundlePath).get();
106
+ return BufferToString(LoadBundleAsync(bundlePath).get());
100
107
  }
101
108
 
102
109
  StorageFileBigString::StorageFileBigString(const std::wstring &path) {
103
- m_futureBuffer = LocalBundleReader::LoadBundleAsync(path);
110
+ m_pendingLoad = LocalBundleReader::LoadBundleAsync(path);
104
111
  }
105
112
 
106
113
  bool StorageFileBigString::isAscii() const {
@@ -118,8 +125,9 @@ size_t StorageFileBigString::size() const {
118
125
  }
119
126
 
120
127
  void StorageFileBigString::ensure() const {
121
- if (m_string.empty()) {
122
- m_string = m_futureBuffer.get();
128
+ if (m_pendingLoad) {
129
+ m_string = BufferToString(m_pendingLoad.get());
130
+ m_pendingLoad = nullptr;
123
131
  }
124
132
  }
125
133
 
@@ -3,14 +3,16 @@
3
3
 
4
4
  #pragma once
5
5
  #include <cxxreact/JSBigString.h>
6
- #include <future>
6
+ #include <winrt/Windows.Foundation.h>
7
+ #include <winrt/Windows.Storage.Streams.h>
7
8
  #include <string>
8
9
 
9
10
  namespace Microsoft::ReactNative {
10
11
 
11
12
  class LocalBundleReader {
12
13
  public:
13
- static std::future<std::string> LoadBundleAsync(const std::wstring bundlePath);
14
+ static winrt::Windows::Foundation::IAsyncOperation<winrt::Windows::Storage::Streams::IBuffer> LoadBundleAsync(
15
+ const std::wstring bundlePath);
14
16
  static std::string LoadBundle(const std::wstring &bundlePath);
15
17
  };
16
18
 
@@ -24,7 +26,7 @@ class StorageFileBigString : public facebook::react::JSBigString {
24
26
  void ensure() const;
25
27
 
26
28
  private:
27
- mutable std::future<std::string> m_futureBuffer;
29
+ mutable winrt::Windows::Foundation::IAsyncOperation<winrt::Windows::Storage::Streams::IBuffer> m_pendingLoad;
28
30
  mutable std::string m_string;
29
31
  };
30
32
 
@@ -4,7 +4,6 @@
4
4
  #include <winrt/Windows.Foundation.h>
5
5
  #include <winrt/Windows.Storage.FileProperties.h>
6
6
  #include <winrt/Windows.Storage.h>
7
- #include <future>
8
7
  #include "Unicode.h"
9
8
 
10
9
  namespace winrt {
@@ -43,7 +42,8 @@ facebook::jsi::ScriptVersion_t UwpScriptStore::getScriptVersion(const std::strin
43
42
  return version;
44
43
  }
45
44
 
46
- std::future<facebook::jsi::ScriptVersion_t> UwpScriptStore::getScriptVersionAsync(const std::string &bundleUri) {
45
+ winrt::Windows::Foundation::IAsyncOperation<facebook::jsi::ScriptVersion_t> UwpScriptStore::getScriptVersionAsync(
46
+ const std::string &bundleUri) {
47
47
  co_await winrt::resume_background();
48
48
 
49
49
  const winrt::hstring fileUrl(Microsoft::Common::Unicode::Utf8ToUtf16("ms-appx:///Bundle/" + bundleUri + ".bundle"));
@@ -1,6 +1,6 @@
1
1
  #pragma once
2
2
  #include <JSI/ScriptStore.h>
3
- #include <future>
3
+ #include <winrt/Windows.Foundation.h>
4
4
 
5
5
  namespace Microsoft::ReactNative {
6
6
 
@@ -16,7 +16,8 @@ class UwpScriptStore : public facebook::jsi::ScriptStore {
16
16
  static facebook::jsi::ScriptVersion_t GetFileVersion(const std::wstring &filePath);
17
17
 
18
18
  private:
19
- std::future<facebook::jsi::ScriptVersion_t> getScriptVersionAsync(const std::string &bundleUri);
19
+ winrt::Windows::Foundation::IAsyncOperation<facebook::jsi::ScriptVersion_t> getScriptVersionAsync(
20
+ const std::string &bundleUri);
20
21
  };
21
22
 
22
23
  } // namespace Microsoft::ReactNative
@@ -158,6 +158,22 @@
158
158
  </ClCompile>
159
159
  <ClCompile Include="$(NodeApiJsiSrcDir)NodeApiJsiRuntime.cpp">
160
160
  <PrecompiledHeader>NotUsing</PrecompiledHeader>
161
+ <!--
162
+ Workaround for a Visual Studio 2026 (v145) C++ optimizer bug. With
163
+ optimizations on, this translation unit is miscompiled such that the
164
+ pointer-value-scope teardown in NodeApiJsiRuntime hands Hermes a stale
165
+ napi_value, crashing in hermes!JSProxy::defineOwnProperty (via
166
+ napi_create_reference) during rapid UI updates - e.g. the
167
+ e2e-test-app-fabric visitAllPages test. Building this file without
168
+ optimization (verified equivalent to `#pragma optimize("", off)`)
169
+ avoids it. We must also opt out of /GL here so the disabled
170
+ optimization survives link-time code generation. NodeApiJsiRuntime.cpp
171
+ is externally provided, so the workaround lives here rather than in the
172
+ source. Scoped to v145+ (the bug does not reproduce on v143); remove
173
+ when the compiler bug is fixed.
174
+ -->
175
+ <Optimization Condition="$(PlatformToolsetVersion)&gt;=145">Disabled</Optimization>
176
+ <WholeProgramOptimization Condition="$(PlatformToolsetVersion)&gt;=145">false</WholeProgramOptimization>
161
177
  </ClCompile>
162
178
  </ItemGroup>
163
179
  <ItemGroup Condition="'$(BuildMSRNCxxNodeApiJsiLoader)' != 'false'">
@@ -15,7 +15,7 @@
15
15
  <TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
16
16
  <TargetPlatformVersion Condition=" '$(TargetPlatformVersion)' == '' ">10.0.22621.0</TargetPlatformVersion>
17
17
  <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
18
- <MinimumVisualStudioVersion>17.0</MinimumVisualStudioVersion>
18
+ <MinimumVisualStudioVersion>18.0</MinimumVisualStudioVersion>
19
19
  <FileAlignment>512</FileAlignment>
20
20
  <ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
21
21
  <DocumentationFile>bin\$(Platform)\$(Configuration)\Microsoft.ReactNative.Managed.XML</DocumentationFile>
@@ -150,8 +150,8 @@
150
150
  </ItemGroup>
151
151
  </When>
152
152
  </Choose>
153
- <PropertyGroup Condition=" '$(VisualStudioVersion)' == '' or '$(VisualStudioVersion)' &lt; '17.0' ">
154
- <VisualStudioVersion>17.0</VisualStudioVersion>
153
+ <PropertyGroup Condition=" '$(VisualStudioVersion)' == '' or '$(VisualStudioVersion)' &lt; '18.0' ">
154
+ <VisualStudioVersion>18.0</VisualStudioVersion>
155
155
  </PropertyGroup>
156
156
  <Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" />
157
157
  <Target Name="Deploy" />
@@ -3,7 +3,7 @@
3
3
  <PropertyGroup>
4
4
  <OutputType>Exe</OutputType>
5
5
 
6
- <TargetFramework>net8.0</TargetFramework>
6
+ <TargetFramework>net10.0</TargetFramework>
7
7
  <Platforms>x64;x86;ARM64</Platforms>
8
8
  <RuntimeIdentifiers>win-x86;win-x64</RuntimeIdentifiers>
9
9
 
@@ -31,8 +31,8 @@
31
31
  <PackageReference Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="4.3.1" />
32
32
  <PackageReference Include="RuntimeContracts" Version="0.3.0" />
33
33
 
34
- <!--
35
- NuGet decides to pull in packages with issues. There is no seeming way to diagnose why NuGet is pulling in those versions.
34
+ <!--
35
+ NuGet decides to pull in packages with issues. There is no seeming way to diagnose why NuGet is pulling in those versions.
36
36
  Running restore with -Verbosity Detailed and environment variables:
37
37
  * NUGET_RESTORE_MSBUILD_ARGS=/bl:c:\temp\nuget.binlog
38
38
  * NUGET_RESTORE_MSBUILD_VERBOSITY=diag
@@ -42,7 +42,7 @@
42
42
  <PackageReference Include="System.Private.Uri" Version="4.3.2" />
43
43
  </ItemGroup>
44
44
 
45
- <!--
45
+ <!--
46
46
  This target is used to ensure the tool is deployed and can be used from source.
47
47
  It will return all deployed files so the caller can implement incrementality properly
48
48
  -->
@@ -53,7 +53,7 @@
53
53
  </ItemGroup>
54
54
  </Target>
55
55
 
56
- <!--
56
+ <!--
57
57
  This target returns the location of the deployed executable.
58
58
  -->
59
59
  <Target Name="GetPublishedToolPath" DependsOnTargets="PublishTool" Returns="@(_PublishedToolExecutable)">
@@ -62,13 +62,13 @@
62
62
  </ItemGroup>
63
63
  </Target>
64
64
 
65
- <!--
65
+ <!--
66
66
  This is used during the PR build to ensure we have the artifacts published during the build.
67
67
  -->
68
- <Target
69
- Name="PublishToolDuringBuild"
70
- DependsOnTargets="Publish"
71
- AfterTargets="Build"
68
+ <Target
69
+ Name="PublishToolDuringBuild"
70
+ DependsOnTargets="Publish"
71
+ AfterTargets="Build"
72
72
  Condition="'$(PublishToolDuringBuild)' == 'true'">
73
73
  </Target>
74
74
 
@@ -6,7 +6,7 @@
6
6
  <PublishProtocol>FileSystem</PublishProtocol>
7
7
  <Configuration>Debug</Configuration>
8
8
  <Platform>x64</Platform>
9
- <TargetFramework>net8.0</TargetFramework>
9
+ <TargetFramework>net10.0</TargetFramework>
10
10
  <PublishDir>$(OutDir)publish</PublishDir>
11
11
  <RuntimeIdentifier>win-x64</RuntimeIdentifier>
12
12
  <SelfContained>true</SelfContained>
@@ -6,7 +6,7 @@
6
6
  <PublishProtocol>FileSystem</PublishProtocol>
7
7
  <Configuration>Release</Configuration>
8
8
  <Platform>x64</Platform>
9
- <TargetFramework>net8.0</TargetFramework>
9
+ <TargetFramework>net10.0</TargetFramework>
10
10
  <PublishDir>$(OutDir)publish</PublishDir>
11
11
  <RuntimeIdentifier>win-x64</RuntimeIdentifier>
12
12
  <SelfContained>true</SelfContained>
@@ -1,9 +1,9 @@
1
1
  <?xml version="1.0" encoding="utf-8"?>
2
2
  <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
3
3
  <!--
4
- CI-specific C++ build optimizations for the publish pipeline.
4
+ CI-specific C++ build optimizations.
5
5
 
6
- This file is injected via /p:ForceImportAfterCppTargets in .ado/publish.yml.
6
+ This file is injected via /p:ForceImportAfterCppTargets by the Desktop and Universal build jobs.
7
7
  It overrides defaults that are tuned for developer workflows (incremental builds,
8
8
  file tracking) with settings that are better for CI clean builds.
9
9
 
@@ -10,11 +10,11 @@
10
10
  -->
11
11
  <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
12
12
  <PropertyGroup>
13
- <ReactNativeWindowsVersion>0.83.0</ReactNativeWindowsVersion>
13
+ <ReactNativeWindowsVersion>0.83.3</ReactNativeWindowsVersion>
14
14
  <ReactNativeWindowsMajor>0</ReactNativeWindowsMajor>
15
15
  <ReactNativeWindowsMinor>83</ReactNativeWindowsMinor>
16
- <ReactNativeWindowsPatch>0</ReactNativeWindowsPatch>
16
+ <ReactNativeWindowsPatch>3</ReactNativeWindowsPatch>
17
17
  <ReactNativeWindowsCanary>false</ReactNativeWindowsCanary>
18
- <ReactNativeWindowsCommitId>0fc74b3bd7d368b133e5633b387a79b4df844a96</ReactNativeWindowsCommitId>
18
+ <ReactNativeWindowsCommitId>c684233c95e6cd4ca59f85cdcb24b770577d506f</ReactNativeWindowsCommitId>
19
19
  </PropertyGroup>
20
20
  </Project>
@@ -6,7 +6,7 @@
6
6
  <!-- Enabling this will (1) Include hermes glues in the Microsoft.ReactNative binaries AND (2) Make hermes the default engine -->
7
7
  <UseHermes Condition="'$(UseHermes)' == ''">true</UseHermes>
8
8
  <!-- This will be true if (1) the client want to use hermes by setting UseHermes to true OR (2) We are building for UWP where dynamic switching is enabled -->
9
- <HermesVersion Condition="'$(HermesVersion)' == ''">0.0.0-2604.21001-94aa5e1d</HermesVersion>
9
+ <HermesVersion Condition="'$(HermesVersion)' == ''">0.0.0-2608.12001-35d34796</HermesVersion>
10
10
  <HermesPackageName Condition="'$(HermesPackageName)' == ''">Microsoft.JavaScript.Hermes</HermesPackageName>
11
11
  <HermesPackage Condition="'$(HermesPackage)' == '' And Exists('$(PkgMicrosoft_JavaScript_Hermes)')">$(PkgMicrosoft_JavaScript_Hermes)</HermesPackage>
12
12
  <HermesPackage Condition="'$(HermesPackage)' == ''">$(NuGetPackageRoot)\$(HermesPackageName)\$(HermesVersion)</HermesPackage>