Summary:
There will likely be more so I added a place for inspecting
these messages to the top.
Reviewed By: antonk52
Differential Revision: D34681084
fbshipit-source-id: ad32145d44dba08b813d8a2ddc63d500a0c360d8
Summary:
This is PR on top of: https://github.com/facebook/flipper/pull/3473
It adds an option to Settings to allow distribution of marketplace plugins.
Also includes a simple fetch function to retrieve data from external API/server.
## Changelog
Allow marketplace plugins
Pull Request resolved: https://github.com/facebook/flipper/pull/3491
Test Plan:
1. Enable marketplace
2. Provide custom marketplace server (it will serve the list of internal plugins with downloadURL)
3. Test if can see Available plugins and can download/remove the plugin
4. If new update for the plugin, it should also allow auto update
Reviewed By: antonk52
Differential Revision: D34586339
Pulled By: nikoant
fbshipit-source-id: c887982aa0f0f9abd3b5360f22e8692a2445d345
Summary: Socket.io-client sends the host as ::1 instead of [::1] when using IPV6 to communicate with Flipper, that is the reason the communication was always being refused.
Reviewed By: mweststrate
Differential Revision: D34679825
fbshipit-source-id: b7431ad23f743276c11619d7cdb5c83594dee43a
Summary:
1. Identify if device supports screenshots/screen recording when it is created.
2. Disable screen recording/screenshot buttons when they are not supported
Reviewed By: passy
Differential Revision: D34611133
fbshipit-source-id: 82ad2d67e4af482d9becf7995187667b5d99bc36
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: Add support for binding the same port in flipper in both the IPv6 and IPv4 interfaces
Reviewed By: mweststrate
Differential Revision: D34591022
fbshipit-source-id: e28239c24425885ee442d93b84bb38902d521a0c
Summary: Adds a reference to plumbing icon for plugins to use
Reviewed By: svaithia
Differential Revision: D34467457
fbshipit-source-id: 21d95f663309224742f4f93ac584998e1a470f28
Summary: Prior to this fix, plugins were copied with verion 0.0.0 which forced them to be updated with "newer" versions from marketplace
Reviewed By: nikoant
Differential Revision: D34457087
fbshipit-source-id: a3242578c570447f8ecf9c62bcaa69e5d9688c42
Summary: --no-embedded-plugins does not seem to exist. Replaced with --no-bundled-plugins which removes plugins from defaultPlugins/idex.tsx (as in prod).
Reviewed By: antonk52
Differential Revision: D34445364
fbshipit-source-id: e52c2e327bf43a3f682b6d9e18315e6ecadad5d8
Summary: Provide server add-on writers with a well-known fetch API
Reviewed By: mweststrate
Differential Revision: D34447630
fbshipit-source-id: 70386940c12f9e53aa97b3530a7edf1d40b5f2e2
Summary: Flipper plugins rely on 'flipper-plugin' package being accessible from 'global'. Expose a subset (without UI stuff) of flipper-plugin to server add-ons
Reviewed By: mweststrate
Differential Revision: D34400811
fbshipit-source-id: e0079ddfa67e66c1b24ab02d7682917ddfc84aaf
Summary:
Adding a feature to Flipper's Logs plugin where:
1) you search for something,
2) click on a line among the filtered search results,
3) press control,
4) get taken back to unfiltered list of all messages, centered on your selected line
This is to help debugging where the user may add a print statement but the error happens after it, and it's difficult to catch without a lot of scrolling.
Reviewed By: mweststrate
Differential Revision: D33446285
fbshipit-source-id: 19aa472a12de074e561dbe37b44821fc29bf5c91
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/3473
This diff is the first one which addresses https://github.com/facebook/flipper/issues/3320.
In this diff we are making a part of the code used for internal Flipper plugin distribution in Meta also available publicly for re-using in other orgs.
Some explanation on how plugin installation and updates is designed now:
1) We periodically poll for plugins available for download. API for retrieving available plugins list is abstracted and will be different between public and fb versions, however all other logic is re-used.
2) In addition to "Enabled" and "Disabled" plugins in the left panel Flipper shows "Detected in App" list. Plugins in this list are those which are known compatible with the currently selected device/app, but not yet installed.
3) User can install any of "Detected in App" plugins by clicking to "Download and install" button near them in the left panel similarly to enabling plugins in "Disabled" list.
4) If we detect that for some installed plugin we have a newer version available for download - we download it silently and store on disk.
5) If the plugin for which we have new downloaded version is disabled - we update it silently without any notifications by loading new version from the disk and unloading the previous version from cache.
6) If the plugin for which we have new downloaded version is enabled then we avoid updating it automatically (because we need to reset plugin state in such case) and instead show notification on top of the plugin and ask user to reload it to apply new version. On reloading we reset the plugin state.
7) On Flipper startup we always update all plugins to their latest versions available on the disk.
Reviewed By: aigoncharov
Differential Revision: D34380308
fbshipit-source-id: a94d724e42aa5ef78445af266fcd4c424226a703
Summary:
This is just refactoring in preparation to open-sourcing internal plugin distribution code to make it available for other orgs so they can distribute their internal plugins. See other diffs in the same stack.
This diff moves recommended plugins handling from `pluginMarketplace` which will be the same for fb-internal and OS versions into `pluginMarketplaceAPI` which will differ for fb-internal and OS versions. This will make it possible for other orgs to define their own "recommended" plugins which then will be automatically installed/enabled for new users.
Reviewed By: aigoncharov
Differential Revision: D34379981
fbshipit-source-id: 5c3a4efb6d0171256cf508f9005d914d7332e14f
Summary:
^
LogView is raising this up but I don't think there's an actionable item from our side. If a client doesn't have the right arguments on the query string then we effectively are unable to construct a valid query.
All our clients do this correctly, but there may be instances that either a browser or another process is 'trying' to connect to Flipper even if unintentionally. This behaviour I've observed in the past.
Changelog: Log 'Unable to extract the client query from the request URL' as warning
Reviewed By: passy
Differential Revision: D34340068
fbshipit-source-id: f5fc36a9803a83d6662b6383589bc0aa99774798
Summary:
Dynamic information means we can't deduplicate on the backend.
Logging the serial as a warning instead.
In general, I'm not convinced this is a good error to begin with
as it seems expected that devices can disappear on disconnect
but getting a better count should help to make that decision.
Reviewed By: aigoncharov
Differential Revision: D34247723
fbshipit-source-id: ace3c32d2370433dcca2debbea3a2c5d7a2ecb57
Summary: This change gives priority to a user option settingsString to set up the flipper-server configuration and load them from a json string. Also giving the user the chance to avoid flipper-server looking at the launcher config files in the computer
Reviewed By: mweststrate
Differential Revision: D34210110
fbshipit-source-id: 9e852b79da106b5140c59116fd7d0c0f3155e620