Commit Graph

125 Commits

Author SHA1 Message Date
Anton Nikolaev
d98bf10646 Force "\n" line endings in VSCode on Windows
Summary:
1) Forced consistend line endings in VSCode on all OSes
2) Copied VSCode settings to both root folder and "desktop" subfolder so both these folders can be opened as VSCode workspace

Reviewed By: passy

Differential Revision: D20724126

fbshipit-source-id: b9e35c6a055457e05cd1c2d6145a58820cc511f8
2020-03-30 01:58:30 -07:00
Michel Weststrate
8fa4b5ccb2 Update existing subscriptions to use sideEffect
Summary: See previous two diffs, this applies the abstraction to our code base

Reviewed By: passy

Differential Revision: D20679687

fbshipit-source-id: 05e340dca3f832971783a844a78d1ffd553ff9d2
2020-03-27 04:42:12 -07:00
Michel Weststrate
7a40d3f0a3 Introduce sideEffects for safer management of store side effects
Summary:
This diff introducing the sideEffect abstractions, that creates a fundamental solution for the problem in D20619226: If a subscription to the store errors, the entire store can't be updated anymore, bringing the entire app to a halt.

Applying this abstraction will be done in a next diff.

To essential idea of sideEffect is that it fixes a few problems:

1. I decouples and throttles the effect so that no arbitrary expensive burden is added to every store update
2. It makes sure that a crashing side effect doesn't crash the entire store update
3. It helps with tracing and monitoring perf problems
4. It puts the side effect behind a selector so that the side effect is only triggered if a relevant part of the store changes, like we do for components.

Note that if some subscription _must_ be handled synchronously, than that logic should be in a reducer, not in a subscription or side effect. Luckily we don't have any examples of that in our code base.

This abstraction might actually be intesting to be shared wider for fun and profit.

Reviewed By: passy

Differential Revision: D20625872

fbshipit-source-id: adaf8356950594d50e6a99a17a862f757c3777db
2020-03-27 04:42:12 -07:00
Anton Nikolaev
5e7a22147b Fix reload after changes in the main app bundle
Summary: Fixed automatic reloading on changes while "yarn start"

Reviewed By: mweststrate

Differential Revision: D20691166

fbshipit-source-id: 78b01a3c5e4a6da1537f2230411069e04ebbc81e
2020-03-27 03:26:52 -07:00
Anton Nikolaev
c1bb656a0d Re-use babel transformations
Summary:
SORRY FOR BIG DIFF, but it's really hard to split it as all these changes are cross-dependent and should be made at once:
1. Moved transformations to separate package "flipper-babel-transformer" and linked it using yarn workspaces to "static" and "pkg" packages where they are re-used. Removed double copies of transformations we had before int these two packages.
2. Converted transformations to typescript
3. Refactored transformations to avoid relying on file system paths for customisation (FB stubs and Electron stubs for headless build)
4. As babel transformations must be built before other builds - enabled incremental build for them and changed scripts to invoke the transformations build before other build scripts
5. As we need to deploy all the dependencies including the fresh "flipper-babel-transformer" as a part of "static" - implemented script which copies package with all the dependencies taking in account yarn workspaces (hoisting and symlinks)

Reviewed By: passy, mweststrate

Differential Revision: D20690662

fbshipit-source-id: 38a275b60d3c91e01ec21d1dbd72d03c05cfac0b
2020-03-27 03:26:51 -07:00
Brian Vaughn
07a6a3b87d Upgrade React DevTools 4.0.6 -> 4.6.0
Summary:
Upgrading the embedded version of React DevTools, primarily to pull in [this PR](https://github.com/facebook/react/pull/18397) which will reduce the impact of this package on `node_modules` size.

# Update process

Following a similar process as D15973709, I began by searching for [all of the references](https://our.intern.facebook.com/intern/biggrep/?corpus=xplat&filename=.json&case=false&view=default&extre=&s=%22react-devtools&engine=apr_strmatch&context=false&filter[uninteresting]=false&filter[intern]=false&filter[test]=false&grep_regex=) to the `react-devtools-core` package and updated all v4 usage to to point to the new 4.6.0 release:

1: Manually update "react-devtools-core" versions:
```
js/package.json
js/react-native-github/package.json
nuclide/package.json
sonar/desktop/app/package.json
sonar/desktop/plugins/reactdevtools/package.json
vscode/modules/vscode-webview/package.json
```
2: Setup Yarn proxy:
```
yarn config set proxy http://fwdproxy:8080/
yarn config set https-proxy http://fwdproxy:8080
```
3: Run "yarn" in each of the above directories.
4: Run the lockfile shell script:
```
~/xplat/js/scripts/update-oss-yarn-lockfile.sh
```
5: Update the generated `MOBILE_JS_NODE_MODULE_DEPS.bzl` by running
```
js1 build buckfiles
```

## Changelog:

[General] [Changed] - Upgrade embedded React DevTools backend from v4.0.6 to v4.6.0.

Reviewed By: cpojer, gaearon

Differential Revision: D20676091

fbshipit-source-id: 99865bdba9bce45e2a7d582d5fb550cfdbeeca3a
2020-03-26 16:45:29 -07:00
Timur Valiev
64bfc91ea6 websockets import fix
Summary: somehow normal require brings us non-expected version, so let's import from node_modules

Reviewed By: jknoxville

Differential Revision: D20625706

fbshipit-source-id: 4748bcbaa15d1e6d400fc6d2153bb541a3dd129e
2020-03-26 04:08:29 -07:00
George Zahariev
b5e55aca4e Deploy Flow 0.121 to Xplat (#901)
Summary:
Deploy Flow 0.121 to Xplat

bypass-lint
allow-large-files

Closes https://github.com/facebook/flipper/pull/901

Changelog: [Internal]

Reviewed By: panagosg7

Differential Revision: D20570316

fbshipit-source-id: a76983d6f46c8b995ce2dd5cd1e014534790698a
2020-03-25 23:22:06 -07:00
generatedunixname89002005306973
fa8ae9cbe1 Flipper Release: v0.35.0
Summary: Releasing version 0.35.0

Reviewed By: jknoxville

Differential Revision: D20655536

fbshipit-source-id: f965954ed0c1ff58382f08caf2dd02032cd84785
2020-03-25 16:38:03 -07:00
Pascal Hartig
4d866b0327 Bump acorn, minimist
Summary:
They have some security vulns, resolving all to the 7.x release
where it's fixed.

What's bothering me about this is that we can't leave comments in the `package.json` to explain why this is there.

Reviewed By: nikoant

Differential Revision: D20645477

fbshipit-source-id: 0ea1a9d27066349943e25d618339a19b48d76def
2020-03-25 11:18:05 -07:00
Pascal Hartig
34a2ebe2e9 Remove yarn.lock for workspaces
Summary:
These aren't updated but - importantly - are pinning
some deps with security vulns.

Reviewed By: nikoant

Differential Revision: D20645332

fbshipit-source-id: 491721d5a856e55f23e6a9608ae11632e1667eb2
2020-03-25 08:08:46 -07:00
Timur Valiev
01aa61bcb3 rename to Execution Flows (Fury) + new icon + make public (non gk)
Reviewed By: SimoneCasagranda

Differential Revision: D20619591

fbshipit-source-id: af933bcf45a9bdd7057a9d16c97ea9f7650d5993
2020-03-25 04:25:45 -07:00
Anton Nikolaev
9299198906 Fix adbkit-logcat resolution
Summary:
There is error written to console just after launch. It is related to wrong resolution of adbkit-logcat version. This diff forces resolution to the single version everywhere.

{F232416275}

Reviewed By: mweststrate

Differential Revision: D20632452

fbshipit-source-id: bf45bbd6d245dbb1093b093c20e808840689971b
2020-03-25 03:27:51 -07:00
Anton Nikolaev
a46cb85bac Fix compilation of plugins in run-time after installation
Summary: Fixed compilation of installed plugins in run-time

Reviewed By: passy

Differential Revision: D20642377

fbshipit-source-id: d5012c88eebf1f7106de538b84c7695048408924
2020-03-25 03:26:59 -07:00
Michael Bolin
49fc4b46b6 Set arrowParens option explicitly.
Differential Revision: D20640296

fbshipit-source-id: 0ecaa78f964fce8297342db99be29b1a7d1cfab6
2020-03-24 22:49:33 -07:00
Michael Bolin
37f0260116 Back out "Upgrade Prettier from 1.17 to 2.0.2."
Differential Revision: D20639755

fbshipit-source-id: 5028563f9cf0527a30b4259daac50cdc03934bfd
2020-03-24 21:48:09 -07:00
Michael Bolin
8658fca4dd Upgrade Prettier from 1.17 to 2.0.2.
Summary:
This gets us on the latest Prettier 2.x:
https://prettier.io/blog/2020/03/21/2.0.0.html

Notably, this adds support for TypeScript 3.8,
which introduces new syntax, such as `import type`.

Reviewed By: zertosh

Differential Revision: D20636268

fbshipit-source-id: fca5833d003804333a05ba16325bbbe0e06d6c8a
2020-03-24 20:24:52 -07:00
greenkeeper[bot]
fe6077e218 Update prettier in group pkg to the latest version � (#917)
Summary:
***
☝️ **Important announcement:** Greenkeeper will be saying goodbye 👋 and passing the torch to Snyk on June 3rd, 2020! [Find out how to migrate to Snyk and more at greenkeeper.io](https://greenkeeper.io)
***
## The devDependency [prettier](https://github.com/prettier/prettier) was updated from `1.19.1` to `2.0.0`.
This version is **not covered** by your **current version range**.

If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.

 ---

**Publisher:** [thorn0](https://www.npmjs.com/~thorn0)
**License:** MIT

[Find out more about this release](https://github.com/prettier/prettier).

 ---

<details>
  <summary>FAQ and help</summary>

  There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>

 ---

Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/917

Reviewed By: jknoxville

Differential Revision: D20596394

Pulled By: passy

fbshipit-source-id: 27c551944d3fe15b4cf001f7b0757d31a60e3cbe
2020-03-24 09:38:12 -07:00
greenkeeper[bot]
a91a75f47d Update prettier in group doctor to the latest version � (#916)
Summary:
***
☝️ **Important announcement:** Greenkeeper will be saying goodbye 👋 and passing the torch to Snyk on June 3rd, 2020! [Find out how to migrate to Snyk and more at greenkeeper.io](https://greenkeeper.io)
***
## The devDependency [prettier](https://github.com/prettier/prettier) was updated from `1.19.1` to `2.0.0`.
This version is **not covered** by your **current version range**.

If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.

 ---

**Publisher:** [thorn0](https://www.npmjs.com/~thorn0)
**License:** MIT

[Find out more about this release](https://github.com/prettier/prettier).

 ---

<details>
  <summary>FAQ and help</summary>

  There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>

 ---

Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/916

Reviewed By: jknoxville

Differential Revision: D20594930

Pulled By: passy

fbshipit-source-id: 5c5eb01c79c184e6ed61dab6a701bddf97e773aa
2020-03-24 09:38:11 -07:00
Pascal Hartig
fc9ed65762 prettier 2
Summary:
Quick notes:

- This looks worse than it is. It adds mandatory parentheses to single argument lambdas. Lots of outrage on Twitter about it, personally I'm {emoji:1f937_200d_2642} about it.
- Space before function, e.g. `a = function ()` is now enforced. I like this because both were fine before.
- I added `eslint-config-prettier` to the config because otherwise a ton of rules conflict with eslint itself.

Close https://github.com/facebook/flipper/pull/915

Reviewed By: jknoxville

Differential Revision: D20594929

fbshipit-source-id: ca1c65376b90e009550dd6d1f4e0831d32cbff03
2020-03-24 09:38:11 -07:00
Anton Nikolaev
d9d3be33b4 Fix build on windows
Summary: Fix for build on windows

Reviewed By: mweststrate

Differential Revision: D20601309

fbshipit-source-id: 9845964513d7904f58e3511b1c4daa8716f7b054
2020-03-24 08:08:20 -07:00
Michel Weststrate
0a8d8f44ff Make sure notication computation can't crash the dispatch
Summary:
Collecting notifications is done in the store.subscribe. If this throws however, the entire original dispatch throws (really Redux?!). So added a try catch around collecting notifications. This stops plugins from crashing while processing the queue (in fact this could happen during any Redux dispatch).

Will look into a more robust mechanism in the future

I suspect this also fixes the hanging graphQL issue

Reviewed By: jknoxville

Differential Revision: D20619226

fbshipit-source-id: 2f6b8e13a5c884dd63b6963d317474a2abf0725c
2020-03-24 06:45:46 -07:00
greenkeeper[bot]
37096ba800 Greenkeeper/pkg/monorepo.babel7 20200322111342 (#921)
Summary:
Greenkeeper update
Pull Request resolved: https://github.com/facebook/flipper/pull/921

Reviewed By: mweststrate

Differential Revision: D20598722

Pulled By: jknoxville

fbshipit-source-id: 896352cf56d16e0c8cce8350c7a0e6d068ba03c6
2020-03-23 18:45:01 -07:00
John Knox
e85331bc98 chore(package): update @types/node to version 13.9.3 (#923)
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/923

Reviewed By: mweststrate

Differential Revision: D20599094

Pulled By: jknoxville

fbshipit-source-id: f48e16099c50358cc798b62ecde12368c75ee3ec
2020-03-23 18:45:01 -07:00
Anton Nikolaev
b3ede5e532 Fix "flipper-oss-ios-build"
Summary: Not sure how, but after I removed gitignore, symlink to it kept on its place and caused errors on "flipper-oss-ios-build" job. This diff removes the symlink.

Differential Revision: D20601201

fbshipit-source-id: 0ea21e875f82a0da25d07c635f889232c9f637a0
2020-03-23 17:02:34 -07:00
John Knox
8eb18557dd chore(package): update ts-node to version 8.8.1 (#922)
Summary:
Greenkeeper update
Pull Request resolved: https://github.com/facebook/flipper/pull/922

Reviewed By: mweststrate

Differential Revision: D20599053

Pulled By: jknoxville

fbshipit-source-id: 2934eb44cbf964244fad213e5f79b2bc931aca03
2020-03-23 11:53:56 -07:00
Timur Valiev
1bfb750467 dive into link
Summary:
Breaking down 'big' links and diving deeper into stack trace
each link is built from multiple events with same function on top of call stack
Now we can break that group and/or navigate one level  deeper in that stack

coloring links: according to the latest event timestamp: blue -> orange gradient

{F232164201}

Reviewed By: SimoneCasagranda

Differential Revision: D20596812

fbshipit-source-id: 9debbc55a716166e20c94f51989742bf40b95878
2020-03-23 10:32:31 -07:00
John Knox
043fcc354f Fix context menu caching bug
Summary:
The memoized callback didn't have any dependencies, so whenever a context menu was computed for a component, it was never changed again.

This broke the network plugin as the context menu should change depending on what element is selected.

Reviewed By: cekkaewnumchai

Differential Revision: D20596750

fbshipit-source-id: 275453d972079954e310fd3e97f2dd9f437bf748
2020-03-23 08:55:18 -07:00
Michel Weststrate
ef653100ed Don't try to print large network bodies
Summary:
The network plugin warns about network requests that cannot be properly deflated if they are big and binary. Not sure yet why that is the case and if that is something that should be addressed (planned T63909985 for that), but if the body is big and binary it causes problems for our logging.

While testing I had some requests that where 45m large, and Electron literally hang for a few minutes before recovering. Failed to capture that, but the test plan shows smaller cases of the problem

Reviewed By: jknoxville

Differential Revision: D20560083

fbshipit-source-id: 324eb180b203dd585814dba5c94373d8daee5dde
2020-03-23 06:46:00 -07:00
Michel Weststrate
d01da8ef9a Stabilize Android connection handling
Summary:
A lack of correct chaining of promises, error handling and not explicitly dealing with the ADB state 'still connecting' causes errors to be shown in Flipper on the main thread, the browser console and in the debug error bar.

This diff fixes several of those issue, which gives a stabler much stabler experience when disconnecting and connecting emulators and physical devices a lot (it is a bit hard to capture in a movie, but more noticeable when doing it IRL)

Reviewed By: jknoxville

Differential Revision: D20559197

fbshipit-source-id: 643172d322aefe1be209741a48fa0e96358881eb
2020-03-23 06:45:59 -07:00
Michel Weststrate
f2da075acc Fixed circular dependencies
Summary: Fixed circular dependency warnings and removed some dead code while at it.

Reviewed By: jknoxville

Differential Revision: D20557313

fbshipit-source-id: 856c42113a9abe36d3e14f9d538eb40705ceb87f
2020-03-23 06:45:59 -07:00
Michel Weststrate
aa2879d6e8 Remove double async wrapping
Summary:
Our usage of requestIdleCallback (probably) causes more trouble than it solves:

1. It makes sure everything is processed asynchronously. But since everything is arriving over a network stack, that is already the case without wrapping it again to run on a separate event loop tick
2. The timeout we set before `500` forces the app to give _more_ priority to message processing instead of less
3. In a next diff (D20151700) in this stack we will make sure that messages are not processed immediately, but simple stored, which should not be significantly more expensive (probably even cheaper) than scheduling another tick on the event loop

Reviewed By: jknoxville

Differential Revision: D20557104

fbshipit-source-id: 6cc10ba537e3cb5f31e6c32e1fdeb57c20f06f17
2020-03-23 06:45:59 -07:00
Michel Weststrate
d103692883 Remove event_queue GK
Summary: Did run for 2 months stable now, time to remove some dead code.

Reviewed By: passy

Differential Revision: D20556785

fbshipit-source-id: 514673995212d62d21744f304286caa6e91007fb
2020-03-23 06:45:58 -07:00
Anton Nikolaev
06cd90562d Re-use base tsconfig options
Summary: Added tsconfig.base.json and extend other tsconfigs from it.

Reviewed By: passy

Differential Revision: D20594653

fbshipit-source-id: 28dd80262613e78a7c4ce25fa31f251537ec2b06
2020-03-23 05:40:34 -07:00
Chaiwat Ekkaewnumchai
69fc5e8834 Set Line Height for ToggleSwitch (ToggleButton)
Summary:
Set line height to make space between lines look better in cramper space (See Test Plan).

This has direct side effect on:
- https://fburl.com/diffusion/0dtt1cgl
- ToggledSection component

In addition, this diff adds an offline cache.

Reviewed By: mweststrate

Differential Revision: D20574486

fbshipit-source-id: 8689bc95e2f18409e82c923fea361e033e77bc00
2020-03-23 04:42:57 -07:00
Anton Nikolaev
74d8da7c4b VSCode settings
Summary:
1) Add VSCode settings to the source control, so users won't need to configure them
2) Copy VSCode settings to both "sonar" and "sonar/desktop" folders so both folders can be opened for development

Reviewed By: passy

Differential Revision: D20594643

fbshipit-source-id: 4331659008e4dbf9dfcc44a3723ab0612a3bd333
2020-03-23 04:29:08 -07:00
Anton Nikolaev
3cbeaf2642 Fix Github build (#914)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/914

Fixed Github build I accidentaly broke by a previous diff

Reviewed By: mweststrate

Differential Revision: D20581935

fbshipit-source-id: c14d7e0fe83af79069f8fef432833babf04c59f8
2020-03-21 15:31:20 -07:00
Alexander Kawrykow
0b6b5a0582 Add basic tabbed layout
Summary: Adding a marketplace icon

Differential Revision: D20459204

fbshipit-source-id: 2c76e34c7911209b71be0c7194e27655f4a48dde
2020-03-20 17:35:36 -07:00
Anton Nikolaev
863f89351e Yarn workspaces
Summary:
1) moved "sonar/desktop/src" to "sonar/desktop/app/src", so "app" is now a separate package containing the core Flipper app code
2) Configured yarn workspaces with the root in "sonar/desktop": app, static, pkg, doctor, headless-tests. Plugins are not included for now, I plan to do this later.

Reviewed By: jknoxville

Differential Revision: D20535782

fbshipit-source-id: 600b2301960f37c7d72166e0d04eba462bec9fc1
2020-03-20 13:37:41 -07:00
Michel Weststrate
676d7bbd24 Hide timeline by default
Summary:
See the linked task. The QPL can literally freeze Flipper. Initial testing showed that the cause is primary the timeline view.

It was already suggested in the past to hide the timeline by default, as it is not that useful. So did.

Will try to unbreak the timeline in the future, but this at least unblocks the linked task.

Reviewed By: jknoxville

Differential Revision: D20538421

fbshipit-source-id: 8f5cd18c89322e94da5ab055e1913b6434eacf8a
2020-03-19 15:33:55 -07:00
John Knox
be5c76d27c Disable logs plugin for physical iOS devices
Summary:
This has never worked due to historic problems with idb log: https://fb.workplace.com/groups/idb.users/permalink/875711589527983/

It sounds like they have been fixed though, so I'll look into getting it going. But for now, disabling it until it's working to hide a broken experience.

Reviewed By: passy

Differential Revision: D20534205

fbshipit-source-id: 3a39c9930fa195562d946bcfe9fd3388e3329be3
2020-03-19 14:30:00 -07:00
Michel Weststrate
93bf7ced77 Fix sidebar (and content) height
Summary: When expanding the sidebar, sometimes the sign in / profile button would disappear, as the main content would be to height

Reviewed By: passy

Differential Revision: D20534482

fbshipit-source-id: 6248df501afcefc4afb6df3a6fd864462f8290e4
2020-03-19 08:43:45 -07:00
greenkeeper[bot]
969b1edb58 Update @types/recharts in group plugins to the latest version � (#899)
Summary:
***
☝️ **Important announcement:** Greenkeeper will be saying goodbye 👋 and passing the torch to Snyk on June 3rd, 2020! [Find out how to migrate to Snyk and more at greenkeeper.io](https://greenkeeper.io)
***
## The devDependency [types/recharts](https://github.com/DefinitelyTyped/DefinitelyTyped) was updated from `1.8.6` to `1.8.8`.
This version is **not covered** by your **current version range**.

If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.

 ---

**Publisher:** [types](https://www.npmjs.com/~types)
**License:** MIT

[Find out more about this release](https://github.com/DefinitelyTyped/DefinitelyTyped).

 ---

<details>
  <summary>FAQ and help</summary>

  There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>

 ---

Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/899

Reviewed By: mweststrate

Differential Revision: D20520128

Pulled By: passy

fbshipit-source-id: fb7b58663a117f7b2c43835ab5030a84d25fe1e0
2020-03-19 07:44:38 -07:00
Michel Weststrate
068f19461a Use http://localhost for origin instead of https
Summary:
Follow up of D20454562

We now set an origin header, but use https instead of http, which is currently not supported by the public RN version (for the internal RN version support was added in D20526486).

However, not promoting ourselves as running on a secured connection seems like the more trustworthy thing to do, and better reflects reality.

Reviewed By: nikoant

Differential Revision: D20534363

fbshipit-source-id: e26fabd77013920e4c58fdbf552bb909f0499cae
2020-03-19 06:26:01 -07:00
Chaiwat Ekkaewnumchai
a624b064a8 (Server) Fix Naming
Summary: per title

Reviewed By: mweststrate

Differential Revision: D20489140

fbshipit-source-id: 8678c1bfed578c5ec7138e0ccb25777942d5ed4c
2020-03-19 05:18:25 -07:00
Chaiwat Ekkaewnumchai
d60125bd5e (Server) Fix Unresponsive Header Input
Summary:
Before this diff, the input bar is unresponsive to the user input; when one typed fast enough the input doesn't reflect that as shown in the before video (the console printed the log directly when `onChange` was fired).

This diff tried to store value locally and use that to render. When the component is closed, the state update will take place. This tried to solve too many state update.

Reviewed By: mweststrate

Differential Revision: D20489142

fbshipit-source-id: c118adc61d9234daec17782e4bbf8e4ea3dd369f
2020-03-19 05:18:25 -07:00
Michel Weststrate
ddf5df98c7 Track flipper crashes / restarts
Summary:
In this diff we persist data about the state of the app when exiting, and to make sure we capture it in crashes, do that as part of track-usage events as well.

with the exit data we also capture what kind of device and plugin the user was using, so that we can detect anomalies like flipper needing restarting more often for certain plugins

during startup, we will always send an event how long it was since the last startup, including the above information

Reviewed By: passy

Differential Revision: D20515200

fbshipit-source-id: ead971e05542e0ef58ed5e5b204af70b51a15b9b
2020-03-19 02:50:48 -07:00
Pascal Hartig
c88553e00e Fix security vuln in acorn (#898)
Summary:
Resolves https://github.com/facebook/flipper/pull/886 which doesn't
rebase.
Pull Request resolved: https://github.com/facebook/flipper/pull/898

Test Plan: hopeitwork

Reviewed By: mweststrate

Differential Revision: D20510909

Pulled By: passy

fbshipit-source-id: c1525e65a98520d7dd9d3248d2a4e40aee3ae65d
2020-03-18 08:18:22 -07:00
Michel Weststrate
805a911c08 Show recent changes automatically at startup
Summary:
This shows a changelog as popup at startup, but only if it wasn't shown before, and only if there are new items in the changelog.

The full changelog can still be accessed through the menu

Changelog: From this release onward we will show important update messages through this dialog.

Reviewed By: passy

Differential Revision: D20492594

fbshipit-source-id: 4663979c8781b468430b9f8b628c4f506578b461
2020-03-18 06:47:57 -07:00
Michel Weststrate
3da7552779 Add 'show changelog' menu item [3/n]
Summary:
Added a menu option to show the current changelog.

Automatically showing it will be done in a next diff.

Reviewed By: passy

Differential Revision: D20219725

fbshipit-source-id: 96727d2e4b2280a814f28298e7440db5e4dd7870
2020-03-18 06:47:57 -07:00