Commit Graph

1276 Commits

Author SHA1 Message Date
Pascal Hartig
ef46dd7f91 Add missing @Nullable annotations
Summary: Native can return nullptr, so this should be annotated.

Reviewed By: jknoxville

Differential Revision: D15146700

fbshipit-source-id: 332e3a074d2e39cfff677f3d84e94f910563f992
2019-04-30 13:12:59 -07:00
John Knox
b3ec8b052b Add Setup and Extending top level navs
Summary: Distinguish between integrating flipper, and developing plugins.

Reviewed By: passy

Differential Revision: D15148448

fbshipit-source-id: 7c772fa1cea7d5ed789a984039afc37bc0b8a927
2019-04-30 11:06:45 -07:00
John Knox
4c282cea1f Add architecture page and Internals section
Summary: Breifly documents the client-desktop relationship

Reviewed By: passy

Differential Revision: D15147712

fbshipit-source-id: 8292c580538c1cda03450a460a0e08f4a4b8cec2
2019-04-30 11:06:44 -07:00
Daniel Büchele
1bab9ced96 docs: landing page ruler
Summary: Adding a small ruler between each section on the landing page.

Reviewed By: jknoxville

Differential Revision: D15148067

fbshipit-source-id: 604f443c06eef16570dcdfbb21e121962b325127
2019-04-30 10:09:11 -07:00
Pritesh Nandgaonkar
e7200e36a3 Learn more points to getting started
Summary:
`/docs/understand.html` doesn't exist anymore. Also "learn more" in the landing page pointed to `/docs/understand.html` which was broken. Pointed "Learn More" to getting started doc page.

`/docs/understand.html` explained about rsocket which will be little overwhelming for the user to be navigated to right from the landing page.

Also removed the links pointing to  `/docs/understand.html`

Reviewed By: passy

Differential Revision: D15147954

fbshipit-source-id: cbd67d7f234c438507f24db946cd463e8827cb78
2019-04-30 09:46:32 -07:00
Daniel Büchele
79622ac19d docs: cross linking from features to setup
Summary: linking from feature page to setup instructions.

Reviewed By: jknoxville

Differential Revision: D15148032

fbshipit-source-id: 66dd2ca07a04d3ac1fb53ad95e91e6d8beb69706
2019-04-30 09:10:12 -07:00
Pritesh Nandgaonkar
478ea1c157 Update osx image (#427)
Summary:
Updated the `osx_image` in travis to latest version
Pull Request resolved: https://github.com/facebook/flipper/pull/427

Reviewed By: jknoxville

Differential Revision: D15147632

Pulled By: priteshrnandgaonkar

fbshipit-source-id: 7321a737c84173b05d34d56622e529edb7db44b0
2019-04-30 08:22:49 -07:00
Daniel Büchele
3b03a3d605 docs: add features page
Summary: Adding a "features" page to the to bar and splitting plugin descriptions from their setup instructions.

Reviewed By: jknoxville

Differential Revision: D15147464

fbshipit-source-id: b2106d825454c3b2989eb1e536b128ef9b6d0247
2019-04-30 07:39:16 -07:00
Zoltán Gilián
d9bb1c5cf1 Add MacDevice
Summary:
Add a desktop device on MacOS similar to WindowsDevice (see D8861986).
This makes it possible to view Oculus Service Log files on MacOS too.

Reviewed By: danielbuechele

Differential Revision: D15147501

fbshipit-source-id: 8a076964e6111bf3786818b7cbd8bb7f81c1498d
2019-04-30 07:18:28 -07:00
Pascal Hartig
8ba4feba66 Add gradle license headers
Summary: Some more will follow.

Reviewed By: jknoxville

Differential Revision: D15146750

fbshipit-source-id: b78331b1fb00f357812e598165d6def62e2a89c8
2019-04-30 05:34:59 -07:00
Pascal Hartig
eca569db42 Set up Algolia search
Summary: Registered the site and it got indexed over night. Yay!

Reviewed By: jknoxville

Differential Revision: D15146529

fbshipit-source-id: 98a9ca68281d6b79f99a1da5d6f681340cb20ea1
2019-04-30 04:16:39 -07:00
John Knox
6a9ad97622 Document flipper://import handler
Summary: Condensed the open file explanation and added a note about download links.

Reviewed By: passy

Differential Revision: D15124555

fbshipit-source-id: 14f7cfea828bff4cea2e92be10bfa5cdea95723b
2019-04-30 04:16:39 -07:00
Daniel Büchele
6c9d62c5da Fix CSS on landing page
Summary: fixing layout bug due to docusaurus upgrade

Reviewed By: passy

Differential Revision: D15122111

fbshipit-source-id: 7ecbbb34322d38f9da55bcad2e838067f83f8376
2019-04-30 02:58:04 -07:00
Pascal Hartig
a9993ffa52 Update getting-started
Summary:
- Fix some typos.
- Move Objective-C/Swift code blocks under one heading with code tabs.
- Fix hierarchy so that sidebar is actually useful.

Adding a top-level Android/iOS(Swift)/iOS(ObjC) switch is really, really
painful to do right now. What RN does for this is incredibly gross (sorry, but I'm sure they'd agree)
and precarious. It only takes one incorrectly placed newline to break everything.

Let's avoid that for now.

Reviewed By: jknoxville

Differential Revision: D15123871

fbshipit-source-id: b1184dbbaf3e38b09596ce4e0f0d4daa79b8e33f
2019-04-29 15:43:22 -07:00
Pascal Hartig
d41df85ab7 Add codeblock buttons
Summary: Shamelessly ripped off from docusaurus.io

Reviewed By: jknoxville

Differential Revision: D15123501

fbshipit-source-id: 10451c72494e022af5887d4c78ef0db1ff581254
2019-04-29 15:43:22 -07:00
Pascal Hartig
ffea2ee30e Update docusaurus dependencies (#419)
Summary:
All bumps are within range, so this shouldn't introduce any breaking
changes.
Pull Request resolved: https://github.com/facebook/flipper/pull/419

Reviewed By: danielbuechele

Differential Revision: D15120854

Pulled By: passy

fbshipit-source-id: dee4b52947cb548d13cd4bf625b29e3a643d8fc3
2019-04-29 13:32:22 -07:00
John Knox
bc993596ca Include error messages in success-rate metrics
Summary:
At the moment, we can see the %-success of instrumented operations, but it's hard to attribute the ones that fail to actual errors.
This will allow us to see for every session-event row, the error messages that caused each of the failures.

Then if necessary, you can search for that error message in logview to get more info like the stack trace.

Requires a corresponding change in puma, since this is changing a number to a json value.

Reviewed By: danielbuechele

Differential Revision: D15099185

fbshipit-source-id: b966e6e55ab82f1cb9a4cfd7bf02034a1df01929
2019-04-29 08:46:29 -07:00
Pascal Hartig
c01edec88d Add issue templates
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/418

Reviewed By: danielbuechele

Differential Revision: D15120797

Pulled By: passy

fbshipit-source-id: 196aafe8f228a52bd20dc492c3754675259f389a
2019-04-29 08:24:00 -07:00
Pascal Hartig
4548aecefe Add PR template
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/422

Reviewed By: danielbuechele

Differential Revision: D15121695

Pulled By: passy

fbshipit-source-id: c33b426ed309f140ffe5b06c2e20b19abe6e655c
2019-04-29 08:15:20 -07:00
Pascal Hartig
f76db15bdb Edit Docusaurus edit URL (#421)
Summary:
Makes editing pages easier.
Pull Request resolved: https://github.com/facebook/flipper/pull/421

Reviewed By: danielbuechele

Differential Revision: D15121670

Pulled By: passy

fbshipit-source-id: a201de3ce84204a9478711a80f3557671de743ab
2019-04-29 08:09:50 -07:00
Pascal Hartig
5b8d78d3ab Create CHANGELOG.md
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/417

Reviewed By: jknoxville

Differential Revision: D15120799

Pulled By: passy

fbshipit-source-id: 547b20a8aae4f2f58b4c5a2dc6b10da6068863e3
2019-04-29 06:20:51 -07:00
Kfir Schindelhaim
b78dbb75b2 Use the tree node idenitifer as the component identifier
Summary: Now that we always build the component tree (CKTreeNode) in debug, we can just use the tree node identifier as the component identifier instead of creating a very long string.

Reviewed By: fabiomassimo

Differential Revision: D15046568

fbshipit-source-id: 4d83c1bee3fd7ac85ee4bd6e9f4f47812509e0c3
2019-04-26 10:15:02 -07:00
Kfir Schindelhaim
1c35b705eb Use the cached layout wrapper if it exists
Summary:
- We cache the layout wrapper, but never used it actually.
- This should make the Layout plugin faster.

Reviewed By: fabiomassimo

Differential Revision: D15046463

fbshipit-source-id: b61f28d9a981e782b76abe78037d37665f7d8ba3
2019-04-26 10:15:02 -07:00
Kfir Schindelhaim
c764322c1a Layout plugin integration for reused nodes information
Summary:
- Expose the reused component counter into the layout plugin

https://pxl.cl/wVJf

Reviewed By: priteshrnandgaonkar

Differential Revision: D14952906

fbshipit-source-id: 784a02dbf44d80d95fdd3a804f58ecd0f51a3e1f
2019-04-26 10:15:02 -07:00
John Knox
f00ff72211 Allow null TableRow sidebars
Summary: Makes the API a bit easier to use. Don't have to build an empty sidebar if you don't want one.

Reviewed By: passy

Differential Revision: D15064205

fbshipit-source-id: bd31c1aa97fd6d1c93717c10b268f49e44eb1299
2019-04-26 09:29:42 -07:00
Pritesh Nandgaonkar
4049720759 Update CK and Yoga dependencies
Summary:
Updates CK and Yoga to latest dependencies.
Also removed the code from the post_install script which changed the min ios version of the yoga dependency, its no longer required.

Reviewed By: kfirapps

Differential Revision: D15098129

fbshipit-source-id: d00938db1df59d74253ae412a4bd835a0aa286b7
2019-04-26 07:11:56 -07:00
John Knox
0a3805c0f4 Add types for native table plugin persisted state reducer
Summary:
I haven't done this at the platform level (plugin.js) because the persistedStateReducer method signature prevents it unfortunately.

We might want to add a different method type at some point, like this one so you don't need to do this unsafe casting in the plugin itself, but for now, just doing it here.

Reviewed By: danielbuechele

Differential Revision: D15080331

fbshipit-source-id: c51749ac84cd38559d85089557f44ace8ae6e08b
2019-04-26 04:08:55 -07:00
John Knox
a4164c89a0 Fix emulator usage on linux
Summary: emulator isn't on the path in CI machines, but we already have ANDROID_HOME set so we can work out where it is.

Reviewed By: danielbuechele

Differential Revision: D15080422

fbshipit-source-id: 2c50a3de27909d2bfc82ea0210d06a0cc32357d7
2019-04-26 03:45:35 -07:00
Benny Wong
221bf1cc75 Fix error message when switching between device and simulator
Summary: Currently, you get an error when you don't have device utils installed. However, when you switch your flipper to a supported device, the error may not be cleared. This handles that case.

Reviewed By: jknoxville

Differential Revision: D15087620

fbshipit-source-id: 6060752b54161c7610656531d053ecbcdd9e978a
2019-04-26 03:41:20 -07:00
Pritesh Nandgaonkar
2359d22b46 Fix Analytics
Summary: We were missing to log for those cases when we exported through sharable link. Also I changed logging a bit so that we can differentiate between Sharable Link and File exports

Reviewed By: jknoxville

Differential Revision: D15080292

fbshipit-source-id: 063e9f515e4f089ed3715e7b1ca0e66410e46541
2019-04-25 10:39:14 -07:00
Pritesh Nandgaonkar
afd729deb6 Added metrics argument to headless inorder to export metrics
Summary:
This diff makes headless flipper accept `metrics` argument. Once this is passed. The headless flipper will terminate to export the metrics of the plugins, the type of the export looks like the following.

```
export type MetricType = {[metricName: string]: number};
type MetricPluginType = {[pluginID: string]: MetricType};
export type ExportMetricType = {[clientID: string]: MetricPluginType};

```

This diff, uses the store to export the metrics. I will modify the logic to accept the data which gets exported through `exportData`

Reviewed By: passy

Differential Revision: D14933499

fbshipit-source-id: dade5b7bc59ea4beb6d16c5ef471737e8597358a
2019-04-25 07:41:34 -07:00
Scott Hoyt
7bbb8c10c4 Extend FKUserDefaultsPlugin to support app suite user defaults.
Summary:
`FKUserDefaultsPlugin` is initialized with an `appSuiteName` but doesn't use this to monitor the app suite user defaults. This adds that capability.

In Flipper, "App Suite UserDefaults" defaults will show up in the drop down selector for user defaults.

Reviewed By: priteshrnandgaonkar

Differential Revision: D14922399

fbshipit-source-id: 3876976ccd0968fdec35f7605107202e1f9d7cee
2019-04-24 10:22:27 -07:00
Benny Wong
d9d1346c12 Add copy as cURL for network requests (#415)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/415

This diff adds a context menu item for network request rows that allows the user to copy the request as a curl command. The logic for the command generation was inspired by [`FLEXNetworkCurlLogger`](https://github.com/Flipboard/FLEX/blob/master/Classes/Network/FLEXNetworkCurlLogger.m)

Resolves #406

Reviewed By: passy

Differential Revision: D14973754

fbshipit-source-id: a57c31190d7615ca5377308e0bfad521b645b2e4
2019-04-23 07:05:19 -07:00
Benny Wong
01e4d694b5 Refactor types and util functions
Summary: Separating out the types and utils for work I'm doing on https://github.com/facebook/flipper/pull/415 / D14973754. This will make the request to curl utility function much cleaner

Reviewed By: jknoxville

Differential Revision: D14976747

fbshipit-source-id: cc15c10103ea75945d0a2ebaaa6d32a376192961
2019-04-17 12:23:51 -07:00
Pascal Hartig
20bd937d43 Flipper Bump: v0.20.1-SNAPSHOT
Summary: Back to snapshots.

Reviewed By: danielbuechele

Differential Revision: D14951752

fbshipit-source-id: a0d0d12fc6f9eae3e7809d18df8ed1a85503f4e4
2019-04-17 10:37:33 -07:00
Pascal Hartig
6fa40aad77 Flipper Release: v0.20.0
Summary:
== Highlights

* Improved UI when exporting Flipper data. (45999a5292)

== Fixes

* The Shared Preference Plugin on Android will search for all shared pref files instead of only the package name by default. (825ecb8e23)
* When restarting Flipper and the previously selected plugin no longer exists, the UI would crash. (c4a8e73543)

Commit log: https://github.com/facebook/flipper/compare/v0.19.0...v0.20.0

Reviewed By: danielbuechele

Differential Revision: D14951753

fbshipit-source-id: dbafc2d41cd25b2ede218b3fe3e99745226939a9
2019-04-17 10:37:33 -07:00
Pascal Hartig
6db83a7675 Use ToggleSwitches for binary options
Summary:
We've had a bunch of different options that were all binary
switches with very different ways of displaying them.

This consolidates them all to use ToggleSwitches. I think it
may still make sense to move them all to a sidebar as it's
the case for the Analytics plugin, but that's for another diff.

Reviewed By: danielbuechele

Differential Revision: D14933392

fbshipit-source-id: 7ef286b61142a564a7cde6de875266ac8641704b
2019-04-17 10:31:21 -07:00
Pascal Hartig
c244946be3 Catch malformed URI content
Summary:
As seen in https://our.intern.facebook.com/intern/bug/653953588368620/,
the network plugin can crash if content doesn't look like a URI.

Ideally, we'd be more granular in catching this, but for now skipping
that content seems better than crashing the entire plugin page.

Reviewed By: danielbuechele

Differential Revision: D14971610

fbshipit-source-id: 2708e5c0d4d1f584419d24c7dc38438009015565
2019-04-17 10:24:48 -07:00
Jiyue Wang
614f48dda3 Show server execution time in network plugin
Summary: the simpliest approach to render this metadata for debugging purpose

Reviewed By: bcuccioli

Differential Revision: D14974129

fbshipit-source-id: d816d1ef8dcd1bc333c4d0cdf70d6d9fb925bc03
2019-04-17 10:08:20 -07:00
John Knox
6f8d6ddd85 Sample app requires API 21+
Summary:
Currently running the sample app on a pre-21 device produces a runtime error. This is because it includes OkHttp which requires 21+.

So this change just stops the sample app from being installable on pre-21 devices.

```
FATAL EXCEPTION: main
Process: com.facebook.flipper.sample, PID: 19629
java.lang.ExceptionInInitializerError
	at okhttp3.OkHttpClient.newSslSocketFactory(OkHttpClient.java:263)
	at okhttp3.OkHttpClient.<init>(OkHttpClient.java:229)
	at okhttp3.OkHttpClient$Builder.build(OkHttpClient.java:1015)
	at com.facebook.flipper.sample.FlipperSampleApplication.onCreate(FlipperSampleApplication.java:54)
	at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1007)
	at android.app.ActivityThread.handleBindApplication(ActivityThread.java:4344)
	at android.app.ActivityThread.access$1500(ActivityThread.java:135)
	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
	at android.os.Handler.dispatchMessage(Handler.java:102)
	at android.os.Looper.loop(Looper.java:136)
	at android.app.ActivityThread.main(ActivityThread.java:5017)
	at java.lang.reflect.Method.invokeNative(Native Method)
	at java.lang.reflect.Method.invoke(Method.java:515)
	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
	at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.IllegalStateException: Expected Android API level 21+ but was 19
	at okhttp3.internal.platform.AndroidPlatform.buildIfSupported(AndroidPlatform.java:238)
	at okhttp3.internal.platform.Platform.findPlatform(Platform.java:202)
	at okhttp3.internal.platform.Platform.<clinit>(Platform.java:79)
	... 16 more
```

Reviewed By: passy

Differential Revision: D14953859

fbshipit-source-id: 8289c19e837f1d3739e120dc5a0f53111b800ca0
2019-04-17 06:55:48 -07:00
Pascal Hartig
9389a8e919 Bump some more dependencies (#414)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/414

Some more minor upgrades.

Reviewed By: jknoxville

Differential Revision: D14933687

fbshipit-source-id: 35bfcbb2ab3e552e430d8a2e3e30fb3568fab6c9
2019-04-15 09:57:59 -07:00
Pascal Hartig
59881f1888 Bump okhttp
Summary:
Requires some compile options as it uses newer Java features.
Post here: https://github.com/square/okhttp/issues/4597#issuecomment-461204144

Reviewed By: jknoxville

Differential Revision: D14933502

fbshipit-source-id: 265c43f2d9ae61fa9f6f42516fc6eb899af7f072
2019-04-15 06:55:21 -07:00
Pascal Hartig
3de3ef27d1 Bump versions plugin
Summary:
Updating some deps and starting with the thing
that helps identify outdated things.

Reviewed By: jknoxville

Differential Revision: D14933477

fbshipit-source-id: 3a0f84abf97f9327ecab72388e114a1fb533504b
2019-04-15 06:55:21 -07:00
Pritesh Nandgaonkar
5169d318de Fix the callstack sent from error reporting runnable
Summary:
The crash logged from `ErrorReporterRunnable` wasn't detailed. For example look at the following video.
Also for some reason the `FlipperConnection` interface doesn't have an argument for crash name. Thus I changed the js side of the plugin to accept `crash.name` to be undefined.

{F155526537}

Reviewed By: passy

Differential Revision: D14852561

fbshipit-source-id: 6daf9847535b4508fa312b4f940b014911aae2e5
2019-04-15 05:51:37 -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
Pascal Hartig
b276088f5f Refactor debug logging
Summary:
I dislike the sprinkled eslint ignores. Let's put this
in one place and just depend on isProduction().

Reviewed By: jknoxville

Differential Revision: D14913057

fbshipit-source-id: 2f5a98b7dba1ac1829eaeab24290d2f66820edf9
2019-04-14 02:29:42 -07:00
John Knox
460260d620 Fix samsung "run-as" warning (#413)
Summary:
During client setup, if no device is found with a matching CSR, and any of those devices errored while trying to find that out, surface that error, instead of a generic 'No matching device found'.

This means that the warning about some unusable samsung devices now shows again, instead of a generic message.

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

Reviewed By: passy

Differential Revision: D14891185

Pulled By: jknoxville

fbshipit-source-id: 8f4cb4e8e04defb429a4ca915b0dab4725495c87
2019-04-11 05:29:52 -07:00
Zhang Qichuan
ffc6a5fe18 Fix issue 408 (#411)
Summary:
Fix https://github.com/facebook/flipper/issues/408
Pull Request resolved: https://github.com/facebook/flipper/pull/411

Reviewed By: danielbuechele

Differential Revision: D14802001

Pulled By: jknoxville

fbshipit-source-id: 5ce435c0c941a715f799c75a8e09dbf4983e9789
2019-04-11 04:38:52 -07:00
Pritesh Nandgaonkar
25f82986ea Avoid triggering notification in headless
Summary:
There was a bug where headless version used to crash when crash reporter plugin used to get messages. So the problem was that it tried to trigger the notification in headless version, which obviously won't work.

Solves this [bug](https://our.intern.facebook.com/intern/sandcastle/log/?instance_id=88210824&step_id=773963185&step_index=5&name=Get+headless+and+run+it)
Bug:

{F155634920}

Reviewed By: jknoxville, danielbuechele

Differential Revision: D14874122

fbshipit-source-id: 2614b16665a354be7a75844a372dbea7a59d7e55
2019-04-11 04:08:59 -07:00
Kevin Lin
7f20c34e34 Remove unneeded TODO
Summary: Remove unneeded TODO.

Reviewed By: priteshrnandgaonkar

Differential Revision: D14882889

fbshipit-source-id: cbcb26bb90a315b5c36f4573bfcb416b8a0b4c46
2019-04-11 03:50:49 -07:00