Summary:
Added more telemetry events for the following events
- Time taken for each plugin to fetch meta data
- Overall time taken for fetching all meta data
- Overall time taken for serializing plugins
- Time taken to serialize individual plugins with overridden serializer and deserializer methods
Reviewed By: passy
Differential Revision: D18349588
fbshipit-source-id: 2b3a6b663a9df4da45580fc0be5651a27ca4093d
Summary:
Random observations
1. RN already generates the Flipper initialization code out of the box
2. This code assumes a prefixed namespace: `facebook.flipper`. Maybe it would be better if that were `appname`, but that seems an unnecessary burden at this point, preventing direct copy / paste possibilities
3. Out of the box, the generated code by RN doesn't align with the code provided here, because no `ReactInstanceManager` argument is passed in (nor does it seem to be available in a straight-forward way)
4. patch MainApplication.java with `getReactNativeHost().getReactInstanceManager()`
5. turn this into an explicit section: https://fbflipper.com/docs/tutorial/js-table.html#dynamic-plugin-loading. Also explain that when using `node_modules`, config doesn't need to be changed?
6. xcode 10! sudo xcode-select -s /Applications/Xcode_10.XXX/Contents/Developer/
7. Also tried to install Reactotron plugins by Infinite Red, got that compilable in the end, but the andoid / ios implementations still seems to be stub, so I'll try to follow up with them later, to be notified when they actually have something
Reviewed By: passy
Differential Revision: D18349098
fbshipit-source-id: 233bbe20a37c57c7dfe08c8fccdd4508bdefe96f
Summary: Missed two the previous time
Reviewed By: jknoxville
Differential Revision: D18372147
fbshipit-source-id: 015f1aa93706134a8a1aacffb4812cfb284c5527
Summary: Quite a few releases behind, but all fwd-compatible.
Reviewed By: jknoxville
Differential Revision: D18371601
fbshipit-source-id: 72e94ed4a92ea0358db44310cf14f611ad95db37
Summary: The Flipper codebase was recently converted to TypeScript. Plugins should be converted as well to maintain type safety.
Reviewed By: passy
Differential Revision: D18347730
fbshipit-source-id: be63e8bac677c13fa5c0fa4f964dda8e7ba6251d
Summary: This diff sets up the create form for the new support request project. The current screen is very basic. I will be iterating through it in the upcoming diffs.
Reviewed By: passy
Differential Revision: D18327464
fbshipit-source-id: af01fc10f68a135f32f0ae98551986852019e8aa
Summary: Used by rating, I think.
Reviewed By: mweststrate
Differential Revision: D18347585
fbshipit-source-id: bbc84a42c34aae9805515c82f8d24cfd0817d8ed
Summary: Moving some things around for the upcoming update support.
Reviewed By: jknoxville
Differential Revision: D18347572
fbshipit-source-id: b614fe3a87f8e7fdc0c11c0d3bfe4787c0914d17
Summary:
The prep work paid off. Seems to Just Work.
Now goeth ahead, little flock, and spread the good word of Optional Chaining.
More stuff here: https://devblogs.microsoft.com/typescript/announcing-typescript-3-7/
allow-large-files
Reviewed By: mweststrate
Differential Revision: D18347372
fbshipit-source-id: 735d4a1e2d33bffaa47761f86eb4f43a044c3d3b
Summary: I don't know why we left this for so long, it doesn't make a good first impression.
Reviewed By: mweststrate
Differential Revision: D18348908
fbshipit-source-id: b8b0e5fe8f6ab81281d6ea1a1299ebdaaf0b9c43
Summary: Look client names were unreadable due to line wrapping
Reviewed By: jknoxville
Differential Revision: D18348602
fbshipit-source-id: 682c3b17ef73ca0bf0f8193f71a608ada5cdfbf2
Summary: Fix an issue where we accidentally show all plugins for all clients, causing client crashes if an unsupported plugin is selected
Reviewed By: jknoxville
Differential Revision: D18347907
fbshipit-source-id: 5416f29b8eae2daed64869380f9e9382e90261d7
Summary: Currently the app keeps to find iOS devices if when the tooling isn't properly set up, causing an error to appear every three secs. This change makes sure that happens only once. It also takes care of some run-away promises
Reviewed By: jknoxville
Differential Revision: D18346619
fbshipit-source-id: 12b581bee0d522b37b9e0c5d5b8dad0e4d2058d9
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/626
This is the step that keeps failing because of some libuv
nonsense. It's faster and more reliable on Linux, so
there's really no good reason for running it on Mac.
No guarantee that this will fix it, but in the worst case
manually pressing "Rerun" will be faster.
Reviewed By: jknoxville
Differential Revision: D18324723
fbshipit-source-id: d1cd0c7195a4bcbd4c5df6ad39676f12f135a0f9
Summary:
When the CPU or kaois plugins are started, they show a buffer deprecated warning, caused by the fact that they ship their own adbkit version, which is unpatched.
This diff makes sure that the adbkit as shipped with Flipper is used instead.
Reviewed By: jknoxville
Differential Revision: D18327441
fbshipit-source-id: 9cab23b9701adc070210cc4133fc8760031bd1d7
Summary: In some cases this can cause a retain cycle.
Reviewed By: priteshrnandgaonkar
Differential Revision: D18297780
fbshipit-source-id: c60abdcaad9fd94c457647509aec0519042801e4
Summary: This diff lands improved sidebar navigation. The old functionality to order plugins based on last-recently-used, and cropping at 5 items has been removed. Instead, items can be starred and their position will be fixed. Together with the app switcher introduced this should lead to a cleaner, stabler, and more customizable UI.
Reviewed By: jknoxville
Differential Revision: D18299401
fbshipit-source-id: 29b7eb3a4130933c637f7c81834558bf738d5bf0
Summary: Sidebar now shows a drop down to select the app you are currently working on, rather than showing all plugins for all apps connected
Reviewed By: passy
Differential Revision: D18201094
fbshipit-source-id: a64ca380606c232d0a85bfa80f16ed0db980dfb4
Summary:
Left this out from diff at the bottom of the stack to
keep it a bit smaller.
Reviewed By: jknoxville
Differential Revision: D18272165
fbshipit-source-id: a2b0826e268b737341e2ef1c0f96dde32491237f
Summary: Address the small regression introduced by D18173166. When closing the plugin manager after installing/removing, the store wasn't updated in between.
Reviewed By: jknoxville
Differential Revision: D18270821
fbshipit-source-id: 4ff54bc7607d06fa423cf8e673f216ae0a5d19da
Summary: In order to have update notifications, this must live outside the UI component, but it also gives some additional benefits like better testability of previously effectful UI.
Reviewed By: jknoxville
Differential Revision: D18173166
fbshipit-source-id: 1cacb6c7893423a7920a6620dfb76e631caba101
Summary:
Found some unused code from the rating prototype before switching to itsr.
Deleting it.
Reviewed By: cekkaewnumchai
Differential Revision: D18298155
fbshipit-source-id: 3529db17494f4f5bf7d7841460203d1c3856299a
Summary: This will allow rating data to be joined with version number so we can get the rating of each release.
Reviewed By: mweststrate
Differential Revision: D18297808
fbshipit-source-id: 00f151c64aad40632389f728ad25a565f44a2a90
Summary:
- Update and include `react-redux` to Greenkeeper
- Remove legacy context which is used to access `store`
- Export `store` directly to use instead of legacy context
Note:
1st attempt: D18169584 -> got backouted in D18203354
Reviewed By: jknoxville
Differential Revision: D18297298
fbshipit-source-id: fd968f1b211eabb094113a0b35e84305f70117fc
Summary: Making it a bit more human readable.
Reviewed By: passy
Differential Revision: D18271880
fbshipit-source-id: 10e8ba50957e9407b1436972f8a06915edf73dfb
Summary: Make sure that `.native.js` modules resolutions are _NOT_ prefered over `.js` modules when building flipper or flipper plugins
Reviewed By: jknoxville
Differential Revision: D18297580
fbshipit-source-id: 73f9114d19eb0934cdf69d9668b582966aedc756
Summary: `compilePlugins.js` was still flow typed, but our current formatting setup breaks the file as soon as it is changed. This diff removes the (minimal) flow types and applies prettier
Reviewed By: jknoxville
Differential Revision: D18297696
fbshipit-source-id: 4af2318083188d8758981183f10ccd80e14feea2
Summary: This diff moves support form related redux prop to a separate reducer under separate supportForm property.
Reviewed By: passy
Differential Revision: D18272436
fbshipit-source-id: b64c4e041d8dacd305a71db255752a310a46b0d1
Summary:
This diff introduces the following improvements which I got as a feedback from the user
1) Before this diff the text entered used to vanish away when one switched tabs and came back to the support form. This diff takes care of that.
2) With this diff user can rexport the flipper trace to override the previous cached state too.
- For this I had to update the UI to show flipper trace a separate input box, rather than appending it in the question field.
- This avoided the the appending of the text in flipper trace and facilitated the easy override of the trace
3) With this diff one can also override commit_hash without appending multiple text.
WWW changes: D18250494, Do not land until this diff is landed.
Reviewed By: passy
Differential Revision: D18257524
fbshipit-source-id: 119edadf90ac95cb296c10520239513f1fef905d
Summary:
## The dependency [string-natural-compare](https://github.com/nwoltman/string-natural-compare) was updated from `2.0.3` to `3.0.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:** [nwoltman](https://www.npmjs.com/~nwoltman)
**License:** MIT
<details>
<summary>Release Notes for 3.0.0</summary>
<h3>BREAKING CHANGES</h3>
<ul>
<li>Update code to use ES2015 syntax (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="6d9d8c036b/hovercard" href="6d9d8c036b"><tt>6d9d8c0</tt></a>)</li>
<li>Throw on non-string arguments and replace the caseInsensitive function with an option (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="65d397ba75/hovercard" href="65d397ba75"><tt>65d397b</tt></a>)
<ul>
<li><code>naturalCompare()</code> now throws if either of the first two arguments are not a string.</li>
<li>Also, the <code>naturalCompare.caseInsensitive()</code> function has been removed. Pass <code>{caseInsensitive: true}</code> as the third parameter to <code>naturalCompare()</code> instead.</li>
</ul>
</li>
<li>Replace <code>naturalCompare.alphabet</code> with an <code>alphabet</code> option (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="6048bab315/hovercard" href="6048bab315"><tt>6048bab</tt></a>)
<ul>
<li><code>naturalCompare.alphabet</code> no longer exists for setting a custom alphabet. Use the new <code>alphabet</code> option instead.</li>
</ul>
</li>
</ul>
<h3>Improvements</h3>
<ul>
<li>Perf boost with custom alphabet (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="21e061a6c8/hovercard" href="21e061a6c8"><tt>21e061a</tt></a>)</li>
</ul>
<h3>Polish</h3>
<ul>
<li>Simplify if statements that handle leading zeros (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="fcaae03b2b/hovercard" href="fcaae03b2b"><tt>fcaae03</tt></a>)</li>
<li>Replace <code>var</code> with <code>let</code> and <code>const</code> (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="e4de3f28b6/hovercard" href="e4de3f28b6"><tt>e4de3f2</tt></a>)</li>
</ul>
<h3>Documentation</h3>
<ul>
<li>Make explanation a little clearer (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="464e890e92/hovercard" href="464e890e92"><tt>464e890</tt></a>)</li>
<li>Simplify a section of the readme (<a class="commit-link" data-hovercard-type="commit" data-hovercard-url="4a4ca90b75/hovercard" href="4a4ca90b75"><tt>4a4ca90</tt></a>)</li>
</ul>
</details>
<details>
<summary>Commits</summary>
<p>The new version differs by 15 commits.</p>
<ul>
<li><a href="3e0a51624e"><code>3e0a516</code></a> <code>v3.0.0</code></li>
<li><a href="e7035cdf6b"><code>e7035cd</code></a> <code>refactor: Add comments to indicate the actual character for character code numbers</code></li>
<li><a href="e4de3f28b6"><code>e4de3f2</code></a> <code>refactor: Replace <code>var</code> with <code>let</code> and <code>const</code></code></li>
<li><a href="fcaae03b2b"><code>fcaae03</code></a> <code>refactor: Simplify if statements that handle leading zeros</code></li>
<li><a href="e9e9b99896"><code>e9e9b99</code></a> <code>chore(ci): Fix coverage reporting</code></li>
<li><a href="d9c9de755a"><code>d9c9de7</code></a> <code>deps: Update devDependencies and benchmark dependencies</code></li>
<li><a href="6048bab315"><code>6048bab</code></a> <code>refactor!: Replace <code>naturalCompare.alphabet</code> with an <code>alphabet</code> option</code></li>
<li><a href="21e061a6c8"><code>21e061a</code></a> <code>improvement: Perf boost with custom alphabet</code></li>
<li><a href="65d397ba75"><code>65d397b</code></a> <code>refactor!: Throw on non-string arguments and replace the caseInsensitive function with an option</code></li>
<li><a href="6d9d8c036b"><code>6d9d8c0</code></a> <code>refactor!: Update code to use ES2015 syntax</code></li>
<li><a href="8fa47814db"><code>8fa4781</code></a> <code>test: Add tests to get back to 100% coverage</code></li>
<li><a href="bba68db636"><code>bba68db</code></a> <code>internal: Remove grunt and update dependencies</code></li>
<li><a href="c0f5ca613d"><code>c0f5ca6</code></a> <code>ci: Test on latest Node.js versions and only run releases once</code></li>
<li><a href="4a4ca90b75"><code>4a4ca90</code></a> <code>docs: Simplify a section of the readme</code></li>
<li><a href="464e890e92"><code>464e890</code></a> <code>readme: Make explanation a little clearer</code></li>
</ul>
<p>See the <a href="2f70d49a9f...3e0a51624e">full diff</a></p>
</details>
---
<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/619
Reviewed By: jknoxville
Differential Revision: D18269202
Pulled By: passy
fbshipit-source-id: 88421f02a213fe6f813512d37d39f9b5ab2460a4
Summary: Simple implementation of searching through request/response body on "network" tab
Reviewed By: passy
Differential Revision: D18268026
fbshipit-source-id: 39386d2d6ec50b47c3ca3dec976821282b51636f
Summary:
## The dependency [metro](https://github.com/facebook/metro) was updated from `0.56.3` to `0.57.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:** [metro-bot](https://www.npmjs.com/~metro-bot)
**License:** MIT
[Find out more about this release](https://github.com/facebook/metro).
---
<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/622
Reviewed By: jknoxville
Differential Revision: D18268960
Pulled By: passy
fbshipit-source-id: 7dc99729f72978786f301c57b6b0f7d93b49674f
Summary:

There is no spacing between the texts on the demo app and I found them difficult to click. So I decided to add some margins to make them more thumb-friendly :)
## Changelog
Make demo app more thumb-friendly
Pull Request resolved: https://github.com/facebook/flipper/pull/621
Test Plan: N/A
Reviewed By: jknoxville
Differential Revision: D18245979
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 9c99a477c4100323144518f56369a42085589f77
Summary: Adds telemetry for the export time and also logs the selected plugins.
Reviewed By: jknoxville
Differential Revision: D18244843
fbshipit-source-id: 36a3e8b9b456b59187918d19075a2c1ea0caef25
Summary:
**Highlights**
- Sample Android APK now available as download on this very release page.
- Memory usage viewer available for KaiOS devices.
Full changelog: https://github.com/facebook/flipper/compare/v0.26.0...master
Reviewed By: jknoxville
Differential Revision: D18245037
fbshipit-source-id: 0d49012c1ebd11b406a2bf81e5b41e823ced0c05
Summary:
Uses a slightly modified version of the deep expansion. In testing, there were a few issues due to the function in Inspector::onElementExpanded is essentially a toggle. I added an optional parameter to override this toggle behavior for child elements, and also flipped the order of root and child actions during collapsing, as the child state otherwise didn't persist properly (due to the component being unmounted, would be my guess?) This change should be non-breaking to other uses of the method that don't use the `deep: true` parameter
close https://github.com/facebook/flipper/issues/223
Reviewed By: passy
Differential Revision: D18225057
fbshipit-source-id: 53e840f07bf648249b5a4b36d115918dba215ff8
Summary:
Now on every new release, a sample app will be built and added to the Github release artifacts.
Adds a Github action to automatically build and attach the android sample app for every flipper release.
This will allow potential users to try out flipper without having to go to the trouble of building their own app.
Pull Request resolved: https://github.com/facebook/flipper/pull/615
Test Plan:
Tested on my private repo:
https://github.com/jknoxville/flipper/releases/tag/v0.1.john
Reviewed By: passy
Differential Revision: D18224747
Pulled By: jknoxville
fbshipit-source-id: 25d2905bd7539faa91974b23a33678168aef29d8
Summary:
This didn't look quite right to me, "Download Mac", "Linux", "Windows".
Changed it to a separate "Download for", with "Mac", "Linux" and "Windows" buttons.
Reviewed By: passy
Differential Revision: D18225271
fbshipit-source-id: d644570d072029fc792cd9d9c18d8616ada0017b
Summary: If the `crash.reason` assumes the default value of "Cannot figure out the cause", we don't show a notification in the hub. The crash is still visible in the Crash plugin, but the superfluous Reason row is hidden there, as we can't say anything useful there anyways
Reviewed By: passy
Differential Revision: D18223910
fbshipit-source-id: c033085badbf633b58f95c495c6d3a22bc7fb163