Commit Graph

96 Commits

Author SHA1 Message Date
Chaiwat Ekkaewnumchai
f4bb0f987f DataDescription
Summary: _typescript_

Reviewed By: danielbuechele

Differential Revision: D17174253

fbshipit-source-id: d2ad87954a4fe49626f35234c2a9db180093fc54
2019-09-05 03:36:47 -07:00
John Knox
4f671847ba Fix prefetcher types
Reviewed By: passy

Differential Revision: D17164305

fbshipit-source-id: edc52a0708e2a46a3fe2aa9752fd94fa0b1909be
2019-09-04 11:01:44 -07:00
Daniel Büchele
c18ea6bf52 typescript-eslint update
Summary: upgrading eslint dependencies. especially `typescript-eslint/parser@2.1.1-alpha.4` Which fixes the incompatibility warning with TS 3.6.2

Reviewed By: passy

Differential Revision: D17182109

fbshipit-source-id: 44e8a7324778353cff0af65df3aa38483ff786fc
2019-09-04 10:06:02 -07:00
Pascal Hartig
31307c89d7 Upgrade to eslint 3.6
Summary: Should fix the tsc issue.

Reviewed By: danielbuechele

Differential Revision: D17165314

fbshipit-source-id: 4d52d2d186ac5ec14b5a8a7969893c26cc28fef8
2019-09-04 03:00:53 -07:00
Pascal Hartig
9202e96018 Upgrade to TypeScript 3.6.2
Summary:
It's new. We should use it, probably.

allow-large-files

Reviewed By: danielbuechele

Differential Revision: D17111469

fbshipit-source-id: fd982aedb7d5d53e9cd5d6744890bf6fda812892
2019-09-03 06:29:50 -07:00
Daniel Büchele
5868946818 certificate provider
Summary: _typescript_

Reviewed By: passy

Differential Revision: D17096517

fbshipit-source-id: a6e69e8b9a82fe76bb1de51a3a93182f35f40b3f
2019-08-28 20:34:59 -07:00
dependabot[bot]
fe87fd9346 Bump eslint-utils from 1.4.0 to 1.4.2 (#526)
Summary:
Bumps [eslint-utils](https://github.com/mysticatea/eslint-utils) from 1.4.0 to 1.4.2.
<details>
<summary>Commits</summary>

- [`4e1bc07`](4e1bc077c2) 1.4.2
- [`e4cb014`](e4cb01498d) 🐛 add null test
- [`230a4e2`](230a4e2275) 1.4.1
- [`08158db`](08158db1c9) 🐛 fix getStaticValue security issue
- [`587cca2`](587cca2f82) 🐛 fix getStringIfConstant to handle literals correctly
- [`c119e83`](c119e83295) 🐛 fix getStaticValue to handle bigint correctly
- See full diff in [compare view](https://github.com/mysticatea/eslint-utils/compare/v1.4.0...v1.4.2)
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=eslint-utils&package-manager=npm_and_yarn&previous-version=1.4.0&new-version=1.4.2)](https://help.github.com/articles/configuring-automated-security-fixes)

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 ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major 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)
- `dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/facebook/flipper/network/alerts).

</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/526

Reviewed By: danielbuechele

Differential Revision: D17074295

Pulled By: passy

fbshipit-source-id: f416d2c5b5f300c60694a3e411f16c585fb52afb
2019-08-28 07:37:39 -07:00
Pascal Hartig
78a7789f49 Add types for promise-retry
Summary: Per title.

Reviewed By: danielbuechele

Differential Revision: D17073128

fbshipit-source-id: 0c93a63f0419dcbef209f0ae203906457481529f
2019-08-28 03:01:57 -07:00
Brian Vaughn
85d098e695 React DevTools v4 integration
Summary:
This Diff is being posted for discussion purposes. It will not be ready to land until React DevTools v4 has been published to NPM.

Update React Native to be compatible with the [new version 4 React DevTools extension](https://github.com/bvaughn/react-devtools-experimental).

**Note that this is a breaking change**, as the version 3 and version 4 backends are **not compatible**. Once this update ships (in React Native) users will be required to update their version of the [`react-devtools` NPM package](https://www.npmjs.com/package/react-devtools). The same will be true for IDEs like Nuclide as well as other developer tools like Flipper and [React Native Debugger](https://github.com/jhen0409/react-native-debugger).

Related changes also included in this diff are:
* Pass an explicit whitelist of style props for the React Native style editor (to improve developer experience when adding new styles).
* Update `YellowBox` console patching to coordinate with DevTools own console patching.
  * Also improved formatting slightly by not calling `stringifySafe` for strings (since this adds visible quotation marks).

Regarding the console patching- component stacks will be appended by default when there's no DevTools frontend open. The frontend will provide an option to turn this behavior off though:

{F168852162}

React DevTools will detect if the new version is used with an older version of React Native, and offer inline upgrade instructions:

{F169306863}

**Note that the change to the `RCTEnableTurboModule` will not be included in this Diff**. I've just turned those off temporarily so I can use v8+Chrome for debugging.

Reviewed By: rickhanlonii

Differential Revision: D15973709

fbshipit-source-id: bb9d83fc829af4693e7a10a622acc95a411a48e4
2019-08-26 23:56:55 -07:00
Daniel Büchele
0ec48d4fc9 index
Summary:
This converts the index file to TypeScript which is used as an export for all plugins. Alongside, I had to fix a couple of errors in various files to make sure everything works correctly.

For plugins using flow, we define an interface which uses the type definition for FlipperPlugin and types all UI components as `any`.

Reviewed By: passy

Differential Revision: D16936890

fbshipit-source-id: dacd9a63a82b9f0bbb530b06072186874cba7b6f
2019-08-22 10:02:27 -07:00
Daniel Büchele
4c4169063d table
Summary: _typescript_

Reviewed By: priteshrnandgaonkar

Differential Revision: D16807180

fbshipit-source-id: dcba794351eee69c0574dc224cf7bd2732bea447
2019-08-20 05:45:48 -07:00
Daniel Büchele
62a204bdbe Searchable
Summary: _typescript_

Reviewed By: passy

Differential Revision: D16807182

fbshipit-source-id: 68bc8365bc5b0d8075d0a93d5963c824c0d66769
2019-08-20 05:45:48 -07:00
Daniel Büchele
d0da0d66a5 main folder
Summary: _typescript_

Reviewed By: passy

Differential Revision: D16762117

fbshipit-source-id: b6ee32e0bb3fc686fc69cfccab703e2ef4989571
2019-08-15 03:33:06 -07:00
Daniel Büchele
5f53087c7e client server
Summary: Migrating Server, Client and UninitializedClient to TypeScript

Reviewed By: passy

Differential Revision: D16687855

fbshipit-source-id: 402e4dbcd5d283d3e280d4d8b312662829457886
2019-08-08 11:00:38 -07:00
Daniel Büchele
64cefd0f84 migrate redux store
Summary: Migrating redux stores to TypeScript

Reviewed By: passy

Differential Revision: D16579796

fbshipit-source-id: e3e507f17f1bdd57eb45e30cb0b28aaee6c4521c
2019-08-08 08:07:21 -07:00
Benjamin Elo
3597f56c94 Added @types/react-dom dependency
Summary: We need this as part of the migration for react-dom types.

Reviewed By: jknoxville

Differential Revision: D16668683

fbshipit-source-id: c50be446ada5539961c89da9f3bd3f240db4ec4c
2019-08-08 06:03:24 -07:00
Pascal Hartig
8b2009b2c7 Upgrade deps within range
Summary:
This is the result of a `yarn upgrade`. While this *shouldn't* break
anything, it easily can just as this broke the babel transform
because a previously transitively depended upon library was no
longer included.

It seems like a good idea to stay as close as possible to the upstream of all
the dependencies we have and with the release yesterday we now have one week to
check if the rest works as expected.

allow-large-files

Reviewed By: danielbuechele

Differential Revision: D16579807

fbshipit-source-id: f26d4536abd80f428e94b71e0fa98df612cbd809
2019-08-03 03:33:43 -07:00
Pascal Hartig
81fddbaff4 Bump lodash from 4.17.10 to 4.17.15
Summary: This is just to clear a security warning.

Reviewed By: danielbuechele

Differential Revision: D16542869

fbshipit-source-id: 910c421292efeff2d65769e0c00cea7e4653233d
2019-07-30 02:38:29 -07:00
Pascal Hartig
e84b03f8c3 Upgrade Flow to 104
Summary: No breaking changes affecting us, just one FlowFixMe that's no longer necessary. Yay.

Reviewed By: jknoxville

Differential Revision: D16541069

fbshipit-source-id: 12d1fadf57daf1ec23d043206f99b0eb61b28e5b
2019-07-29 08:04:32 -07:00
Daniel Büchele
2c7371d264 typescript eslint plugin
Summary: This is required to properly run eslint in Atom/VSCode on TypeScript files

Reviewed By: jknoxville

Differential Revision: D16201418

fbshipit-source-id: 31da04c2d313e9147e0f868c1af15bf3115e6d6a
2019-07-29 06:39:11 -07:00
Brian Vaughn
f6a4ad59c0 Update react-devtools-core to 3.6.3 to fix React Inspector
Summary:
It appears that Electron (or the version of Chromium it uses) has a bug that causes a `webview` process to crash if `URL.createObjectURL` is used.

Before releasing `react-devtools-core` 3.5.0, we updated Webpack and the loaders we used. Apparently the version of `style-loader` we now use makes use of the `URL.createObjectURL` API for CSS source maps. This triggers the `webview` crash I mentioned above.

The fix for this is to disable CSS source maps, in which case the loader just uses a `<style>` tag. This diff updates Nuclide to pull in this fixed version.

Reviewed By: bestander

Differential Revision: D16518772

fbshipit-source-id: a779b7d310f869793fa05988d138ce6a46840d8c
2019-07-26 14:47:03 -07:00
John Knox
d0a61d6455 Back out "[flipper] Add 1h tolerance to ssl certs"
Summary:
Original commit changeset: bdbd61bce1bc

That change appears to be causing some issues for open source users: https://github.com/facebook/flipper/issues/498

To mitigate the issue I'm reverting it, the change turns out to be unnecessary anyway.

Reviewed By: passy

Differential Revision: D16486136

fbshipit-source-id: 70decca6e017a6a2903cc484641fb2e736dc5d7c
2019-07-25 04:11:59 -07:00
Pascal Hartig
3760e260d6 Add xdg-basedir
Summary:
Split this up into a separate review because the file is actually
sorta hand-written and just adds noise to the things I was
actually doing.

Reviewed By: jknoxville

Differential Revision: D16441548

fbshipit-source-id: 93366d38908bbec347fd837f5dc90b11329ebf8e
2019-07-24 02:22:36 -07:00
Timur Valiev
af7830d94a immutable data structures in tables 1/n: init
Summary:
Migrating tables' row collection to Immutable.js List:
1. Сopy ManagedTable code, no changes
2. Add deps to Immutable.js

-----
Current implementation of tables forces to copy arrays on new data arrival which causes O(N^2) complexity ->
tables can't handle a lot of new rows in short period of time -> tables freeze and become unresponsive for a few seconds.
Immutable data structures will bring us to O(N) complexity

Reviewed By: jknoxville

Differential Revision: D16416870

fbshipit-source-id: d3e1a9571ea08fa7ccaedc5ad3eca863d22a79a4
2019-07-23 08:00:54 -07:00
Brian Vaughn
7efe94a58f Update react-devtools-core to ^3.6.2
Summary:
Update to the latest React DevTools v3 release, which adds the ability to detect when the (v3) frontend is connected with a v4 backend and shows update instructions to the user.

## Changelog:

[General] [Added] - Updated embedded react-devtools-core package to the latest version in preparation for the upcoming v4 DevTools release.

Reviewed By: rickhanlonii

Differential Revision: D16419553

fbshipit-source-id: a36b0ba5bf6992a490f1234b9a92b8abd4c9b3e6
2019-07-22 19:44:31 -07:00
Benjamin Elo
9d813dce80 Bump react and react-dom to 16.8.6
Summary: This is in order to gain access to hooks. This is useful for testing functional components in isolation without connecting to the redux store. For instance, testing a toggle button toggles on and off.

Reviewed By: passy

Differential Revision: D16376723

fbshipit-source-id: d6be463330dbc5deef1a0513e07fd567adf58287
2019-07-19 04:34:09 -07:00
Pascal Hartig
09c615ce6a Make using require() a warning
Summary: Per title. Let's be more consistent, especially for plugins where authors may not know which one to use.

Reviewed By: jknoxville

Differential Revision: D16340189

fbshipit-source-id: ffe49e509f744279e32fc9fc3f1d59efc1328d80
2019-07-18 12:56:08 -07:00
dependabot[bot]
ad4d281211 Bump lodash from 4.17.10 to 4.17.14 (#492)
Summary:
Bumps [lodash](https://github.com/lodash/lodash) from 4.17.10 to 4.17.14.
<details>
<summary>Commits</summary>

- [`be87d30`](be87d30394) Bump to v4.17.14.
- [`a6fe6b1`](a6fe6b1e17) Rebuild lodash and docs.
- [`e371828`](e37182845f) Bump to v4.17.13.
- [`357e899`](357e899e68) Rebuild lodash and docs.
- [`fd9a062`](fd9a062d57) Bump to v4.17.12.
- [`e77d681`](e77d68121f) Rebuild lodash and docs.
- [`629d186`](629d186579) Update OpenJS references.
- [`2406eac`](2406eac542) Fix minified build.
- [`17a34bc`](17a34bc585) Fix test bootstrap for core build.
- [`53838a3`](53838a38f8) Fix tests in older browsers.
- Additional commits viewable in [compare view](https://github.com/lodash/lodash/compare/4.17.10...4.17.14)
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=lodash&package-manager=npm_and_yarn&previous-version=4.17.10&new-version=4.17.14)](https://help.github.com/articles/configuring-automated-security-fixes)

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 ignore this [patch|minor|major] version` will close this PR and stop Dependabot creating any more for this minor/major 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)
- `dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/facebook/flipper/network/alerts).

</details>
Pull Request resolved: https://github.com/facebook/flipper/pull/492

Reviewed By: jknoxville

Differential Revision: D16323560

Pulled By: passy

fbshipit-source-id: 1c13e752ea9ec3c73be3d086acc6650c06773636
2019-07-18 05:28:45 -07:00
John Knox
9a97b3b45b Add 1h tolerance to ssl certs
Summary:
This changes the start date of all generated certificates to be 1h in the past.

Why? To allow for clock skew, and allow clock manipulation in tests.

To do this, I had to switch from `openssl x509 req`, to `openssl ca` for generating them, because it has the startdate parameter.

This variant is a bit more complicated to use, so I've added an openssl.conf and some extra files.

I also changed the org from Sonar to Flipper because it now needs to match the CSRs coming from the mobile apps, and they use Flipper.

Reviewed By: passy

Differential Revision: D16223722

fbshipit-source-id: bdbd61bce1bc1b54d7b0b3cc6741675aa68d2cf6
2019-07-15 04:33:52 -07:00
Daniel Büchele
ee5091c742 and so it begins...
Summary: This is the basic setup for TypeScript support in Flipper and makes sure our build system can handle `.ts(x)` files. Support for flow is still fully working, so we can land this and continue with the TS migration.

Reviewed By: jknoxville

Differential Revision: D15920150

fbshipit-source-id: d5a7f22fe824d1c1904105bbf738767d735cc0f1
2019-07-10 12:13:16 -07:00
John Knox
5371d5bdce Fix empty headless output bug
Summary:
The SIGINT handler in headless was being squashed by the one that `tmp` adds. This is a bug introduced in its latest release: https://github.com/raszi/node-tmp/issues/192

Downgrading version to fix this for now. There's a PR to fix it, we can upgrade when it's shipped.

Reviewed By: passy

Differential Revision: D16163208

fbshipit-source-id: 058ec1094dd2e5e5474f7ac36be376bae0431f0c
2019-07-10 12:13:15 -07:00
Pascal Hartig
d9c1c35581 Upgrade eslint (#479)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/479

Just getting us to the latest major version. Luckily, no new errors were introduced.

Reviewed By: jknoxville

Differential Revision: D16131273

fbshipit-source-id: f605b315afbe4282e21923d7c970402f834f287c
2019-07-08 11:00:58 -07:00
Pascal Hartig
18140cbcf7 Apply security update suggestions
Summary:
Manually applying these "fixes":

- fixes https://github.com/facebook/flipper/pull/480
- fixes https://github.com/facebook/flipper/pull/481

This is mainly to sush the security warnings we get
even though we don't really have an attack surface where these matter.

Reviewed By: danielbuechele

Differential Revision: D16148208

fbshipit-source-id: 79865a97b442fd2b2621f1ef632e974e1e355e84
2019-07-08 03:28:31 -07:00
Pascal Hartig
63ad32f66b Flow 0.102
Summary: Nothing broke. Yay.

Reviewed By: jknoxville

Differential Revision: D16048261

fbshipit-source-id: 536b7eec147552f702670aceadcd422fdc14364d
2019-06-28 02:57:02 -07:00
Pascal Hartig
1fd5fa23a1 Upgrade deps
Summary:
Upgrading `tmp`, `dashify` and `fs-extras` to their latest versions in an attempt to break my PSC writer's block.
Changelogs don't indicate any breaking changes that should affect us.

Reviewed By: danielbuechele

Differential Revision: D15983944

fbshipit-source-id: 53e87cf3c05e5742db1073e6ccf7f3bd4412638d
2019-06-26 05:40:15 -07:00
Pascal Hartig
157f5a4ea6 Upgrade flow
Summary:
I'm reverting back to not using range qualifiers, too, because
my VSCode got out of sync with the flowconfig and got kinda upset.

Reviewed By: jknoxville

Differential Revision: D15940128

fbshipit-source-id: ce621e72245b66810a29559788515559740c028d
2019-06-24 04:05:07 -07:00
Pascal Hartig
447d88e935 Bump React Devtools
Summary: Just getting us up to 3.6 as we were quite far behind.

Reviewed By: danielbuechele

Differential Revision: D15863375

fbshipit-source-id: 39c444bd8e788cd8cff4b6d19513d072182dc179
2019-06-18 04:29:51 -07:00
John Knox
ef1eb41dba Use mutex library instead of repeatedly chaining promises
Summary:
I noticed that after a long-running flipper session, 11% of the memory was composed of millions of tiny PromiseReaction records (https://github.com/domenic/promises-unwrapping#promisereaction-records).

It seems this method of chaining promises meant that it was forming a linked list of these from the most recent, back to the very first invocation.

Instead of using a home-rolled lock, I'm replacing it with an actual library. Haven't verified the fix, but this seems like a better approach regardless.

Reviewed By: passy

Differential Revision: D15853570

fbshipit-source-id: 1626d9f25cba809794b13ee920bdec2cd1d4b874
2019-06-17 09:11:50 -07:00
Daniel Büchele
79414aa3e1 Bumped electron version
Summary:
We in React VR were need newer Chrome DevTools version to make our plugin work properly. Chromium version with required fixes were shipped in electron 5.0.0.

This diff bumps electron version and explicitly allows node integration (accessing require, process and other node related functions from window object in index.html), because it was disabled by default in 5.0.0.

Reviewed By: jknoxville

Differential Revision: D15693539

fbshipit-source-id: 4f71a07b2afaa489aec46940c924f4ad30ad0413
2019-06-10 10:36:25 -07:00
Pascal Hartig
10211e4fa1 Update ws dependency
Summary: Addresses security alert https://github.com/facebook/flipper/network/alert/static/yarn.lock/ws/open (WS-2017-0421).

Reviewed By: jknoxville

Differential Revision: D15695745

fbshipit-source-id: e5e24ace95ecccc8e3be65d159c285914bff10dd
2019-06-10 03:55:36 -07:00
Pascal Hartig
74ca921861 Flow 100
Summary:
0.100! Just noticed there's a new version and it continues to work.

destruction100

Reviewed By: jknoxville

Differential Revision: D15601865

fbshipit-source-id: 2d9d8a9ffb073468df4b85ed83800bce00ee6cda
2019-06-03 09:05:17 -07:00
Pascal Hartig
a3b7b93167 Upgrade to Flow 0.98.1
Summary: This should buy us some time before Sandcastle kicks us off again. :)

Reviewed By: danielbuechele

Differential Revision: D15449604

fbshipit-source-id: 90d4e8a965d0163de32416b43d9aa24ede104db2
2019-06-03 07:07:24 -07:00
Adrian Zgorzalek
29951a266b Upgrade prettier to 1.17.0
Summary:
Run `js1 upgrade prettier 1.17.0` and `xplat/js/scripts/update-oss-yarn-lockfile.sh` and `hg revert -r .^ xplat/js/rome`

allow-large-files

Reviewed By: zackargyle, pvdz

Differential Revision: D15164375

fbshipit-source-id: 2fe68733dfa93ea64a67d170ba2f80c5af086917
2019-05-07 10:40:16 -07:00
Pascal Hartig
9e4a9607b5 Bump rsocket
Summary:
Before trying to debug the bugs we found, let's first
get it to the latest version.

Reviewed By: jknoxville

Differential Revision: D14913129

fbshipit-source-id: 255ecf02e495fccb21e413dff166aacfd80207e7
2019-04-14 10:40:54 -07:00
Daniel Büchele
efd9b37428 fix tests, upgrade jest
Summary:
Adding a `moduleNameMapper` for jest tests, to map the module `flipper` to `src/index.js`. This fixes the electron tests.

While we're at it, upgrading jest and jest-runner/electron to the latest versions.

Reviewed By: jknoxville

Differential Revision: D14870486

fbshipit-source-id: c4c31066ed5ce8a6d5ed4e7e4f47d3c5d2370553
2019-04-10 10:33:41 -07:00
Pascal Hartig
ad48b0c9a1 Bump jest to 24.7.1
Reviewed By: danielbuechele

Differential Revision: D14802968

fbshipit-source-id: 6e1929df93d27688fd37e7fcaf6c1537d0f7c751
2019-04-09 06:38:07 -07:00
Pascal Hartig
fd6cab2a7b Launcher cycle detection
Summary:
Flipper Electron delegates to the Launcher if it is found right on startup to fetch the most recent/compatible version of Flipper. The Launcher then opens the downloaded app with a `--no-launcher` option to avoid bouncing back and forth between the Electron app and the Launcher.

This depends on the argument processing working unchanged. In the past this has been somewhat difficult to guarantee as this doesn't happen in one place and dev/prod builds have handled arguments different due to Electron weirdness (requiring a `--` passed in, for instance).

If anything here goes wrong, we end up in a very nasty scenario where the launcher and the Electron app rapidly open and close, making it nearly impossible for users to escape that vicious cycle. `pkill -f Flipper` being the best option, if you can focus a terminal for long enough.

In order to avoid this from ever happening in the future, this introduces a quick check for the last startup is written with a timestamp and if this is less than 5s in the past, we will skip delegating to the Launcher altogether, keeping the current instance running.

Reviewed By: jknoxville

Differential Revision: D14598136

fbshipit-source-id: b3335ce7ec7dc3e5e014d459db31df4c8a774fc6
2019-03-25 11:36:19 -07:00
Pascal Hartig
04cebe6e29 Upgrade to yargs 13
Summary: Want to use something that's not in 11.

Reviewed By: jknoxville

Differential Revision: D14524126

fbshipit-source-id: b0f038f32adccf91a394346da9335aa3cfc8e942
2019-03-19 12:28:33 -07:00
Peter van der Zee
f8b86362d7 Bump Prettier to 1.16.4
Summary:
@public
This bumps Prettier to v1.16.4
Only format source files were updated.

Reviewed By: mjesun

Differential Revision: D14454893

fbshipit-source-id: 72f9872fe764a79dbf0d9fab9bebb1456b039f2f
2019-03-14 07:00:52 -07:00
Daniel Büchele
e0127b8438 Electron 4.0.8
Summary:
Upgrading to electron 4.0.8 to fix CVE-2019-5786

Learn more: https://electronjs.org/blog/filereader-fix

Reviewed By: passy

Differential Revision: D14403928

fbshipit-source-id: 47bd198196de789958c93cfecd2e5e01e24ea7ef
2019-03-11 12:13:09 -07:00