Summary: These safeguards were added based on a discussion in D35088208 (56e94394ca) but turned out to be counter-productive. Every time a client disconnects now, we're tearing down the socket and the server, allowing for no future connections.
Reviewed By: lblasa
Differential Revision: D36252605
fbshipit-source-id: c3b6f85dea4054505a47d24a72a4aac403371c0f
Summary: Reverts D36263724 (0ee8f09fe5) and fixes the underlying crash by setting only physical devices in the permissive mode
Reviewed By: passy
Differential Revision: D36275055
fbshipit-source-id: 25a691e9c07e20a3341630db508795c133a9bd81
Summary:
Next steps:
1. Refactor it TS for consistency
2. Remove it in favor of tic-tac-toe integration
Reviewed By: mweststrate
Differential Revision: D36102002
fbshipit-source-id: 7dc930f67bed636159a2ec433d7405ab6ee09f97
Summary: Start flipper-server-companion whenever a client connects to flipper-server and sets `server_companion` query parameter in a connection URL to true
Reviewed By: mweststrate
Differential Revision: D36098169
fbshipit-source-id: eb953e7d680b30aef1340f059264112387264c05
Summary: Current temporary limitations: all headless plugins are bundled with Flipper.
Reviewed By: antonk52
Differential Revision: D36098168
fbshipit-source-id: c58abe41776157258a5c39a80a5c1a33cf3f42c5
Summary:
We want Flipper plugins to share imports with Flipper:
- They must share the same React otherwise different Reacts could conflict with each other
- Other common modules are shared to decrease the bundle size for each plugin.
`setGlobalObject` provides shared modules to Flipper Plugins by adding them to the global context (window or process or global this).
In the headless context, we do not have React and other DOM-related libraries, so we provide stubs instead.
Reviewed By: passy
Differential Revision: D36130161
fbshipit-source-id: d30c59a6c3ae02e7f9244bc0bb5790079b771107
Summary: Add Flipper Server Companion implementation. It extends the list of commands handled by Flipper Server by adding commands to interact with device or app Flipper plugins.
Reviewed By: mweststrate
Differential Revision: D36130159
fbshipit-source-id: 2eb6ba0fbae0fa850eadb7d417aa476240994bd5
Summary: Flipper Server Companion starts headless plugins and exposes them over the wire
Reviewed By: passy
Differential Revision: D36098170
fbshipit-source-id: 3b1b077d1fa4adca5c340ad4475b80b229586e1b
Summary: On a fresh VS Code install, only the internal Prettier plugin is available, but not the open source version, which we need as the internal one doesn't work on Flipper (probably due to TypeScript?)
Reviewed By: lblasa
Differential Revision: D36275616
fbshipit-source-id: bccbbcd372f7a7ecca46eb83f5515543e611235c
Summary:
Original commit changeset: 471470c5ca91
Original Phabricator Diff: D35356211 (501abc6b55)
Recently, bloks users reported that android emulators lost connection upon launching Flipper. (S270689)
Manual bisecting indicates that remote emulators won't crash on v0.142.362128844 (4/6) but crash on 0.143.365099607 (4/21).
Looking at https://www.internalfb.com/code/fbsource/[history]/xplat/scripts/.flipperversion.v2, and backing out D35356211 (501abc6b55) fixes the issue.
It's still unclear why setting `setIntoPermissiveMode` would crash/disconnect the android emulators, I'd defer Flipper team to investigate this further but this diff should unblock all the android bloks emulator + Flipper use case.
Reviewed By: lblasa
Differential Revision: D36263724
fbshipit-source-id: e8674730c0185457f6eda347ce7d9a41f9e1a2a4
Summary:
Remove reference to limitation of an API to a particular platform or app.
We show in Flipper whether the plugin is compatible or not. For example, if an iOS device is connected, for plugins that don't support iOS, Flipper marks them as disabled and show a message.
Reviewed By: lblasa
Differential Revision: D36241811
fbshipit-source-id: 4f936279c8dd616fc95a4e6c3e149a0b74b98bd6
Summary:
This bundles up the Flipper Server in a Mac App Bundle which is identically in shape to a regular Desktop bundle. That means we can swap them out transparently without having to keep the layout in sync with Flipper Launcher.
It bundles nodeJS binary which we can later also provide for aarch64.
Reviewed By: aigoncharov
Differential Revision: D36140809
fbshipit-source-id: fb3410626ab172ce0da48f1a4a1489da68450369
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: mweststrate
Differential Revision: D36197861
fbshipit-source-id: b73787f04892d3f76938929ef84943f2031657e1
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: passy
Differential Revision: D36198283
fbshipit-source-id: 499133cc7265488203a248da2d1e519fc23a0d19
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: mweststrate
Differential Revision: D36197599
fbshipit-source-id: 6fad2066d64f1f191b32639e1f36c24e103a91fb
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: mweststrate
Differential Revision: D36198043
fbshipit-source-id: 961d9b535f0869ae3db3bbdfcbc33be43773edd6
Summary: Taking care of the remaining dependabot tasks In my queue.
Reviewed By: mweststrate
Differential Revision: D36131782
fbshipit-source-id: f8a5ce18bfab7c5d50a88d64f9516d67bba4bd6d
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: On top of the stack, this should be green again.
Reviewed By: nikoant
Differential Revision: D36100200
fbshipit-source-id: 581e3d825ef8e088f6d5ed4b0fcdfea574121667
Summary:
Before:
```
flipper-server/src/startBaseServer.tsx(222,30): error TS2345: Argument of type 'string | undefined' is not assignable to parameter of type 'string'.
Type 'undefined' is not assignable to type 'string'.
flipper-ui-browser/src/flipperServerConnection.tsx(25,9): error TS2322: Type 'Timeout' is not assignable to type 'number'.
```
Reviewed By: nikoant
Differential Revision: D36100188
fbshipit-source-id: 1913a43109a0e068394a188d362f6a9e473e7904
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: passy
Differential Revision: D35898254
fbshipit-source-id: 67e3f3e344faf105f5a8f393c60441d6af3d62aa
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: passy
Differential Revision: D35897472
fbshipit-source-id: 4b3853cd805c8714c83a8d227395dec8e3ff888f
Summary: Restyle of the page, including changes to spelling, grammar, links, and structure (where relevant).
Reviewed By: passy
Differential Revision: D35899228
fbshipit-source-id: 4ade5b28f1634e792fcf4582fe163d02e2f4fab4
Summary:
^
Not exactly sure how to reproduce the issue. Having said that:
- A database id is a non-zero number (1..n)
- If there's no selected database and/or there's no databases, then selectedDatabase is '0', which is an invalid database id.
- It is safer to check if the selected database id falls within bounds before attempting to obtain the tables from it.
From Logview, if the database id is '0', which is invalid, then we attempt to access a database at index -1 (database[selectedDatabase - 1]) which is definitely invalid. The returned object is undefined and hence the error.
Changelog: Fixes an issue on the databases plugin when there is no selected database.
Reviewed By: mweststrate
Differential Revision: D35810827
fbshipit-source-id: 4c9f112eebcd0aa3fcd5df316749f48f3922381c
Summary:
This is already supported, when running Flipper on Mac, so just need update schema.
One use case for `MacOS`, is to have a static plugin available to users before they launch any app/device. So this can be used as Welcome plugin, Documentation or any other "static" plugin not requiring any other device except the one running Flipper Desktop.
## Changelog
- add `MacOS` to supported devices
Pull Request resolved: https://github.com/facebook/flipper/pull/3648
Test Plan: - Script `lint` should pass.
Reviewed By: antonk52
Differential Revision: D35810577
Pulled By: lblasa
fbshipit-source-id: e1a2948fdf67535d28b68eeab649214b44ebcf9c
Summary: Show tab bar in React DevTools to allow switching to Profiler
Reviewed By: nikoant
Differential Revision: D35747309
fbshipit-source-id: ca7e65fdd30261aabc5f05fe10b451c115a92b7f