Commit Graph

2693 Commits

Author SHA1 Message Date
Anton Nikolaev
5fd8db294a Add Windows to GitHub Actions CI matrix
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/741

Reviewed By: jknoxville

Differential Revision: D19371114

fbshipit-source-id: 07c6bd71e58011cc3fffa34354546eb773e3fc3d
2020-01-14 03:52:52 -08:00
Timur Valiev
11e134e87c Pick colors in mscreen from pallet
Summary:
{F226170897}
Color picker based on Lite's color table
We can't use standard color picker because of FB Lite's limitation: color set is predefined and sent from the server
'extra' field and 'color-lite' type are added to field description

Reviewed By: jknoxville

Differential Revision: D19330480

fbshipit-source-id: 695d288b4b8409e8b63a9e461a41914379d75a8c
2020-01-13 15:10:59 -08:00
Alexander Putilin
850bc3fe76 Obtain root on the device when initializing the plugin
Summary: This allows `adb b2g-info` command to get more detailed data and not just the amount of free memory

Reviewed By: jknoxville

Differential Revision: D19348298

fbshipit-source-id: ecb705c328c53f2d8c643496f0ed4204a31a745e
2020-01-13 10:48:52 -08:00
John Knox
f1787d5bb2 Add missing icon
Summary: Autogenerated by Michel's feature.

Reviewed By: cekkaewnumchai

Differential Revision: D19373675

fbshipit-source-id: 846c371b2561a2a7db58a90b1455367572497e08
2020-01-13 10:33:56 -08:00
greenkeeper[bot]
5f3eb3c160 chore(package): update uglify-js to version 3.7.5 (#742)
Summary:
## Changelog
Pull Request resolved: https://github.com/facebook/flipper/pull/742

Reviewed By: jknoxville

Differential Revision: D19374015

Pulled By: passy

fbshipit-source-id: 3859006dc5efe0890625b5b5c32cb056a4bdbf24
2020-01-13 09:58:04 -08:00
Michel Weststrate
61821fbec7 Improved sidebar section styling
Summary:
Pritesh marked correctly that it was not entirely clear whether sections are collapsed or not. It seemed the arrows were off, checked the Android style guide, the arrows are correct, but difference is that the bottom border of sections is missing. Adding those clarifies the collapsed state properly I think.

https://pxl.cl/Wpnq

Reviewed By: passy

Differential Revision: D19372987

fbshipit-source-id: 2fb898301f63bd8edb2c3c9851f89edc801a524f
2020-01-13 09:47:24 -08:00
Pascal Hartig
acc2f293bd Remove child-process-es6-promise
Summary:
We're using two libraries to do the same thing.
The other one is better.

Reviewed By: mweststrate

Differential Revision: D18954485

fbshipit-source-id: 33ed2f452badf30cb72c69661527edc54708efba
2020-01-13 08:11:15 -08:00
Chaiwat Ekkaewnumchai
61df5de3ed @typescript-eslint Plugin Dependency Upgrade
Summary:
https://github.com/facebook/flipper/issues/720
https://github.com/facebook/flipper/issues/721

Reviewed By: passy

Differential Revision: D19360891

fbshipit-source-id: 616885213413417a4373597016a0b44bd40fd98d
2020-01-13 07:48:18 -08:00
Chaiwat Ekkaewnumchai
9f22e90491 Eslint Plugin Dependency Upgrade
Summary:
https://github.com/facebook/flipper/issues/683
https://github.com/facebook/flipper/issues/703

Reviewed By: passy

Differential Revision: D19347837

fbshipit-source-id: 23dc80cccd56f8610b38e9d61a19981bb451b1d9
2020-01-13 07:48:18 -08:00
Pascal Hartig
b2c3125a1a Upgrade invariant types
Summary: The new type defs make use of TypeScript 3.7 assertion functions which means they actually have a semantic effect on the rest of the lexical unit, which is quite neat.

Reviewed By: mweststrate

Differential Revision: D19348035

fbshipit-source-id: 3c7a21b5bece091c32f8879fed12d8e46e205ea4
2020-01-13 07:45:12 -08:00
Anton Nikolaev
5ea4c2211e Run github actions CI on pull requests
Reviewed By: passy

Differential Revision: D19371690

fbshipit-source-id: b15909ea9570cae21fcb27774b10e161bf0d8e98
2020-01-13 07:18:55 -08:00
Anton Nikolaev
7da7df44ff Fixed tests
Summary: Fixed few tests which were failing on Windows

Reviewed By: mweststrate

Differential Revision: D19371105

fbshipit-source-id: 118a76783680a3efa0645321d8c88b4e6e754ce0
2020-01-13 06:22:18 -08:00
Alexander Putilin
294a400428 Properly wait 1 second between runs of adb b2g-info
Summary: This slows down the phone less. In the future, it'd be nice to get timestamp on X axis.

Reviewed By: passy

Differential Revision: D19097154

fbshipit-source-id: e145f1b911dec368a6bb7de32790d6280c696eda
2020-01-13 03:42:55 -08:00
Chaiwat Ekkaewnumchai
7af8e2d5a3 Add Icon
Summary: The first four were added when I ran `yarn start` from `master`. The last one was added when I logged out.

Reviewed By: mweststrate

Differential Revision: D19346191

fbshipit-source-id: 6025bf9b0b2667f93858450cb73e81a6b50126f0
2020-01-10 09:40:35 -08:00
Chaiwat Ekkaewnumchai
2f0f694cf5 Fix Unselected Enum Filters Showing up
Summary:
Filter type enum works differently than what I understood; its value is not inside the column.

Move the enum checking to before others because text matching relies on column value.

In addition, change the behavior when there is no column (from ignoring the search to causing all row to disappear due to mismatch ing)

Reviewed By: mweststrate

Differential Revision: D19345758

fbshipit-source-id: d49bc0e29d7a3d36f3aad20213791211c2c3065b
2020-01-10 08:50:01 -08:00
Michel Weststrate
40f9b385bb Fix refresh plugins not having any effect
Summary:
If a plugin was registered beyond the initial start command, this didn't show up in the Flipper UI. The reason for this is that the client map is updated, but since that object is mutable, components won't detect nor reflect the change.

This diff changes to make sure a new plugin map is created if it is changed.

Reviewed By: passy

Differential Revision: D19345464

fbshipit-source-id: 3aa343e1739caf124a015c88680a94973b87f701
2020-01-10 06:32:02 -08:00
Anton Nikolaev
2599dffe48 Healthcheck failures analytics
Summary:
Send per-healthcheck success/failure event to be able to analyze most common problems.
Send event when doctor warning bar shown.
Send event when doctor report is opened by user.
Send event when user set flag "Do not show warning again" in the doctor report.

Reviewed By: passy

Differential Revision: D19312127

fbshipit-source-id: 01b648d1154a3aeadc85980190cb9e5e221b572e
2020-01-10 06:18:32 -08:00
John Knox
451db57fa5 Tell user when xcode simulator mismatches with xcode-select
Summary:
When you run a simulator with a different version of the xcode version that is currently `xcode-select`ed, it won't work.
This causes problems in Flipper, and also RN and other tools.
Show a helpful warning in this case.

Need to dispatch it explicitly because console.errors only get surfaced in dev mode, not production.

Ideally this will be done in the doctor, but there's work to get it to report device/app specific problems first.

Reviewed By: passy

Differential Revision: D19345199

fbshipit-source-id: 45f95c6d33c81da2299d8d84c9179bebb5bfebe8
2020-01-10 05:20:53 -08:00
Pascal Hartig
afee624ad6 Logging for inspector sections
Summary:
This is what I wanted to have the functional component for. This makes it super easy to keep track of the sections we've loaded and then make a side-effecting logging call "on mount" to keep track of the impressions different sidebar extensions get.

This should also save some CPU cycles when calculating what to show in the sidebar. Not sure how meaningful that is, though.

Reviewed By: jknoxville

Differential Revision: D19331682

fbshipit-source-id: 44f83006634f50d8f7437286b8915b63f9c47d40
2020-01-10 05:18:26 -08:00
Pascal Hartig
f78851922e Make InspectorSidebar a functional component
Summary: Refactoring a bit to make a change easier.

Reviewed By: jknoxville

Differential Revision: D19330542

fbshipit-source-id: 5926b110d04d73e109ea287cacd4e120ea8c9986
2020-01-10 05:18:26 -08:00
Pascal Hartig
ee12a4549c Update icon list
Summary: Michel's feature added this while I was working on the inspector.

Reviewed By: jknoxville

Differential Revision: D19331683

fbshipit-source-id: 57d80ae6648dec891c1cd4a9733f46cf64aae573
2020-01-10 04:36:52 -08:00
Jiawen Geng
deeab52d41 update to latest flipper-fresco-plugin version (#739)
Summary:
## Changelog
Pull Request resolved: https://github.com/facebook/flipper/pull/739

Differential Revision: D19344945

Pulled By: passy

fbshipit-source-id: bb3e1fb0a46e7142575e582d20eb56aac2b23a55
2020-01-10 03:52:50 -08:00
Pascal Hartig
38f5debf78 Add a note about flipper-android-no-op (#737)
Summary:
Close https://github.com/facebook/flipper/issues/736
Pull Request resolved: https://github.com/facebook/flipper/pull/737

Test Plan: eyes

Reviewed By: jknoxville

Differential Revision: D19328300

Pulled By: passy

fbshipit-source-id: d3fb5ba4fcbbc7e00fc37aefb55179630bf36916
2020-01-09 08:46:31 -08:00
John Knox
7bdde77b36 Check crash file exists before reading
Summary:
File watcher gives deletion events as well, so this is needed to avoid
attempting to read nonexistent files.

We're getting ENOENT errors from this code, and I suspect this is the reason.

Reviewed By: nikoant

Differential Revision: D19329894

fbshipit-source-id: 46734ea17874e1448d67cc086b363e0abdf07258
2020-01-09 08:23:27 -08:00
Oleksii Dykan
8a136542a3 Remove margin from CKFlexboxComponent style property
Summary: This diff removes the margin property from the CKFlexboxComponetn style, as it was never working properly.

Reviewed By: Andrey-Mishanin

Differential Revision: D19251856

fbshipit-source-id: eb8e448a68d2e0ff3cd6726c40af0267fced96ea
2020-01-08 12:10:00 -08:00
Anton Nikolaev
751c778069 Use unique keys to identify healthchecks
Summary: Added unique keys for each healthcheck and used them to save already seen failures. Later I will also use them for gathering doctor analytics.

Reviewed By: jknoxville

Differential Revision: D19301583

fbshipit-source-id: 0c0aa977ea73ce555e0d9fb8e8ead844624fb9cd
2020-01-08 08:12:06 -08:00
Pascal Hartig
cdb0990ac8 Add headless-tests package to greenkeeper list (#732)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/732

That's the last one we aren't tracking right now.

Reviewed By: nikoant

Differential Revision: D19298848

fbshipit-source-id: 3c0d8984516bc7c5e55e2c390d816f62b39fc845
2020-01-08 06:06:13 -08:00
Pascal Hartig
2cbfa92fda Add kaios plugins to greenkeeper list (#731)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/731

Per title.

Reviewed By: nikoant

Differential Revision: D19298846

fbshipit-source-id: 576232aefcbba9b93ffcb53e7996d18ead8bbe3b
2020-01-08 06:06:12 -08:00
Michel Weststrate
7c80720c5d Fix doctor warning and animation
Summary: Two random tiny changes

Reviewed By: nikoant

Differential Revision: D19309447

fbshipit-source-id: 13a1a66d6b91285a00177ca7a3003fd83b4820f5
2020-01-08 04:45:03 -08:00
Anton Nikolaev
5c8ab0790b Add watchman installation check
Summary: Doctor to show warning if Watchman is not available

Reviewed By: mweststrate

Differential Revision: D19298730

fbshipit-source-id: 68f915c63c5f78aad91f549aabda8d4d972f4e39
2020-01-08 01:59:57 -08:00
Anton Nikolaev
857b9816a0 Launch without plugin hot reload in case plugin change detection failed to start
Summary: Launch without plugin hot reload in case plugin change detection failed to start

Reviewed By: mweststrate

Differential Revision: D19264418

fbshipit-source-id: 089f818b9101d924c504c7d96f71ebca11c9422f
2020-01-07 06:56:17 -08:00
greenkeeper[bot]
205e04fe6c Update flow-bin to the latest version � (#727)
Summary:
## The devDependency [flow-bin](https://github.com/flowtype/flow-bin) was updated from `0.114.0` to `0.115.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:** [mroch](https://www.npmjs.com/~mroch)
**License:** MIT

[Find out more about this release](https://github.com/flowtype/flow-bin).

 ---

<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/727

Reviewed By: mweststrate

Differential Revision: D19288142

Pulled By: passy

fbshipit-source-id: 1285148e9e32660462e196923afbfaf2764bc04c
2020-01-07 06:38:29 -08:00
Michel Weststrate
f8173ea8a4 Minor sidebar improvements
Summary:
~~Two~~ Four small improvements in the sidebar, that give a cleaner look:

1. expanding the plugin section is now a small button instead of text
2. Star / unstar buttons are only shown on hover of a plugin
3. Used all caps for application names, since we are F A C E B O O K now :-P.
4. Fixed styling of loading status of apps, so that it is consistent with a fully loaded app

Reviewed By: nikoant

Differential Revision: D19297880

fbshipit-source-id: 0fee44511965fc22351eff589d253365c1c6f774
2020-01-07 06:33:03 -08:00
Kugan Vivekanandarajah
075b0905d3 Don't show "Show more/less" menu option in the sidebar if no more plugins are available
Summary: When all the plugins are selected, "Show more/less" menu option in the sidebar should not be shown

Reviewed By: passy

Differential Revision: D19164369

fbshipit-source-id: 50bec130e80c14aea2b4565e7659409d879e585c
2020-01-07 04:14:05 -08:00
Chaiwat Ekkaewnumchai
bacb1958fc Back out "Back out Electron 7.1.1/7.1.2 upgrades"
Summary:
Original commit changeset: 05d13aca7145

Attempt to upgrade `electron` as it instacrashed; `electron-builder` version 22.1.0 didn't sign package correctly and caused the instacrash,

Reduced the version to 21.2.0 (latest).

Reviewed By: passy, nikoant

Differential Revision: D18954671

fbshipit-source-id: bc2dbd4fec9afb51d9a535974651b13d195407b4
2020-01-06 09:44:13 -08:00
Luis Felipe Zaguini
2fac06e018 Added missing import on AppDelegate.m (#714)
Summary:
We were missing `#import <FlipperKitReactPlugin/FlipperKitReactPlugin.h>`. I also took the liberty to organize the imports in alphabetical order.
Pull Request resolved: https://github.com/facebook/flipper/pull/714

Reviewed By: mweststrate

Differential Revision: D19288396

Pulled By: passy

fbshipit-source-id: 3cfd0cfa90054284fe179ccc39d0fe9e7208ec9b
2020-01-06 09:41:28 -08:00
Michel Weststrate
8cfe06d530 New multi app supporting sidebar navigation
Summary:
This diff changes the sidebar navigation, fixing a bunch of issues:
It will be possible to quickly switch again between the same plugins in multiple apps
No need to expand-and-check the app dropdown until the app is connected
No need for ugly fallback selections if some app connects faster than another one

Reviewed By: nikoant

Differential Revision: D19272701

fbshipit-source-id: 10f5fab42391014ef4a4a4c91c529d93f8bfb125
2020-01-06 08:51:08 -08:00
Michel Weststrate
8152085111 Duplicate sidebar and put behind GK to prepare for reworked navigation
Summary: Preparation diff to enable two different sidebars in the code base, so that we can fine tune improvements. For further context seen next diff

Reviewed By: nikoant

Differential Revision: D19272608

fbshipit-source-id: 272c691389d998ed8cf97bc75aad101d9dfd7def
2020-01-06 08:51:07 -08:00
Anton Nikolaev
901817040c Properly resolve path to icons.json in release build
Summary: Currently release build fails to launch, because path to icons.json is resolved incorrectly. This change should fix resolving so it will work for both dev and release build.

Reviewed By: jknoxville, mweststrate

Differential Revision: D19274410

fbshipit-source-id: 9c0a92e1f6808997d08366c8021cd57565c5ae2c
2020-01-03 10:57:13 -08:00
Ankur Sadhoo
e7173e060c Make sure right sidebar shows for Watch plugin in client-less mode
Differential Revision: D19261373

fbshipit-source-id: 194480622074bc7672eae67105e0ac8efeafe623
2020-01-02 12:43:07 -08:00
Michel Weststrate
8a84bcbe29 Make sure non-existing icons do break the build
Summary:
Builds didn't fail when using non-existing icons, and the error message was not very clear

Also added verification that, before automatically adding an icon to the prefetcher, that icon does exists

Reviewed By: jknoxville

Differential Revision: D19264063

fbshipit-source-id: 4320d5b960e85e3f15bbca13d69f3063b983a511
2020-01-02 10:45:59 -08:00
Anton Nikolaev
b7c8d5b996 Fix resolving watchman package for release build
Summary: Fixed resolving watchman package for release build

Reviewed By: jknoxville

Differential Revision: D19263946

fbshipit-source-id: 4e3f15c979f4a503599e01cb04af5da4155facd4
2020-01-02 10:35:47 -08:00
Anton Nikolaev
2bee021966 Do not show Doctor warning on startup for already seen problems
Summary: Doctor sometimes can show false-positives and in such case there is no way to suppress showing warning message on each startup. To reduce annoyance I've added an option to save the problems already seen by user and show the Doctor warning only for new problems.

Reviewed By: mweststrate

Differential Revision: D19187095

fbshipit-source-id: 14c1fcc9674f47fbe0b5b0f2d5d1bceb47f7b45d
2020-01-02 08:55:15 -08:00
Michel Weststrate
74daa3fb1a Collect plugin background stats
Summary: Collect run time stats on how much CPU plugins use

Reviewed By: nikoant

Differential Revision: D19161359

fbshipit-source-id: 96b020b1f23b5e8d2e602f0ff6c3aa80ea149792
2020-01-02 08:22:32 -08:00
Michel Weststrate
85992d354d Automatically add icons to prefetch in development mode
Summary:
When browing through flipper one gets random warnings about uncached icons. Since we can't predict which plugins use which icons, it is hard to keep the list in `icons.js` updated.

This diff extracts the table to a separate json file (static/icons.json) and if an icon is missing in development, it will automatically add it to the list, so that the icons will be part of the prefetch of the next build / restart

Reviewed By: jknoxville

Differential Revision: D19257253

fbshipit-source-id: c9c791d50fa5d66738d93873289fbde575f32d66
2020-01-02 08:22:31 -08:00
Michel Weststrate
59c9a10a73 Fix random warnings in several plugins
Summary: Click through plugins and fix warnings until tired.

Reviewed By: jknoxville

Differential Revision: D19253740

fbshipit-source-id: 87b6d6b103ee51c7b5579a128a15c3bb9d71b432
2020-01-02 08:22:31 -08:00
Michel Weststrate
5d25b77622 Bug: cannot export data / submit bug without selected device / client
Summary: Without selected device or client, it is currently impossible to submit a bug report. This diff fixes that.

Reviewed By: jknoxville

Differential Revision: D19251701

fbshipit-source-id: fd0dc0c779fb27d93ed02a404da76a7e6b251b94
2020-01-02 07:14:15 -08:00
Michel Weststrate
9acf23596e Show a message if a background plugin is not starred
Summary:
Since background plugins don't receive data anymore when not starred, we should hint the user about this.

For this diff, I reused the existing statusbar. Although this solution is quite ugly, I think it is better than introducing yet another notification / warning mechanism. Probably we should revisit the layout of this status bar in the future.

Reviewed By: jknoxville

Differential Revision: D19251588

fbshipit-source-id: 1dfd07be383d4ba318f344ebff4b08ed36194c58
2020-01-02 07:14:15 -08:00
Michel Weststrate
04fcaddded Only store messages for plugins that are starred
Summary:
From several reviews / early feedbacks it was suggested several times to use the star mechanism to distinguish which plugins are allowed to send messages. This diff implements that:

- If a plugin is not selected, and not starred, it will drop the messages it received in the background
- This logic is still behind the same GK
- I think this change warrants upping the message queue limits significantly
- A future optimization would be to disable sending messages from the device side of things to reduce bridge usage, but that change is probably a lot more complicated with less impact
- In the next diff I'll make clear from UI perspective that unstarred plugins don't queue messages

In the attach video one can see how graphQL plugin keeps storing messages if it is starred, but if it isn't starred and not selected either, it will skip messages

{F225692819}

Reviewed By: jknoxville

Differential Revision: D19250928

fbshipit-source-id: 7e6af0eb6830dc79951cfd206e05b44061f1b14a
2020-01-02 07:14:14 -08:00
Michel Weststrate
1caf5d5d3a Fix regression in background state
Summary: `flipperPrintPluginBackgroundStats()` tended to report the class name rather than the given plugin id

Reviewed By: jknoxville

Differential Revision: D19250706

fbshipit-source-id: 6035892bacf6a592d8c510320d5e003fac580ec7
2020-01-02 07:14:14 -08:00