Summary:
Builds up a file with checksums of all `build.gradle` files. Deliberately excludes the `gradle.properties` which changes all the time. The cache shouldn't require nuking except in some rare circumstances.
Pull Request resolved: https://github.com/facebook/flipper/pull/1922
Test Plan: From 41 minutes down to 17: https://github.com/passy/flipper-1/actions/runs/561501374
Reviewed By: mweststrate
Differential Revision: D26427242
Pulled By: passy
fbshipit-source-id: ff1d7370d477c9d7b57c62082ec985108a5ba698
Summary:
I don't think there's an easy way to do this based on types
which would be ideal ...
So instead I'm checking for
- Importing `remote` from `electron`.
- Accessing `electron.remote`.
You can still hack this by importing `electron`, saving
it to a differently named variable and accessing `remote` on it,
but this should cover all reasonable cases we see in real code.
Reviewed By: mweststrate
Differential Revision: D26453006
fbshipit-source-id: 4b3d223bed43ca3f0d1a4f592ea8f8060a823479
Summary:
This includes some improvements to the closing process, which
is quite important for us.
Reviewed By: mweststrate
Differential Revision: D26452587
fbshipit-source-id: 533e97148160c4f15da52e31fbe8b136ab884e0b
Summary: Found some code duplication causing old devices not entirely to be cleaned up as they should
Reviewed By: nikoant
Differential Revision: D26422665
fbshipit-source-id: f57757f7260ac5de17edd80e9f66cc844d1a6213
Summary:
Changelog: Fixed issue where a Flipper crash would result in an entirely blank screen, rather than a useful error message.
While debugging another issue, discovered that React errors that happen outside a Plugin aren't caught at all, resulting in the infamous gray screen of deaths. This was the case because no error boundary has been set up for our Chrome, and since React 16 the default error handling has becoming rendering blank, rather than freezing. See https://reactjs.org/docs/error-boundaries.html#new-behavior-for-uncaught-errors.
Thanks to ant.design styling this decently was trivial :). But sadly involved a component class since error boundaries are not yet available as hook.
With these changes the errors should also end up more readably in our monitoring.
Reviewed By: nikoant
Differential Revision: D26422666
fbshipit-source-id: 6c0f8611c80a4a5e0d7e61d58afcf5eabe410e57
Summary:
Couldn't do this because we were stuck on an old version
of digest internally with breaking changes. Now there's a
`sha2-9` option to make it build.
Reviewed By: mweststrate
Differential Revision: D26404582
fbshipit-source-id: 9851de3439ea263eaddb558daaf4cf9e73b062cc
Summary:
Tried to give as much context here not just for how it works but also
how to set it up. For other projects and if we need to redo something.
Reviewed By: mweststrate
Differential Revision: D26400452
fbshipit-source-id: 9b41fd1a36c45554c7a7b562b73b4b9753f7ecfe
Summary: Still need to update the actual release doc. That's next.
Reviewed By: mweststrate
Differential Revision: D26399883
fbshipit-source-id: 87c27b254f4def07810a99fd0e1c817b6afb967e
Summary: Jcenter is ded. Using a Maven Central badge instead.
Reviewed By: mweststrate
Differential Revision: D26399859
fbshipit-source-id: dbbf0ede62ec4b5b76aaa21fbbed8754a3378451
Summary:
T84629221 shows this is quite common and is not something we want
to log errors for.
Reviewed By: mweststrate
Differential Revision: D26371400
fbshipit-source-id: 748a83d8ad484b0ceb1f3bf7e3a447602ae4c961
Summary:
This is our #1 error and always means there's something off with
the user's setup.
Reviewed By: mweststrate
Differential Revision: D26370974
fbshipit-source-id: 5e2644ce9de8a7d28614a22fab5ce54dab0561d3
Summary:
Adding context everywhere as naked messages are hard to track down
and making common errors like missing Xcode license agreements
a warning + error popup instead.
Changelog: Reduce spamminess of iOS connection warnings
Reviewed By: mweststrate
Differential Revision: D26370235
fbshipit-source-id: b283d297479c2bf76a11b5a3f96a59fad70a4a67
Summary:
Bumps [react-native-flipper](https://github.com/facebook/flipper) from 0.73.0 to 0.74.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/facebook/flipper/releases">react-native-flipper's releases</a>.</em></p>
<blockquote>
<h2>v0.74.0</h2>
<p>See <a href="https://github.com/facebook/flipper/blob/master/desktop/static/CHANGELOG.md">https://github.com/facebook/flipper/blob/master/desktop/static/CHANGELOG.md</a>
for full notes.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="0429c1892f"><code>0429c18</code></a> Flipper Release: v0.74.0</li>
<li><a href="0ebe3956a4"><code>0ebe395</code></a> Update OpenSSL pod and remove exclude arch setting (<a href="https://github-redirect.dependabot.com/facebook/flipper/issues/1892">https://github.com/facebook/flipper/issues/1892</a>)</li>
<li><a href="87caca9e77"><code>87caca9</code></a> Demote iOS connection errors</li>
<li><a href="661af25ff9"><code>661af25</code></a> getAppVersion for UpdateIndicator</li>
<li><a href="2f03aca5eb"><code>2f03aca</code></a> Revert D26222885 (9fe82dd6c7): Upgrade metro to 0.65.0</li>
<li><a href="642d89213d"><code>642d892</code></a> Extract getAppVersion() util</li>
<li><a href="40abef860f"><code>40abef8</code></a> Fix key warning</li>
<li><a href="9fe82dd6c7"><code>9fe82dd</code></a> Upgrade metro to 0.65.0</li>
<li><a href="e09e3c82ee"><code>e09e3c8</code></a> Bump antd from 4.9.1 to 4.11.2 in /desktop (<a href="https://github-redirect.dependabot.com/facebook/flipper/issues/1886">https://github.com/facebook/flipper/issues/1886</a>)</li>
<li><a href="05d1bd1ccb"><code>05d1bd1</code></a> Bump react-native-flipper from 0.72.0 to 0.73.0 in /react-native/ReactNativeF...</li>
<li>Additional commits viewable in <a href="https://github.com/facebook/flipper/compare/v0.73.0...v0.74.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/1902
Reviewed By: mweststrate
Differential Revision: D26341287
Pulled By: passy
fbshipit-source-id: 5c281870c10dbca2029310b8985e2e02360c68d8
Summary: Noticed in the support group that the imported device label was incorrect. Probably a copy paste error.
Reviewed By: nikoant
Differential Revision: D26368664
fbshipit-source-id: abc2aad4d20a9f44d6f1ac45962ab28863d78f0d
Summary:
This removes Bintray/JCenter specific code and replaces it with a new plugin recommended by [Chris Banes](https://chris.banes.dev/publishing-to-maven-central/).
Pull Request resolved: https://github.com/facebook/flipper/pull/1914
Test Plan:
Manually uploaded as snapshot and full release, but with this setup still requires all sorts of manual setup, including GPG. Next PR will include automation for this.
CI here should also verify that I didn't split this diff up incorrectly.
Reviewed By: jknoxville
Differential Revision: D26367350
Pulled By: passy
fbshipit-source-id: faa6b488d6c95bc643d2f9328362e29fb4b05ded
Summary:
Bumps [types/socket.io](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/socket.io) from 2.1.11 to 2.1.13.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/socket.io">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/1910
Reviewed By: mweststrate
Differential Revision: D26341340
Pulled By: passy
fbshipit-source-id: aaa780ca9a3e5c7ca082818e7462b02abca373fa
Summary:
Bumps [types/react-test-renderer](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-test-renderer) from 16.9.3 to 17.0.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-test-renderer">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/1906
Reviewed By: mweststrate
Differential Revision: D26341261
Pulled By: passy
fbshipit-source-id: 09baa342878dcf31874635371fd63b8298a1581e
Summary:
Network calls are normally unique to an application as are the associated mocks. Currently, the mocks for different applications are combined together and saved to the local store. It would be better if mocks were saved (and retrieved by application).
This PR adds "appId" to the local store name to save mocks separately for each app. This is not really the ideal technique since different apps could have the same name. Android apps use packageId rather than app name (which is what appid is) to uniquely identify an app. However, package id does not seem to be available to the Flipper client so appid is used instead.
This requirement is described in this issue: https://github.com/facebook/flipper/issues/1487
Also, individual developers often have a preference for how they like to view response data (parsed or formatted). This PR saved the selected format so that the developer does not have to keep selecting it. Since this preference is not specific to an app, it is not necessary to save the preference for each app.
## Changelog
Network plugin - save mocks by app
Network plugin - save response body format preference to local storage
Pull Request resolved: https://github.com/facebook/flipper/pull/1871
Test Plan:
Install two apps (with different names)
Create mocks in each app
Restart Flipper
View the mocks for each app and verify that they are unique to the app
Reviewed By: mweststrate
Differential Revision: D26341333
Pulled By: passy
fbshipit-source-id: cc0286a9dc4e37e008672bfad7c6180f0d5675e4
Summary:
I want to use TypesScipt type literals in a next diff (e.g.
```
type Percentage = `${number}%`
```
But to be able to use that typescript, prettier and eslint needed bumps :)
Reviewed By: nikoant
Differential Revision: D26321133
fbshipit-source-id: a4891246ef8c654f324c6daf303c5c4b2f54496e
Summary:
Some minor loose ends from exploratory testing:
- disconnect device logs event listeners if the device disconnects
- show metro if that is still up, even if the app is no longer connected
- hide the options in the support form to record videos / screenshots if the device isn't connected
Reviewed By: nikoant
Differential Revision: D26277100
fbshipit-source-id: 49d0c934d587b226bc25524224efce60b53939e9
Summary:
Per title, if a plugin makes a client call, show a quick notif so that the user knows why his plugin interactions aren't responding in case the plugin doesn't use `isConnected` guards.
This might turn out to be too spammy, but I think it should be ok.
Reviewed By: nikoant
Differential Revision: D26277099
fbshipit-source-id: bd555ea84acae6189ec7f8fff0fc0a088dbc5337
Summary:
Previously, plugins could relatively safely use `client.call` at any moment in time to fetch some information from / to the client. Except for some raise conditions there was generally speaking a connection available.
With this stack it becomes possible to interact with plugins even after an app (unexpectedly) disconnected, which makes Flipper a lot more versatile, especially when it comes to inspect crashes post mortem. (For more explanation see the second diff in this stack)
However, this means that it is no longer safe to assume there is always a connection available. For that reason `client.isConnected` has been introduced to safeguard against that.
This diff introduces guards on all user interactions that are not super explicitly triggered by the user to avoid a lot of errors being generated. This is mostly in `init()` blocks and implicit user events like selecting or hovering rows.
Explicit user interactions like pressing buttons are not guarded by this diff, as ideally failure to communicate with the client should be communicated back to the user more explicitly rather than failing silently. The next diff will introduce a fallback mechanism where a popup is shown in case those calls aren't guarded.
Fixed a few key warnings while at it.
Reviewed By: nikoant
Differential Revision: D26275604
fbshipit-source-id: 5630066cdd9541e448a6dd1f8a21861b5d751ced
Summary:
Minor code cleanup to avoid future confusion:
- archived: a device that was imported from a Flipper trace, and only has persisted state
- (dis)connected: a real stateful device that might or might not have an active connection
Reviewed By: nikoant
Differential Revision: D26275459
fbshipit-source-id: eba554b37c39711e367c3795ff4456329a303c22
Summary:
This diff addresses two problems:
1. Since clients plugins can be active beyond having a connection, we have to make it possible for plugin authors to check if they are connected before they make a call.
2. if there is a custom `exportPersistedState`, plugins should be able to skip making calls if the device has disconnected.
Introducing this change makes it possible to interact with a reasonable level with disconnected clients, and makes it possible to create Flipper traces for disconnected clients.
Note that both items were already problems before supporting offline clients; as there can be a noticeable delay between disconnecting and Flipper detecting that (i've seen up to 30 secs). What happend previously in those cases is that the export would simply hang, as would other user interactions, as loosing the connection in the middle of a process would cause the promise chains to be neither rejected or resolved, which is pretty iffy.
Before this diff, trying to export a disconnected device would hang forever like:
{F369600601}
Reviewed By: nikoant
Differential Revision: D26250895
fbshipit-source-id: 177624a116883c3cba14390cd0fe164e243bb97c
Summary:
During testing I noticed that even though plugin queues were flushed, the processed messages didn't end up in the export snapshots. This was caused by holding a ref of an older snapshot of the state
Changelog: Fixed an issue where data that arrived in the background was not part of the generated Flipper export.
Reviewed By: nikoant
Differential Revision: D26250897
fbshipit-source-id: ddd3f5bb19e38a1b13498d03f235bf63858eb8f8
Summary:
Small UX improvement, try to select a newly arriving client if possible, this is nice as it means that disconnecting and connecting will typically end you up in the same app.
Changelog: If a new client connects, Flipper will try to focus on it
Reviewed By: nikoant
Differential Revision: D26250896
fbshipit-source-id: 83d9777a8608cd887d663a6bbe1444d2aa614e95
Summary:
It should be possible to exported disconnected devices, so that flipper traces / support form reports can be created from them. This diff introduces this functionality. Support for plugins with custom export logic is introduced in a later diff.
Issues fixed in this diff:
- don't try to take a screenshot for a disconnected device (this would hang forever)
- device plugins were always exported, regardless whether the user did select them or not
- sandy plugins were never part of exported disconnected clients
- increased the amount of data exported for device logs to ~10 MB. This makes more sense now as the logs will no longer be included in all cases
- fixed issue where are plugins would appear to be enabled after the client disconnected (this bug is the result of some unfortunate naming of `isArchived` vs `isConnected` semantics. Will clean up those names in a later diff.
Changelog: It is now possible to create a Flipper trace for disconnected devices and apps
Reviewed By: nikoant
Differential Revision: D26250894
fbshipit-source-id: 4dd0ec0cb152b1a8f649c31913e80efc25bcc5dd
Summary: UX love for imported and disconnected devices, so that stuff looks better :)
Reviewed By: nikoant
Differential Revision: D26249348
fbshipit-source-id: 70db682ccf0cb73161e136994f5135717f3c6be6
Summary:
Introduced `isConnected` flag on device and plugin client to reflect whether a connection is still available for the plugins, or that they have been disconnected.
Potentially we could expose the (readonly) `connected` state atom for this as well, or an `onDisconnect` event for device pugins, to create a responsive UI, but there might be no need for that, in which case this suffices.
Reviewed By: nikoant
Differential Revision: D26249346
fbshipit-source-id: b8486713fdf2fcd520488ce54f771bd038fd13f8
Summary:
This diff introduces support for keeping clients around after they have disconnected. This is a pretty important debugging improvement, that will allow inspecting a device / app after it crashed for example.
With this diff, the current client is just kept around until it connects again, instead of throwing clients immediately away if they disconnect. After this change, ArchivedClients will only be created by imports / exports, and no longer by disconnects. Initially I played with improving the creation of archived devices, by migrating all plugin state over from the original client to the archive, but I discovered that is very prone, as it would be a lot of pointer redistribution (plugins would point to a different client / device etc). While in contrast, disconnected clients is already an existing concept in Flipper, so reusing that keeps all the changes relatively simple.
Note that we could potentially still reuse old clients around after reconnected, but it would become much harder to reason about how plugins would behave if they missed updates for a while, so throwing away the device / clients and starting with a fresh slate sounds safer. So I figured that chance to be too risky for now, but would probably be good follow up work.
Issues with import / export, UX, and making calls to to a disconnected client will be addressed in follow up diffs
Changelog: Clients will retain their state after being disconnected, until they reconnect again
Reviewed By: nikoant
Differential Revision: D26224677
fbshipit-source-id: feb9d241df2304341c2847fe7fd751ac54c045f6
Summary:
This diff stack introduces support for keeping devices and clients around after they have disconnected. This is a pretty important debugging improvement, that will allow inspecting a device / app after it crashed for example.
This feature existed partially before, but only supported Android, and only support plugins with persisted state; as it replace the current device with an archived version of the same device. In practice this didn't work really well, as most plugins would not be available, and all non-persisted state would be lost.
This diff makes sure we can keep devices around after disconnecting, the next one will keep the clients around as well. And explain some code choices in more detail.
Note that `Device.isArchived` was an overloaded term before, and even more now (both representing imported and disconnected devices), will address that in a later diff.
https://github.com/facebook/flipper/issues/1460https://github.com/facebook/flipper/issues/812https://github.com/facebook/flipper/issues/1487
Changelog: iOS and Android devices will preserve their state after being disconnected
Reviewed By: nikoant
Differential Revision: D26224310
fbshipit-source-id: 7dfc93c2a109a51c2880ec212a00463bc8d32041
Summary:
Changelog: CPU plugin will no longer show up for archived devices
CPU plugin did show up on imported devices, but would always result in exceptions as no `adb` connection is available for them.
Reviewed By: jknoxville
Differential Revision: D26249575
fbshipit-source-id: c4fa7b3fec895f9c4ab9e31dce2f61fb23e9195b
Summary:
Bumps [metro-react-native-babel-preset](https://github.com/facebook/metro) from 0.64.0 to 0.65.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/facebook/metro/releases">metro-react-native-babel-preset's releases</a>.</em></p>
<blockquote>
<h2>Release v0.65.0</h2>
<ul>
<li><strong>[Breaking]</strong>: Remove JSON from default asset types (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/593">https://github.com/facebook/flipper/issues/593</a>)</li>
<li><strong>[Breaking]</strong>: Removes support for Node 10 (bc8a3f057c7fe277742de6ca9ce98808a76b1d03)</li>
<li><strong>[Feature]</strong>: <code>metro-symbolicate</code>: Support for symbolicating Chrome heap timelines (TODO get hashes of cb542c0f00987996caeef9672288e2b386d36d8b, 6b0a0cb6afaa28d3a72fb2df7cbd2a99dc7362c4)</li>
<li><strong>[Feature]</strong>: Update the default list of lazy imports to match RN 0.63 (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/602">https://github.com/facebook/flipper/issues/602</a>)</li>
<li><strong>[Performance]</strong>: Several changes that improve Metro's startup and bundling performance (807bea7, bc8a3f0,
aceafc5, 279b295, 745e2d8, a942002, d6eefe4)</li>
<li><strong>[Fix]</strong>: Optimize <code>Platform.select()</code> calls correctly when the argument includes methods (4d9908b)</li>
<li><strong>[Fix]</strong>: Handle EISDIR errors in <code>buildCodeFrameMessage</code> (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/567">https://github.com/facebook/flipper/issues/567</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="078589db01"><code>078589d</code></a> Bump Metro to 0.65.0</li>
<li><a href="6b0a0cb6af"><code>6b0a0cb</code></a> Support symbolicating allocation stacks in Chrome heap snapshots</li>
<li><a href="cb542c0f00"><code>cb542c0</code></a> Add ChromeHeapSnapshotProcessor</li>
<li><a href="29fc804c5a"><code>29fc804</code></a> Deploy Flow v0.143.1</li>
<li><a href="cd25464db6"><code>cd25464</code></a> Remove generate-tests setting from flowconfigs in xplat</li>
<li><a href="4bbd54b071"><code>4bbd54b</code></a> misc Flow library fixes & suppressions</li>
<li><a href="5b7c2e39d9"><code>5b7c2e3</code></a> Deploy 0.142.0 to xplat</li>
<li><a href="64f6e74a6d"><code>64f6e74</code></a> Land suppressions for 0.142.0 release to xplat</li>
<li><a href="144830b358"><code>144830b</code></a> Pass Systrace and Refresh as globals</li>
<li><a href="4d9908bf02"><code>4d9908b</code></a> Fix inline-plugin's Platform.select transform when used with ObjectMethod</li>
<li>Additional commits viewable in <a href="https://github.com/facebook/metro/compare/v0.64.0...v0.65.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/1881
Reviewed By: mweststrate
Differential Revision: D26311177
Pulled By: passy
fbshipit-source-id: 0e548d52ea9b1af4157891cd5a270326f80d866f
Summary:
The any type was masking how the log object is actually initialised.
Sorry for the deluge of drive-by diffs. Something more substantial is coming.
Reviewed By: mweststrate
Differential Revision: D26250580
fbshipit-source-id: 5ba3f450ac1a646616868a8fd8b3cb42fb14dcc8
Summary:
Playing around with alternative upload options and having
an up-to-date Gradle installation makes that easier.
Pull Request resolved: https://github.com/facebook/flipper/pull/1895
Test Plan: ./gradlew :sample:assembleDebug + CI
Reviewed By: nikoant
Differential Revision: D26275350
Pulled By: passy
fbshipit-source-id: ce5d11c289e6cf52e2d629a4719cc38665adf8e5
Summary:
This PR updates the flipperkit version of the Tutorial and updates the GH action to test it without the arch flag.
This PR also fixes the script which updates the `flipperkit_version` tag in all the files. It was broken for Tutorial, as it used to replace the last released version of the pod with the current one in each file, but for some reason the flipper version in the Tutorial/Podfile was way older and it never got updated.
I have fixed the logic now to replace the current version in the file with the new one, rather than relying on only last version to be replaced.
## Changelog
- Updated the GH action of tutorial to remove the -arch flag
- Updated Tutorial/Podfile and Podfile.lock
- Updated scripts/update-pod-versions.sh
Pull Request resolved: https://github.com/facebook/flipper/pull/1896
Test Plan:
CI should be green
Tested that the version gets updated for each and every file, file tested were Flipper.podspec, FlipperKit.podspec, Sample/Podfile SampleSwift/Podfile Tutorial/Podfile
{F369967362}
{F369967395}
Reviewed By: nikoant
Differential Revision: D26275657
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 0f21a2a33c740938d2b29624e95974e80a2e38ba
Summary:
There's a bit of an oddity with `idb` that the `stream` parameter is implied even though the docs say otherwise and if you try to use it, it'll give you a strange Python error. That's likely why we never implemented it.
Now, it works just as it does using local tooling.
Reviewed By: mweststrate
Differential Revision: D26228036
fbshipit-source-id: e20cb31167170ba0501e2929ed129305cb9aaf2c