Summary:
Added the ability to search tree generations for a particular component. As soon as you start typing in the search bar, only relevant timeline tracks would be displayed.
Currently, I'm looking for the search string in `component_class_name` of the payload and among all nodes in the tree.
Reviewed By: fabiomassimo
Differential Revision: D21175734
fbshipit-source-id: 642c628350192697980becd20352d303200a031e
Summary: It seems that these are not referenced anywhere in the repository.
Reviewed By: mweststrate
Differential Revision: D21176051
fbshipit-source-id: 502d4a2020d230f8c57bee31e15fbcf996484676
Summary: Fixed plugin compilation in release build. One dependency was missing from the final package.
Reviewed By: jknoxville, passy
Differential Revision: D21174687
fbshipit-source-id: 311e04b3ab782093bdbb8f1b81191380320e94d0
Summary: Currently subdescriptors are *always* rendered. Allow them to return `nil` to signal that they don't need to be rendered.
Reviewed By: cuva
Differential Revision: D21157249
fbshipit-source-id: 68a83424efc50723e1ec71c069feef8e10037671
Summary:
Before this diff, Flipper showed *leaf* views created by ComponentKit, but not any intermediate views. Now we show both.
A new node type `SKComponentMountedView` is used for this purpose. Its descriptor `SKComponentMountedViewDescriptor` mostly delegates to its view's descriptor, but redirects back into ComponentKit for children.
Reviewed By: Andrey-Mishanin
Differential Revision: D21130997
fbshipit-source-id: b3c12ea7cc1200962b3ba7c269c48d68b1809948
Summary: "incremental" option in base config conflicts with "tsc --noemit" which leads to crashes like in D21155831. Removing it from base config, anyway it is explicitly set for all the packages where required (babel-transformer, pkg-lib, pkg)
Reviewed By: timur-valiev
Differential Revision: D21157205
fbshipit-source-id: bb37101521d865bbe737e99637a9bc83a308494e
Summary: there are two plugins which uses copy-pasted ToolbarIcon and at least one more where it will be helpful. Let's move it to components folder
Reviewed By: nikoant
Differential Revision: D21089290
fbshipit-source-id: a14dcd56633dd24016711e34308b94023fcb40ed
Summary:
Assets should never be referenced by /doc/assets, as it breaks docusaurus' baseUrl conversion.
I'd write a lint rule for this but I don't know if it affects docusaurus v2, might be better to just migrate to that.
Reviewed By: passy
Differential Revision: D21153686
fbshipit-source-id: d839015e989a64f897617855ece77439da388cb7
Summary:
This diff fixes an issue where the selected device was not correctly updated when selecting a device plugin, causing the wrong plugin, or none at all, to be highlighted.
This diff fixes an issue where deeplinks were not correctly parsed if formatted as shown in the test plan of D20920587 (it was a different format in the recording, but after looking into it, using `plugin?params` instead of `plugin/?params` is the natural thing to do, so we now support both)
Reviewed By: jknoxville
Differential Revision: D21154190
fbshipit-source-id: c31132aaf7213ee1c3c188a6a1cf2b6bcc7b5b00
Summary:
This PR adds Github Action to validate the podspec file. Validation is crucial, if it podspecs don't validate then we won't be able publish pods to the trunk.
## Changelog
Add Github Action to validate FlipperKit and Flipper pod
Pull Request resolved: https://github.com/facebook/flipper/pull/1026
Test Plan: Github Action passes.
Reviewed By: mweststrate
Differential Revision: D21130523
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 0116120b9bbb073516798d4d7f08b347ed9755a3
Summary: This shaves another ~6MB of the zipped build. Less than I would have thought, but I haven't looked at the alternative options so far at all.
Reviewed By: nikoant
Differential Revision: D21131772
fbshipit-source-id: 641515d6f36fdeeffa5be81d64c2c1043a9e4e34
Summary: Updating Electron is an expensive call (in terms of time investment), and potentially very impactful in a way that is hard to test automated. So should be done consciously rather than for every random patch that appears.
Reviewed By: jknoxville
Differential Revision: D21134157
fbshipit-source-id: 9d208cffa84728aead620d0ec6a6cd1f01f01e2d
Summary:
Command which transpiles and bundles plugin code.
It is supposed to be used in "prepack" script for all open-sourced plugin packages to bundle them before publishing like this:
```
{
"devDependencies": {
"flipper-pkg": "latest"
},
"scripts": {
"prepack": "flipper-pkg bundle"
}
}
```
Also made directory parameter of other command "pack" optional so it also can be called from plugin directory simply by `flipper-pkg pack`.
Changelog: "flipper-pkg bundle" command for bundling plugins before publishing.
Reviewed By: mweststrate
Differential Revision: D21129691
fbshipit-source-id: 8f97bc950c28cf9ad8b0117c0e1d811ed1b988eb
Summary: Renamed command "bundle" to "pack" because the latter name better describe what the command does. Also I'm going to add another command which will only bundle the plugin code and it will be called "bundle" (see the next diff in this stack)
Reviewed By: mweststrate
Differential Revision: D21129690
fbshipit-source-id: 2dde30501c3776d6796c27c68d49948d1f84f822
Summary:
Added "id" field to Flipper plugin manifest which is used to match native and desktop plugin parts. Before that, "name" field was used both as npm package name and as plugin id.
The problem is that currently there are a lot of plugins which has invalid values in "name", e.g. not starting with "flipper-package-", or containing upper cased letters.
Simple renaming of "name" field can be very problematic, so we need a new field to avoid any breaking changes and keep historical analytics data which is also bound to plugin id.
Reviewed By: mweststrate
Differential Revision: D21129689
fbshipit-source-id: efd143c82a6a802cc0b5438fd3f509bd99aded0e
Summary: I noticed the UI components page was empty, the components have been moved and the generator was still looking in the old place.
Reviewed By: passy
Differential Revision: D21131943
fbshipit-source-id: 3310d4f7c88ea0f1e77a13c81eb411f9b1475125
Summary: This was being interpreted as returning `void` which was causing problems when trying to access the resolved value from the request. Fixing to slightly better type of `Promise<any>`
Reviewed By: passy
Differential Revision: D21105552
fbshipit-source-id: 76deb5a83b5220bafed8c12c3f56f339a5215c14
Summary:
This PR adds Github actions to verify that the Sample Objective-C, Swift and Tutorial app build successfully.
## Changelog
Add Github Actions for building Sample Objective-C, Swift and Tutorial app.
Pull Request resolved: https://github.com/facebook/flipper/pull/1025
Test Plan: Github Action passes successfully.
Reviewed By: jknoxville
Differential Revision: D21098106
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 6edd5a3cba74b5ea843abba366c4ad9dc550cf4e
Summary: Re-use the same function for plugin building both at publishing time by "flipper-pkg" and in runtime by Flipper itself.
Reviewed By: jknoxville
Differential Revision: D21129685
fbshipit-source-id: b7bff6737310352d28a14223128f127ac4d2eebf
Summary:
Added versioning for plugin format.
The first version is where "main" points to source code entry and plugins are bundled by Flipper in run-time on loading them.
The second version is where "main" points to the already existing bundle and Flipper just loads it without bundling. The plugins of version 2 must be bundled using "flipper-pkg" tool before publishing.
Changelog: Support new packaging format for plugins.
Reviewed By: mweststrate
Differential Revision: D21074173
fbshipit-source-id: 7b70250e48e5bd5d359c96149fb5b14e67783c4d
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/1030
Currently flow linter is failing on GitHub. This diff disables flow for pkg-lib and lib output folders where it is failing currently.
Reviewed By: passy
Differential Revision: D21129580
fbshipit-source-id: 71f28c8bd0d4b7293bdc8f1be943b5fd77b6b444
Summary:
Enabled ASAR which should improve startup time and also removes a warning in the build process we've had for ages.
It does improve compression in ZIP archives but seems to do the opposite in XZ based on the size tool. It's a bit odd - I'm still checking why that would be. *Update: In my testing, we get a 6-7MB reduction with DEFLATE which is in line with the number below and -2MB with LZMA.*
This *could* break things that directly access files, but I have not seen any issues. If any arise, we can manually specify them using `asarUnpack`.
Reviewed By: nikoant
Differential Revision: D21089067
fbshipit-source-id: 71ddc5c046a3aa3d81b21c0b958490add332614e
Summary: Set typings as devDependencies for pkg and pkg-lib packages
Reviewed By: passy
Differential Revision: D21092027
fbshipit-source-id: 7750f1796458bd88ea9ff620f3bb2e3e14ea7ca0
Summary: "flipper-pkg" added ~2MB to Flipper disttributive size, because of heavy dependencies which are only required for CLI functionality. See size warning in diff D21068373 in this stack where I added pkg as dependency to flipper. Here I'm splitting it into library and CLI packages, so Flipper app will only reference the library.
Reviewed By: passy
Differential Revision: D21087336
fbshipit-source-id: d9d62f1e75a835d1c0fa78ff1addb0d9a761a9c7
Summary:
Adds a GitHub action that applies a label to issues where the original
author has responded to.
Pull Request resolved: https://github.com/facebook/flipper/pull/1022
Test Plan: Try it out?
Reviewed By: jknoxville
Differential Revision: D21089462
Pulled By: passy
fbshipit-source-id: 6a728d1acf710d36835bfc5966648936ceb5586e
Summary:
This change makes it possible to remove preferences. I also added a `Delete` context menu option to `DataInspector` because I needed it to implement this feature. passy confirmed that it makes sense to add this because delete is a common action.
Fixes https://github.com/facebook/flipper/issues/451
Pull Request resolved: https://github.com/facebook/flipper/pull/1018
Reviewed By: jknoxville
Differential Revision: D21086308
Pulled By: passy
fbshipit-source-id: 551ff0908d5e6c93f58d6012b42e1ee3531de997
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/1016
YogaKit's version is compatible recent version of swift and also before the last release its swift version was not mentioned, which caused issues, but now there is no need to set the swift version.
Reviewed By: passy
Differential Revision: D21054723
fbshipit-source-id: 2210cf4beab86088533302028091e0bc44b9d232
Summary:
Just a convenient feature: `yarn start --open-dev-tools` opens Dev Tools window alongside with Flipper window.
Changelog: new command-line flag "--open-dev-tools" to automatically open Chrome Dev Tools for Flipper debugging.
Reviewed By: mweststrate
Differential Revision: D21074769
fbshipit-source-id: 12ae33ab74a3d35c54051321396d8701d72c7e32
Summary: "flipper-pkg" has dependency to "flipper-babel-transformer" and we use typescript to compile both of them, so we can use references here for incremental compilation.
Reviewed By: mweststrate
Differential Revision: D21070251
fbshipit-source-id: eadef024cebe8a85ddb8ef4e62bd613752a13c06
Summary: Moved getWatchFolders script to flipper-pkg and used it from other packages. Script helps to resolve all the folders with package dependencies including symlinked folders in case if plugin is a part of yarn workspaces.
Reviewed By: mweststrate
Differential Revision: D21068373
fbshipit-source-id: 8691837fdb1aef333dab4c13d8758262838d36ee
Summary: I think it is good to have error handlers where-ever possible, so that there is historical data in our monitoring when we need it, and can track from which point of the code it originates :)
Reviewed By: jknoxville
Differential Revision: D21040059
fbshipit-source-id: 1c07fbfa65379739554bc98f83761ae97870ba82
Summary: Unity is using this, and I noticed it was showing up as Web Browser which is a bit misleading.
Differential Revision: D21067698
fbshipit-source-id: 93d6a598824e61490e0eadd1b2c9fb3ebc12d01c
Summary: Component classes do not reflect the source of the component anymore.
Reviewed By: fabiomassimo
Differential Revision: D20595754
fbshipit-source-id: 645a63f78ee6aaaf75ac0c1e08bf67229a3f906b
Summary:
These haven't built in ages now and causing all sorts of
down-stream issues with Greenkeeper and release jobs. We need to find
a more sustainable way of running them.
Pull Request resolved: https://github.com/facebook/flipper/pull/1019
Test Plan: eyes
Reviewed By: priteshrnandgaonkar
Differential Revision: D21066022
Pulled By: passy
fbshipit-source-id: 0480b7f17ed04af490113cf5dfbbfec130ec9eb3
Summary: Fixed the patch disabling warnings for cyclic dependencies inside node_modules. It broke after I changed the way of bundling plugins.
Reviewed By: passy
Differential Revision: D21065488
fbshipit-source-id: f8891f007d14d2475df517b28452dc0b8346f113
Summary:
Originally, Flipper would use exceptions for the control flow of determining if there's no desktop client available. It would catch an exception and then kick off another attempt. This is cool, but if you are debugging an application where Flipper is enabled, and you set a breakpoint to detect all thrown exceptions, then you'll see an exception thrown inside Flipper logic every couple of seconds. That makes it hard to debug what you're trying to do.
There's a workaround where you can simply open Flipper, but that's a bit annoying.
This diff changes the logic in Flipper to not use exceptions for the part of connection where it's doing the initial connect. We could apply this to `doCertificateExchange` as well, but that's actually an error there so I don't see the need to do it there as well.
Reviewed By: jknoxville
Differential Revision: D21016737
fbshipit-source-id: cbdfe2794b4d38a9e3b8304ebee845655bb26ae5
Summary:
It solves the warning about caching not working but this doesn't really help us right now as builds are timing out and the cache is never filled in the first place.
Based on this: 56904692d4/lib/travis/build/script/objective_c.rb (L127)
Pull Request resolved: https://github.com/facebook/flipper/pull/1012
Reviewed By: nikoant
Differential Revision: D21042282
Pulled By: passy
fbshipit-source-id: b8e9475cd58033a8840a49b0897ac1dfffc0ddb3