Summary: Change to Sidebar label and Title
Reviewed By: nikoant
Differential Revision: D36475587
fbshipit-source-id: 425deb13d67965c433773563718365403097cb37
Summary: Expose uuid from flipper-common as it is required in multiple packages
Reviewed By: lblasa
Differential Revision: D36441889
fbshipit-source-id: 1fa539cb437976dbefe7d5d9a52e5e098a6402a7
Summary: Minor change to end of the page.
Reviewed By: passy
Differential Revision: D36411396
fbshipit-source-id: 204bfb54a4f36e5472fa164daeed3f106abe22a8
Summary: Minor change to end of the page.
Reviewed By: lblasa
Differential Revision: D36411616
fbshipit-source-id: 2792144d89bd657c457b8f5ff685d200c5f8c946
Summary:
^
This is a very small refactoring and addition to the Flipper Desktop app.
The instantiation of FlipperServer was extracted to a separate function.
This a very tiny change that allows to switch the implementation we use for FlipperServer in a more convenient way.
In this same change, an unused function is added which will create a separate FlipperServer instance that uses a web-socket underneath which makes it possible to use with flipper-server.
So, if interested, it is enough to call that function instead of the one currently in use and it will make Flipper connect to flipper-server instead.
https://pxl.cl/24j8R
Reviewed By: passy
Differential Revision: D36440574
fbshipit-source-id: 94ea2ab7208b898a82ac5e7fd7edd9cb824b4810
Summary:
^
Before this change, the client assumed the host and port came from location.host which is fine on the browser.
In all other cases, that object/properties may be undefined.
As such, add host and port as function args and use that instead.
Reviewed By: passy
Differential Revision: D36440423
fbshipit-source-id: 5f931f1d610d583db6a2e549e1213585f0d03dee
Summary:
^
flipper-server verifies the origin of incoming connections as a way of preventing any host from connecting to flipper.
That's good.
This change expand the list of allowed origins to include localhost:3000 which is the default origin for Electron apps.
Error without this change:
```
Refused socket connection from cross domain request, origin: http://localhost:3000, host: localhost:52342. Expected origins: http://localhost:52342 or http://[::1]:52342 or http://::1:52342. Expected hosts: localhost:52342 or [::1]:52342 or ::1:52342
```
Reviewed By: passy
Differential Revision: D36440363
fbshipit-source-id: 883cadb49f245bca5d0a53a4f58c08cf45dd0189
Summary:
^
I noticed this issue whilst using the Desktop app connected to flipper-server.
So, Flipper Desktop should run as usual with icons being displayed. If connected to flipper-server, behaviour should be the same.
https://pxl.cl/24j73
Reviewed By: passy
Differential Revision: D36440268
fbshipit-source-id: 4c79852d94c8bde95c6e82e2a56bef35a337599d
Summary:
Bumps [metro-react-native-babel-preset](https://github.com/facebook/metro) from 0.70.2 to 0.70.3.
<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.70.3</h2>
<p><em>This is a hotfix on the <code>0.70.x</code> branch.</em></p>
<ul>
<li><strong>[Fix]</strong> Add explicit dependency on <code>babel/runtime</code> to <code>metro-runtime</code> (<a href="https://github-redirect.dependabot.com/facebook/metro/issues/816">https://github.com/facebook/flipper/issues/816</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="3c31ed5d8d"><code>3c31ed5</code></a> Release Metro 0.70.3</li>
<li><a href="43a9e3723f"><code>43a9e37</code></a> Add explicit dependency on <code>babel/runtime</code> to <code>metro-runtime</code></li>
<li>See full diff in <a href="https://github.com/facebook/metro/compare/v0.70.2...v0.70.3">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/3703
Reviewed By: timur-valiev
Differential Revision: D36371166
Pulled By: mweststrate
fbshipit-source-id: 9df1247c655f1c856c1ac93d0f8e3a4cb4db3926
Summary:
Bumps [de.undercouch.download](https://github.com/michel-kraemer/gradle-download-task) from 5.0.5 to 5.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/michel-kraemer/gradle-download-task/releases">de.undercouch.download's releases</a>.</em></p>
<blockquote>
<h2>5.1.0</h2>
<p>New features:</p>
<ul>
<li>Add possibility to enable preemptive Basic authentication (through the new <code>preemptiveAuth</code> flag)</li>
<li>Warn if server does not send <code>WWW-Authenticate</code> header in 401 response</li>
<li>Log request and response headers in debug mode</li>
</ul>
<p>Maintenance:</p>
<ul>
<li>Add integration tests for Gradle 7.4.1 and 7.4.2</li>
<li>Update dependencies</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="fece1d94af"><code>fece1d9</code></a> Bump up version number 5.1.0</li>
<li><a href="8b7c07a8e2"><code>8b7c07a</code></a> Add possibility to enable preemptive Basic authentication</li>
<li><a href="0121feeb62"><code>0121fee</code></a> Log request and response headers in debug mode</li>
<li><a href="c67e557d9f"><code>c67e557</code></a> Warn if server did not send WWW-Authenticate header</li>
<li><a href="f3a5eb500f"><code>f3a5eb5</code></a> Combined dependencies PR (<a href="https://github-redirect.dependabot.com/michel-kraemer/gradle-download-task/issues/216">https://github.com/facebook/flipper/issues/216</a>)</li>
<li><a href="7908765b41"><code>7908765</code></a> Remove unnecessary resolution strategy</li>
<li><a href="5f5efc8c24"><code>5f5efc8</code></a> Bump mockito-core from 4.4.0 to 4.5.0 (<a href="https://github-redirect.dependabot.com/michel-kraemer/gradle-download-task/issues/212">https://github.com/facebook/flipper/issues/212</a>)</li>
<li><a href="0a9806ce40"><code>0a9806c</code></a> Add integration tests for Gradle 7.4.1 and 7.4.2</li>
<li>See full diff in <a href="https://github.com/michel-kraemer/gradle-download-task/compare/5.0.5...5.1.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/3705
Reviewed By: timur-valiev
Differential Revision: D36371174
Pulled By: mweststrate
fbshipit-source-id: 5933c2c27899f9ce51db35e203fae8adb8b1b34d
Summary:
Bumps [clap](https://github.com/clap-rs/clap) from 3.1.15 to 3.1.17.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/releases">clap's releases</a>.</em></p>
<blockquote>
<h2>v3.1.17</h2>
<h2>[3.1.17] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li>Allow value names for <code>arg!</code> macro to have dashes when quoted, like longs</li>
</ul>
<h2>v3.1.16</h2>
<h2>[3.1.16] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li><em>(parser)</em> <code>Arg::exclusive</code> overrides <code>Arg::required</code>, like other conflicts</li>
<li><em>(error)</em> Don't duplicate arguments in usage</li>
<li><em>(error)</em> Don't show hidden arguments in conflict error usage</li>
<li><em>(help)</em> New <code>help_template</code> variable <code>{name}</code> to fix problems with <code>{bin}</code></li>
<li><em>(help)</em> Don't wrap URLs</li>
</ul>
<p><strong>gated behind <code>unstable-v4</code></strong></p>
<ul>
<li>Leading dashes in <code>Arg::long</code> are no longer allowed</li>
<li><em>(help)</em> Use <code>Command::display_name</code> in the help title rather than <code>Command::bin_name</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/clap-rs/clap/blob/master/CHANGELOG.md">clap's changelog</a>.</em></p>
<blockquote>
<h2>[3.1.17] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li>Allow value names for <code>arg!</code> macro to have dashes when quoted, like longs</li>
</ul>
<h2>[3.1.16] - 2022-05-06</h2>
<h3>Fixes</h3>
<ul>
<li><em>(parser)</em> <code>Arg::exclusive</code> overrides <code>Arg::required</code>, like other conflicts</li>
<li><em>(error)</em> Don't duplicate arguments in usage</li>
<li><em>(error)</em> Don't show hidden arguments in conflict error usage</li>
<li><em>(help)</em> New <code>help_template</code> variable <code>{name}</code> to fix problems with <code>{bin}</code></li>
<li><em>(help)</em> Don't wrap URLs</li>
</ul>
<p><strong>gated behind <code>unstable-v4</code></strong></p>
<ul>
<li>Leading dashes in <code>Arg::long</code> are no longer allowed</li>
<li><em>(help)</em> Use <code>Command::display_name</code> in the help title rather than <code>Command::bin_name</code></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="55e791e80e"><code>55e791e</code></a> chore: Release</li>
<li><a href="ed0c01993c"><code>ed0c019</code></a> docs: Update changelog</li>
<li><a href="229b44d9bb"><code>229b44d</code></a> fix(macros): Allow dashed values (<a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3699">https://github.com/facebook/flipper/issues/3699</a>)</li>
<li><a href="95698a4f31"><code>95698a4</code></a> chore: Release</li>
<li><a href="3984e55363"><code>3984e55</code></a> docs(complete): Update changelog</li>
<li><a href="1a1a842aa0"><code>1a1a842</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3698">https://github.com/facebook/flipper/issues/3698</a> from epage/value</li>
<li><a href="b266e6d35d"><code>b266e6d</code></a> fix(complete): Complete visible, rather than hidden, values</li>
<li><a href="17b930c203"><code>17b930c</code></a> chore: Release</li>
<li><a href="e74864994a"><code>e748649</code></a> docs: Update changelog</li>
<li><a href="0e1e9525c8"><code>0e1e952</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/clap-rs/clap/issues/3696">https://github.com/facebook/flipper/issues/3696</a> from epage/usage</li>
<li>Additional commits viewable in <a href="https://github.com/clap-rs/clap/compare/v3.1.15...v3.1.17">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/3699
Reviewed By: timur-valiev
Differential Revision: D36371160
Pulled By: mweststrate
fbshipit-source-id: 3cde137d719249ae3b86f8e6755172c5799faf9a
Summary:
`getChilAt` can return `null` (see also line 671), probably when the UI changes during the inspection process. Added a null check that should protect against the failure reported in P501013941
Changelog: Fixed NPE during search in layout plugin (Android)
Reviewed By: lblasa
Differential Revision: D36369508
fbshipit-source-id: 1f066d1a73bdfe875d66f7200ded0d0776af8321
Summary:
Currently, Flipper Server has a few productions dependencies (mac-ca, node-fetch) that are not bundled with the Flipper Server. It makes it harder to distribute Flipper Server, as now all potential consumers need not only to download the bundle, but also install these additional dependencies.
This diff makes it possible to bundle `mac-ca` and `node-fetch` with Flipper Server. As a result, Flipper Server becomes dependency-free in production.
Reviewed By: lblasa
Differential Revision: D36345213
fbshipit-source-id: 2cd6ba1b3301b45dc2295891964ba020fd107586
Summary:
This change isolates the usage of folly async from Flipper. Is now self-contained in Flipper Folly schedulers.
Users of Flipper can decide not to use the types defined in that header and implement their own.
NOTE: changes are minimal, we are just replacing direct calls to folly event base with a scheduler which simply relays this on to folly.
Reviewed By: fabiomassimo
Differential Revision: D36052198
fbshipit-source-id: 170d64a324a1f1f100224e2622a59cbac3c8b642
Summary:
^
It was used by rsocket.
Reviewed By: fabiomassimo
Differential Revision: D36246038
fbshipit-source-id: 8bdc77d9e1ecf22402436e0102b5522ed36aff27
Summary:
Flipper doesn really use library specific exceptions throughout, and that's OK.
Introducing SSLException as a replacement for the existing Folly Async Socket SSL exception.
This exception originally thrown by rsocket. Because we had rsocket and websockets using the same code, websockets were creating and throwing this same exception.
With rsocket gone, we can fully replace the usage of that exception. This is also needed as to decouple Flipper from folly async components.
Reviewed By: fabiomassimo
Differential Revision: D36245624
fbshipit-source-id: f5c97c5efe063280ce95be130008dee7f4e5d788
Summary: Introduce a 'Scheduler' interface which will allow to decouple from the existing used Folly scheduler.
Reviewed By: fabiomassimo
Differential Revision: D36245587
fbshipit-source-id: 2f28bc1612e37ae53060a134d1c8059231fbc8ad
Summary:
As part of an ongoing effort to migrate Flipper plugins to new Sandy arch, this diff aims to help by migrating the 'Sandbox' Plugin.
Most of the changes were straightforward, as in, could be done by following this excellent migration guide : https://www.internalfb.com/intern/staticdocs/flipper/docs/extending/sandy-migration/
Only thing which caused few issues was the "onready" behaviour. In the old pattern, the 'init' method used to get executed on every render. So it was ok to check for "isconnected" prop there.
Now the 'plugin' method is only executed once => and since the device might not be connected then, the "onReady" method (which is equivalent to old 'init' method) didn't work.
To fix this => the init method has been replace with "onConnect".
Reviewed By: lblasa
Differential Revision: D36284538
fbshipit-source-id: 4b2bf74c6d11625e4bd784fbb29fd270158a41ff