Commit Graph

1300 Commits

Author SHA1 Message Date
Michel Weststrate
54f9ff260b Show quick notification if plugin interaction fails
Summary:
Per title, if a plugin makes a client call, show a quick notif so that the user knows why his plugin interactions aren't responding in case the plugin doesn't use `isConnected` guards.

This might turn out to be too spammy, but I think it should be ok.

Reviewed By: nikoant

Differential Revision: D26277099

fbshipit-source-id: bd555ea84acae6189ec7f8fff0fc0a088dbc5337
2021-02-09 04:16:27 -08:00
Michel Weststrate
60cfcb54a1 Wrap plugin calls into isConnected guards
Summary:
Previously, plugins could relatively safely use `client.call` at any moment in time to fetch some information from / to the client. Except for some raise conditions there was generally speaking a connection available.

With this stack it becomes possible to interact with plugins even after an app (unexpectedly) disconnected, which makes Flipper a lot more versatile, especially when it comes to inspect crashes post mortem. (For more explanation see the second diff in this stack)

However, this means that it is no longer safe to assume there is always a connection available. For that reason `client.isConnected` has been introduced to safeguard against that.

This diff introduces guards on all user interactions that are not super explicitly triggered by the user to avoid a lot of errors being generated. This is mostly in `init()` blocks and implicit user events like selecting or hovering rows.

Explicit user interactions like pressing buttons are not guarded by this diff, as ideally failure to communicate with the client should be communicated back to the user more explicitly rather than failing silently. The next diff will introduce a fallback mechanism where a popup is shown in case those calls aren't guarded.

Fixed a few key warnings while at it.

Reviewed By: nikoant

Differential Revision: D26275604

fbshipit-source-id: 5630066cdd9541e448a6dd1f8a21861b5d751ced
2021-02-09 04:16:26 -08:00
Michel Weststrate
43c68c0e7c Separate the concepts of archived and disconnected devices
Summary:
Minor code cleanup to avoid future confusion:

- archived: a device that was imported from a Flipper trace, and only has persisted state
- (dis)connected: a real stateful device that might or might not have an active connection

Reviewed By: nikoant

Differential Revision: D26275459

fbshipit-source-id: eba554b37c39711e367c3795ff4456329a303c22
2021-02-09 04:16:26 -08:00
Michel Weststrate
1bb1cae167 Don't send messages to disconnected clients. Make exportPersistedState compatible with disconnected devices.
Summary:
This diff addresses two problems:

1. Since clients plugins can be active beyond having a connection, we have to make it possible for plugin authors to check if they are connected before they make a call.
2. if there is a custom `exportPersistedState`, plugins should be able to skip making calls if the device has disconnected.

Introducing this change makes it possible to interact with a reasonable level with disconnected clients, and makes it possible to create Flipper traces for disconnected clients.

Note that both items were already problems before supporting offline clients; as there can be a noticeable delay between disconnecting and Flipper detecting that (i've seen up to 30 secs). What happend previously in those cases is that the export would simply hang, as would other user interactions, as loosing the connection in the middle of a process would cause the promise chains to be neither rejected or resolved, which is pretty iffy.

Before this diff, trying to export a disconnected device would hang forever like:

{F369600601}

Reviewed By: nikoant

Differential Revision: D26250895

fbshipit-source-id: 177624a116883c3cba14390cd0fe164e243bb97c
2021-02-09 04:16:26 -08:00
Michel Weststrate
7650ab620d Fixed bug causing pending events of non-sandy plugins not to be part of the export
Summary:
During testing I noticed that even though plugin queues were flushed, the processed messages didn't end up in the export snapshots. This was caused by holding a ref of an older snapshot of the state

Changelog: Fixed an issue where data that arrived in the background was not part of the generated Flipper export.

Reviewed By: nikoant

Differential Revision: D26250897

fbshipit-source-id: ddd3f5bb19e38a1b13498d03f235bf63858eb8f8
2021-02-09 04:16:25 -08:00
Michel Weststrate
2df117923c Select new client after connecting, if possible
Summary:
Small UX improvement, try to select a newly arriving client if possible, this is nice as it means that disconnecting and connecting will typically end you up in the same app.

Changelog: If a new client connects, Flipper will try to focus on it

Reviewed By: nikoant

Differential Revision: D26250896

fbshipit-source-id: 83d9777a8608cd887d663a6bbe1444d2aa614e95
2021-02-09 04:16:25 -08:00
Michel Weststrate
ff7997b3fa Make sure disconnected devices / apps can be imported and exported
Summary:
It should be possible to exported disconnected devices, so that flipper traces / support form reports can be created from them. This diff introduces this functionality. Support for plugins with custom export logic is introduced in a later diff.

Issues fixed in this diff:
- don't try to take a screenshot for a disconnected device (this would hang forever)
- device plugins were always exported, regardless whether the user did select them or not
- sandy plugins were never part of exported disconnected clients
- increased the amount of data exported for device logs to ~10 MB. This makes more sense now as the logs will no longer be included in all cases
- fixed issue where are plugins would appear to be enabled after the client disconnected (this bug is the result of some unfortunate naming of `isArchived` vs `isConnected` semantics. Will clean up those names in a later diff.

Changelog: It is now possible to create a Flipper trace for disconnected devices and apps

Reviewed By: nikoant

Differential Revision: D26250894

fbshipit-source-id: 4dd0ec0cb152b1a8f649c31913e80efc25bcc5dd
2021-02-09 04:16:25 -08:00
Michel Weststrate
8bc1b953c2 Show current device/app connection status in AppInspect selector
Summary: UX love for imported and disconnected devices, so that stuff looks better :)

Reviewed By: nikoant

Differential Revision: D26249348

fbshipit-source-id: 70db682ccf0cb73161e136994f5135717f3c6be6
2021-02-09 04:16:25 -08:00
Michel Weststrate
bb529411b5 Expose current connection status to Sandy plugins
Summary:
Introduced `isConnected` flag on device and plugin client to reflect whether a connection is still available for the plugins, or that they have been disconnected.

Potentially we could expose the (readonly) `connected` state atom for this as well, or an `onDisconnect` event for device pugins, to create a responsive UI, but there might be no need for that, in which case this suffices.

Reviewed By: nikoant

Differential Revision: D26249346

fbshipit-source-id: b8486713fdf2fcd520488ce54f771bd038fd13f8
2021-02-09 04:16:24 -08:00
Michel Weststrate
7e1bf0f58b Preserve client state after disconnect
Summary:
This diff introduces support for keeping clients around after they have disconnected. This is a pretty important debugging improvement, that will allow inspecting a device / app after it crashed for example.

With this diff, the current client is just kept around until it connects again, instead of throwing clients immediately away if they disconnect. After this change, ArchivedClients will only be created by imports / exports, and no longer by disconnects. Initially I played with improving the creation of archived devices, by migrating all plugin state over from the original client to the archive, but I discovered that is very prone, as it would be a lot of pointer redistribution (plugins would point to a different client / device etc). While in contrast, disconnected clients is already an existing concept in Flipper, so reusing that keeps all the changes relatively simple.

Note that we could potentially still reuse old clients around after reconnected, but it would become much harder to reason about how plugins would behave if they missed updates for a while, so throwing away the device / clients and starting with a fresh slate sounds safer. So I figured that chance to be too risky for now, but would probably be good follow up work.

Issues with import / export, UX, and making calls to to a disconnected client will be addressed in follow up diffs

Changelog: Clients will retain their state after being disconnected, until they reconnect again

Reviewed By: nikoant

Differential Revision: D26224677

fbshipit-source-id: feb9d241df2304341c2847fe7fd751ac54c045f6
2021-02-09 04:16:24 -08:00
Michel Weststrate
c43049d881 Preserve device state after disconnect
Summary:
This diff stack introduces support for keeping devices and clients around after they have disconnected. This is a pretty important debugging improvement, that will allow inspecting a device / app after it crashed for example.

This feature existed partially before, but only supported Android, and only support plugins with persisted state; as it replace the current device with an archived version of the same device. In practice this didn't work really well, as most plugins would not be available, and all non-persisted state would be lost.

This diff makes sure we can keep devices around after disconnecting, the next one will keep the clients around as well. And explain some code choices in more detail.

Note that `Device.isArchived` was an overloaded term before, and even more now (both representing imported and disconnected devices), will address that in a later diff.

https://github.com/facebook/flipper/issues/1460
https://github.com/facebook/flipper/issues/812
https://github.com/facebook/flipper/issues/1487

Changelog: iOS and Android devices will preserve their state after being disconnected

Reviewed By: nikoant

Differential Revision: D26224310

fbshipit-source-id: 7dfc93c2a109a51c2880ec212a00463bc8d32041
2021-02-09 04:16:24 -08:00
Michel Weststrate
7361ecc080 Disable CPU plugin on archived devices
Summary:
Changelog: CPU plugin will no longer show up for archived devices

CPU plugin did show up on imported devices, but would always result in exceptions as no `adb` connection is available for them.

Reviewed By: jknoxville

Differential Revision: D26249575

fbshipit-source-id: c4fa7b3fec895f9c4ab9e31dce2f61fb23e9195b
2021-02-09 04:16:24 -08:00
Michel Weststrate
9987c8ee89 Make sure antd is used from Flipper
Summary: Fix build job that didn't include require rewrites for antd

Reviewed By: timur-valiev

Differential Revision: D26311554

fbshipit-source-id: 473a9c7d343e4534a33e5938ea27667f7795d8ac
2021-02-08 04:16:53 -08:00
Pascal Hartig
949b57b473 Improve types
Summary:
The any type was masking how the log object is actually initialised.

Sorry for the deluge of drive-by diffs. Something more substantial is coming.

Reviewed By: mweststrate

Differential Revision: D26250580

fbshipit-source-id: 5ba3f450ac1a646616868a8fd8b3cb42fb14dcc8
2021-02-05 14:26:11 -08:00
Pascal Hartig
e788bb09be Add logs support for physical devices
Summary:
There's a bit of an oddity with `idb` that the `stream` parameter is implied even though the docs say otherwise and if you try to use it, it'll give you a strange Python error. That's likely why we never implemented it.

Now, it works just as it does using local tooling.

Reviewed By: mweststrate

Differential Revision: D26228036

fbshipit-source-id: e20cb31167170ba0501e2929ed129305cb9aaf2c
2021-02-05 03:53:11 -08:00
generatedunixname89002005306973
0429c1892f Flipper Release: v0.74.0
Summary: Releasing version 0.74.0

Reviewed By: jknoxville

Differential Revision: D26253173

fbshipit-source-id: 80f4e3917cf130bbf546af6d48e43a62265660d0
2021-02-04 09:46:44 -08:00
Pascal Hartig
87caca9e77 Demote iOS connection errors
Summary: The "attaching failed" error provides no context and is a handled error, so we don't need to elevate this to a warning. We also see a socket warning on stderr every time we start up logging through simctl, so we don't need to treat that as an error.

Reviewed By: nikoant

Differential Revision: D26228037

fbshipit-source-id: 1938dadd54499462e1fd614c9477f738661c387b
2021-02-04 04:35:02 -08:00
Pascal Hartig
661af25ff9 getAppVersion for UpdateIndicator
Summary:
VSCode got a new thing where it doesn't save my file because it waits for a formatter or some stuff indefinitely, which is really cool, because it means my diffs end up being incomplete.

So this should have been in D26223274 (642d89213d) but now it's here.

angry_cry

Reviewed By: nikoant

Differential Revision: D26228038

fbshipit-source-id: 98b84179dce4e8e8c71f9196ab78d534327ea301
2021-02-04 04:35:02 -08:00
Anton Nikolaev
2f03aca5eb Revert D26222885: Upgrade metro to 0.65.0
Differential Revision:
D26222885 (9fe82dd6c7)

Original commit changeset: bb386ae4bc91

fbshipit-source-id: 5b8b1b71437b481a91c8b9cdaaeda051da3e2972
2021-02-03 23:37:57 -08:00
Pascal Hartig
642d89213d Extract getAppVersion() util
Summary:
Just some simple memoisation so we limit this particular `remote`
call to one per session.

Reviewed By: mweststrate

Differential Revision: D26223274

fbshipit-source-id: 7a12764758823c52f68fb7075f46caf58affb22f
2021-02-03 08:01:48 -08:00
Michel Weststrate
40abef860f Fix key warning
Summary: Crash reporter generated React errors because the different lines in a stack trace are not per definition unique

Reviewed By: jknoxville

Differential Revision: D26201941

fbshipit-source-id: 084e0157b1fa3b8216d35f62f0dc17b0d6414b8e
2021-02-03 06:59:59 -08:00
Anton Nikolaev
9fe82dd6c7 Upgrade metro to 0.65.0
Summary: Upgrade metro to 0.65.0

Reviewed By: passy

Differential Revision: D26222885

fbshipit-source-id: bb386ae4bc913d47d9f3431368e45c6319f0d65d
2021-02-03 04:42:22 -08:00
dependabot[bot]
e09e3c82ee Bump antd from 4.9.1 to 4.11.2 in /desktop (#1886)
Summary:
allow-large-files

Bumps [antd](https://github.com/ant-design/ant-design) from 4.9.1 to 4.11.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/ant-design/ant-design/releases">antd's releases</a>.</em></p>
<blockquote>
<h2>4.11.2</h2>
<ul>
<li>{emoji:1f41e} Fix rc-trigger BuildInPlacements TypeScript compile error. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/29029">#29029</a> <a href="https://github.com/waiwaiku"><code>waiwaiku</code></a></li>
</ul>
<hr />
<ul>
<li>{emoji:1f41e} 修复 rc-trigger BuildInPlacements TypeScript 编译错误。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/29029">#29029</a> <a href="https://github.com/waiwaiku"><code>waiwaiku</code></a></li>
</ul>
<h2>4.11.1</h2>
<ul>
<li>{emoji:1f484} Layout inline sub menu now has grey background. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28842">#28842</a></li>
<li>{emoji:1f195} PageHeader supports <code>breadcrumbRender</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28999">#28999</a></li>
<li>{emoji:1f195} Typography <code>ellipsis</code> support <code>tooltip</code> to customize tooltip when ellipsis. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28821">#28821</a></li>
<li>Image
<ul>
<li>{emoji:1f195} Image supports <code>preview.maskClassName</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28681">#28681</a></li>
<li>{emoji:1f41e} Fix preview image will move after click it. <a href="https://github-redirect.dependabot.com/react-component/image/pull/61">react-component/image#61</a> <a href="https://github.com/simonwong"><code>simonwong</code></a></li>
<li>{emoji:1f41e} Fix Image <code>placeholder</code> disappear issue. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/28953">#28953</a></li>
<li>{emoji:1f41e} Fix multiple Image.PreviewGroup contain same image. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/28881">#28881</a></li>
</ul>
</li>
<li>ConfigProvider
<ul>
<li>{emoji:1f195} ConfigProvider supports <code>iconPrefixCls</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28924">#28924</a></li>
<li>{emoji:26a1} Optimize ConfigProvider props updating perfermance. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28792">#28792</a> <a href="https://github.com/zxc0328"><code>zxc0328</code></a></li>
</ul>
</li>
<li>{emoji:1f484} Tweak TreeSelect filter highlight color. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28984">#28984</a></li>
<li>{emoji:1f484} Fix Select item align style with custom <code>tagRender</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28962">#28962</a></li>
<li>Form
<ul>
<li>{emoji:1f41e} Fix Form.Item can not clear nested <code>noStyle</code> error message. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28918">#28918</a></li>
<li>{emoji:1f41e} Form.Item with <code>preserve=false</code> will reset value to <code>initialValues</code> when removed. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28908">#28908</a></li>
</ul>
</li>
<li>{emoji:1f41e} Fix Button click effect style not working in shadow root. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28995">#28995</a> <a href="https://github.com/rinick"><code>rinick</code></a></li>
<li>{emoji:1f41e} Fix Table custom filter menu cannot close bug. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28688">#28688</a> <a href="https://github.com/alekye"><code>alekye</code></a></li>
<li>Less
<ul>
<li>{emoji:1f484} Add <code>menu-inline-submenu-bg</code> less variable and rename <code>menu-dark-submenu-bg</code> to <code>menu-dark-inline-submenu-bg</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28842">#28842</a></li>
<li>{emoji:1f484} Add less variable <code>drawer-footer-padding-horizontal</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28975">#28975</a> <a href="https://github.com/yuxuan"><code>yuxuan</code></a></li>
</ul>
</li>
<li>RTL
<ul>
<li>{emoji:1f484} Fix Card actions divider style in RTL. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28915">#28915</a> <a href="https://github.com/Aghosey"><code>Aghosey</code></a></li>
</ul>
</li>
<li>TypeScript
<ul>
<li>� Expose interfaces and types from default entry of antd. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28963">#28963</a></li>
<li>� Improve Input/Skeleton <code>style</code> definition. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28966">#28966</a> <a href="https://github.com/yingpengsha"><code>yingpengsha</code></a></li>
</ul>
</li>
</ul>
<hr />
<ul>
<li>{emoji:1f484} Layout 内联子表单添加背景颜色以更好的区分层级。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28842">#28842</a></li>
<li>{emoji:1f195} PageHeader 支持 <code>breadcrumbRender</code> 属性。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28999">#28999</a></li>
<li>{emoji:1f195} Typography <code>ellipsis</code> 属性添加 <code>tooltip</code> 支持以自定义收缩时的提示信息。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28821">#28821</a></li>
<li>Image
<ul>
<li>{emoji:1f195} Image 支持配置 <code>preview.maskClassName</code>。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28681">#28681</a></li>
<li>{emoji:1f41e} 修复预览图片会跟随鼠标移动的问题。<a href="https://github-redirect.dependabot.com/react-component/image/pull/61">react-component/image#61</a> <a href="https://github.com/simonwong"><code>simonwong</code></a></li>
<li>{emoji:1f41e} 修复 Image <code>placeholder</code> 不显示的问题。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/28953">#28953</a></li>
<li>{emoji:1f41e} 修复多个 Image.PreviewGroup 之间图片互串的问题。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/28881">#28881</a></li>
</ul>
</li>
<li>ConfigProvider</li>
<li>ConfigProvider
<ul>
<li>{emoji:1f195} ConfigProvider 支持 <code>iconPrefixCls</code> 修改图标样式前缀。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28924">#28924</a></li>
<li>{emoji:26a1} 优化 ConfigProvider 切换属性的性能。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28792">#28792</a> <a href="https://github.com/zxc0328"><code>zxc0328</code></a></li>
</ul>
</li>
<li>{emoji:1f484} 调整 TreeSelect 搜索高亮条目的颜色。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28984">#28984</a></li>
<li>{emoji:1f484} 修复 Select 自定义 <code>tagRender</code> 时不对齐的问题。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28962">#28962</a></li>
<li>Form
<ul>
<li>{emoji:1f41e} 修复 Form.Item 无法正确清理嵌套的 <code>noStyle</code> 错误信息问题。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28918">#28918</a></li>
<li>{emoji:1f41e} Form.Item 配置 <code>preserve=false</code> 时,移除该字段将自动重置对应值为 <code>initialValues</code>。<a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28908">#28908</a></li>
</ul>
</li>
</ul>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a href="https://github.com/ant-design/ant-design/blob/master/CHANGELOG.en-US.md">antd's changelog</a>.</em></p>
<blockquote>
<h2>4.11.2</h2>
<p><code>2021-01-26</code></p>
<ul>
<li>{emoji:1f41e} Fix rc-trigger BuildInPlacements TypeScript compile error. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/29029">#29029</a> <a href="https://github.com/waiwaiku"><code>waiwaiku</code></a></li>
</ul>
<h2>4.11.1</h2>
<p><code>2021-01-24</code></p>
<ul>
<li>{emoji:1f484} Layout inline sub menu now has grey background. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28842">#28842</a></li>
<li>{emoji:1f195} PageHeader supports <code>breadcrumbRender</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28999">#28999</a></li>
<li>{emoji:1f195} Typography <code>ellipsis</code> support <code>tooltip</code> to customize tooltip when ellipsis. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28821">#28821</a></li>
<li>Image
<ul>
<li>{emoji:1f195} Image supports <code>preview.maskClassName</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28681">#28681</a></li>
<li>{emoji:1f41e} Fix preview image will move after click it. <a href="https://github-redirect.dependabot.com/react-component/image/pull/61">react-component/image#61</a> <a href="https://github.com/simonwong"><code>simonwong</code></a></li>
<li>{emoji:1f41e} Fix Image <code>placeholder</code> disappear issue. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/28953">#28953</a></li>
<li>{emoji:1f41e} Fix multiple Image.PreviewGroup contain same image. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/28881">#28881</a></li>
</ul>
</li>
<li>ConfigProvider
<ul>
<li>{emoji:1f195} ConfigProvider supports <code>iconPrefixCls</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28924">#28924</a></li>
<li>{emoji:26a1} Optimize ConfigProvider props updating perfermance. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28792">#28792</a> <a href="https://github.com/zxc0328"><code>zxc0328</code></a></li>
</ul>
</li>
<li>{emoji:1f484} Tweak TreeSelect filter highlight color. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28984">#28984</a></li>
<li>{emoji:1f484} Fix Select item align style with custom <code>tagRender</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28962">#28962</a></li>
<li>Form
<ul>
<li>{emoji:1f41e} Fix Form.Item can not clear nested <code>noStyle</code> error message. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28918">#28918</a></li>
<li>{emoji:1f41e} Form.Item with <code>preserve=false</code> will reset value to <code>initialValues</code> when removed. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28908">#28908</a></li>
</ul>
</li>
<li>{emoji:1f41e} Fix Button click effect style not working in shadow root. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28995">#28995</a> <a href="https://github.com/rinick"><code>rinick</code></a></li>
<li>{emoji:1f41e} Fix Table custom filter menu cannot close bug. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28688">#28688</a> <a href="https://github.com/alekye"><code>alekye</code></a></li>
<li>Less
<ul>
<li>{emoji:1f484} Add <code>menu-inline-submenu-bg</code> less variable and rename <code>menu-dark-submenu-bg</code> to <code>menu-dark-inline-submenu-bg</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28842">#28842</a></li>
<li>{emoji:1f484} Add less variable <code>drawer-footer-padding-horizontal</code>. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28975">#28975</a> <a href="https://github.com/yuxuan"><code>yuxuan</code></a></li>
</ul>
</li>
<li>RTL
<ul>
<li>{emoji:1f484} Fix Card actions divider style in RTL. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28915">#28915</a> <a href="https://github.com/Aghosey"><code>Aghosey</code></a></li>
</ul>
</li>
<li>TypeScript
<ul>
<li>� Expose interfaces and types from default entry of antd. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28963">#28963</a></li>
<li>� Improve Input/Skeleton <code>style</code> definition. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28966">#28966</a> <a href="https://github.com/yingpengsha"><code>yingpengsha</code></a></li>
</ul>
</li>
</ul>
<h2>4.11.0</h2>
<p><code>2021-01-24</code></p>
<p>It is a wrong release which same as <code>4.10.3</code>, don't use it.</p>
<h2>4.10.3</h2>
<p><code>2021-01-18</code></p>
<ul>
<li>{emoji:1f41e} Fix Button not adapting to the <code>btn-border-width</code> when loading. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28886">#28886</a> <a href="https://github.com/jjanssen"><code>jjanssen</code></a></li>
<li>Table
<ul>
<li>{emoji:1f484} Add <code>table-border-color</code> less variable. <a href="https://github-redirect.dependabot.com/ant-design/ant-design/pull/28903">#28903</a></li>
</ul>
</li>
</ul>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="8158f45611"><code>8158f45</code></a> chore: upgrade ant-design/tools</li>
<li><a href="83904e56ea"><code>83904e5</code></a> docs: release 4.11.2</li>
<li><a href="20c49b7bbb"><code>20c49b7</code></a> docs: fix demo-focus layout (<a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/29028">#29028</a>)</li>
<li><a href="da0f6519f0"><code>da0f651</code></a> fix: import BuildInPlacements type (<a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/29029">#29029</a>)</li>
<li><a href="47792085b0"><code>4779208</code></a> docs: Update showCheckedStrategy desc</li>
<li><a href="9dff2dd9c3"><code>9dff2dd</code></a> dos({emoji:1f6e1} ): update test badge</li>
<li><a href="52e84f92e0"><code>52e84f9</code></a> test({emoji:1f500}): use wearerequired/git-mirror-action (<a href="https://github-redirect.dependabot.com/ant-design/ant-design/issues/29012">#29012</a>)</li>
<li><a href="48842e2a49"><code>48842e2</code></a> chore: update mirror.yml</li>
<li><a href="eebdb95cbe"><code>eebdb95</code></a> test: should not ignore *.md</li>
<li><a href="d86cfba197"><code>d86cfba</code></a> docs: release 4.11.1</li>
<li>Additional commits viewable in <a href="https://github.com/ant-design/ant-design/compare/4.9.1...4.11.2">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=antd&package-manager=npm_and_yarn&previous-version=4.9.1&new-version=4.11.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

 ---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

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

Reviewed By: passy

Differential Revision: D26222325

Pulled By: nikoant

fbshipit-source-id: f769bca6be6939b607678defa1ad2ea5beba5b50
2021-02-03 03:37:19 -08:00
Pritesh Nandgaonkar
6a0854557e Add gk checks in plugin
Summary:
This diff adds gk checks, VPN check and User login check to our plugin.

I added gk checks for Insta and FB apps. There are three kind of GK's. One with FB universe, one with Distillery universe and one with Insta WWW universe. We have API's to check gk with FB and Distillery universe. API to check with Insta WWW universe doesn't exists. There are some technical challenges to build this API. So right now for gks with Insta WWW universe, we just show an notification with info icon. For gks in other universe we aggressively check it when user closes the notif to verify if user assigned himself/herself to it.

In long term we are moving away from gks altogether, we need this UX improvement as it will help users to onboard easily.

See the following flow.

Reviewed By: mweststrate

Differential Revision: D26176996

fbshipit-source-id: 92a931610f9b244c14c6888bb12df936b62edd75
2021-02-03 02:25:54 -08:00
Pascal Hartig
9469ad33af Make addErrorNotification raise a warning
Summary:
These are recoverable, handled errors. We shouldn't treat these
as events that require actions from us. They also have
a tendency of firing a lot.

Reviewed By: nikoant

Differential Revision: D26202358

fbshipit-source-id: 445f3c2bcd0041d5cd773ec04172fdeed9b32222
2021-02-02 10:58:50 -08:00
Pascal Hartig
6dffc5695e Bump ts linters
Summary:
It had this scary warning at the top that the TS version was
too new for the linters.

Reviewed By: nikoant

Differential Revision: D26202273

fbshipit-source-id: df03d6bf176da00ee37b027679b9f258ab123395
2021-02-02 10:54:47 -08:00
dependabot[bot]
5850bb6b52 Bump open from 7.0.3 to 7.3.1 in /desktop (#1867)
Summary:
Bumps [open](https://github.com/sindresorhus/open) from 7.0.3 to 7.3.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/sindresorhus/open/releases">open's releases</a>.</em></p>
<blockquote>
<h2>v7.3.1</h2>
<ul>
<li>Fix support for WSL when Windows isn&amp;<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/39">https://github.com/facebook/flipper/issues/39</a>;t mounted in <code>/mnt/</code> (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/210">https://github.com/facebook/flipper/issues/210</a>)  a3bbadc</li>
</ul>
<p><a href="https://github.com/sindresorhus/open/compare/v7.3.0...v7.3.1">https://github.com/sindresorhus/open/compare/v7.3.0...v7.3.1</a></p>
<h2>v7.3.0</h2>
<ul>
<li>Support WSL configuration where Windows paths are not in PATH (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/195">https://github.com/facebook/flipper/issues/195</a>)  be0f794</li>
</ul>
<p><a href="https://github.com/sindresorhus/open/compare/v7.2.1...v7.3.0">https://github.com/sindresorhus/open/compare/v7.2.1...v7.3.0</a></p>
<h2>v7.2.1</h2>
<ul>
<li>Fix <code>app</code> option on Windows (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/191">https://github.com/facebook/flipper/issues/191</a>)  9bcd285</li>
</ul>
<p><a href="https://github.com/sindresorhus/open/compare/v7.2.0...v7.2.1">https://github.com/sindresorhus/open/compare/v7.2.0...v7.2.1</a></p>
<h2>v7.2.0</h2>
<ul>
<li>Use PowerShell on Windows for improved reliability (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/188">https://github.com/facebook/flipper/issues/188</a>)  f7ca0d3</li>
</ul>
<p><a href="https://github.com/sindresorhus/open/compare/v7.1.0...v7.2.0">https://github.com/sindresorhus/open/compare/v7.1.0...v7.2.0</a></p>
<h2>v7.1.0</h2>
<ul>
<li>Add <a href="https://github.com/sindresorhus/open#allownonzeroexitcode"><code>allowNonzeroExitCode</code></a> option (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/176">https://github.com/facebook/flipper/issues/176</a>)  e009765</li>
</ul>
<p><a href="https://github.com/sindresorhus/open/compare/v7.0.4...v7.1.0">https://github.com/sindresorhus/open/compare/v7.0.4...v7.1.0</a></p>
<h2>v7.0.4</h2>
<ul>
<li>Fix double-encoding of URLs (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/182">https://github.com/facebook/flipper/issues/182</a>)  48b6d0e</li>
</ul>
<p><a href="https://github.com/sindresorhus/open/compare/v7.0.3...v7.0.4">https://github.com/sindresorhus/open/compare/v7.0.3...v7.0.4</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="3182c380bd"><code>3182c38</code></a> 7.3.1</li>
<li><a href="a3bbadcf3c"><code>a3bbadc</code></a> Fix support for WSL when Windows isn't mounted in <code>/mnt/</code> (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/210">https://github.com/facebook/flipper/issues/210</a>)</li>
<li><a href="fe91dea810"><code>fe91dea</code></a> Fix readme typo (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/213">https://github.com/facebook/flipper/issues/213</a>)</li>
<li><a href="003c78f193"><code>003c78f</code></a> Move to GitHub Actions</li>
<li><a href="f3748e4f5a"><code>f3748e4</code></a> 7.3.0</li>
<li><a href="be0f794515"><code>be0f794</code></a> Support WSL configuration where Windows paths are not in PATH (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/195">https://github.com/facebook/flipper/issues/195</a>)</li>
<li><a href="45e50caaae"><code>45e50ca</code></a> 7.2.1</li>
<li><a href="9bcd285712"><code>9bcd285</code></a> Fix <code>app</code> option on Windows (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/191">https://github.com/facebook/flipper/issues/191</a>)</li>
<li><a href="1022f42026"><code>1022f42</code></a> 7.2.0</li>
<li><a href="f7ca0d3541"><code>f7ca0d3</code></a> Use PowerShell on Windows for improved reliability (<a href="https://github-redirect.dependabot.com/sindresorhus/open/issues/188">https://github.com/facebook/flipper/issues/188</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/sindresorhus/open/compare/v7.0.3...v7.3.1">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=open&package-manager=npm_and_yarn&previous-version=7.0.3&new-version=7.3.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

 ---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

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

Reviewed By: mweststrate

Differential Revision: D26149526

Pulled By: passy

fbshipit-source-id: 732e6a464a41df4f258baa5c7ddc3a1a34ccd0a7
2021-02-02 10:13:26 -08:00
Michel Weststrate
9bd3d6fd7c Fix serialization performance
Summary:
Using our serialization utilities in the previous diff absolute destroyed the performance of serializing the device logs. Investigated a bit, and the root cause is that *every* object serialization would notify the UI.

This is not only pointless, since the UI won't be updated until the next tick anyway, it also is terribly expensive since React has to process and queue all these updates.

Exporting the device logs went down from **2 minutes to a few seconds** with this change. (Still a lot slower than JSON.stringify, but I think the flexibility for plugin devs is worth it).

This change does not only benefit devicelogs plugin, but all existing plugins as well, plugins like GraphQL should now export their data much quicker.

Before (practically all time of serialization is spend in React's setState):

{F366147730}

After (only a spike at the end of the idler tick):

{F366147779}

Reviewed By: priteshrnandgaonkar

Differential Revision: D26146420

fbshipit-source-id: 9bbeccf04701fd044e041956b7bb00f1e0622b63
2021-02-01 11:43:31 -08:00
Michel Weststrate
594fa4d2bc serialize Sandy plugins with serialization utils to support Date/Set/Map
Summary:
Unlike non-sandy plugins, non-sandy plugins weren't serialized using our serialization utility yet. This diff addresses that, meaning that users don't have to bother about how to serialize maps, sets and dates.

Unlike the old fashioned plugins, the `makeObjectSerialize` utility is used, rather than `serialize`. This normalizes the objects, but doesn't serialize them, which is done at the end of the export data process anyway for the whole tree. This avoids creating a double JSON serialization which is fully of ugly escape characters.

This makes the onImport / onExport definition of the logs plugin nicer.

Also improved the docs.

Reviewed By: nikoant

Differential Revision: D26146421

fbshipit-source-id: 6abfb6ee2e3312e2a13a11832ff103dc62fd844c
2021-02-01 11:43:31 -08:00
Michel Weststrate
e614993558 Fix incorrect date serialization
Summary:
While creating some other tests, discovered that our current date serialization uses `toString()` serialization, causing the amount of milliseconds to be lost. The serialization (see below) uses less bytes as well since the human readable timezone isn't included. This change only affects serialization and is backward compatible.

```
  ✓ test serialize and deserializeObject function for non Object input (1 ms)
  ✕ test makeObjectSerializable and deserializeObject function for Date input (2 ms)
  ✓ test makeObjectSerializable and deserializeObject function for Map of Sets
  ✓ test makeObjectSerializable and deserializeObject function for Map, Dates and Set with complex nesting (1 ms)

  ● test makeObjectSerializable and deserializeObject function for Date input

    expect(received).toEqual(expected) // deep equality

    Expected: 2021-03-01T10:31:07.205Z
    Received: 2021-03-01T10:31:07.000Z
```

Reviewed By: priteshrnandgaonkar

Differential Revision: D26145941

fbshipit-source-id: dfd6607a4199ca46e2075027856138efb88a07f9
2021-02-01 11:43:30 -08:00
Michel Weststrate
7cc55daf34 Stop storing device logs on the device object and in the plugin
Summary:
Logs were stored hardcoded on the Device object first, this diff makes it normal plugin state.

This makes sure that we can use the same abstractions as in all plugins that store large data sets, and that we can leverage the upcoming DataSource abstraction.

Reviewed By: nikoant

Differential Revision: D26127243

fbshipit-source-id: 7c386a615fa7989f35ba0df5b7c1d218d37b57a2
2021-02-01 11:43:30 -08:00
Michel Weststrate
f2ade40239 Support custom data processing during import
Summary: Per title, this allows for pre-processing data after it is deserialized and before it is stored in the plugin

Reviewed By: nikoant

Differential Revision: D26126423

fbshipit-source-id: bc08a6ab205d2a0d551515563cd85a197595ddb2
2021-02-01 11:43:30 -08:00
Michel Weststrate
34c915a739 Add support for async / custom plugin export
Summary:
Sandy plugins can now set up an `onExport` handler to enable customizing the export format of a plugin: `client.onExport(callback: (idler, onStatusMessage) => Promise<state>)`

Import will be done in next diff

Reviewed By: nikoant

Differential Revision: D26124440

fbshipit-source-id: c787c79d929aa8fb484f15a9340d7c87545793cb
2021-02-01 11:43:29 -08:00
Michel Weststrate
32bde8cace add support for device plugin import / export
Summary: Sandy device plugins weren't exported till now (the only stateful plugin so far was Logs, but logs were stored hardcoded on the device rather than using the plugin export mechanisms). This diff makes sure that SandyDevicePlugins will be exported as well if they are persistable.

Reviewed By: nikoant

Differential Revision: D22724822

fbshipit-source-id: a10354a9c7e02f3e696d0cdda0f2c6be6f5ac61e
2021-02-01 11:43:29 -08:00
Michel Weststrate
e1daa449ba Unify computation of available plugins
Summary:
While trying to change something, discovered we have 3 different mechanisms in our code base to compute active plugins; the plugin list component, support form, and export flipper trace form had all their own, subtly different implementations of computing which plugins are available to the user.

Also removed some hardcoded exceptions for e.g. Logs plugin, which in the next diff and onward will be just a vanilla plugin without special casing

Unified that, which some how went a bit deeper than hoped, trough some hoops in in circular deps. Also unified to use the same testing utils, to avoid some gobbling objects manually together, with resulted in a bunch of unexpected NPEs. Found out that we actually still have unit tests using Flow in the process :-P. Converted one to TS.

Reviewed By: nikoant

Differential Revision: D26103172

fbshipit-source-id: 2fce2577d97d98543cb9312b3d013f24faee43aa
2021-02-01 11:43:29 -08:00
bizzguy
5320015776 Fix mock export file format (#1872)
Summary:
Provide a more robust technique for exporting the mocks to a file.

The current technique for exporting mocks to a file seems to fail under some scenarios.  The correct format is an array of objects:

```
[
  {
    "requestUrl": "https://api.github.com/repos/facebook/yoga",
    "requestMethod": "GET",
```
However, the following format is sometimes exported instead:

```
{
  "10": {
    "requestUrl": "https://demo9512366.mockable.io/SonarPost",
```

Using `Object.values` provides a more robust technique that has been successful during subsequent testing.

## Changelog

Network Plugin - new technique for exporting mocks

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

Test Plan:
Create mocks in the network plugin
Export mocks
Manually examine file for correct format
Import mocks and verify that the file has been imported correctly

Reviewed By: nikoant

Differential Revision: D26172954

Pulled By: mweststrate

fbshipit-source-id: bdfa3ba7dfe656f30ef17df001fc83dd8ea18ece
2021-02-01 10:23:45 -08:00
dependabot[bot]
a9ad3d2f1b Bump @testing-library/react from 11.1.0 to 11.2.3 in /desktop (#1868)
Summary:
Bumps [testing-library/react](https://github.com/testing-library/react-testing-library) from 11.1.0 to 11.2.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/testing-library/react-testing-library/releases"><code>testing-library/react's releases</code></a>.</em></p>
<blockquote>
<h2>v11.2.3</h2>
<h2><a href="https://github.com/testing-library/react-testing-library/compare/v11.2.2...v11.2.3">11.2.3</a> (2021-01-07)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>Return type of unmount is <code>void</code> (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/857">https://github.com/facebook/flipper/issues/857</a>) (<a href="1389f09474">1389f09</a>)</li>
</ul>
<h2>v11.2.2</h2>
<h2><a href="https://github.com/testing-library/react-testing-library/compare/v11.2.1...v11.2.2">11.2.2</a> (2020-11-20)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>dependencies:</strong> bump dom testing library (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/836">https://github.com/facebook/flipper/issues/836</a>) (<a href="7fcb0f2e93">7fcb0f2</a>)</li>
</ul>
<h2>v11.2.1</h2>
<h2><a href="https://github.com/testing-library/react-testing-library/compare/v11.2.0...v11.2.1">11.2.1</a> (2020-11-19)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>types:</strong> Allow all HTML and SVG elements in render. (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/833">https://github.com/facebook/flipper/issues/833</a>) (<a href="1dc33b23be">1dc33b2</a>)</li>
</ul>
<h2>v11.2.0</h2>
<h1><a href="https://github.com/testing-library/react-testing-library/compare/v11.1.2...v11.2.0">11.2.0</a> (2020-11-18)</h1>
<h3>Features</h3>
<ul>
<li>bump dom testing library (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/831">https://github.com/facebook/flipper/issues/831</a>) (<a href="456424ff33">456424f</a>)</li>
</ul>
<h2>v11.1.2</h2>
<h2><a href="https://github.com/testing-library/react-testing-library/compare/v11.1.1...v11.1.2">11.1.2</a> (2020-11-11)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>import pretty-format from testing-library/dom (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/821">https://github.com/facebook/flipper/issues/821</a>) (<a href="2712dc2da4">2712dc2</a>)</li>
</ul>
<h2>v11.1.1</h2>
<h2><a href="https://github.com/testing-library/react-testing-library/compare/v11.1.0...v11.1.1">11.1.1</a> (2020-11-03)</h2>
<h3>Bug Fixes</h3>
<ul>
<li>upgrade dependencies, typescript, testing-library/dom etc (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/816">https://github.com/facebook/flipper/issues/816</a>) (<a href="e07e6416f2">e07e641</a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="deafd51bc2"><code>deafd51</code></a> docs: add sanchit121 as a contributor (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/858">https://github.com/facebook/flipper/issues/858</a>)</li>
<li><a href="1389f09474"><code>1389f09</code></a> fix: Return type of unmount is <code>void</code> (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/857">https://github.com/facebook/flipper/issues/857</a>)</li>
<li><a href="64a8b9c2f3"><code>64a8b9c</code></a> chore: update all deps (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/842">https://github.com/facebook/flipper/issues/842</a>)</li>
<li><a href="03bea9fd76"><code>03bea9f</code></a> chore: Add 'Cancel Previous Runs' step (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/840">https://github.com/facebook/flipper/issues/840</a>)</li>
<li><a href="7fcb0f2e93"><code>7fcb0f2</code></a> fix(dependencies): bump dom testing library (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/836">https://github.com/facebook/flipper/issues/836</a>)</li>
<li><a href="276673ff00"><code>276673f</code></a> chore(types): add test for rendering SVG elements (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/834">https://github.com/facebook/flipper/issues/834</a>)</li>
<li><a href="1dc33b23be"><code>1dc33b2</code></a> fix(types): Allow all HTML and SVG elements in render. (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/833">https://github.com/facebook/flipper/issues/833</a>)</li>
<li><a href="456424ff33"><code>456424f</code></a> feat: bump dom testing library (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/831">https://github.com/facebook/flipper/issues/831</a>)</li>
<li><a href="236ea4962d"><code>236ea49</code></a> chore: remove one temporary fix with a better permenant one</li>
<li><a href="96b9aebe96"><code>96b9aeb</code></a> chore: Update validate.yml (<a href="https://github-redirect.dependabot.com/testing-library/react-testing-library/issues/827">https://github.com/facebook/flipper/issues/827</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/testing-library/react-testing-library/compare/v11.1.0...v11.2.3">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@testing-library/react&package-manager=npm_and_yarn&previous-version=11.1.0&new-version=11.2.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

 ---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

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

Reviewed By: mweststrate

Differential Revision: D26149524

Pulled By: passy

fbshipit-source-id: 6cc8159ffdf8e13b7851042e7c25ff058f5c88cb
2021-02-01 09:02:11 -08:00
dependabot[bot]
31bf578a8b Bump @types/ws from 7.2.7 to 7.4.0 in /desktop (#1869)
Summary:
Bumps [types/ws](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/ws) from 7.2.7 to 7.4.0.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a href="https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/ws">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=@types/ws&package-manager=npm_and_yarn&previous-version=7.2.7&new-version=7.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

 ---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `dependabot rebase` will rebase this PR
- `dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `dependabot merge` will merge this PR after your CI passes on it
- `dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `dependabot cancel merge` will cancel a previously requested merge and block automerging
- `dependabot reopen` will reopen this PR if it is closed
- `dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

</details>

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

Reviewed By: mweststrate

Differential Revision: D26149508

Pulled By: passy

fbshipit-source-id: 6bc9360d297bb9285e3c7515b4731f5c3478c97b
2021-02-01 09:02:11 -08:00
bizzguy
6a9d06a4ce Misc UI fixes (#1873)
Summary:
Continue with cleanup of Network plugin mock screens.  This mostly consists of replacing FlexColumn, FlexRow and FlexBox with equivalent Sandy components.

Here is the new screen:

- replace text buttons with Button
- add NUX info to "Copy Highlighted Calls" button
- add message when no calls have been highlighted
- in routes list remove padding on line items

![image](https://user-images.githubusercontent.com/337874/106415468-d58f6480-6414-11eb-93a8-498fd81b54d9.png)

Here is the prior screen:

![image](https://user-images.githubusercontent.com/337874/106415499-e8099e00-6414-11eb-8e0e-48875a945621.png)

## Changelog

Network Plugin - Additional cleanup of UI on mock screen

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

Test Plan:
Create and modify mocks
Verify that the functionality has not been affected by UI changes

Reviewed By: passy

Differential Revision: D26172915

Pulled By: mweststrate

fbshipit-source-id: f0af143d8509b53585076737832657fb095e75a6
2021-02-01 03:58:34 -08:00
Michel Weststrate
2f15ef883d Improve OSS plugin template
Summary:
Based https://github.com/facebook/flipper/issues/1866 and running `npx flipper-plugin init` locally. Doesn't address the original issue

Fixes #1866

Reviewed By: passy

Differential Revision: D26147089

fbshipit-source-id: 608dc92c5ccc741b6e760ea5a5034f9444e951b7
2021-02-01 02:28:34 -08:00
bizzguy
8c3abf7450 Network Plugin - Minor UI fixes (#1864)
Summary:
Made UI fixes to Network Plugin (mostly to Route screens) to continue migration to the new design framework.  This consisted mostly of replacing FlexColumn and FlexRow with Layout.Container and Layout.Horizontal.

Also, contains some cosmetic changes to "Mock Network Response" page.

Here is the screenshot with UI changes:

![image](https://user-images.githubusercontent.com/337874/105937062-6d0e4500-601a-11eb-97ce-d9c4ae0c184f.png)

This was the old screen for comparison:

![image](https://user-images.githubusercontent.com/337874/105937028-5667ee00-601a-11eb-84a9-a2bd4bb78846.png)

## Changelog

Network Plugin - UI changes to continue migration to Sandy design framework

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

Test Plan: Manual testing to ensure that all data still displayed with new UI changes (especially the Data and Headers info in the "Route Info" section)

Reviewed By: passy

Differential Revision: D26125656

Pulled By: mweststrate

fbshipit-source-id: a25104274ed25788e5c0738ac0a9609f2cead751
2021-01-29 09:02:54 -08:00
Pascal Hartig
4b711716f2 Improve plugin ready message
Summary: Minor change.

Reviewed By: mweststrate

Differential Revision: D26129625

fbshipit-source-id: 2b823bb34314b7ff1b84eb1ae708733b7dcc9881
2021-01-29 08:55:41 -08:00
Pascal Hartig
c41a2a3605 Link to MSC
Summary: Found out about this today.

Reviewed By: mweststrate

Differential Revision: D26129626

fbshipit-source-id: 82aa5d9fa536010b51fc1cf937f521e5ffa88015
2021-01-29 08:55:40 -08:00
Timur Valiev
d39ea08a6c add vs coe glyphs and links to reduction tree
Summary: let's make it easier for users to spot possiblity to jump to source code from flipper

Reviewed By: priteshrnandgaonkar

Differential Revision: D26147686

fbshipit-source-id: 6e248c10e73f3b8fcd937d915af6e91db1fe6abe
2021-01-29 08:38:52 -08:00
Pascal Hartig
5ac8f7a16f Small refactors
Summary: Going to make more changes here soon and wanted to apply some small changes first.

Reviewed By: jknoxville

Differential Revision: D26078645

fbshipit-source-id: 3a2bcd593b893160b5a332c858a514ebe89d3f4d
2021-01-29 05:10:29 -08:00
generatedunixname89002005306973
20cd25f726 Flipper Release: v0.73.0
Summary: Releasing version 0.73.0

Reviewed By: nikoant

Differential Revision: D26125287

fbshipit-source-id: 7fd00aa679a5ac3d69013d0bdb0cf5d868fd5cc7
2021-01-28 06:55:58 -08:00
Anton Nikolaev
d7cfcb5d8e Extend device plugin metadata to include supported devices
Summary: Plugin metadata format extended to include type of each plugin (client / device) and list of supported devices (android/ios/..., emulator/physical, etc). This will allow to detect plugins supported by device even if they are not installed and only available on Marketplace.

Reviewed By: mweststrate

Differential Revision: D26073531

fbshipit-source-id: e331f1be1af1046cd4220a286a1d52378c26cc53
2021-01-27 17:31:41 -08:00
Anton Nikolaev
1ce619af7e Tolerate individual plugin load errors
Summary: This diff fixes the issue when there is an error on checking GK for any of plugins and because of it the entire set of plugins failed to load. Each plugin should be loaded in isolation from others.

Reviewed By: passy

Differential Revision: D26099735

fbshipit-source-id: ba5475f4baf2d06f8922d345c9d401f5b15956ec
2021-01-27 04:41:05 -08:00
bizzguy
6df117ba04 Network Plugin - New functions to import, export and clear Routes (#1855)
Summary:
In the network plugin, add features to import and export routes as described in issue https://github.com/facebook/flipper/issues/1651

Primary use case is that external testers (such as QA teams) would be able to create test data, convert it to mocks and save the mocks to make bug fixes easier for devs.

Here is a screenshot showing location of buttons to perform import/export (and clearing) of mock routes:

![image](https://user-images.githubusercontent.com/337874/105658269-cb58ed80-5e8b-11eb-8118-f13efc96bf6d.png)

Here is another screenshot showing export dialog:

![image](https://user-images.githubusercontent.com/337874/105657733-afa11780-5e8a-11eb-9725-120617e1dd71.png)

Changelog: [Network] Mock routes can now be imported and exported. Thanks bizzguy!

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

Test Plan:
Performed manual testing

- create new mocks
- export mocks
- clear mocks
- import mocks
- verify that mocks still work by making GET/POST requests in sample app

Performed various permutations of above manual tests, including restarting Flipper at various points to ensure that test plan still worked.  Also performed visual inspection of exported files to verify correctness.

Would be very interested in learning how to create automated tests for this functionality.

Reviewed By: passy

Differential Revision: D26072928

Pulled By: mweststrate

fbshipit-source-id: 51bd5e19e78d830b94add850d5dc9b9e45fa6fad
2021-01-26 05:34:36 -08:00
Michel Weststrate
14997a5b98 Add antd to builtInModules
Summary: importing `antd` in a plugin that lives in the Flipper repo will give a int warning. This fixes that, antd is provided by the host package.

Reviewed By: nikoant

Differential Revision: D26073161

fbshipit-source-id: 897357fafce20129f7e12c035ff99cb4870cc814
2021-01-26 05:34:36 -08:00