Summary: On older Android devices (API 24) `-printf ` is not available
Reviewed By: lblasa
Differential Revision: D40980640
fbshipit-source-id: d1a1bcadc496deaf3d514c1e45b2e0104a937b18
Summary:
Logging data for this event turnslogs into unreadable mess
{F789339377}
Reviewed By: lblasa
Differential Revision: D40978819
fbshipit-source-id: ac0894b2a490aa902180c50e7712b168211c7013
Summary: FlipperServerClient can use any socket to transfer the data. Since we do not control the socket, we cannot guarantee what comes out of it (hello, Jest E2E tunnel!). We need to handle unexpected messages gracefully.
Reviewed By: passy
Differential Revision: D40891384
fbshipit-source-id: 6f873037aa49bac3fc4c09fa49483cdec537ae40
Summary: Remove `window` reference to use flipper-server-client in NodeJS context (windows is not defined there)
Reviewed By: passy
Differential Revision: D40859805
fbshipit-source-id: 23415f9d504e4dbba4035b942c73add86edf02de
Summary: Re-expose one of the legacy exports we had before. Requested by MSYS
Reviewed By: passy
Differential Revision: D40979328
fbshipit-source-id: 7e8f089a182a62f392f3a720bee9b81698930f9d
Summary:
FlipperServerClient is a useful abstraction for any JS-based client of headless Flipper. No need to bundle it with flipper-frontend-core, as the rest is not useful for external clients.
Currently, I am planning to add it to jest-e2e to send commands to Flipper
Reviewed By: lblasa
Differential Revision: D40765668
fbshipit-source-id: af48710bb15444ac1ecd649fe9a2ab252f3088f3
Summary:
Flipper plugins fail when importing css from third-party dependencies. This diff tries to fix that.
Effectively, the plugin can import the css and export it when is bundled.
When we load the plugin, we check if there's a css file for it. If there's one, we return it and try to use it.
Reviewed By: aigoncharov
Differential Revision: D40758178
fbshipit-source-id: e53afffcc481504905d5eeb1aea1f9114ee2a86b
Summary:
Importing CSS from nested node_modules residing inside of the plugins folder breaks publish-static-docs-flipper-diff job. See D40717045.
Reverting it to unblock the release
Reviewed By: lblasa
Differential Revision: D40717654
fbshipit-source-id: ac3f4ce92d69b0e3bed9cd116678785390e26e4e
Summary:
Closes https://github.com/facebook/flipper/issues/4203
CHANGELOG: Stop doing eval to load server add-ons
On Windows `details.path` contains backslashes. When we interpolate it, it loses one of the backslashes and subsequently `require` fails to load it. If we do not interpolate it (by ditching eval) it has the double backslash and work just fine.
Reviewed By: lblasa
Differential Revision: D40715523
fbshipit-source-id: 50c52f2a53690b585a32d3009f1692cf0b0d8428
Summary: When Flipper starts with Flipper Server enabled, on Windows we forgot to attach the WebSocket handler. It led to a white screen on Electron or to connection timeout messages on Flipper Server.
Reviewed By: passy, lblasa
Differential Revision: D40679781
fbshipit-source-id: 1c8df8012efc54077409eb8891b1d82ddaf16689
Summary:
Old hover state is now selection state
New hover state is a slightly thicker border
Reviewed By: lblasa
Differential Revision: D40637724
fbshipit-source-id: 7b13bc864bc1f626cf0982517befcb80615e7cc0
Summary:
Upgraded from ant tree library to the much more capable React complex tree. Added the following:
1. Ability to expand / collapse nodes while automatically expanding / collapsing active/inactive children when they change
2. Keyboard controls of tree all the time
3. Basic search functionality
4. Selecting node in tree focuses and scrolls in the tree
5. Hover state for tree
Reviewed By: lblasa
Differential Revision: D40633876
fbshipit-source-id: 8dcef5ec2c277e476a3eb3cdaef62b15c25323c0
Summary:
Clicking on a node a second time will unselect which was impossible before.
The behaviour of the on click handler doesnt always line up what is currently hovered, this is a temporary work around. There are deeper issues with this in that on exit we hover the parent, but in some situations the parent is too small to propagate. In future we will use the mouse position and do a hit test and drive selection / hover from that
Reviewed By: lblasa
Differential Revision: D40637356
fbshipit-source-id: 9df19dbf619845891bb46624730d7cf74f73cf25
Summary:
Design doc: https://docs.google.com/document/d/1HLCFl46RfqG0o1mSt8SWrwf_HMfOCRg_oENioc1rkvQ/ed
It does not make too much sense to have 2 different entry points to export Flipper debug data and to create a support request. It only creates ambiguity for our users. We could open the support request form automatically for them every time. In those rare cases when they try to attach new data to an existing support request, they can always not submit the form.
Reviewed By: passy
Differential Revision: D40632145
fbshipit-source-id: 6ca454d6e885493b32ac3aad008482045dccf51d
Summary:
Design doc: https://docs.google.com/document/d/1HLCFl46RfqG0o1mSt8SWrwf_HMfOCRg_oENioc1rkvQ/edit#
Attach what we can to the universal export file if any of the steps time out
CHANGELOG: Add a universal debug export button
Reviewed By: passy
Differential Revision: D40552235
fbshipit-source-id: 775afccacf053fbcf764d1f39e93a89ad20dee0a
Summary:
Design doc: https://docs.google.com/document/d/1HLCFl46RfqG0o1mSt8SWrwf_HMfOCRg_oENioc1rkvQ/edit#
Some files on the devices could be unavailable due to lack of permissions (hello SELinux and enterprise builds of iOS apps). Instead of failing the export, we should fetch what we can.
Reviewed By: passy
Differential Revision: D40551931
fbshipit-source-id: 698e157b1283b9e959909b6439cd09d2dc8dc8d6
Summary:
Design doc: https://docs.google.com/document/d/1HLCFl46RfqG0o1mSt8SWrwf_HMfOCRg_oENioc1rkvQ/edit#
Exporting all files form a device and export Flipper's own state could take a long time. We need to keep our users updated on the status.
Reviewed By: passy
Differential Revision: D40551661
fbshipit-source-id: d5c94fb99d4bc8b4495ce463915b77c475548f01
Summary:
Design doc: https://docs.google.com/document/d/1HLCFl46RfqG0o1mSt8SWrwf_HMfOCRg_oENioc1rkvQ/edit#
In later diffs, we'll start fetching the actual files as well. The list of available files itself might be useful already to see what we have in our folder on the device
Reviewed By: passy
Differential Revision: D40508960
fbshipit-source-id: 96193fef3fed64d509cd3397513ae3e94438ae22
Summary:
Design doc: https://docs.google.com/document/d/1HLCFl46RfqG0o1mSt8SWrwf_HMfOCRg_oENioc1rkvQ/edit#
Add a button to export all possible debug data at once. IN subsequent diffs, I'll add more extensive data collection.
Reviewed By: antonk52
Differential Revision: D40467606
fbshipit-source-id: 6a4225945b1feb6c1a8073b5209a62ba0beb6148
Summary:
Replace draft inspectors with read-only components.
This is a first step into having a richer UI. At the moment, these are read-only components but will likely be extended in the future as to allow editing of values.
Reviewed By: LukeDefeo
Differential Revision: D40345016
fbshipit-source-id: a6aef5861474b4aa8353c00ef257ab17b4cff00e
Summary:
Utility function that transforms lower camel case attribute names to a more readable name.
e.g. sizeToFit -> Size To Fit
Reviewed By: antonk52
Differential Revision: D40344715
fbshipit-source-id: f0745b892a78cc262133197a4d4b7624a7e2141d
Summary:
^
This laids the foundation for the inspector. It just reorganises a few bits.
Reviewed By: LukeDefeo
Differential Revision: D40319611
fbshipit-source-id: 8cf9b151c631faa1f26a7a6dfaa86b01abc42fe5
Summary:
There were some situations were we would hang waiting for new clients but one had connected.
Additionally the old approach would close and reopen the dialog every time a state update happened in the redux store which was a little jarring. Now the polling of the update is independant the dialog
The dialog still flashes for other parts of the flow (when scanning for devices) and would be nice to fix this too in the future
Reviewed By: mweststrate
Differential Revision: D40477502
fbshipit-source-id: d1ff161f262493cf5b3fb74e22b49ed65de8c292
Summary: We were incorrectly assuming a client did not support a plugin because it was not fully initialized. This issue was only apparant on start deep links
Reviewed By: mweststrate
Differential Revision: D40477503
fbshipit-source-id: 5fd9db765f559b8eb80cc3680ee694dfd2cf9a37
Summary: pull/push might fail when run-as fails on insufficient permissions. When this happens, try to perform the command as root.
Reviewed By: aigoncharov
Differential Revision: D40623363
fbshipit-source-id: a4cc71d70f83ce1a390b14c9af9d3a3fa09f1307
Summary:
This change adds support for more inspectables and also introduces more complex types to be used as a value.
This become specially useful for more complex yet primitive types like coordinate, size, bounds, etc.
Reviewed By: LukeDefeo
Differential Revision: D40307885
fbshipit-source-id: 125e832f06d6b31f56eb5405182d1c0d61388930
Summary:
Bumps [emotion/styled](https://github.com/emotion-js/emotion) from 11.8.1 to 11.10.4.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/emotion-js/emotion/releases"><code>@emotion/styled</code>'s releases</a>.</em></p>
<blockquote>
<h2><code>@emotion/styled</code><a href="https://github.com/11"><code>@11</code></a>.10.4</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a href="https://github-redirect.dependabot.com/emotion-js/emotion/pull/2867">https://github.com/facebook/flipper/issues/2867</a> <a href="89b6dbb3c1"><code>89b6dbb3</code></a> Thanks <a href="https://github.com/Andarist"><code>@Andarist</code></a>! - Externalized code referencing <code>React.useInsertionEffect</code> to a separate <code>emotion/use-insertion-effect-with-fallbacks</code> package. This package should be used in your defined externals if you bundle Emotion for whatever reason. It references <code>useInsertionEffect</code> in a very specific way that allows us to use it conditionally. However, if the code consuming Emotion is bundled as a library with Emotion in it then some bundlers might change the way in which we reference <code>useInsertionEffect</code> and that might create problems for bundlers used to consume the said library code. By externalizing this new package you can still bundle Emotion if you want to without running into this problem as you won't "destroy" the carefully crafted reference to <code>useInsertionEffect</code> in the process.</p>
<p>Note that we don't recommend bundling Emotion. You should have very specific reasons to do so.</p>
</li>
<li>
<p>Updated dependencies [<a href="89b6dbb3c1"><code>89b6dbb3</code></a>]:</p>
<ul>
<li><code>@emotion/use-insertion-effect-with-fallbacks</code><a href="https://github.com/1"><code>@1</code></a>.0.0</li>
</ul>
</li>
</ul>
<h2><code>@emotion/styled</code><a href="https://github.com/11"><code>@11</code></a>.10.0</h2>
<h3>Minor Changes</h3>
<ul>
<li>
<p><a href="https://github-redirect.dependabot.com/emotion-js/emotion/pull/2819">#2819</a> <a href="bbad8c7993"><code>bbad8c79</code></a> Thanks <a href="https://github.com/nicksrandall"><code>@nicksrandall</code></a>! - <code>exports</code> field has been added to the <code>package.json</code> manifest. It limits what files can be imported from a package but we've tried our best to allow importing all the files that were considered to be a part of the public API.</p>
</li>
<li>
<p><a href="https://github-redirect.dependabot.com/emotion-js/emotion/pull/2819">#2819</a> <a href="bbad8c7993"><code>bbad8c79</code></a> Thanks <a href="https://github.com/nicksrandall"><code>@nicksrandall</code></a>! - Thanks to the added <code>exports</code> field, the package now includes a <code>worker</code> condition that can be utilized by properly configured bundlers when targeting worker-like environments. It fixes the issue with browser-specific files being prioritized by some bundlers when targeting workers.</p>
</li>
</ul>
<h3>Patch Changes</h3>
<ul>
<li>Updated dependencies [<a href="bbad8c7993"><code>bbad8c79</code></a>, <a href="bbad8c7993"><code>bbad8c79</code></a>]:
<ul>
<li><code>@emotion/babel-plugin</code><a href="https://github.com/11"><code>@11</code></a>.10.0</li>
<li><code>@emotion/is-prop-valid</code><a href="https://github.com/1"><code>@1</code></a>.2.0</li>
<li><code>@emotion/serialize</code><a href="https://github.com/1"><code>@1</code></a>.1.0</li>
<li><code>@emotion/utils</code><a href="https://github.com/1"><code>@1</code></a>.2.0</li>
</ul>
</li>
</ul>
<h2><code>@emotion/styled</code><a href="https://github.com/11"><code>@11</code></a>.9.3</h2>
<h3>Patch Changes</h3>
<ul>
<li>
<p><a href="https://github-redirect.dependabot.com/emotion-js/emotion/pull/2759">https://github.com/facebook/flipper/issues/2759</a> Thanks <a href="https://github.com/srmagura"><code>@srmagura</code></a>, <a href="https://github.com/Andarist"><code>@Andarist</code></a>! - Change the argument of the <code>shouldForwardProp</code> option of <code>styled</code> from <code>PropertyKey</code> to <code>string</code> in the TypeScript definitions.</p>
</li>
<li>
<p><a href="https://github-redirect.dependabot.com/emotion-js/emotion/pull/2333">https://github.com/facebook/flipper/issues/2333</a> <a href="3055efddf8"><code>3055efdd</code></a> Thanks <a href="https://github.com/Andarist"><code>@Andarist</code></a>! - <code>shouldForwardProp</code> has been changed from being a bivariant method to a contravariant function - it improves the type-safety for those that type this option.</p>
</li>
<li>
<p><a href="https://github-redirect.dependabot.com/emotion-js/emotion/pull/2333">https://github.com/facebook/flipper/issues/2333</a> <a href="3055efddf8"><code>3055efdd</code></a> Thanks <a href="https://github.com/antongolub"><code>@antongolub</code></a>! - <code>FilteringStyledOptions</code> and <code>StyledOptions</code> types no longer require a type argument for the <code>Props</code> generic.</p>
</li>
<li>
<p>Updated dependencies [<a href="26e4e3e8b6"><code>26e4e3e8</code></a>, <a href="5e81f21398"><code>5e81f213</code></a>, <a href="3055efddf8"><code>3055efdd</code></a>]:</p>
<ul>
<li><code>@emotion/serialize</code><a href="https://github.com/1"><code>@1</code></a>.0.4</li>
<li><code>@emotion/is-prop-valid</code><a href="https://github.com/1"><code>@1</code></a>.1.3</li>
</ul>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="6835850e39"><code>6835850</code></a> Version Packages (<a href="https://github-redirect.dependabot.com/emotion-js/emotion/issues/2872">https://github.com/facebook/flipper/issues/2872</a>)</li>
<li><a href="89b6dbb3c1"><code>89b6dbb</code></a> Move conditional <code>useInsertionEffect</code> declarations into separate package (<a href="https://github-redirect.dependabot.com/emotion-js/emotion/issues/2867">https://github.com/facebook/flipper/issues/2867</a>)</li>
<li><a href="28522cd3ca"><code>28522cd</code></a> Upgrade Yarn (<a href="https://github-redirect.dependabot.com/emotion-js/emotion/issues/2870">https://github.com/facebook/flipper/issues/2870</a>)</li>
<li><a href="f2608b3a54"><code>f2608b3</code></a> Version Packages (<a href="https://github-redirect.dependabot.com/emotion-js/emotion/issues/2865">https://github.com/facebook/flipper/issues/2865</a>)</li>
<li><a href="b9b8b7493d"><code>b9b8b74</code></a> Fixed a regression that could cause a crash when looking for an ignoring comm...</li>
<li><a href="c60d646ff5"><code>c60d646</code></a> Version Packages (<a href="https://github-redirect.dependabot.com/emotion-js/emotion/issues/2860">https://github.com/facebook/flipper/issues/2860</a>)</li>
<li><a href="df434eaf9d"><code>df434ea</code></a> Pass <code>--no-immutable</code> to Yarn when regenerating lockfile after versioning pac...</li>
<li><a href="2de94aee23"><code>2de94ae</code></a> Regenerate lockfile after versioning packages</li>
<li><a href="005e211d53"><code>005e211</code></a> Fixed an issue in the styles minifier that caused interpolations to be someti...</li>
<li><a href="0ffd6068fe"><code>0ffd606</code></a> Fixed the ignore flag not disabling the warning when there are multiple block...</li>
<li>Additional commits viewable in <a href="https://github.com/emotion-js/emotion/compare/emotion/styled@11.8.1...@emotion/styled@11.10.4">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/4118
Reviewed By: aigoncharov
Differential Revision: D40335000
Pulled By: mweststrate
fbshipit-source-id: 7427a4ebb0d6b4e643288ae10e4db34a3781bb88