Summary:
Adds regex support to the logs plugin.
You can now do the same for any other SearchableTable, just by adding the prop `regexSupported={true}`
For other types of searchables, like maybe the layout hierarchy, we'll need to modify the class that does the filtering for that type.
I've done what I can with the UI to make it usable, though it would be awesome to have some proper regex syntax parsing and highlighting going on. It will go red if it's not valid at least.
Reviewed By: danielbuechele
Differential Revision: D15898806
fbshipit-source-id: 425edb1834dcc14ca741ac7fc8d566b4f2763c63
Summary:
deepLinkPayload is passed as initialQuery to Search component and in componentDidMount we perform search if initially query is defined.
This does not handle the case if node is not present in the layout inspector tree.
Reviewed By: danielbuechele
Differential Revision: D15874343
fbshipit-source-id: c604baea16838f07e8f8bfc0f1e67c5e830dfe97
Summary: Copying/Creating a Paste from a network request only copied the domain. Now we are including all request/response data.
Reviewed By: jknoxville
Differential Revision: D15898038
fbshipit-source-id: 570ca5bb76e65b90b2b467856e6d3747682cc20d
Summary:
The previous setup would first check for the presence of a `persistedStateReducer` and then skip the standard subscriptions if this was found. This is a bit of a foot gun because simply by introducing a new function, you'd silently lose your existing subscriptions.
There are still some good reasons to support both as some subscriptions may not require persisting as they're directly tied to the state in the app at a given point.
Reviewed By: danielbuechele
Differential Revision: D15856372
fbshipit-source-id: a36bf40b1ceac431964610571eb70fff687b7607
Summary: display thermal information of connected device in the CPU plugin on a sidebar
Reviewed By: charles011
Differential Revision: D15715680
fbshipit-source-id: 1216da7bf8e0e6277d06aa02f40e6278f8e7fa07
Summary:
Makes the timestamp column visible by default in the logs plugin.
Can still be hidden by right clicking the column name.
Reviewed By: passy
Differential Revision: D15855890
fbshipit-source-id: 349a224c6a0ddfe607e7d92ce11df07c42b5db36
Summary:
The test used to exit before the promise was fulfilled, so essentially all tests passed. For more details, read [here](https://jestjs.io/docs/en/asynchronous.html)
> Be sure to return the assertion—if you omit this return statement, your test will complete before the promise returned from fetchData is resolved and then() has a chance to execute the callback.
Reviewed By: jknoxville
Differential Revision: D15804017
fbshipit-source-id: 769caa8957737b4864c5888d28854920e6a1447a
Summary:
In React VR we doing automatic retries in cases when request takes too much time. It helps in cases when network quality is poor. As long as this implicit for developer, we would like to highlight this information in insights. It helps to explain why request were so long.
This diff adds one more field to insights which displays amount of time spent on retries, count and limit of them.
https://pxl.cl/CntV
Reviewed By: passy
Differential Revision: D15845598
fbshipit-source-id: 3e0d1baf93b6be5c4d1c6c1d2b64c05852b843b7
Summary:
https://pxl.cl/Cd84
In React VR we got a case to explain developers why their requests took so long. To do this we export timings from Curl and send them in Flipper. This diff added visualization for this data. Any other platforms can use this feature by extending json which they send to Flipper.
Reviewed By: jknoxville
Differential Revision: D15804247
fbshipit-source-id: 9deea5c9f5f7c5416b42c476f7f0ed431c8dea04
Summary: Enable highlight of multiple rows so they can be copied
Reviewed By: passy
Differential Revision: D15822749
fbshipit-source-id: 2302ddd27a57574c1eaf1f1395939c9f006ba301
Summary: Transfer it from the device, reformat the notification to make use of it.
Reviewed By: danielbuechele
Differential Revision: D15779267
fbshipit-source-id: 747dc7f895528618ff6a07c15b7f72bf6a1adde9
Summary: Add sidebar to the flipper CPU plugin. Sidebar displays detailed information about the selected CPU core
Differential Revision: D15696198
fbshipit-source-id: 47e687b4354653e6bef626cd3f27adcb219dbd28
Summary:
Adds a "Track Leaks" option that will show notifications (even retroactively)
for `CloseableReferences` that were tracked.
Reviewed By: danielbuechele
Differential Revision: D15622596
fbshipit-source-id: ef610379aa96f9a5e541f741af608db30bee74e1
Summary: Added unit tests for the "WASTED_BYTES" for the fresco plugin
Reviewed By: passy
Differential Revision: D15610871
fbshipit-source-id: dc9bd84363e1ba22fc96890b74e217372188a9d0
Summary: Unrelated to what I was going to work on, so separate diff.
Reviewed By: jknoxville
Differential Revision: D15620643
fbshipit-source-id: a555bbd54adfe44fa7d566cb9cb6d31bd75be28e
Summary: Add a metric for the raw number of leaked closeable references.
Reviewed By: priteshrnandgaonkar
Differential Revision: D15603348
fbshipit-source-id: 03379e180b5822620e8e8347bef354edb3527d19
Summary:
The FlipperArray creation from JSONArray used to create an array of `null`'s instead of the FlipperObject, which used to crash the Flipper. Thus added a check in the flipper to not crash in the case when it receives array of nulls. Also fixed the Fresco plugin in mobile to send the proper FlipperArray.
Bug:
{F160049909}
Reviewed By: passy
Differential Revision: D15608297
fbshipit-source-id: 625e017d3bce4135ac699ee5aee8d871db378749
Summary: Actually reduce in the reducer step instead of using mutable state.
Reviewed By: jknoxville
Differential Revision: D15603095
fbshipit-source-id: f603ca548bb760db5423a4c1871d94284ece9521
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/455
Only logging to the console for now, but it's a good start.
Reviewed By: oprisnik
Differential Revision: D15535820
fbshipit-source-id: 8531ec5ef681d01b2428a1f016b2a1d9f1589a34
Summary: This is a big dep, and wasn't even used. Removing.
Reviewed By: danielbuechele
Differential Revision: D15555949
fbshipit-source-id: 31a5430819592478b01548469fdbf58637c4de22
Summary: Red error bar at bottom when something goes wrong.
Reviewed By: danielbuechele
Differential Revision: D15536042
fbshipit-source-id: 6a20e22489f9346864b78f9102a0917f94c1c74f
Summary: I've found myself having to extract strings from things that *might* be Errors more than once. Centralising this so it's consistent and correct everywhere.
Reviewed By: danielbuechele
Differential Revision: D15536034
fbshipit-source-id: 8e054dd6122aff10f0aacdfaed65125df0aea99f
Summary: This hadn't been tested on any tables with indexes. It was using the wrong set of columns to index the rows. Fixed by using the right list.
Reviewed By: danielbuechele
Differential Revision: D15535864
fbshipit-source-id: 1842a0695715e947b7e28b59e65dcc1eb5b32695
Summary:
React outputs the following error:
Warning: Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>.
This fixes it by using value instead of selected.
Reviewed By: danielbuechele
Differential Revision: D15535717
fbshipit-source-id: eb784ba2cdefe1c6744cc15592cd3e0191d237d0
Summary: React is printing errors saying not to use "Span", and booleans in html properties
Reviewed By: danielbuechele
Differential Revision: D15535593
fbshipit-source-id: e074137c89abfa69625b370087c9c18b579ff279
Summary: Previously it only reloaded the current page.
Reviewed By: danielbuechele
Differential Revision: D15535168
fbshipit-source-id: b8252c24ffa74fdf22b2d4b6d5b7f99b40db8e47
Summary:
Adds a plugin for listing the databases, tables and contents of those tables in an android app.
Right now, works with sqlite, but it should be generic enough to work with other db types.
## Changelog
Add initial version of android databases plugin
Creating a PR, I may need to do some cleaning up, but this is to kick off that process.
Pull Request resolved: https://github.com/facebook/flipper/pull/441
Reviewed By: danielbuechele
Differential Revision: D15288831
Pulled By: jknoxville
fbshipit-source-id: 6379ad60d640ea6b0a9473acc03dd6ea81a3a8d4
Summary: We removed the console already from the client side. So this causes all calls to isConsoleEnabled to fail. This diffs removes these calls.
Reviewed By: passy
Differential Revision: D15449571
fbshipit-source-id: b702a8fbc80af002e1d8b7d37d5acc664ea5be99
Summary: When a node invalidates, all its children need to be updated. This was the case in v1 of Layout Inspector (3141b954bf/src/plugins/layout/index.js (L684-L692)) but got lost when writing v2.
Reviewed By: passy
Differential Revision: D15469096
fbshipit-source-id: 9ef5368387ccbce6e5c71de28c24f5790906cee9
Summary:
Fresco plugin on the desktop side used to ask for all the image list along with the metadata when it was mounted. The mobile side never sent the image list and other information if not requested from it. That means, although Fresco plugin is a background plugin, there weren't any messages sent from the mobile side. Thus there was no trace available for Images plugin when the trace was exported. This diff, adds a hook which gets called before the export, where we request all the metadata from the mobile SDK.
BUG:
{F159305887}
Reviewed By: passy
Differential Revision: D15407962
fbshipit-source-id: 0012de2ab29d0f62e92d00f4926b04b1e394b62a
Summary: Exports the `WASTED_BYTES` metric for the Images plugin. Currently its not possible to export the trace for Images Plugin, as all its listeners are setup in the init function of the component. Also it follows "pull" strategy, i.e Flipper asks for the data at component initialization. I will work on asking for the Fresco data when we terminate the headless, just like Layout Plugin.
Reviewed By: oprisnik
Differential Revision: D15393752
fbshipit-source-id: 4f0717ac5fb70a82aab5c803a4f92708d1faa9df
Summary: Add option to focus a view from the context menu.
Reviewed By: passy
Differential Revision: D15294182
fbshipit-source-id: f03db136e8365833beee3b4883d2114e98a280bd
Summary: This was already implemented in the old versin of layout inspector and got lost during the refactoring. When using talkback, the focused view is highlighted in green in the a11y inspector.
Reviewed By: passy
Differential Revision: D15294025
fbshipit-source-id: 92cc015e4bc726515e433b7b96f924246916972d
Summary: Fix the format of the export. Due to unknown reason the changes done in the D14933499 was [reverted back](https://our.intern.facebook.com/intern/diff/D14933499/?src_number=80619316) on the same diff. Thus this diff fixes the format of the metrics export
Reviewed By: passy
Differential Revision: D15239653
fbshipit-source-id: b9416f89e1b0022000d6201eb08ca1f456d5ed2e
Summary: Pushing all new rows into an array could result in duplicate entries. Now the data is stored in an object, using the row's id as a key. This deduplicates the data.
Reviewed By: jknoxville
Differential Revision: D15200794
fbshipit-source-id: 6afa2b7d02c1bdb796c250400938c38c51fdd207
Summary: In this step, we want to visualize our mammals in a custom card view. For this reason, we need to replace `createTablePlugin` with a React component that extends `FlipperPlugin`.
Reviewed By: jknoxville
Differential Revision: D15183324
fbshipit-source-id: 329cdc5c6cbd7e1435538e8cdddf049d914ff221
Summary: Per title. It's very basic, which is exactly the point.
Reviewed By: jknoxville
Differential Revision: D15182335
fbshipit-source-id: f70f8cd0510a605879dccb9f909f84971a4eedc3
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
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
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
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