Summary:
This updates minor and patch level dependencies. Frustratingly, I had to revert a bunch
of changes in that version range that still caused incompatibilities and test failures.
If I find time, I'll dig a bit deeper.
Reviewed By: ivanmisuno
Differential Revision: D48433210
fbshipit-source-id: 9ab12e774c1992d4f22cc1428d34f102ce820b75
Summary:
^
Basically, update Jest and fix any raised issues. Mainly:
- Update necessary dependencies
- Update snapshots
- `useFakeTimers` caused a few issues which meant that the way we hook into the performance object had to be tweaked. The main code change is: `//fbsource/xplat/sonar/desktop/scripts/jest-setup-after.tsx`
- `mocked` -> `jest.mocked`
Changelog: Update Jest to v29.5.1
Reviewed By: antonk52
Differential Revision: D46319818
fbshipit-source-id: d218ca8f7e43abac6b00844953ddeb7f4e1010a2
Summary:
## Context
The editor for mocks is currently just a textarea. It'd be nicer as a monaco editor :D
## Changes
* Add monaco editor
* Change bundler for flipper plugins to allow loading .ttf as `dataurl`
* Resize the input/button for name and save and put them at the top next to each other
* Add a default mock template for when the editor is empty
allow-large-files
Reviewed By: aigoncharov
Differential Revision: D45929635
fbshipit-source-id: 66f3103d073ac630cb41d21f2ce3a7f89e15fed8
Summary: various tests failing due to this dep
Reviewed By: antonk52
Differential Revision: D45731274
fbshipit-source-id: cb79199c15a8973f50e5075dab16605d0120b30c
Summary:
Bumps [metro-minify-terser](https://github.com/facebook/metro) from 0.70.2 to 0.75.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/facebook/metro/releases">metro-minify-terser's releases</a>.</em></p>
<blockquote>
<h2>Release v0.75.0</h2>
<ul>
<li><strong>[Breaking]</strong>: Formalise minimum Node JS requirement at 14.17.0 via <code>package.json#engines</code>. (<a href="c3e453ede5</a>)</li>
<li><strong>[Breaking]</strong>: Filter untyped context properties passed to custom resolvers. (<a href="cb01ec09c6</a>)</li>
<li><strong>[Breaking]</strong>: Change default <code>context.redirectModulePath</code> implementation to return absolute path in all cases. (<a href="acbfe63d83</a>)</li>
<li><strong>[Feature]</strong>: Add <code>mainFields</code>, <code>getPackage</code>, and <code>getPackageForModule</code> to custom resolver context. (<a href="adfb59329f</a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/facebook/metro/compare/v0.74.1...v0.75.0">https://github.com/facebook/metro/compare/v0.74.1...v0.75.0</a></p>
<h2>Release v0.74.1</h2>
<ul>
<li><strong>[Feature]</strong>: Add <code>babel/plugin-proposal-numeric-separator</code> to <code>metro-react-native-babel-preset</code> (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/681">facebook/metro#681</a> by <a href="https://github.com/SConaway"><code>@SConaway</code></a>)</li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/facebook/metro/compare/v0.74.0...v0.74.1">https://github.com/facebook/metro/compare/v0.74.0...v0.74.1</a></p>
<h2>Release v0.74.0</h2>
<ul>
<li><strong>[Breaking]</strong> Remove <code>@babel/plugin-transform-template-literals</code> from metro-react-native-babel-preset (<a href="322dea8dc7</a>)</li>
<li><strong>[Breaking]</strong> Remove <code>postProcessBundleSourcemap</code> from config (<a href="339794e434</a>)</li>
<li><strong>[Fix]</strong> Don't log ENOENT errors to console for expected URL stack frames (<a href="1031ae6713</a>)</li>
<li><strong>[Fix]</strong> Don't attempt to use the <code>find</code> crawler on Windows (<a href="735aa9f523</a>)</li>
<li><strong>[Performance]</strong> Improve AST processing during transformation (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/854">facebook/metro#854</a> by <a href="https://github.com/EvanBacon"><code>@EvanBacon</code></a>)</li>
<li><strong>[Performance]</strong> Improve Fast Refresh responsiveness when watching a large number of files (<a href="b942eca551</a>)</li>
</ul>
<p><strong>Full Changelog:</strong> <a href="https://github.com/facebook/metro/compare/v0.73.6...v0.74.0">https://github.com/facebook/metro/compare/v0.73.6...v0.74.0</a></p>
<h2>Release v0.73.7</h2>
<p><em>This is a hotfix on the <code>0.73.x</code> branch.</em></p>
<ul>
<li><strong>[Fix]</strong> Don't attempt to use the <code>find</code> crawler on Windows (<a href="370301981b</a>)</li>
</ul>
<h2>Release v0.73.6</h2>
<ul>
<li><strong>[Fix]</strong> Fix duplicate 'add' events, reduce dropped events on new subtrees in <code>NodeWatcher</code> (non-Watchman, non-macOS).(<a href="51fb7e349c</a>)</li>
</ul>
<blockquote>
<p>NOTE: Experimental features are not covered by semver and can change at any time.</p>
</blockquote>
<ul>
<li><strong>[Experimental]</strong> <code>experimentalImportBundleSupport</code>: Move bundle path hints into serialised dependency map(<a href="https://github-redirect.dependabot.com/facebook/metro/pull/901">facebook/metro#901</a>)</li>
</ul>
<p><strong>Full Changelog:</strong> <a href="https://github.com/facebook/metro/compare/v0.73.5...v0.73.6">https://github.com/facebook/metro/compare/v0.73.5...v0.73.6</a></p>
<h2>Release v0.73.5</h2>
<ul>
<li><strong>[Fix]</strong>: Make all <code>getTransformOptions</code> result properties optional. (<a href="a07c8235a3</a>)</li>
<li><strong>[Fix]</strong>: Bug that can lead to "unknown module" errors at runtime after an incremental build. (<a href="b1be263f7d</a>)</li>
<li><strong>[Fix]</strong>: <code>metro-runtime</code>: Re-throw cached module errors without wrapping. (<a href="032c4a1e03</a>)</li>
<li><strong>[Fix]</strong> Bump <code>babel/types</code> dependency to <code>^7.20.0</code> for more consistent exposed AST Bump <code>babel/types</code> dependency to <code>^7.20.0</code> for more consistent exposed AST</li>
</ul>
<p><strong>Full Changelog</strong>: <a href="https://github.com/facebook/metro/compare/v0.73.4...v0.73.5">https://github.com/facebook/metro/compare/v0.73.4...v0.73.5</a></p>
<h2>Release v0.73.4</h2>
<ul>
<li><strong>[Feature]:</strong> Expose <code>watch</code> option in <code>RunServerOptions</code> (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/889">facebook/metro#889</a> by <a href="https://github.com/EvanBacon"><code>@EvanBacon</code></a>)</li>
<li><strong>[Feature]:</strong> <code>metro-runtime</code>: Emit additional context on WebSocket <code>'close'</code> events (<a href="d54986c49c</a>)</li>
</ul>
<blockquote>
<p>NOTE: Experimental features are not covered by semver and can change at any time.</p>
</blockquote>
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="a110931489"><code>a110931</code></a> Release 0.75.0</li>
<li><a href="28b38bb0af"><code>28b38bb</code></a> Remove duplicated engines entry from metro-symbolicate package.json</li>
<li><a href="acbfe63d83"><code>acbfe63</code></a> Refactor subpath matching logic in browser spec resolution</li>
<li><a href="c3e453ede5"><code>c3e453e</code></a> Add "engines" field to all packages to indicate minimum Node JS version</li>
<li><a href="e890c997d0"><code>e890c99</code></a> Back out "Process files before adding them to <code>FileSystem</code>"</li>
<li><a href="1a81060c6c"><code>1a81060</code></a> Process files before adding them to <code>FileSystem</code></li>
<li><a href="aa442cacdb"><code>aa442ca</code></a> Move default redirectModulePath implementation into metro-resolver</li>
<li><a href="adfb59329f"><code>adfb593</code></a> Add getPackageForModule function to resolution context</li>
<li><a href="11a468140c"><code>11a4681</code></a> Document unstable_perfLoggerFactory (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/920">https://github.com/facebook/flipper/issues/920</a>)</li>
<li><a href="7acb686f28"><code>7acb686</code></a> allow passing config for unstable_perfLoggerFactory without warning</li>
<li>Additional commits viewable in <a href="https://github.com/facebook/metro/compare/v0.70.2...v0.75.0">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/4493
Reviewed By: ivanmisuno
Differential Revision: D43117867
Pulled By: mweststrate
fbshipit-source-id: b842b25da921f1ca0cee563365c58f6f1c881791
Summary: Combining a bunch of individual tasks for dep upgrades into one diff.
Reviewed By: ivanmisuno
Differential Revision: D42706074
fbshipit-source-id: 054b2545ad1295699f47f4c6eb5065b7b9a1d6a0
Summary:
Related GH issue: https://github.com/facebook/flipper/issues/4139
Context:
The current direction is that all plugins should be able to run in browser envs. Opening external windows, deeplinks and etc. should be abstracted away in getFlipperLib().
For plugin developers, it could be challenging to upgrade the existing plugins that rely on electron being present. We should not failing the build process for them because their plugins depend on electron.
Allow desktop plugin to build
Relevant ticket: https://github.com/facebook/flipper/issues/4139
Pull Request resolved: https://github.com/facebook/flipper/pull/4145
Reviewed By: mweststrate
Differential Revision: D39887902
Pulled By: mweststrate
fbshipit-source-id: 4132912b5a2b598c7897d434647cffed6980de19
Summary:
Start bundling source maps together with the source code itself in the dev mode. Therefore it is no longer required to add a link to the external source map file in dev mode.
In prod mode we still ship them separately.
Reviewed By: mweststrate
Differential Revision: D39775064
fbshipit-source-id: 6c56df7a3fce084c07a8618a63dbd8ae4741348c
Summary: Some plugins import from shared directories. These directories are not plugins themselves, therefore the current plugin root searching mechanism does nto work for them. To support plugin reloading for this scenario, we start re-building all plugins if we fail to find a plugin root.
Reviewed By: lblasa
Differential Revision: D39693820
fbshipit-source-id: 33dd7de4121bd5665a39b0ea96adce4603dc7df0
Summary: Watch source plugin folders and notify frontend that any of them changed. In subsequent diffs, we will start reloading plugins that changed.
Reviewed By: lblasa
Differential Revision: D39539443
fbshipit-source-id: 726916c0bce336a2c0179558526bcb1b74e35b93
Summary: Move flipper local deps to prod deps, so yarn installs them later when we build a bundle
Reviewed By: lblasa
Differential Revision: D39475545
fbshipit-source-id: 5b61d15b45ee315c3b35d8e6836c114b90503b1a
Summary: esbuild references external modules via `require`. We wrap `require` to point the references to built-in modules to global variables
Reviewed By: lblasa
Differential Revision: D39311893
fbshipit-source-id: a99480161c082f4095d78c22271f114532f32c16
Summary: With esbuild bundling all plugins takes a couple of seconds instead of 3-5 minutes with metro. As a result, we can stop including plugins into Flipper's bundle for development and always bundle them separately. It reduces complexity of our build pipeline and makes the dev build work more like our prod build. It also allows us to stop bundling flipper-server code and just compile it instead.
Reviewed By: lblasa
Differential Revision: D39262048
fbshipit-source-id: c4da0f2ea2807015d98e0d070349c39b2118e189
Summary: More bumps for patch and minor releases. allow-large-files
Reviewed By: aigoncharov
Differential Revision: D36104098
fbshipit-source-id: 6db995e660afbe4febd72aa70ed8150cc16a8c93
Summary: Bunch of dependabot PRs showed that the signal is green, but still wanted to have all in one diff.
Reviewed By: aigoncharov
Differential Revision: D36102480
fbshipit-source-id: 88d472fdc2a910a7441a9e8164fe8af0f2d90f7b
Summary: Caused some inconsistencies when running `tsc`. This brings them back in line.
Reviewed By: aigoncharov
Differential Revision: D36101548
fbshipit-source-id: b8f757c59f879911c9b0920fe11396246ffa37e2
Summary:
New round of releases and PRs came up, so bumping again.
Very selective Metro update as some dependencies don't play well together. A bunch of other dependencies use ESM and fail at various stages of the build or runtime process.
Reviewed By: mweststrate
Differential Revision: D34688830
fbshipit-source-id: 2ff5c46c253b814140f634a986ba0d246e9b0945
Summary:
Combining a bunch of dependabot PRs.
N.B. I had to manually clean up the `yarn.lock` a few times because some dependencies resolved to multiple version numbers, catching tsc off-guard.
allow-large-files
Reviewed By: nikoant
Differential Revision: D34579180
fbshipit-source-id: a4848e1010ff240d9b0e721d3878585e7b4bd078
Summary:
Bumps [metro-cache](https://github.com/facebook/metro) from 0.66.2 to 0.67.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/facebook/metro/releases">metro-cache's releases</a>.</em></p>
<blockquote>
<h2>Release v0.67.0</h2>
<ul>
<li><strong>[Breaking]</strong> Use custom resolvers (<code>resolver.resolveRequest</code>) before checking the Haste map. (96fb6e904e1660b37f4d1f5353ca1e5477c4afbf)</li>
<li><strong>[Feature]</strong> Update React Native lazy imports list with the removal of <code>StatusBarIOS</code>. (2a0f77925e3299e01c2bfe82d0356145a643adc0)</li>
<li><strong>[Feature]</strong> Allow configuring the path of the canonical empty module, which now lives in <code>metro-runtime</code> by default. (bd5f9323337b03a77bc219636937bb75cd8c18ca, 6e3e789b685b95ea59a58364a751e8010d536e8b, 7723be545795c936cb81cad214ee202f72e169b3)</li>
<li><strong>[Feature]</strong> Add <code>initialize_done</code>, <code>transformer_loading</code>, and <code>transformer_loaded</code> events to the <code>Reporter</code> interface. (d19cf5d7e88207a8d46c17b570f14a239dae8926)</li>
<li><strong>[Feature]</strong> Add <code>waitForBundler</code> option to the <code>runServer()</code> and <code>runMetro()</code> APIs. (57d8a92583185a97dffcdc1c95fef7780be9104d)</li>
<li><strong>[Feature]</strong> Add <code>resolver.disableHierarchicalLookup</code> option. (01416f1bc41a3d557b24e4b508fed5f158990108)</li>
<li><strong>[Feature]</strong> Remove confusing troubleshooting steps from missing module errors. (1fa45c21f7508cc3a852071b775f592873700ad0)</li>
<li><strong>[Feature]</strong> Infer names for anonymous functions in optional calls. (4ced2a1be8a42a9c7df71b566918a457bad207c1)</li>
<li><strong>[Feature]</strong> Infer names for anonymous functions memoized with useCallback. (2611f618b245fd2bd2c3558d2536011269bb5a68)</li>
<li><strong>[Feature]</strong> Update terser to v5 in <code>metro-minify-terser</code>. (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/754">facebook/metro#754</a> by <a href="https://github.com/rockwotj"><code>@rockwotj</code></a>, <a href="https://github-redirect.dependabot.com/facebook/metro/pull/606">facebook/metro#606</a> by <a href="https://github.com/janicduplessis"><code>@janicduplessis</code></a>)</li>
<li><strong>[Fix]</strong> Fix a caching issue with custom resolvers. (793b1a03c1f0b5e63869b471adab3f1ad61b199b)</li>
<li><strong>[Fix]</strong> Specify UTF-8 encoding when serving bundles. (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/695">facebook/metro#695</a> by <a href="https://github.com/zhiqingchen"><code>@zhiqingchen</code></a>)</li>
<li><strong>[Fix]</strong> Support <a href="https://github.com/defunctzombie/package-browser-field-spec#replace-specific-files---advanced">package.json module replacements</a> for requires with implicit extensions. (41522a25bec9325d1df5981b55d4672db7126895)</li>
<li><strong>[Fix]</strong> Resolve <a href="https://github.com/defunctzombie/package-browser-field-spec#replace-specific-files---advanced">package.json module replacements</a> when the replaced module isn't a physical file. (171393a6319e507935eeb3d40561e908c1a2abfe)</li>
<li><strong>[Fix]</strong> Fix stack trace symbolication when input files have non-Unix line endings. (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/691">facebook/metro#691</a> by <a href="https://github.com/danielsmc"><code>@danielsmc</code></a>)</li>
<li><strong>[Fix]</strong> Decrease the precedence of <code>resolver.nodeModulesPaths</code> to respect transitive dependencies. (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/738">facebook/metro#738</a> by <a href="https://github.com/sharmilajesupaul"><code>@sharmilajesupaul</code></a>)</li>
<li><strong>[Fix]</strong> Respect <code>mangle: false</code> & <code>sourceMap: false</code> in <code>minifierConfig</code>. (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/749">facebook/metro#749</a> by <a href="https://github.com/mfbx9da4"><code>@mfbx9da4</code></a>)</li>
<li><strong>[Fix]</strong> Update hash function from MD4 to MD5 for Node 17 compatibility. (<a href="https://github-redirect.dependabot.com/facebook/metro/pull/752">facebook/metro#752</a> by <a href="https://github.com/tobua"><code>@tobua</code></a>)</li>
</ul>
<blockquote>
<p>NOTE: Experimental features are not covered by semver and can change at any time.</p>
</blockquote>
<ul>
<li><strong>[Experimental]</strong> Add <code>server.unstable_serverRoot</code> option to allow serving bundles from folders outside the project root. (026a66cf40df1bd05da2afc1660efa1d9605c55a, ca86682012eb836e2b6aeb001f2b3112129e38c3, e061cf342505f3d07fb21f85f22925e3d05557c9, 70e98882ad24d7c25c9b73eaf347e60f2a74c8ca, baacea28635dae7fea3bd30dd485252ae59a937e)</li>
<li><strong>[Experimental]</strong> Update <code>metro-hermes-compiler</code>. (e80434cf329619e1a0c6c56ae7be6c88cb350c99)</li>
<li><strong>[Experimental]</strong> Provide safe access to assets outside the project root using <code>/assets?unstable_path=...</code>. (f3d1157bacc341dff82efea2f70b634141105fc0)</li>
<li><strong>[Experimental]</strong> Add <code>resolver.unstable_hasteMapModulePath</code> option. (e8c0de0411148bd31e3decb6a5c4c1dc1d645666)</li>
</ul>
<p>Thanks to all the contributors mentioned above for helping improve Metro! 🚇</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="ccfec1e846"><code>ccfec1e</code></a> Release 0.67.0</li>
<li><a href="b31f5a462d"><code>b31f5a4</code></a> Deploy v0.170.0 to xplat</li>
<li><a href="36e3ffe4bd"><code>36e3ffe</code></a> Bump node-fetch from 2.6.1 to 2.6.7 (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/762">https://github.com/facebook/flipper/issues/762</a>)</li>
<li><a href="3fb4da8fae"><code>3fb4da8</code></a> Bump trim-off-newlines from 1.0.1 to 1.0.3 (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/757">https://github.com/facebook/flipper/issues/757</a>)</li>
<li><a href="ed7d5d6f47"><code>ed7d5d6</code></a> Update terser to v5 in <code>metro-minify-terser</code> (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/606">https://github.com/facebook/flipper/issues/606</a>)</li>
<li><a href="216e0a2cfc"><code>216e0a2</code></a> Allow for async minifiers (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/754">https://github.com/facebook/flipper/issues/754</a>)</li>
<li><a href="0116ae9758"><code>0116ae9</code></a> Bump follow-redirects from 1.10.0 to 1.14.7 in /website (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/756">https://github.com/facebook/flipper/issues/756</a>)</li>
<li><a href="e3c83a8522"><code>e3c83a8</code></a> Respect <code>mangle: false</code> & <code>sourceMap: false</code> in <code>minifierConfig</code> (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/749">https://github.com/facebook/flipper/issues/749</a>)</li>
<li><a href="1cfb483486"><code>1cfb483</code></a> Bump shelljs from 0.8.4 to 0.8.5 in /website (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/755">https://github.com/facebook/flipper/issues/755</a>)</li>
<li><a href="3dfe9f3107"><code>3dfe9f3</code></a> chore(docs): display last update time (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/753">https://github.com/facebook/flipper/issues/753</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/facebook/metro/compare/v0.66.2...v0.67.0">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/3418
Reviewed By: passy
Differential Revision: D34049927
Pulled By: mweststrate
fbshipit-source-id: 08a0052c0f01753d84d77cb14a7979e10944c831
Summary:
This diff adds `types` fields on the compiler config for every project. This way we can make sure that for example node types and packages are not available in flipper-ui-core. Without an explicit types field, all types would be shared between all packages, and implicitly included into the compilation of everything. For the same reason `types/index.d.ts` has been removed, we want to be intentional on which types are being used in which package.
This diff does most of the work, the next diff will fine tune the globals, and do some further cleanup.
As an alternative solution I first tried a `nohoist: **/node_modules/types/**` and make sure every package list explicitly the types used in package json, which works but is much more error prone, as for example two different react types versions in two packages will cause the most unreadable compiler error due to the types not being shared and not literally the same.
Reviewed By: lawrencelomax
Differential Revision: D33124441
fbshipit-source-id: c2b9d768f845ac28005d8331ef5fa1066c7e4cd7
Summary:
This diff removes most deps from the root package.json, which now only contains electron and shared build / test infra structure: lint, prettier, jest, typescript.
This makes it possible to control much better which packages are used where, as all sub packages now have their deps explicitly in their package.json instead of incidentally shared. This allows for example to disable DOM types for all packages by default (flipper-plugin, ui(-core) and app still request it), and in the next diff I hope to add to this that nodeJS types are no longer shared either, so that UI oriented packages will generate compile errors when using Node built-ins
This diff removes most deps that were currently unused, and dedupes a bunch of other ones, so the build should probably be a bit smaller now as well:
{F686704253}
{F686704295}
Reviewed By: antonk52
Differential Revision: D33062859
fbshipit-source-id: 5afaa4f2103d055188382a3370c1fffa295a298a
Summary:
Took a few iterations to make offline mirror happy, but everything is green now.
allow-large-files
Reviewed By: nikoant
Differential Revision: D31690614
fbshipit-source-id: 38d0d6cb5e3f63b3707d917a1ed6fc6144762731
Summary: per title. TS 4.4 is awesome btw, with the much improved control flow analysis.
Reviewed By: timur-valiev
Differential Revision: D30806769
fbshipit-source-id: a41aa7bf10fdb0047ddb6210082b5e1fbdfb255f
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/2736
This should fix a bunch of open dependabot issues on GitHub.
Reviewed By: fabiomassimo
Differential Revision: D30539761
fbshipit-source-id: b355d41336b3b1d85b50fb0736fc1b33b12e83d0
Summary:
allow-large-files
Only patch bumps of >1.0.0, should be safe.
Reviewed By: jknoxville
Differential Revision: D30482302
fbshipit-source-id: b5f331822ba6931b6e5f68190c7d50c62611a153
Summary: The markdown bump required ignoring another prop, the rest was smooth.
Reviewed By: timur-valiev
Differential Revision: D30067682
fbshipit-source-id: 6038ffe29d2e0041c81bac132eed747cbfe40f54
Summary:
Bumps [metro-cache](https://github.com/facebook/metro) from 0.66.1 to 0.66.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/facebook/metro/releases">metro-cache's releases</a>.</em></p>
<blockquote>
<h2>Release v0.66.2</h2>
<ul>
<li><strong>[Fix]</strong> Fix crash in React Native 0.65.0-rc.2. (f7c6325)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="c21daba415"><code>c21daba</code></a> Bump metro to 0.66.2</li>
<li><a href="4972832419"><code>4972832</code></a> Deploy Flow v0.155.1</li>
<li><a href="f0247a811b"><code>f0247a8</code></a> Deploy Flow v0.155.1</li>
<li><a href="f7c6325cbe"><code>f7c6325</code></a> fix(metro): cannot read property 'toUpperCase' of undefined (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/687">https://github.com/facebook/flipper/issues/687</a>)</li>
<li><a href="48b5b1eaa8"><code>48b5b1e</code></a> Update xplat to Flow v0.155.0</li>
<li>See full diff in <a href="https://github.com/facebook/metro/compare/v0.66.1...v0.66.2">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/2660
Reviewed By: passy
Differential Revision: D30044649
Pulled By: cekkaewnumchai
fbshipit-source-id: fbd9c77eb93accf8db241b37076dfdef75c82a4e
Summary:
Bumps [globby](https://github.com/sindresorhus/globby) from 11.0.4 to 12.0.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/sindresorhus/globby/releases">globby's releases</a>.</em></p>
<blockquote>
<h2>v12.0.0</h2>
<h3>Breaking</h3>
<ul>
<li>Require Node.js 12.20 (<a href="https://github-redirect.dependabot.com/sindresorhus/globby/issues/181">https://github.com/facebook/flipper/issues/181</a>) 5c32b4a</li>
<li>This package is now pure ESM. Please <a href="https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c">read this</a>.</li>
<li>This package now uses named exports instead of a default export
<ul>
<li><code>globby</code> → <code>{globby}</code></li>
<li><code>globby.sync</code> → <code>{globbySync}</code></li>
<li><code>globby.stream</code> → <code>{globbyStream}</code></li>
<li><code>globby.generateGlobTasks</code> → <code>{generateGlobTasks}</code></li>
<li><code>globby.hasMagic</code> → <code>{isDynamicPattern}</code></li>
<li><code>globby.gitignore</code> → <code>{isGitIgnored}</code></li>
<li><code>globby.gitignore.sync</code> → <code>{isGitIgnoredSync}</code></li>
</ul>
</li>
</ul>
<pre lang="diff"><code>-const globby = require('globby');
+import {globby} from 'globby';
</code></pre>
<p><a href="https://github.com/sindresorhus/globby/compare/v11.0.4...v12.0.0">https://github.com/sindresorhus/globby/compare/v11.0.4...v12.0.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="24453e6bff"><code>24453e6</code></a> 12.0.0</li>
<li><a href="662cafc794"><code>662cafc</code></a> Minor tweaks</li>
<li><a href="5c32b4ab94"><code>5c32b4a</code></a> Require Node.js 12.20 and move to ESM (<a href="https://github-redirect.dependabot.com/sindresorhus/globby/issues/181">https://github.com/facebook/flipper/issues/181</a>)</li>
<li>See full diff in <a href="https://github.com/sindresorhus/globby/compare/v11.0.4...v12.0.0">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
<details>
<summary>Dependabot commands and options</summary>
<br />
You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/2631
Reviewed By: timur-valiev
Differential Revision: D30012641
Pulled By: passy
fbshipit-source-id: e37e70084e8169d567361e22acce44848ef7d2c6
Summary:
allow-large-files
Got a ton of open bumps in GitHub. Want to address a bunch of them in one swoop.
Reviewed By: jknoxville, nikoant
Differential Revision: D29933570
fbshipit-source-id: d5dc18fab22e8c5b300ab318e60dd1514aecfd52
Summary:
Going through all the patch updates and other small updates to pre-empt dependabot.
allow-large-files
Reviewed By: jknoxville
Differential Revision: D29547777
fbshipit-source-id: 86ef2408da0564049916cd96d66665074cdc23f2
Summary: Remove the duplicate function and centralise it as nikoant suggested.
Reviewed By: fabiomassimo
Differential Revision: D29548480
fbshipit-source-id: 3e931cc88198415017c557c6b7c81cb35c3f22c9
Summary: We don't need to re-publish plugin package when only docs are changed, so excluding "docs" from checksum computation
Differential Revision: D29508239
fbshipit-source-id: dfae89432f68b784caf07ae24ba7711f76c649b4
Summary: Sandcastle embedded the box ID in the source map URL which caused it to invalidate the caches. It shouldn't be there to begin with but the Metro option doesn't work as it's documented.
Reviewed By: nikoant
Differential Revision: D29456824
fbshipit-source-id: 5d8c5f29e2b344d046c802693e4da68fda92b8db