Commit Graph

115 Commits

Author SHA1 Message Date
generatedunixname89002005306973
ca271dd7c3 Flipper Release: v0.62.0
Summary: Releasing version 0.62.0

Reviewed By: nikoant

Differential Revision: D24248944

fbshipit-source-id: 05742031294f6a77c78c0bdccbdffe7d82427f05
2020-10-12 06:03:03 -07:00
dependabot[bot]
bb3fd8c992 Bump @types/node from 13.13.0 to 14.11.5 in /desktop (#1575)
Summary:
Bumps [types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 13.13.0 to 14.11.5.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/node&package-manager=npm_and_yarn&previous-version=13.13.0&new-version=14.11.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/configuring-github-dependabot-security-updates)

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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor 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)

</details>

Pull Request resolved: https://github.com/facebook/flipper/pull/1575

Reviewed By: passy

Differential Revision: D24136281

Pulled By: mweststrate

fbshipit-source-id: 4d1011e27870891546430913ed6afc5d436828c4
2020-10-08 09:28:28 -07:00
Michel Weststrate
cd737a0177 Update some prefetch icons
Summary: Enabled all android plugins in Flipper and navigated around. Some additional icons were prefetched.

Reviewed By: passy

Differential Revision: D24138244

fbshipit-source-id: d38ad8b39781bdfea76c849611772de37260d8b3
2020-10-07 02:26:11 -07:00
generatedunixname89002005306973
ad929b23d0 Flipper Release: v0.61.0
Summary: Releasing version 0.61.0

Reviewed By: mweststrate

Differential Revision: D24132584

fbshipit-source-id: 7ae6ad5144561d356effe8eda5eaf472445365e6
2020-10-06 03:43:56 -07:00
Michel Weststrate
4e6ecac43e Load ant theme in classic Flipper as well
Summary: If a new code path uses some Ant design based components in classic flipper, they are unstyled before this diff. By making sure that the ant stylesheet is loaded we can safely 'leak' new UI elements into the old UI. For example when we use toasters, dialogs etc.

Reviewed By: cekkaewnumchai

Differential Revision: D24021751

fbshipit-source-id: 3b42d28f1c75e4df441170660027562264e879dd
2020-10-01 05:35:10 -07:00
generatedunixname89002005306973
8054f6446f Flipper Release: v0.60.0
Summary: Releasing version 0.60.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D24017297

fbshipit-source-id: ff193e95edc7d236c204bddf83aba56a7f009469
2020-09-30 09:28:54 -07:00
generatedunixname89002005306973
c0e8cef466 Flipper Release: v0.59.0
Summary: Releasing version 0.59.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D23985341

fbshipit-source-id: a477f9c05f7a62db3a59758c8c5fe06651ffa6f2
2020-09-29 08:11:39 -07:00
generatedunixname89002005306973
32315c2d97 Flipper Release: v0.58.0
Summary: Releasing version 0.58.0

Reviewed By: cekkaewnumchai

Differential Revision: D23872448

fbshipit-source-id: b74483db292311719a0231f9b2fed78122e9f339
2020-09-23 12:06:38 -07:00
Michel Weststrate
95638af321 Build main layout
Summary: This diff introduces the. main sections and restyled resizable panes according to the Figma design

Reviewed By: cekkaewnumchai

Differential Revision: D23758349

fbshipit-source-id: 7f09574f6b5fb54551141c13667c664e1769f09a
2020-09-21 11:53:21 -07:00
Michel Weststrate
54d36876b6 Upgrade to Electron 10 (#1532)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/1532

Upgrade to Electron 10, in an attempt to fix random hard Electron crashes. Didn't fix it, but given the changelog of Electron with all the bug fixes, seems to be a good idea nonetheless :)

Changelog: Flipper now uses Electron 10

Reviewed By: nikoant

Differential Revision: D23565000

fbshipit-source-id: 3f07b8cf8c438147bde5314698d20046ac9f94cf
2020-09-17 09:44:27 -07:00
Anton Nikolaev
48ac2df956 Remove dependencies not required anymore from 'static' package
Summary:
I've already removed support for plugin format v1 and thus compilation on startup is not needed anymore and many dependencies can be safely removed.

I actually already removed them before that, but it looks like automerge returned them back somehow.

Reviewed By: mweststrate

Differential Revision: D23735001

fbshipit-source-id: 7b1ae655738a35e388f818fb27f80c5a0e8327de
2020-09-17 04:27:06 -07:00
Michel Weststrate
2d2a8bd675 Introduce dark theme
Summary: Adds support for switching dark mode on the fly. Also added the option to apply certain settings without restarting Flipper, as that isn't needed in all cases.

Reviewed By: cekkaewnumchai

Differential Revision: D23625854

fbshipit-source-id: 82175ba10524daf1b48a65feec8c610460df9418
2020-09-17 04:05:09 -07:00
Michel Weststrate
908a8bab1e Setup Ant.design
Summary:
allow-large-files

This makes the Ant.design component library available to Flipper

The CSS setup is unconventional, in the sense that the normal way to do this is to use a webpack loader to dynamically load the right less files, and a babel transform to automatically import the style sheets.

Since we use Metro, which is not very suitable for transforming non-JS(like) files, I figured that the simplest thing is to pre-compile the entire less theme. Which should be fine since we shouldn't be changing the less files very often, and since we don't ship a website, it is probably not too bad to have the full ANT theme for now in there, even though we don't use all components. It is 600 K of css. In the next diff the CSS is loaded conditionally, only if Sandy is enabled.

If the CSS turns out to be too big we can optimise this later to only import CSS for components we use by doing some Metro magic, but it doesn't seem to be trivial (that is, I couldn't get in to work in < 2 hours).

Reviewed By: cekkaewnumchai

Differential Revision: D23625855

fbshipit-source-id: 3ba810b2221dc0c7b719f66310e590c7748cf239
2020-09-17 04:05:08 -07:00
Anton Nikolaev
f03d5d94ed Remove plugin compilation and loading from startup hot path
Summary:
- Removed compilation on startup which is not required anymore after switching to plugin spec v2.
- Removed from Node process ("static" package) all the dependencies which are not required anymore:  e.g. metro, babel etc.
- Plugin loading code from node process moved to browser process and made asyncronous.

Some expected benefits after these changes:
1) Reduced size of Flipper bundle (~4.5MB reduction for lzma package in my tests) as well as startup time. It's hard to say the exact startup time difference as it is very machine-dependent, and on my machine it was already fast ~1500ms (vs 5500ms for p95) and decreased by just 100ms. But I think we should definitely see some improvements on "launch time" analytics graph for p95/p99.
2) Plugin loading is async now and happens when UI is already shown, so perceptive startup time should be also better now.
3) All plugin loading code is now consolidated in "app/dispatcher/plugins.tsx" instead of being splitted between Node and Browser processes as before. So it will be easier to debug plugin loading.
4) Now it is possible to apply updates of plugins by simple refresh of browser window instead of full Electron process restart as before.
5) 60% less code in Node process. This is good because it is harder to debug changes in Node process than in Browser process, especially taking in account differences between dev/release builds. Because of this Node process often ended up broken after changes. Hopefully now it will be more stable.

Changelog: changed the way of plugin loading, and removed obsolete dependencies, which should reduce bundle size and startup time.

Reviewed By: passy

Differential Revision: D23682756

fbshipit-source-id: 8445c877234b41c73853cebe585e2fdb1638b2c9
2020-09-16 06:32:58 -07:00
generatedunixname89002005306973
2fcab458bf Flipper Release: v0.57.0
Summary: Releasing version 0.57.0

Reviewed By: passy

Differential Revision: D23729543

fbshipit-source-id: 0156c0214b3665815ca648e995b78bb7cb2eba42
2020-09-16 04:27:08 -07:00
generatedunixname89002005306973
a47ac961f7 Flipper Release: v0.56.0
Summary: Releasing version 0.56.0

Reviewed By: jknoxville

Differential Revision: D23597790

fbshipit-source-id: e0f141eebe81e46619c71c8174fb78b1aaf2c035
2020-09-09 06:46:54 -07:00
root@sandcastle1585.atn1.facebook.com
66692dd722 Flipper Release: v0.55.0
Summary: Releasing version 0.55.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D23444759

fbshipit-source-id: b569ff8e8dce76028e323f906e7415689ae8b1c5
2020-09-01 03:54:11 -07:00
Timur Valiev
7632d8acf6 Bundles inspector - copy bundle button
Summary:
Adding a copy button next to search box. Copy nt or bloks raw bundle.
Before that we had a contxt menu on left side bar, which didn;t look good when we have only one active bundles (check appden comments in diff bellow)

Reviewed By: mweststrate

Differential Revision: D23345480

fbshipit-source-id: 919e7fec1d1884f5e8980c3b6cc5a94eb3d69be1
2020-08-26 09:18:03 -07:00
root@sandcastle962.atn2.facebook.com
36825675d1 Flipper Release: v0.54.0
Summary: Releasing version 0.54.0

Reviewed By: mweststrate

Differential Revision: D23314243

fbshipit-source-id: ce2561b356f082613f656fedac9c08b440845bb1
2020-08-25 08:25:04 -07:00
Michel Weststrate
bce3d48e71 Better handle no (valid) plugin selection
Summary: Little ux tweak, there are some rare scenarios where you can end up in an empty plugin screen, made a small message.

Reviewed By: jknoxville

Differential Revision: D22846396

fbshipit-source-id: 0ad19f1c252112d78a5587e6633fee2d9542d5e1
2020-08-20 13:32:47 -07:00
Michel Weststrate
dd15cffa64 Introduced first class console to help users debugging issues (#1479)
Summary:
Handling issues typically start with: did you look at the Electron logs? Since Flipper is such an extensible tool, running in varying environments I think the console should be support as first class concept. Many errors are currently not shown to the user. This PR is a first attempt to fix that.

The implementation is based on https://github.com/samdenty/console-feed, which is used by quite some web based IDE like tools (like codesandbox), and offers a lot of goodies out of the box, like collapsing errors, objects, etc.

Edit: also added a counter keeping track of the amount of errors

N.B. no need to immediately review this diff, I'll import it to phabricator as soon as I can :)

## Changelog

changelog: Introduce 'Debug Logs' section to help users to troubleshoot issues or to provide more accurate reports.

Pull Request resolved: https://github.com/facebook/flipper/pull/1479

Test Plan: ![Screenshot from 2020-08-18 15-29-55](https://user-images.githubusercontent.com/1820292/90526011-c9b22d80-e167-11ea-88cf-7b4e07918a96.png)

Reviewed By: jknoxville

Differential Revision: D23198103

Pulled By: passy

fbshipit-source-id: a2505f9fa59e10676a44ffa33312efe83c7be55d
2020-08-20 13:27:48 -07:00
root@sandcastle1328.prn2.facebook.com
f1c3bf8697 Flipper Release: v0.53.0
Summary: Releasing version 0.53.0

Reviewed By: priteshrnandgaonkar

Differential Revision: D23213490

fbshipit-source-id: 66dfa59dbae33d372bad9e284f9773e2ab88487b
2020-08-19 08:22:00 -07:00
Pascal Hartig
6170bfea41 Upgrade fs-extra
Summary: Bringing this to the latest version everywhere.

Reviewed By: priteshrnandgaonkar

Differential Revision: D23051537

fbshipit-source-id: 5cad59ab6fcc57fc72df8ace985a7b5f39de2bda
2020-08-18 03:32:09 -07:00
generatedunixname89002005306973
d15ae99601 Flipper Release: v0.52.1
Summary: Releasing version 0.52.1

Reviewed By: passy

Differential Revision: D22976342

fbshipit-source-id: a4857df03cd1142615754a52f69d0f1578175f18
2020-08-06 10:14:30 -07:00
generatedunixname89002005306973
f01b84be27 Flipper Release: v0.52.0
Summary: Releasing version 0.52.0

Reviewed By: passy

Differential Revision: D22921075

fbshipit-source-id: 4cab9552dcd5ff1a64d20e1e771a4f5173d54860
2020-08-04 06:15:23 -07:00
Michel Weststrate
c802215dd2 Make most text selectable
Summary:
Fix long standing issue where text by default in Flipper is not selectable. Which is super annoying when working with tables, trying to copy error messages, etc etc. Wanted to fix it with ant.design, but got so annoyed by not being able to select an error I needed, that I fixed it now :-P.

This diff makes all text selectable by default, and then bails out for specific elements, like section headers, button captions, the left toolbar (navigation) and top toolbar to preserve the desktop app look & feel.

Fixes a popular papercut issue

Changelog: All text is now selectable by default in Flipper.

Reviewed By: passy

Differential Revision: D22897793

fbshipit-source-id: 7bc50a987e012595956c07d1997959a5480790aa
2020-08-04 03:06:13 -07:00
Liran Kurtz
10eca1e7f1 Added Conectivity tab to Zero Rating plugin
Summary: Cennectivity tab should allow setting Mock Connectivity via Flipper

Reviewed By: zaxy78

Differential Revision: D22816950

fbshipit-source-id: 938d8bcaa50ad4f1abe4e253aeac0cd247252b37
2020-08-02 23:37:11 -07:00
Lucas Santos
1fa518a754 Add initial desktop files
Summary:
This is just an initial setup from Flipper. I just ran `scarf flipper-plugin`, followed the iOS path, removed the native files (as we will use the JS infra directly later on) and submitted. :)

I followed this documentation/tutorial: https://www.internalfb.com/intern/wiki/Flipper/create-new-plugin/

(Followed iOS path, then removed native code as not needed)

Differential Revision: D22754500

fbshipit-source-id: 39130b4ee17c6bc72990eec34c466cfa7a650d17
2020-07-30 12:19:36 -07:00
generatedunixname89002005306973
5dc98bab9d Flipper Release: v0.51.0
Summary: Releasing version 0.51.0

Reviewed By: nikoant

Differential Revision: D22728768

fbshipit-source-id: 49eabdccc7fd335401618f91b890e94fda11b23f
2020-07-24 10:03:20 -07:00
Michel Weststrate
5a56ee65b8 Fix contributing image link
Summary: Better fix for D22662057 (485b4c9827) / https://github.com/facebook/flipper/pull/1396

Reviewed By: jknoxville

Differential Revision: D22663334

fbshipit-source-id: 3a5f967e857ccc819be34903e3fb982e90823040
2020-07-24 03:38:05 -07:00
Anton Nikolaev
a2b2ad9f68 Update electron-devtools-installer
Summary: Update electron-devtools-installer to fix issue blocking installation of dev tools for some users currently: https://github.com/MarshallOfSound/electron-devtools-installer/pull/140

Reviewed By: passy

Differential Revision: D22604024

fbshipit-source-id: f98d8d6e138283c54d5e1cf446b7049bb31b51a0
2020-07-17 15:17:52 -07:00
dependabot[bot]
b539ddb1b6 Bump yargs from 15.3.1 to 15.4.1 in /desktop (#1383)
Summary:
Bumps [yargs](https://github.com/yargs/yargs) from 15.3.1 to 15.4.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/yargs/yargs/releases">yargs's releases</a>.</em></p>
<blockquote>
<h2>yargs v15.4.0</h2>
<h3>Features</h3>
<ul>
<li>adds deprecation option for commands (<a href="027a6365b7">027a636</a>)</li>
<li>support array of examples (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1682">#1682</a>) (<a href="225ab82719">225ab82</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>docs:</strong> describe usage of <code>.check()</code> in more detail (<a href="932cd1177e">932cd11</a>)</li>
<li><strong>i18n:</strong> Japanese translation phrasing (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1619">#1619</a>) (<a href="089417550e">0894175</a>)</li>
<li><strong>strict mode:</strong> report default command unknown arguments (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1626">#1626</a>) (<a href="69f29a9cd4">69f29a9</a>)</li>
<li><strong>usage:</strong> translate 'options' group only when displaying help (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1600">#1600</a>) (<a href="e60b39b9d3">e60b39b</a>)</li>
</ul>
<h3>Reverts</h3>
<ul>
<li>Revert &quot;chore(deps): update dependency eslint to v7 (<a href="https://github-redirect.dependabot.com/yargs/yargs/issues/1656">#1656</a>)&quot; (<a href="https://github-redirect.dependabot.com/yargs/yargs/issues/1673">#1673</a>) (<a href="34949f89ee">34949f8</a>), closes <a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1656">#1656</a> <a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1673">#1673</a></li>
</ul>
<h2>v15.4.0-beta.1 Pre-release</h2>
<p>This is a pre-release for testing purposes of <a href="https://github-redirect.dependabot.com/yargs/yargs/issues/1635">#1635</a>.</p>
<p>Install by running <code>npm install yargs@next</code></p>
<h2>v15.4.0-beta.0 Pre-release</h2>
<p>This is a pre-release for testing purposes of <a href="https://github-redirect.dependabot.com/yargs/yargs/issues/1635">#1635</a>.</p>
<p>Install by running <code>npm install yargs@next</code></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/yargs/yargs/blob/master/CHANGELOG.md">yargs's changelog</a>.</em></p>
<blockquote>
<h1>Changelog</h1>
<p>All notable changes to this project will be documented in this file. See <a href="https://github.com/conventional-changelog/standard-version">standard-version</a> for commit guidelines.</p>
<h2><a href="https://www.github.com/yargs/yargs/compare/v15.3.1...v15.4.0">15.4.0</a> (2020-06-30)</h2>
<h3>Features</h3>
<ul>
<li>adds deprecation option for commands (<a href="027a6365b7">027a636</a>)</li>
<li>support array of examples (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1682">#1682</a>) (<a href="225ab82719">225ab82</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li><strong>docs:</strong> describe usage of <code>.check()</code> in more detail (<a href="932cd1177e">932cd11</a>)</li>
<li><strong>i18n:</strong> Japanese translation phrasing (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1619">#1619</a>) (<a href="089417550e">0894175</a>)</li>
<li><strong>strict mode:</strong> report default command unknown arguments (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1626">#1626</a>) (<a href="69f29a9cd4">69f29a9</a>)</li>
<li><strong>usage:</strong> translate 'options' group only when displaying help (<a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1600">#1600</a>) (<a href="e60b39b9d3">e60b39b</a>)</li>
</ul>
<h3>Reverts</h3>
<ul>
<li>Revert &quot;chore(deps): update dependency eslint to v7 (<a href="https://github-redirect.dependabot.com/yargs/yargs/issues/1656">#1656</a>)&quot; (<a href="https://github-redirect.dependabot.com/yargs/yargs/issues/1673">#1673</a>) (<a href="34949f89ee">34949f8</a>), closes <a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1656">#1656</a> <a href="https://www.github-redirect.dependabot.com/yargs/yargs/issues/1673">#1673</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/yargs/yargs/commits">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=yargs&package-manager=npm_and_yarn&previous-version=15.3.1&new-version=15.4.1)](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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor 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)

</details>

Pull Request resolved: https://github.com/facebook/flipper/pull/1383

Reviewed By: mweststrate

Differential Revision: D22551264

Pulled By: passy

fbshipit-source-id: 02ab24fd4636efba9eb6cd181082fbc5eea56c2d
2020-07-17 08:41:11 -07:00
generatedunixname89002005306973
fff723d5ef Flipper Release: v0.50.0
Summary: Releasing version 0.50.0

Reviewed By: passy

Differential Revision: D22501533

fbshipit-source-id: 0896efd4eb2b2bb5f557d573526db91dc5dcd1de
2020-07-13 04:15:23 -07:00
Timur Valiev
1c7113418d fix plugins array serialization
Summary:
new electron deprecated non-clonable serialization over ipc
https://www.electronjs.org/docs/breaking-changes#behavior-changed-sending-non-js-objects-over-ipc-now-throws-an-exception

Reviewed By: m1sk

Differential Revision: D22455119

fbshipit-source-id: 075cc63e740d9f7986fc5a5ab7af605f8fc60bc8
2020-07-12 12:22:27 -07:00
Michel Weststrate
0038c9c9bf Standardize Chrome to use Layout component
Summary:
Fixes a potential issue where double scrollbars could appear or entire main contents would be scrollable (when a plugin has a fixed height > window height) as maincontents was made scrollable as well in D22411617 (2ce65c1b3c)

Anyway this is nice clean up that makes our chrome layout more understandable (imho). The PluginContents wrapper is still very sad (used by ReactDevTools and Hermes debugger), but can hopefully be addressed with the sandy cleanup in the future

Reviewed By: nikoant

Differential Revision: D22431807

fbshipit-source-id: 113e8441e0c43a8b764f5cf27615ab93627c3197
2020-07-08 10:00:36 -07:00
Michel Weststrate
845c9b67f5 Read flipper-plugin from peer deps
Summary:
To know whether plugins should be mounted with the old setup or new setup (with a Provided / context based api), we need to be able to recognize whether a plugin is written with the old or new setup.

We do this by checking if the flipper-plugin dependency is declared as peer dependency. This we can to check for SDK compatibility as well.

Reviewed By: jknoxville

Differential Revision: D22043085

fbshipit-source-id: 21afabb6e58d86253a464470f4690c51cced87ab
2020-07-01 09:12:35 -07:00
dependabot[bot]
7e7f431c66 Bump electron-devtools-installer from 3.0.0 to 3.1.0 in /desktop (#1317)
Summary:
Bumps [electron-devtools-installer](https://github.com/MarshallOfSound/electron-devtools-installer) from 3.0.0 to 3.1.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/MarshallOfSound/electron-devtools-installer/releases">electron-devtools-installer's releases</a>.</em></p>
<blockquote>
<h2>v3.1.0</h2>
<h1><a href="https://github.com/MarshallOfSound/electron-devtools-installer/compare/v3.0.0...v3.1.0">3.1.0</a> (2020-06-27)</h1>
<h3>Features</h3>
<ul>
<li>add electron 9 support (<a href="https://github-redirect.dependabot.com/MarshallOfSound/electron-devtools-installer/issues/131">https://github.com/facebook/flipper/issues/131</a>) (<a href="ab713a639c">ab713a6</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="f6932ad87d"><code>f6932ad</code></a> chore: fix tests</li>
<li><a href="ab713a639c"><code>ab713a6</code></a> feat: add electron 9 support (<a href="https://github-redirect.dependabot.com/MarshallOfSound/electron-devtools-installer/issues/131">https://github.com/facebook/flipper/issues/131</a>)</li>
<li>See full diff in <a href="https://github.com/MarshallOfSound/electron-devtools-installer/compare/v3.0.0...v3.1.0">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=electron-devtools-installer&package-manager=npm_and_yarn&previous-version=3.0.0&new-version=3.1.0)](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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor 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)

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

Reviewed By: mweststrate

Differential Revision: D22310350

Pulled By: passy

fbshipit-source-id: d043248ebd57976c5cfde267741977846c77c065
2020-07-01 06:11:35 -07:00
Chaiwat Ekkaewnumchai
c8af6da236 Disable Web Security in Command Line
Summary:
We've disabled web security in `BrowserWindow` (https://fburl.com/diffusion/0l0q669m). However, there is a bug in Electron 9 that makes this doesn't work as expected (https://github.com/electron/electron/issues/23664). Earlier, we've resolved this problem by specifying `no-cors` mode in requests. This strikes again in other plugin.

This diff applies a workaround commented inside the issue to allow to make CORS requests.

Reviewed By: nikoant

Differential Revision: D22306977

fbshipit-source-id: ea0f5e3f1c4080037df258a6c5ce1fc89d433c3b
2020-06-30 06:52:07 -07:00
generatedunixname89002005306973
8000090eac Flipper Release: v0.49.0
Summary: Releasing version 0.49.0

Reviewed By: cekkaewnumchai

Differential Revision: D22307632

fbshipit-source-id: 105fc71f07a4827a5d6e54cf3200b22f800a5f1e
2020-06-30 06:33:04 -07:00
Pascal Hartig
011952d73c Flipper Release: v0.48.0
Summary: Releasing version 0.48.0

Reviewed By: mweststrate

Differential Revision: D22207960

fbshipit-source-id: 7f21ff151c4e5750646a6dd3e39690229a2e73a5
2020-06-25 02:32:47 -07:00
Anton Nikolaev
b69996ca50 Remove inlined source maps from debug builds
Summary: Disabled producing inline source maps for debug builds. Source maps are already writte to "map" files, so this does not make sense to also inline them to the js bundle. Passing "sourceMapUrl" parameter to Metro fixed this.

Reviewed By: mweststrate

Differential Revision: D22159501

fbshipit-source-id: f06225cd43f44a7f93afcc32bb0501323b35d0c3
2020-06-22 06:11:29 -07:00
Anton Nikolaev
21ab8dc25c "flipper-pkg" option for creating production bundle
Summary:
Development bundle: NODE_ENV=development, disabled minification, enabled source maps.

Production bundle: NODE_ENV=production, enabled minification, disabled source maps.

Changelog: Added "--production" option for "flipper-pkg bundle" command to produce minified plugin packages without source maps.

Reviewed By: mweststrate

Differential Revision: D22158791

fbshipit-source-id: 0f9ac84ca39ac3fb86f0c0b0a3c1be866445a305
2020-06-22 02:40:59 -07:00
dependabot[bot]
163f3982f7 Bump ws from 7.2.3 to 7.3.0 in /desktop (#1266)
Summary:
Bumps [ws](https://github.com/websockets/ws) from 7.2.3 to 7.3.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/websockets/ws/releases">ws's releases</a>.</em></p>
<blockquote>
<h2>7.3.0</h2>
<h1>Features</h1>
<ul>
<li><code>WebSocket.prototype.addEventListener()</code> now supports the <code>once</code> option (<a href="https://github-redirect.dependabot.com/websockets/ws/issues/1754">#1754</a>).</li>
</ul>
<h2>7.2.5</h2>
<h1>Bug fixes</h1>
<ul>
<li>Fixed compatibility with Node.js master (651d6627).</li>
</ul>
<h2>7.2.4</h2>
<h1>Bug fixes</h1>
<ul>
<li>The <a href="https://nodejs.org/api/http.html#http_http_request_options_callback"><code>http.request()</code></a> <code>auth</code> option is now supported (<a href="https://github-redirect.dependabot.com/websockets/ws/issues/1734">#1734</a>).</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="41f5e4ff11"><code>41f5e4f</code></a> [dist] 7.3.0</li>
<li><a href="2e5c01f5b5"><code>2e5c01f</code></a> [feature] Make <code>addEventListener()</code> support the <code>once</code> option (<a href="https://github-redirect.dependabot.com/websockets/ws/issues/1754">#1754</a>)</li>
<li><a href="97ddfce983"><code>97ddfce</code></a> [ci] Test on node 14</li>
<li><a href="2b49c4821f"><code>2b49c48</code></a> Revert &quot;[ci] Use GitHub Actions (<a href="https://github-redirect.dependabot.com/websockets/ws/issues/1644">#1644</a>)&quot;</li>
<li><a href="82f05372ba"><code>82f0537</code></a> Revert &quot;[ci] Test on node 14&quot;</li>
<li><a href="b167d1cd45"><code>b167d1c</code></a> Revert &quot;[ci] Update Coveralls GitHub Action to version 1.1.1&quot;</li>
<li><a href="78e1c01959"><code>78e1c01</code></a> [ci] Update Coveralls GitHub Action to version 1.1.1</li>
<li><a href="e6949791fa"><code>e694979</code></a> [doc] Fix badge URL</li>
<li><a href="67983cbba4"><code>67983cb</code></a> [dist] 7.2.5</li>
<li><a href="18d773d1f5"><code>18d773d</code></a> [test] Fix failing tests</li>
<li>Additional commits viewable in <a href="https://github.com/websockets/ws/compare/7.2.3...7.3.0">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=ws&package-manager=npm_and_yarn&previous-version=7.2.3&new-version=7.3.0)](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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually

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

Reviewed By: nikoant

Differential Revision: D22118507

Pulled By: passy

fbshipit-source-id: 700f098e5c7b6ddb1dda27ef50974af5b73fe88c
2020-06-22 02:17:59 -07:00
Chaiwat Ekkaewnumchai
9f931db91f Upgrade Electron to Version 9 (#1224)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/1224

Upgrade Electron-related dependencies to version 9.

Changes includes:
- force `fetch` to `no-cors` mode to get rid of CORS policy error while upgrading to version 9
- `keytar` returns promises so changes to reflect that ([reference](https://github.com/atom/node-keytar/blob/master/keytar.d.ts))

Reviewed By: passy

Differential Revision: D21862765

fbshipit-source-id: 25e236ee568934ee9c64dcc90f2fc9648c905b6a
2020-06-19 03:57:00 -07:00
generatedunixname89002005306973
43b9426ff4 Flipper Release: v0.47.0
Summary: Releasing version 0.47.0

Reviewed By: jknoxville

Differential Revision: D22089288

fbshipit-source-id: 0107d1f17cce8c9adc2b9c26d48a6d80797749be
2020-06-17 09:00:07 -07:00
dependabot-preview[bot]
fb0af47c31 Bump uuid from 8.0.0 to 8.1.0 in /desktop (#1234)
Summary:
Bumps [uuid](https://github.com/uuidjs/uuid) from 8.0.0 to 8.1.0.
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md">uuid's changelog</a>.</em></p>
<blockquote>
<h2><a href="https://github.com/uuidjs/uuid/compare/v8.0.0...v8.1.0">8.1.0</a> (2020-05-20)</h2>
<h3>Features</h3>
<ul>
<li>improve v4 performance by reusing random number array (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/435">https://github.com/facebook/flipper/issues/435</a>) (<a href="bf4af0d711">bf4af0d</a>)</li>
<li>optimize V8 performance of bytesToUuid (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/434">https://github.com/facebook/flipper/issues/434</a>) (<a href="e156415448">e156415</a>)</li>
</ul>
<h3>Bug Fixes</h3>
<ul>
<li>export package.json required by react-native and bundlers (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/449">https://github.com/facebook/flipper/issues/449</a>) (<a href="be1c8fe9a3">be1c8fe</a>), closes <a href="https://github-redirect.dependabot.com/uuidjs//github-redirect.dependabot.com/ai/nanoevents/issues/44/issues/issuecomment-602010343">ai/nanoevents#44</a> <a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/444">https://github.com/facebook/flipper/issues/444</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="4124ec75f0"><code>4124ec7</code></a> chore(release): 8.1.0</li>
<li><a href="be1c8fe9a3"><code>be1c8fe</code></a> fix: export package.json required by react-native and bundlers (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/449">https://github.com/facebook/flipper/issues/449</a>)</li>
<li><a href="a21e4d8c53"><code>a21e4d8</code></a> test: improve v3/v5 test (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/450">https://github.com/facebook/flipper/issues/450</a>)</li>
<li><a href="3b4b35ca28"><code>3b4b35c</code></a> chore: warn about Node.js 13.x incompatibility in issue template (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/443">https://github.com/facebook/flipper/issues/443</a>)</li>
<li><a href="aabb7757fe"><code>aabb775</code></a> test: add tests for buffer api (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/438">https://github.com/facebook/flipper/issues/438</a>)</li>
<li><a href="bf4af0d711"><code>bf4af0d</code></a> feat: improve v4 performance by reusing random number array (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/435">https://github.com/facebook/flipper/issues/435</a>)</li>
<li><a href="e156415448"><code>e156415</code></a> feat: optimize V8 performance of bytesToUuid (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/434">https://github.com/facebook/flipper/issues/434</a>)</li>
<li><a href="f6ce4bffc2"><code>f6ce4bf</code></a> refactor: upgrade code to modern JavaScript (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/427">https://github.com/facebook/flipper/issues/427</a>)</li>
<li><a href="2b796869ec"><code>2b79686</code></a> test: add benchmark (<a href="https://github-redirect.dependabot.com/uuidjs/uuid/issues/430">https://github.com/facebook/flipper/issues/430</a>)</li>
<li>See full diff in <a href="https://github.com/uuidjs/uuid/compare/v8.0.0...v8.1.0">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://api.dependabot.com/badges/compatibility_score?dependency-name=uuid&package-manager=npm_and_yarn&previous-version=8.0.0&new-version=8.1.0)](https://dependabot.com/compatibility-score/?dependency-name=uuid&package-manager=npm_and_yarn&previous-version=8.0.0&new-version=8.1.0)

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)

 ---

**Note:** This repo was added to Dependabot recently, so you'll receive a maximum of 5 PRs for your first few update runs. Once an update run creates fewer than 5 PRs we'll remove that limit.

You can always request more updates by clicking `Bump now` in your [Dependabot dashboard](https://app.dependabot.com).

<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 close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor 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 badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme

Additionally, you can set the following in the `.dependabot/config.yml` file in this repo:
- Update frequency
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)

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

Reviewed By: nikoant

Differential Revision: D21940732

Pulled By: passy

fbshipit-source-id: 8ff46c925659156049ac8dd56ec2b7464dd83500
2020-06-10 09:39:56 -07:00
generatedunixname89002005306973
c0eb2648b7 Flipper Release: v0.46.0
Summary: Releasing version 0.46.0

Reviewed By: nikoant

Differential Revision: D21952711

fbshipit-source-id: 8681a244d64c50f2ad50f6c9c5e0ea766fd9ff20
2020-06-09 10:14:19 -07:00
Madeline Cripps
c7f7ac0228 Migrate to FBSystrace Server
Summary:
As title, this restores all of the functionality of the original plugin to but uses json-rpc to interact with fbsystrace in server mode.

Mostly at feature parity with the old plugins, need to update the following in my next diff:
- Better fbsystrace error surfacing
- Pipe all all output to 'Console'
- Support non-select type options

{F239554690}

I think that the authentication issues with Tracery might go away in prod - according to https://fb.workplace.com/groups/flippersupport/permalink/889080114905981/ this seems like a dev issue. But the "Open in Browser" functionality is working fine.

Reviewed By: nslingerland

Differential Revision: D21668522

fbshipit-source-id: fa3b887c7b5dedc08c62a9d579e1112d7f8e0323
2020-06-09 09:21:29 -07:00
Anton Nikolaev
eeded4e32f Install plugins to pending directory first to enable installing new versions of existing plugins
Summary:
Install plugins to pending directory first to enable installing new versions of existing plugins. On startup Flipper moves all the plugins from pending directory into installed plugins directory.

Auto-update, after downloading a plugin package, will also extract it to "pending", so after restart update will automatically be applied.

Reviewed By: mweststrate

Differential Revision: D21929713

fbshipit-source-id: 141b106415e941156ae598cf810ab3bed8c76ced
2020-06-09 04:58:36 -07:00
Anton Nikolaev
db3f04a2d7 Use the single type representing plugins
Summary: Use interface PluginDetails everywhere where plugins are handled and removed PluginDefinition type which was effectively a subset of PluginDetails

Reviewed By: mweststrate

Differential Revision: D21927456

fbshipit-source-id: 434ebeef955b922cc11757e78fbba8dec05f1060
2020-06-08 08:57:07 -07:00