Files
flipper/desktop
Lorenzo Blasa bc77dcf326 Simplify shutdown logic
Summary:
The previous logic aimed to reuse an existing server during bootstrap if the launched version was higher than the running one. This is no longer required or wanted.

## Risk assessment: LOW
### Rationale
It is extremely rare to launch Flipper whilst already having another instance running. This can happen during development, but it is extremely rare in production.

Launcher (singleton) launches Server (singleton).
Launcher can be executed multiple times and this will not create newer server instances.

If anything, if we are unable to kill any other instance, whatever that may be, continue. This is to cover the cases where a shutdown may have been acknowledged but the process is still shutting down.

Reviewed By: antonk52

Differential Revision: D51232901

fbshipit-source-id: 8b8b85f4bac68f5670b1878e827871f78dc68999
2023-11-13 12:51:45 -08:00
..
2023-10-20 12:44:58 -07:00
2023-10-03 10:58:10 -07:00
2023-08-21 03:03:30 -07:00
2023-08-21 03:03:30 -07:00
2023-11-10 04:33:02 -08:00
2023-11-13 12:51:45 -08:00
2023-08-30 07:26:35 -07:00
2023-10-03 10:58:10 -07:00
2023-09-05 07:17:06 -07:00
2023-11-13 06:02:32 -08:00
2023-11-10 04:33:02 -08:00
2023-11-10 06:50:40 -08:00
2023-08-30 07:26:35 -07:00
2023-11-03 06:16:18 -07:00
2023-10-20 07:23:34 -07:00
2021-09-27 08:25:20 -07:00
2023-05-31 14:19:29 -07:00
2023-11-10 06:50:40 -08:00
2023-09-12 03:55:37 -07:00
2023-08-29 05:06:18 -07:00
2023-10-26 03:05:02 -07:00

Flipper Desktop

This folder contains everything to run the Flipper 'Desktop', that is, the UI which you use to interact with the device / app under debug.

Packages provided here:

  • flipper-common: utilities & types shared between client, server, and plugins
  • flipper-server-core: all device & client management goes in here. Basically flipper's backend
  • flipper-ui-core: all UI goes in here, as far as it doesn't depend on Electron
  • app: the Electron app, will load flipper-server-core and flipper-ui-core, and glue them together, providing implementations for some electron specific stuff like dialogs
  • flipper-server: A node process hosting flipper-server-core that can be connected to over websockets. Also, it can serve a browser version of the UI as well.
  • flipper-ui-browser: thin wrapper around flipper-ui-core, providing some browser specific behavior / stubs.
  • flipper-dump: (might remove later) as an alternative way to test flipper-server-core.
  • flipper-plugin: The flipper SDK used by plugins. Exposes all API's that can be used by plugins
  • pkg: CLI tool to manage building flipper plugins
  • pkg-lib
  • plugin-lib
  • babel-transformer
  • doctor
  • eslint-plugin-flipper

Packages overview

app:
   - flipper-server-core (directly embedded)
   - flipper-ui-core
       - plugins (prebundled)
   - plugins (installable)
       - flipper-plugin

flipper-server
   - flipper-server-core
   - flipper-ui-browser (served by webserver)
       - flipper-ui-core (communicates using web sockets with server-core)
           - plugins (prebundled)
   - plugins (installable)?

flipper-dump
   - flipper-server-core