Commit Graph

62 Commits

Author SHA1 Message Date
Zoltán Gilián
9a9eda3da5 Expose internGraphAPIRequest
Summary: Needed to access the task attachment interngraph endpoint added in D17146262.

Reviewed By: danielbuechele

Differential Revision: D17146272

fbshipit-source-id: 6375a953d4b5389e05accb77f0242388c3e0254c
2019-09-02 09:27:03 -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
Chaiwat Ekkaewnumchai
ea7578aa16 Expand/Collapse Sidebar V0
Summary:
- Show all or show 5 LRU plugins
- Update when close/reopen app, collapse sidebar, or expand sidebar

Reviewed By: danielbuechele

Differential Revision: D16917950

fbshipit-source-id: 1e7edc86945162ea14e1cdaa89aa47d3defa4c7d
2019-08-21 08:50:34 -07:00
Chaiwat Ekkaewnumchai
afd7634fd6 Add Button to Expand or Collapse Left Panel
Summary:
- Add `show more` and `show less` button to expand and collapse
- The element to show depends on its usage rank from Flipper dashboard (manually copied)

Reviewed By: danielbuechele

Differential Revision: D16917952

fbshipit-source-id: fc37d5c640be33794694e302341fa08849b8f97f
2019-08-21 08:50:33 -07:00
Chaiwat Ekkaewnumchai
b9e0aae1e4 Add Warning for FB Employee
Summary: Add warning dialog when FB employee uses OSS Flipper

Reviewed By: passy, danielbuechele

Differential Revision: D16783408

fbshipit-source-id: 3e7e533c5b96d4204fc38570a4e65c23ac0aaa25
2019-08-14 06:14:16 -07:00
Pascal Hartig
2a34125413 Migrate metrics
Summary:
Had to mess with the tagged union we had, to distinguish based on
a string rather a bool which is a bit rubbish.

Reviewed By: danielbuechele

Differential Revision: D16764797

fbshipit-source-id: c33536f17b0705ca40abef8448802f9961c4c114
2019-08-14 04:43:50 -07:00
Pascal Hartig
2e1dc7d40d Migrate ScribeLogger
Summary: _typescript_

Reviewed By: danielbuechele

Differential Revision: D16691033

fbshipit-source-id: 19da8bea4032e33a9bd219476aa12e2154dc3103
2019-08-09 10:47:13 -07:00
Pascal Hartig
b42abcbb59 Migrate logger
Summary:
Removed defunct log filtering functionality, but we probably want to rebuild that.
Funny that tsc caught this as non functioning but Flow happily accepted it.

Reviewed By: danielbuechele

Differential Revision: D16690959

fbshipit-source-id: b079dd6faba83ca0c443d00cbb69c8ff95c4fa69
2019-08-09 10:47:12 -07:00
Pascal Hartig
e56d3a4c6d Migrate user
Summary: Migrate user and introduce a global declarations file.

Reviewed By: danielbuechele

Differential Revision: D16690480

fbshipit-source-id: be4e5218715dcae4b403b24cdbc2f3e89728dd59
2019-08-09 10:47:12 -07:00
Pascal Hartig
c5be7c4a93 Migrate Prefetcher
Summary: _typescript_

Reviewed By: danielbuechele

Differential Revision: D16686489

fbshipit-source-id: 35a2f871868e5c06e45a0820d9b5870f852ac1e3
2019-08-09 04:02:45 -07:00
Pascal Hartig
c5563be56b Migrate BugReporter
Summary: _typescript_

Reviewed By: danielbuechele

Differential Revision: D16666761

fbshipit-source-id: 7dc1c21c5c9bdf56908af4e251de16dad14cae38
2019-08-09 04:02:45 -07:00
Pascal Hartig
3c2d9973e5 Migrate iOSContainerUtility
Summary: TSC actually found a type error here in `safeExec` which is nice.

Reviewed By: danielbuechele

Differential Revision: D16666740

fbshipit-source-id: 28a1ad12190d2351a48323f23c3a69947503625d
2019-08-09 04:02:45 -07:00
Pascal Hartig
5f3e84a96e Migrate LayoutInspectorSidebarExtensions
Summary: _typescript_

Reviewed By: danielbuechele

Differential Revision: D16666703

fbshipit-source-id: cf16f9cdc97a739f0de52f31319e8061eea03c6f
2019-08-09 03:25:06 -07:00
Pascal Hartig
798d6d2ed4 Migrate constants
Summary: We can't `*`-export as the symbols are invisible but being explicit about this seems like a good improvement anyway.

Reviewed By: danielbuechele

Differential Revision: D16666637

fbshipit-source-id: 8f9a14ed41f4d8ad93b4bab8dd54f3b6c9e24824
2019-08-09 03:25:06 -07:00
Pascal Hartig
e602e1ccae Migrate config
Summary:
Very mechanical migration. No syntactic changes, only moves and
file name changes.

Reviewed By: danielbuechele

Differential Revision: D16665891

fbshipit-source-id: afb1f2418f55bf6c5370b8a2b1d2c35ac5986dc3
2019-08-09 03:25:05 -07:00
Pascal Hartig
36a1c0046c Migrate createPaste
Summary: _typescript_

Reviewed By: jknoxville

Differential Revision: D16649018

fbshipit-source-id: c30d4ec390946e4b6de49ffeccc452d0a55c1e7a
2019-08-09 03:25:05 -07:00
Pascal Hartig
a314d1d930 Migrate ErrorReporter
Summary: _typescript_

Reviewed By: jknoxville

Differential Revision: D16648552

fbshipit-source-id: 969c549594d76dca6552338a25f6ab7d8047d14d
2019-08-09 02:42:37 -07:00
Pascal Hartig
fc0966a133 Migrate GK
Summary: _typescript_

Reviewed By: jknoxville

Differential Revision: D16647882

fbshipit-source-id: a5a7053379cd9468e1da9ab0ac2098be3443dda7
2019-08-08 14:32:20 -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
Pascal Hartig
6a43b0cc88 Revert D16648356: Migration of Basedevice from js to tsx
Differential Revision:
D16648356

Original commit changeset: 12954532acf9

fbshipit-source-id: 76754f427e7ccac0f0b0030c3a0af02d036c1a8b
2019-08-06 08:50:32 -07:00
Pritesh Nandgaonkar
604e6d761f Migration of Basedevice from js to tsx
Summary: Converted BaseDevice from js to tsx

Reviewed By: passy

Differential Revision: D16648356

fbshipit-source-id: 12954532acf91930ab8c5f995bb94f6f9fe44015
2019-08-06 05:12:20 -07:00
John Knox
f7875002dd Add user ratings
Summary:
Adds a star rating to flipper internal.

Based on the nuclide behaviour:
We get an event emitted when a user changes their rating.
And we also get the rating with every ping event, which is fired every minute, if flipper is the primary window.

The only thing I don't like that much is that this doesn't actually say anywhere what the stars are for.

Reviewed By: passy

Differential Revision: D16420281

fbshipit-source-id: 69a52f64058955d7cd068215478e95c554cb9ed4
2019-07-24 00:14:46 -07:00
Pascal Hartig
a6fb1a9d86 Add prefetcher mercurial setup code
Summary:
Logic for installing an uninstalling a custom `post-update` mercurial hook, invoking the script introduced in the previous diff.

This is to gather some early data before rolling this integration out more broadly, i.e. through the mercurial distribution.

Reviewed By: jknoxville

Differential Revision: D16283081

fbshipit-source-id: e8610509e5f105a9b717a881aa327bb04f9a2f4f
2019-07-18 02:48:28 -07:00
Pascal Hartig
662db20948 Disallow var
Summary: We're ES6 and `var`s scoping rules are weird. Let's block this.

Reviewed By: jknoxville

Differential Revision: D16131290

fbshipit-source-id: ba67d16bb8a185a4bb59a657a97b00230dbacafe
2019-07-10 03:28:25 -07:00
John Knox
841d5d57a2 Enable desktop crash reporting
Summary: Sends native crash reports for production internal builds.

Reviewed By: passy

Differential Revision: D15391757

fbshipit-source-id: a4149c2a264eb5ef38fb6f1cc43d52361ac83748
2019-05-17 06:45:05 -07:00
Pritesh Nandgaonkar
153c75cfa9 Remove crashreporter GK
Summary: Remove the GK

Reviewed By: jknoxville

Differential Revision: D14596572

fbshipit-source-id: 09ef9359ce37c674ac7e1741b7d550716fca5156
2019-03-27 08:45:42 -07:00
Daniel Büchele
880327b61d sign in
Reviewed By: passy

Differential Revision: D14598657

fbshipit-source-id: 3ee6ee5ec7323616ac200243747e0b44b1ce65d4
2019-03-27 04:21:23 -07:00
Daniel Büchele
1c904b219c copy Nuclide token
Summary:
* We are now using `flipper.oAuthToken` to store our token in the keychain
* If there is no Flipper token, we copy the Nuclide token (once)
* If the user signs out of Flipper, only the flipper token is removed from the keychain, not the nuclide token
* the Nuclide token is not copied anymore

Reviewed By: passy

Differential Revision: D14598658

fbshipit-source-id: ab0646b35575bd4b2e433d62bb98635f6d127fd2
2019-03-27 04:21:22 -07:00
Pritesh Nandgaonkar
5964f1621e Open source Import/Export feature to open source
Summary: Exposes Import/Export feature to open source. This diff also makes sure that, "Shareable Link" option doesn't show up, as it is specific to fb's infrastructure.

Reviewed By: passy

Differential Revision: D14526634

fbshipit-source-id: 3aeb97c91bc00a9c5f01c74c34a5690ec3b5739d
2019-03-20 06:59:28 -07:00
Daniel Büchele
aad970defd UI for sharable URLs
Summary:
Uploading the Flipper data could take some while. With the current implementation the user didn't know what was happening. This is why this diff immediately shows a sheet with a spinner, until the upload is finished.

The URL is still copied to the clipboard and a notifications is displayed. Additionally the user can copy the URL from the sheet.

Reviewed By: priteshrnandgaonkar

Differential Revision: D14441759

fbshipit-source-id: c853526a7da76e2dea5e1aaf6b6eff21e4268789
2019-03-14 04:22:15 -07:00
Daniel Büchele
b304126af3 Share Flipper file
Reviewed By: jknoxville

Differential Revision: D14340965

fbshipit-source-id: 9145ae8d409e9d4f8becfd1a19a8a9b3739af3fb
2019-03-06 05:54:21 -08:00
Daniel Büchele
99ea11b8e6 createPaste
Reviewed By: jknoxville

Differential Revision: D14224400

fbshipit-source-id: 9a9a8578de00d276d65a7928964eae619f5bc41f
2019-02-28 07:28:25 -08:00
Daniel Büchele
ff0de8caaa user reducer
Reviewed By: jknoxville

Differential Revision: D14224403

fbshipit-source-id: 8341dd8af03148c4b1f648641bda522804acb22d
2019-02-28 07:28:25 -08:00
John Knox
e33e2d4d06 Unify Logger interface usage
Summary:
Unified all imports of Logger. Some were called LogManager before.
Now the fb-stub and the fb variants use the same interface.
Constructor of Logger is no longer exposed so it can't be initialized twice, unless in the case you're explicitly using the fb variant, which has extra functionality.

Reviewed By: danielbuechele

Differential Revision: D14083929

fbshipit-source-id: 9b61a06e1264d5f142b5a9188465c99deaf18193
2019-02-14 09:23:41 -08:00
John Knox
8ff4c4f56d Remove duplicate Logger in headless/index.js
Summary:
init() was being misused. This returns a Logger instance, so there's no need to create one as well.
This was a problem because different arguments were being passed to each (isHeadless in this case).

Reviewed By: passy

Differential Revision: D14083320

fbshipit-source-id: b0001a2b3cdd914609d54382575e3b0fa4b5f077
2019-02-14 09:23:41 -08:00
Pritesh Nandgaonkar
b9db2411cf Add archived device type
Summary:
This diff adds archived device type. This diff solves the following two problems.

- The Plugin which are device plugins and are device plugins will not show up. Look at the video, where the CPU plugin was showed, even though the imported file didn't have any information.
- An icon of 📦 will make much clearer which one is archived device and which isn't

Reviewed By: passy

Differential Revision: D14066399

fbshipit-source-id: 59b740d7fe9532e665d6b1ec6ad0124fb63ac45d
2019-02-14 06:34:02 -08:00
John Knox
c912dcaf48 Add isHeadless attribute to scribe messages
Summary:
So we can distinguish between humans and the machines.

We can redirect the traffic to different tables based on this attribute if necessary.

Reviewed By: danielbuechele

Differential Revision: D14025004

fbshipit-source-id: c3a24b5f8a30f24445eaee67843b78ddabfc9d51
2019-02-12 08:29:20 -08:00
Pascal Hartig
09a93cd9e6 Upgrading flow and fixing lint errors
Summary:
Upgrading to flow 0.91, fixing a bunch of `$FloxFixMe`s that were introduced by upgrading to 0.86.
Also fixing some linting issues.

Reviewed By: priteshrnandgaonkar

Differential Revision: D13900794

fbshipit-source-id: 5d0a1b62371f3b5d34b909bae0876583acb6f977
2019-02-01 06:51:01 -08:00
Pritesh Nandgaonkar
0e8b1a7d1a Expose crash reporter plugin to open source
Summary: Exposes crash reporter plugin and export data functionality to open source

Reviewed By: passy

Differential Revision: D13879149

fbshipit-source-id: ee10097cc9ff1af11e0350f50c855d7766076cd1
2019-01-31 04:03:48 -08:00
John Knox
77811c66d2 Add reportPluginFailures in client.call method
Summary:
Adds an optional "plugin" field to the tracked metrics. The idea is to be able to see failures in plugins.

Added it around all desktop -> sdk "call"s, so it won't require any effort from developers but we'll get lots of immediate data. E.g. How often layout -> getNodes fails. I think we can go modify the existing pipeline to take both platform and plugin data so we can get session roll-ups too.

Corresponding change to the puma app: D13882629, adds a plugin field to all tables so we can filter by plugin, or null for platform failures.

I'm thinking it will be worthwhile to expose some method to plugin developers, that lets them explicitly track failures. It would be better if it encapsulated their plugin id etc, so they just need to say what failed. But that can be done any time, I don't have any particular use cases in mind yet.

Reviewed By: passy

Differential Revision: D13878379

fbshipit-source-id: 2e2ef6b98f763e6edcfe937741d6988dae4b92d1
2019-01-31 03:23:41 -08:00
Pritesh Nandgaonkar
f12226ac00 Just trigger for fatal logs and error logs with tag AndroidRuntime
Summary: This diff updates the check which triggers crash notifications. We got a user feedback that crash reporter used to report non fatal crash too and it used to annoy users with bombardment of crash notifications.

Reviewed By: passy

Differential Revision: D13878272

fbshipit-source-id: 75446f08f806e8f28a6f68953c0a001fd18a7dc0
2019-01-30 06:50:16 -08:00
Pritesh Nandgaonkar
978b14c3d3 Append and show errors which are caused due to jni/native crashes
Summary:
Before this diff, the crash reporteer plugin for android just used to show messages which were error and had tag as "AndroidRuntime". This diff fixes this and instead accepts multiple different tags which might be related to crashes.

The issue with triggering the notification for all kind of messages would be that, the user might get many. For the jni errors, the stack trace of it are shown as multiple entry instead of one entry in logcat. So to combine all the stack trace into one callstack message, this diff adds a timer of 10ms and combines the messages which occur in that timespan and then trigger the notification.

Reviewed By: danielbuechele

Differential Revision: D13772505

fbshipit-source-id: fec6f5a7f9f46948c9f9dc5b2a7b92690913c8aa
2019-01-25 09:52:43 -08:00
John Knox
e36b5d1ceb Fix flipper_errors_raw pipeline
Summary:
It turns out puma was erroring on the GK field inside the log json, because of improperly escaped " in the fields.

To simplify it I'm changing it to use simple comma separated key:value pairs, since they are always plain string and boolean values.
"gatekeepers":"TEST_PASSING_GK:false,TEST_FAILING_GK:false,devtools_sonar_team:false"

Reviewed By: passy

Differential Revision: D13782283

fbshipit-source-id: 3f331dc9189b1a57f69a2af0d4393baf45e1fa55
2019-01-23 06:55:30 -08:00
John Knox
944a197cf6 Add GKs to logs and error reports
Summary: To allow comparisons between metrics/errors in and out of GKs.

Reviewed By: passy

Differential Revision: D13714754

fbshipit-source-id: 311a1cd7bd5a7b2332e20a32d37d0fb323d00569
2019-01-17 11:22:01 -08:00
John Knox
21dfe41fb4 Add sessionId to error messages
Summary: Will allow us to look into bad sessions if necessary.

Reviewed By: passy

Differential Revision: D13695386

fbshipit-source-id: 2cfc8ec28ef4cb387ef7a5a58b02aa77a367ae81
2019-01-17 03:43:16 -08:00
John Knox
3bcb079f87 Define global logger instance to be used for all logging
Summary:
The advantage of this is that anyone can now log without needing to carry around a Logger object.
Primary reason is for making metrics less intrusive in the codebase.

Reviewed By: passy

Differential Revision: D13671368

fbshipit-source-id: 162ab1351a124683aef13983fc3bcec01385cd1a
2019-01-15 09:46:11 -08:00
John Knox
4a5dae8f4f Try out success rate metric on processing CSRs
Summary:
This is semi-explorative to see how far we can get with this approach, but I think it'l be useful. If it is, we can factor the code into a nicer utility, that perhaps wraps promises or even just has succeeded/failed methods.

Using 1 and 0 instead of true and false so we can do numerical aggregates on it, like average, which will give the success rate.

This will allow queries such as:
* What percentage of attempts fail? - Not very useful because they get retried if they fail.
* What percentage of sessions that attempt, encounter a failure? - More useful, but still not perfect because they could retry and succeed.
* What percentage of sessions attempt and don't ever succeed? - Better but still not perfect because one device might succeed and another fail, but this will be rare.

Reviewed By: passy

Differential Revision: D13625987

fbshipit-source-id: 2b9f45cc888247d068cc52281443e9ece7985da8
2019-01-11 03:57:47 -08:00
John Knox
005383f94b Add sessionId to redux store and Logger output
Summary:
I've left InteractionTracker without a store, so it doesn't know the sessionId. It really should have one, but that will have to be a different change.
We don't actually use the InteractionTracker at the moment so it's not a major deal for now.

The idea is to be able to get data like what percentage of sessions encounter an error, and how many errors sessions usually have etc.

Reviewed By: passy

Differential Revision: D13624031

fbshipit-source-id: 664e7ac5023166c2f72df3058c219901be7ff77a
2019-01-11 03:57:47 -08:00
John Knox
606d689cae Don't do iOS-specific setup when not supported
Summary:
Now flipper will include iOS devices in the dropdown, but you'll also get a message saying they aren't yet supported.
Also doesn't start up the PortForwardingMacApp instances in this case, because it's pointless.

Reviewed By: priteshrnandgaonkar

Differential Revision: D13319990

fbshipit-source-id: 75d72c6ed2478c7b999c5f43b764f097141b33de
2018-12-04 07:10:51 -08:00
John Knox
40f50d48e3 Add physical iOS support to internal build
Summary: Adds support for physical iOS devices, when the necessary dependencies are present. Unfortunately these aren't open sourced yet so the open source build won't get this feature yet.

Reviewed By: priteshrnandgaonkar

Differential Revision: D13001473

fbshipit-source-id: d8c2bcd53b7972bec676717c8af0112800b918d0
2018-12-03 11:34:53 -08:00