Commit Graph

8323 Commits

Author SHA1 Message Date
Lorenzo Blasa
4379317258 Move socket event handler inside FlipperConnectionManagerImpl
Summary:
The event handler is a friend type that was mutating the connection manager state.

Instead, just forward the event handling to it.

Then state mutation is consolidated inside the connection manager.

Reviewed By: passy

Differential Revision: D46849769

fbshipit-source-id: 594ab32c8e891564afa94e1be6b93b1dfeffe26f
2023-06-20 07:55:25 -07:00
Luke De Feo
35e2dd2e17 Use is connected flag to know to wrap bloks
Summary:
we need to wrap the bloks layout in a debug variet in order for flipper to work. See this diff for context D45605120

We are now using wether flipper is connected at all which is much more reliable.

Reviewed By: lblasa

Differential Revision: D46854921

fbshipit-source-id: 1b3baef2681ccce50fd452044cd3f740c256b0a9
2023-06-20 05:25:21 -07:00
Lorenzo Blasa
468b5510a8 New 'isConnected' API
Summary: Expose the newly created `isConnected` API to Android FlipperClient API.

Reviewed By: LukeDefeo

Differential Revision: D46841260

fbshipit-source-id: 1512e54d28779ef62423aa52727fed3a34d00333
2023-06-20 00:46:55 -07:00
Lorenzo Blasa
63f8c47cfa New 'isConnected' API
Summary: Expose the newly created `isConnected` API to iOS FlipperClient API.

Reviewed By: antonk52

Differential Revision: D46841190

fbshipit-source-id: c36eb08427d60c73fad8f92100df5d012149b4a8
2023-06-20 00:46:55 -07:00
Lorenzo Blasa
7cec520729 New 'isConnected' API
Summary:
Expose a new API to be used to check if there's an open connection with Flipper Desktop.

Changelog: new FlipperClient isConnected API

Reviewed By: antonk52

Differential Revision: D46841095

fbshipit-source-id: 82a60f52496fb218cb50c6a28d7ffe7225ae23aa
2023-06-20 00:46:55 -07:00
Lorenzo Blasa
daa3a38ed3 Flipper export file implementation
Summary:
^

Changelog: add export file implementation for browsers

Reviewed By: antonk52

Differential Revision: D46840341

fbshipit-source-id: 8a011f2a7c0ce329286cb8813def8f9c0572d133
2023-06-19 08:33:54 -07:00
generatedunixname89002005306973
f0ccad9bb3 Flipper Snapshot Bump: v0.200.1-SNAPSHOT
Summary: Releasing snapshot version 0.200.1-SNAPSHOT

Reviewed By: lblasa

Differential Revision: D46839330

fbshipit-source-id: ddc682b0429b7eef469354a0d5ee8723b7e27321
2023-06-19 08:18:51 -07:00
generatedunixname89002005306973
2ea745010a Flipper Release: v0.200.0
Summary: Releasing version 0.200.0

Reviewed By: lblasa

Differential Revision: D46839331

fbshipit-source-id: 1f578200c45444757165e41c9c6bc96bd66cc476
2023-06-19 08:18:51 -07:00
Luke De Feo
ae5dd80d67 Allow user to reset ui debugger after fatal error
Summary: Previously there was no way to get of this state

Reviewed By: aigoncharov

Differential Revision: D46803900

fbshipit-source-id: 2eb0eb41b58064659ef1d2cff245a2b8d7e2f261
2023-06-19 05:06:52 -07:00
Luke De Feo
f9bbc967ea Fix visualiser after virtualisation
Summary: There was an issue with cropping introduce by virtualisation and the position of the scroll view in the hierachy. Its a bit fragile but it works now.

Reviewed By: lblasa

Differential Revision: D46761831

fbshipit-source-id: ce001c6f4fe7ddc111edf0098f75a1273c84472d
2023-06-19 05:06:52 -07:00
Luke De Feo
f72514f238 Fix search now that tree is virtualised
Summary: Now the tree is virtualise the dom based scrolling effect doesnt work. Instead have to reimplement the search on the raw data and use the virtualiser to scroll, this isnt idea but it is still very fast and we can use this to later implement the browser style 4/8 results with ability to page through them.

Reviewed By: aigoncharov

Differential Revision: D46760491

fbshipit-source-id: 9c9b9961f084b39f86fd2aa94ab8e33ca476788b
2023-06-19 05:06:52 -07:00
Luke De Feo
43c7dc39c8 Add in / out behaviour to left / right arrow
Summary:
Following feedback from https://fb.workplace.com/groups/443457641253219/permalink/587444816854500/

When pressing left arrow and is already collapse goes to parent, when pressing right arrow and is expanded will go to first child. this mimics behaviours in mac os and other ides.

Also refactored kb scroll to use row virtualiser instead of dom refs

I also fixed the kb scroll hijacking, previously we were using a setTimeout, if you held a key down for a long time then the timeout would fire and the mouse enter event would briefly fire causing the hover position to jump. I now use a more robust approach were we just reserve the focus input for 250ms from the keyboard input, each time the key is held this reservation is extended slightly.

Changelog: UIDebugger, pressing left arrow jumps to parent after collapse. Pressing right arrow enters after expand. Similar to file browsers in IDES

Reviewed By: aigoncharov

Differential Revision: D46760448

fbshipit-source-id: da45d81056aa070be84b2db972400d650b86a172
2023-06-19 05:06:52 -07:00
Luke De Feo
e9d098b9cd Virtualise Tree
Summary:
Removed previous memoization approach as it was causing issues and very inconsistent perf increase due to the indent guides often causing half the tree needed to rerender.

New approach is using react virtual. Its very fast in all cases including initial render  off the wire. It does require 2 hacks.

1) React virtual requires you to explicitly size your parent component. In all the examples they have a height in px. This doesnt really work given we can resize the window. To mitigate this I added a grandparent component that is sized correclty with flexbox, then i use a layout effect to grab the height from the grandparent ref and set it to the scroll parent ref
2) Due to the implementaion of react virtual the width of the items in the tree is not correct. By default all the content overflows the box and the box doesnt grow automatically to fill the content. I think this is due to absolute positioning which breaks all the normal layout engine rules. The fix is to get the scrollWidth of the parent scroll view. (scrollWidth is the width of the element including overflow) and then set it via the refs we have on the tree item elements. This is also done in a layout effect.

changelog: UIDebugger virtualized UI to improve rendering performance

Reviewed By: aigoncharov

Differential Revision: D46724776

fbshipit-source-id: 75a6d35542066bd788aa4536481dedc72f667fc1
2023-06-19 05:06:52 -07:00
Luke De Feo
5ce2c984a9 Bloks, support NT minification map
Summary:
There were a small number of styles / attributes that were missing, this addresses this.

Similar to the bloks minification map there are some special hardcoded reserved ids, if that doesnt work then you can look into a special place for each style

I also refactored the transform metadata method as it was getting very nested and hard to understand.

Reviewed By: aigoncharov

Differential Revision: D46799392

fbshipit-source-id: 8de8a2740f45ddb23a1bc9abb7bb36f969cf1fbb
2023-06-19 05:06:52 -07:00
Lorenzo Blasa
165a989cc6 Use setProcessState
Summary:
`setProcessState` does some adjusting to PATH. This was only ever done for Electron.

This change moves that functionality to FlipperServerImpl which is the one what orchestrates. By doing this, flipper server also benefits from getting these adjustments.

Reviewed By: antonk52

Differential Revision: D46836659

fbshipit-source-id: f98291d320cf9b7f3808223af8745c068b1318ce
2023-06-19 04:05:07 -07:00
generatedunixname89002005306973
b4f0657f4f Flipper Snapshot Bump: v0.199.1-SNAPSHOT
Summary: Releasing snapshot version 0.199.1-SNAPSHOT

Reviewed By: aigoncharov

Differential Revision: D46835484

fbshipit-source-id: 702a204dfec38a6d522fc491dd5baea1ff1dbca2
2023-06-19 03:53:02 -07:00
generatedunixname89002005306973
6b17bcbaf3 Flipper Release: v0.199.0
Summary: Releasing version 0.199.0

Reviewed By: aigoncharov

Differential Revision: D46835486

fbshipit-source-id: 7e882d55fff5945af1fd0c9d0a0f7e603daba823
2023-06-19 03:53:02 -07:00
Carmi Grushko
947f1932b5 Update ktfmt component on FBS:master
Differential Revision: D46802820

fbshipit-source-id: a2737658576bf86f431a7b355d853a529f6a2c34
2023-06-18 23:22:12 -07:00
Andrey Goncharov
1c532095ab Expose suggestNewPlugin as a shared util
Reviewed By: antonk52, ivanmisuno

Differential Revision: D46798839

fbshipit-source-id: f2b942a138a998f167b60c04c32c634545bbfe96
2023-06-16 08:29:54 -07:00
Lorenzo Blasa
7fcaf52c71 Show error in box if one is available
Summary: Add a check to prevent the odd error when the box is no longer available to display an error.

Reviewed By: antonk52

Differential Revision: D46763634

fbshipit-source-id: 6ac2c404c842ff989b037c991b5f085baacd2f9a
2023-06-15 08:53:16 -07:00
github-actions[bot]
8f20631f6a Automated: Update Podfile.lock (#4836)
Summary:
This is an automated PR to update the Podfile.lock.
- Make sure that the Podfile.lock contains latest FlipperKit and Flipper pod versions.
- Also make sure that all the dependencies are updated to the latest one.
- This is auto-generated by [create-pull-request](https://github.com/peter-evans/create-pull-request)

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

Reviewed By: lblasa

Differential Revision: D46756889

Pulled By: passy

fbshipit-source-id: 8151a079e6a80a7bdd729bb836cdfeb6cc331994
2023-06-15 05:38:25 -07:00
generatedunixname89002005306973
df16df3c75 Flipper Snapshot Bump: v0.198.1-SNAPSHOT
Summary: Releasing snapshot version 0.198.1-SNAPSHOT

Reviewed By: lblasa

Differential Revision: D46729895

fbshipit-source-id: b6c85cf7354345d222483d0b4254e8aba98caa9a
2023-06-14 11:10:57 -07:00
generatedunixname89002005306973
401d14227d Flipper Release: v0.198.0
Summary: Releasing version 0.198.0

Reviewed By: lblasa

Differential Revision: D46729896

fbshipit-source-id: 9f125925f5796dd3ba2062878da388d78951ec94
2023-06-14 11:10:57 -07:00
Lorenzo Blasa
8f70cf14a4 Kill server after 30 seconds
Summary: Bring timeout from 15min to 30seconds.

Reviewed By: passy

Differential Revision: D46726959

fbshipit-source-id: cae1fdd4668fc5237ad0f187385f3a63a51c4797
2023-06-14 09:59:21 -07:00
generatedunixname89002005306973
d403b1f7a2 Flipper Snapshot Bump: v0.197.1-SNAPSHOT
Summary: Releasing snapshot version 0.197.1-SNAPSHOT

Reviewed By: lblasa

Differential Revision: D46722286

fbshipit-source-id: d759681c69df13a68544d9c772598e5207539367
2023-06-14 07:31:01 -07:00
generatedunixname89002005306973
a60f5aa049 Flipper Release: v0.197.0
Summary: Releasing version 0.197.0

Reviewed By: lblasa

Differential Revision: D46722287

fbshipit-source-id: 365052d289415dd3cc47326753c124427c6c7e67
2023-06-14 07:31:01 -07:00
Lorenzo Blasa
c431969dde Improved offline page
Summary:
This change improves our offline page. Mainly:

- Remove Oops! wording as it may imply some error took place.
- Remove the reload button. Automatic reload takes place at 2.5s intervals so this is unnecessary.

Changelog: Improved offline page (reload button removal)

Reviewed By: antonk52

Differential Revision: D46720650

fbshipit-source-id: 522f86d1a4d3d4b091672077cba1a26f898d19e8
2023-06-14 04:44:51 -07:00
generatedunixname89002005306973
4646b12a83 Flipper Snapshot Bump: v0.196.1-SNAPSHOT
Summary: Releasing snapshot version 0.196.1-SNAPSHOT

Reviewed By: lblasa

Differential Revision: D46718283

fbshipit-source-id: fbc691781c51e077ecd44f034d19eb9dd501430b
2023-06-14 04:01:10 -07:00
generatedunixname89002005306973
9da5e62023 Flipper Release: v0.196.0
Summary: Releasing version 0.196.0

Reviewed By: lblasa

Differential Revision: D46718282

fbshipit-source-id: c4084217c5d89b1f83beeff2dd7fede7516ae064
2023-06-14 04:01:10 -07:00
Luke De Feo
13c589724b Dont show layout tab for android
Summary: Feedback from michel, It is always empty for android  so dont show it

Reviewed By: elboman

Differential Revision: D46152985

fbshipit-source-id: 6c4f1d499ddb8916fdae6015cd57e158a0c1f182
2023-06-14 03:27:23 -07:00
Nick Gerleman
6c43d39c20 Remove YogaKit Integration (#4830)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/4830

YogaKit is a library which allows integrating Yoga layouts directly with UIKit. It is not used by higher level libraries like ComponentKit or React Native, but is used by a smattering of surfaces and shared components in Origami Studio and Instagram. See the following search for `YogaKit/UIView+Yoga.h`.

{F1026467213}

It is not really being developed anymore, and doesn't have much of a future, so I am deprecating it in OSS, to remove after the next OSS Yoga release. This means Flipper in OSS will not be able to rely on it.

Instead of special-casing for OSS vs not, this change removes the current YogaKit integration with the layout plugin, since it sounds like we are building a new layout plugin anyway, and I'm not aware of any new surfaces being built on top of YogaKit.

Removing Yoga as a dependency from Flipper should also allow us to fixup the current OSS Flipper build, along with a whole bunch of hacks RN's open source build currently does to produce a Yoga pod compatible with both RN and Flipper.

There are probably some OSS related lockfiles that can be updated after this, for things like the FlipperKit sample app. I did not do that as part of this change, since I don't know how healthy all of that infra is or how it integrates with the offline mirror used.

Reviewed By: passy

Differential Revision: D46664918

fbshipit-source-id: 9d4dd56aa4c7f55e97ac643aa6e4deb9375e582c
2023-06-13 11:11:08 -07:00
dependabot[bot]
ce4768116f Bump org.robolectric:robolectric from 4.10.2 to 4.10.3 (#4762)
Summary:
Bumps [org.robolectric:robolectric](https://github.com/robolectric/robolectric) from 4.10.2 to 4.10.3.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/robolectric/robolectric/releases">org.robolectric:robolectric's releases</a>.</em></p>
<blockquote>
<p>Robolectric 4.10.3 is a minor release that addresses two issues:</p>
<ol>
<li>Fixes <a href="https://redirect.github.com/robolectric/robolectric/issues/8187">robolectric/robolectric#8187</a>, which was a performance regression that was introduced by 87803687f3c6556c3d012ffaa07695d71c3eecd9. This performance regression only occurred if tests did not release transient HandlerThreads at the end of each test. It is still recommended to clean up any HandlerThreads to avoid leaking threads. Thanks <a href="https://github.com/brettchabot"><code>@​brettchabot</code></a> for the fix (83110398959107637e2653d49835d5d25db31a89).</li>
<li>Adds additional logging to help diagnose <a href="https://redirect.github.com/robolectric/robolectric/issues/8205">robolectric/robolectric#8205</a> ( f1e7b43651456e3cb22bc86d48291d60cef64d18), which is a SHA-512 mismatch when fetching android-all Jar files during runtime.</li>
</ol>
<p><strong>Full Changelog</strong>: <a href="https://github.com/robolectric/robolectric/compare/robolectric-4.10.2...robolectric-4.10.3">https://github.com/robolectric/robolectric/compare/robolectric-4.10.2...robolectric-4.10.3</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="f9c52b0dfe"><code>f9c52b0</code></a> Bump version to 4.10.3.</li>
<li><a href="f1e7b43651"><code>f1e7b43</code></a> Add additional logging when validating fetched android-all Jars</li>
<li><a href="8311039895"><code>8311039</code></a> Only wake non-empty messageQueue on clock updates.</li>
<li>See full diff in <a href="https://github.com/robolectric/robolectric/compare/robolectric-4.10.2...robolectric-4.10.3">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.robolectric:robolectric&package-manager=gradle&previous-version=4.10.2&new-version=4.10.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/4762

Reviewed By: lblasa

Differential Revision: D46680219

Pulled By: passy

fbshipit-source-id: 6d5d3d131c6e5ad52e1f49474c0bc2e958f686f3
2023-06-13 08:22:48 -07:00
Andrey Goncharov
84e481e7e9 Expose dark mode flag to plugin authors
Summary:
Should be available now with
```
getFlipperLib().settings().isDarkMode
```

Differential Revision: D46685851

fbshipit-source-id: 0777437b7ca06051cc3fd4dc1b794242f453f2b5
2023-06-13 08:18:14 -07:00
Pascal Hartig
bf2f1283d3 Unbreak error logging
Summary:
*Potentially.

A big thanks to lblasa and aigoncharov for helping with debugging. Looking at
`ptail -f errorlog_flipper_javascript` reveals that messages now include a spurious amount of unescaped newlines. E.g. P768993195

From memory, these were not there when I wrote the categorizer when I was able to copy-paste from ptail to the unit tests.

D44729490 added prettifying to the results inadvertently.

Reviewed By: lblasa

Differential Revision: D46685543

fbshipit-source-id: 98da5eff92900042fc5306ca5d5652d8940ff2e1
2023-06-13 08:17:03 -07:00
github-actions[bot]
6108769464 Automated: Update Podfile.lock (#4826)
Summary:
This is an automated PR to update the Podfile.lock.
- Make sure that the Podfile.lock contains latest FlipperKit and Flipper pod versions.
- Also make sure that all the dependencies are updated to the latest one.
- This is auto-generated by [create-pull-request](https://github.com/peter-evans/create-pull-request)

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

Reviewed By: lblasa

Differential Revision: D46679156

Pulled By: passy

fbshipit-source-id: 81cf60d16ea7ce2954ce16896f2dec84b11119c2
2023-06-13 08:14:57 -07:00
Lorenzo Blasa
411695484e Open in Chrome instead of default browser
Summary: To avoid the cases whereas Flipper opens up in engineer's default browser which may be different than Chrome.

Reviewed By: aigoncharov

Differential Revision: D46682220

fbshipit-source-id: 38d0ddefbc67989c5ec97a66e4a419318a66bc95
2023-06-13 05:36:23 -07:00
dependabot[bot]
12b3c50b56 Bump org.jetbrains.dokka:dokka-gradle-plugin from 1.8.10 to 1.8.20 (#4815)
Summary:
Bumps [org.jetbrains.dokka:dokka-gradle-plugin](https://github.com/Kotlin/dokka) from 1.8.10 to 1.8.20.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/Kotlin/dokka/releases">org.jetbrains.dokka:dokka-gradle-plugin's releases</a>.</em></p>
<blockquote>
<h2>1.8.20 Beta</h2>
<h1>Improvements</h1>
<ul>
<li>Update Kotlin Gradle Plugin to 1.8.10 and Android Gradle Plugin to 4.1.3.</li>
<li>Move the &quot;Properties&quot; block to be above functions inside the &quot;Members&quot; tab (<a href="https://redirect.github.com/Kotlin/dokka/issues/2908">https://github.com/facebook/flipper/issues/2908</a>)</li>
<li>Make Javadoc tag parsing case-sensitive as per Javadoc specification (<a href="https://redirect.github.com/Kotlin/dokka/issues/2907">https://github.com/facebook/flipper/issues/2907</a>)</li>
<li>Improve performance by reducing allocations and thus decreasing time spent in GC (<a href="https://redirect.github.com/Kotlin/dokka/issues/2729">https://github.com/facebook/flipper/issues/2729</a>)</li>
</ul>
<h1>Bugfixes</h1>
<ul>
<li>Fix unresolved links leading to declarations from another source set <a href="https://redirect.github.com/Kotlin/dokka/issues/2878">https://github.com/facebook/flipper/issues/2878</a></li>
<li>Fix Dokka not failing the build if there are errors (<a href="https://redirect.github.com/Kotlin/dokka/issues/2934">https://github.com/facebook/flipper/issues/2934</a>), regression from 1.8.10. Thanks to <a href="https://github.com/jush"><code>@​jush</code></a>!</li>
<li>Fix <code>TypeNotPresentException</code> thrown in projects without KGP (<a href="https://redirect.github.com/Kotlin/dokka/issues/2890">https://github.com/facebook/flipper/issues/2890</a>), regression from 1.8.10.</li>
</ul>
<h1>Gradle plugin</h1>
<ul>
<li>Start using <code>kotlin-dsl</code> plugin (<a href="https://redirect.github.com/Kotlin/dokka/issues/2702">https://github.com/facebook/flipper/issues/2702</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2833">#2833</a>). Thanks to <a href="https://github.com/aSemy"><code>@​aSemy</code></a>!</li>
<li>Use Gradle filesystem types for task properties and apply default values lazily (<a href="https://redirect.github.com/Kotlin/dokka/issues/2707">https://github.com/facebook/flipper/issues/2707</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2983">https://github.com/facebook/flipper/issues/2983</a>). Thanks to <a href="https://github.com/aSemy"><code>@​aSemy</code></a>!</li>
</ul>
<h1>Plugin API</h1>
<ul>
<li>Change the default logging level of console apps (<code>DokkaConsoleLogger</code>) to <code>PROGRESS</code> (<a href="https://redirect.github.com/Kotlin/dokka/issues/2871">https://github.com/facebook/flipper/issues/2871</a>)</li>
<li>Introduce <code>InternalDokkaApi</code> annotation (<a href="https://redirect.github.com/Kotlin/dokka/issues/2904">https://github.com/facebook/flipper/issues/2904</a>)</li>
<li>Mark various utility API as Dokka-internal (<a href="https://redirect.github.com/Kotlin/dokka/issues/2937">https://github.com/facebook/flipper/issues/2937</a>)</li>
</ul>
<h1>Infrastructure</h1>
<p>Big thanks to <a href="https://github.com/aSemy"><code>@​aSemy</code></a>, <a href="https://github.com/Goooler"><code>@​Goooler</code></a> and <a href="https://github.com/3flex"><code>@​3flex</code></a> for their valuable contributions and for improving the internal
developer experience when working on Dokka!</p>
<ul>
<li>Use convention plugins to configure the subprojects (<a href="https://redirect.github.com/Kotlin/dokka/issues/2704">https://github.com/facebook/flipper/issues/2704</a> by <a href="https://github.com/aSemy"><code>@​aSemy</code></a>)</li>
<li>Use Gradle Version Catalog and type-safe project dependencies (<a href="https://redirect.github.com/Kotlin/dokka/issues/2884">https://github.com/facebook/flipper/issues/2884</a> by <a href="https://github.com/aSemy"><code>@​aSemy</code></a>)</li>
<li>Migrate <code>buildSrc</code> to a composite build (<a href="https://redirect.github.com/Kotlin/dokka/issues/2912">https://github.com/facebook/flipper/issues/2912</a> by <a href="https://github.com/Goooler"><code>@​Goooler</code></a>)</li>
<li>Tidy up build configurations and project files (<a href="https://redirect.github.com/Kotlin/dokka/issues/2911">https://github.com/facebook/flipper/issues/2911</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2930">https://github.com/facebook/flipper/issues/2930</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2909">https://github.com/facebook/flipper/issues/2909</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2946">https://github.com/facebook/flipper/issues/2946</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2910">https://github.com/facebook/flipper/issues/2910</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2705">https://github.com/facebook/flipper/issues/2705</a> by <a href="https://github.com/aSemy"><code>@​aSemy</code></a>)</li>
<li>Execute unit tests in parallel (<a href="https://redirect.github.com/Kotlin/dokka/issues/2953">https://github.com/facebook/flipper/issues/2953</a> by <a href="https://github.com/Goooler"><code>@​Goooler</code></a>)</li>
<li>Add the ability to use different Java versions for build and test tasks (<a href="https://redirect.github.com/Kotlin/dokka/issues/2918">https://github.com/facebook/flipper/issues/2918</a> by <a href="https://github.com/aSemy"><code>@​aSemy</code></a>)</li>
<li>Add reproducible archive build config (<a href="https://redirect.github.com/Kotlin/dokka/issues/2947">https://github.com/facebook/flipper/issues/2947</a> by <a href="https://github.com/aSemy"><code>@​aSemy</code></a>)</li>
<li>Configure Kotlin compiler options lazily (<a href="https://redirect.github.com/Kotlin/dokka/issues/2883">https://github.com/facebook/flipper/issues/2883</a> by <a href="https://github.com/Goooler"><code>@​Goooler</code></a>)</li>
<li>Improve GitHub Actions workflows (<a href="https://redirect.github.com/Kotlin/dokka/issues/2939">https://github.com/facebook/flipper/issues/2939</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2938">https://github.com/facebook/flipper/issues/2938</a> by <a href="https://github.com/Goooler"><code>@​Goooler</code></a>)</li>
<li>Stop testing on Java 15 as it has reached EOL (<a href="https://redirect.github.com/Kotlin/dokka/issues/2892">https://github.com/facebook/flipper/issues/2892</a> by <a href="https://github.com/3flex"><code>@​3flex</code></a>)</li>
<li>Remove a workaround for a fixed Gradle issue (<a href="https://redirect.github.com/Kotlin/dokka/issues/2891">https://github.com/facebook/flipper/issues/2891</a> by <a href="https://github.com/3flex"><code>@​3flex</code></a>)</li>
</ul>
<h1>Documentation</h1>
<ul>
<li>Add informational badges to the main <code>README.md</code> (<a href="https://redirect.github.com/Kotlin/dokka/issues/2940">https://github.com/facebook/flipper/issues/2940</a>). Thanks to <a href="https://github.com/Goooler"><code>@​Goooler</code></a>!</li>
<li>Fix typos, inconsistencies and incorrect links in documentation (<a href="https://redirect.github.com/Kotlin/dokka/issues/2979">https://github.com/facebook/flipper/issues/2979</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2973">https://github.com/facebook/flipper/issues/2973</a>, <a href="https://redirect.github.com/Kotlin/dokka/issues/2952">https://github.com/facebook/flipper/issues/2952</a>). Thanks to <a href="https://github.com/LiYing2010"><code>@​LiYing2010</code></a>, <a href="https://github.com/strangesource"><code>@​strangesource</code></a> and <a href="https://github.com/ansman"><code>@​ansman</code></a>!</li>
<li>Add more information about the infrastructure to <code>CONTRIBUTING.md</code> (<a href="https://redirect.github.com/Kotlin/dokka/issues/2952">https://github.com/facebook/flipper/issues/2952</a>)</li>
</ul>
<h1>Security</h1>

</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="3cfc50dbba"><code>3cfc50d</code></a> Update Dokka's references to 1.8.20 (<a href="https://redirect.github.com/Kotlin/dokka/issues/3028">https://github.com/facebook/flipper/issues/3028</a>)</li>
<li><a href="46c10ac2b1"><code>46c10ac</code></a> Fix publishing to  Gradle Plugin Portal</li>
<li><a href="3c4c8453e4"><code>3c4c845</code></a> Update Dokka to 1.8.10</li>
<li><a href="fb0dc3121d"><code>fb0dc31</code></a> Fix missing tab entries for module names with space (<a href="https://redirect.github.com/Kotlin/dokka/issues/3019">https://github.com/facebook/flipper/issues/3019</a>)</li>
<li><a href="e3c383cd50"><code>e3c383c</code></a> Add the ability to get serialized configuration of a task (<a href="https://redirect.github.com/Kotlin/dokka/issues/3008">https://github.com/facebook/flipper/issues/3008</a>)</li>
<li><a href="b6ee0780c2"><code>b6ee078</code></a> Update dokka_version to 1.8.20</li>
<li><a href="a9b3ee192a"><code>a9b3ee1</code></a> Update KGP to 1.8.20 (<a href="https://redirect.github.com/Kotlin/dokka/issues/2989">https://github.com/facebook/flipper/issues/2989</a>)</li>
<li><a href="3fc8b83aa5"><code>3fc8b83</code></a> Fix dead links for CLI external links configuration (<a href="https://redirect.github.com/Kotlin/dokka/issues/2985">https://github.com/facebook/flipper/issues/2985</a>)</li>
<li><a href="43c33f6350"><code>43c33f6</code></a> Execute unit tests in parallel (<a href="https://redirect.github.com/Kotlin/dokka/issues/2953">https://github.com/facebook/flipper/issues/2953</a>)</li>
<li><a href="1632ff37d0"><code>1632ff3</code></a> Minor fixes for documentation (<a href="https://redirect.github.com/Kotlin/dokka/issues/2979">https://github.com/facebook/flipper/issues/2979</a>)</li>
<li>Additional commits viewable in <a href="https://github.com/Kotlin/dokka/compare/v1.8.10...v1.8.20">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=org.jetbrains.dokka:dokka-gradle-plugin&package-manager=gradle&previous-version=1.8.10&new-version=1.8.20)](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/4815

Reviewed By: lblasa

Differential Revision: D46680046

Pulled By: passy

fbshipit-source-id: 536411c925b9e66f2a94057728ab34bc875554f3
2023-06-13 04:00:09 -07:00
dependabot[bot]
a4ff1fbe72 Bump serde from 1.0.163 to 1.0.164 in /packer (#4813)
Summary:
Bumps [serde](https://github.com/serde-rs/serde) from 1.0.163 to 1.0.164.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/serde-rs/serde/releases">serde's releases</a>.</em></p>
<blockquote>
<h2>v1.0.164</h2>
<ul>
<li>Allowed enum variants to be individually marked as untagged (<a href="https://redirect.github.com/serde-rs/serde/issues/2403">https://github.com/facebook/flipper/issues/2403</a>, thanks <a href="https://github.com/dewert99"><code>@​dewert99</code></a>)</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="107018c628"><code>107018c</code></a> Release 1.0.164</li>
<li><a href="a398237930"><code>a398237</code></a> Point out serde(untagged) variants which are out of order</li>
<li><a href="b63c65d7f5"><code>b63c65d</code></a> Merge pull request <a href="https://redirect.github.com/serde-rs/serde/issues/2470">https://github.com/facebook/flipper/issues/2470</a> from dtolnay/contentref</li>
<li><a href="f60324e883"><code>f60324e</code></a> Reuse a single ContentRefDeserializer throughout untagged enum deserialization</li>
<li><a href="361c23a09a"><code>361c23a</code></a> Simplify enumerate().find(...) -&gt; Iterator::position</li>
<li><a href="43b23c7ea0"><code>43b23c7</code></a> Format PR 2403 with rustfmt</li>
<li><a href="6081497506"><code>6081497</code></a> Resolve semicolon_if_nothing_returned pedantic clippy lint</li>
<li><a href="48e5753e76"><code>48e5753</code></a> Allowed Enum variants to be individually marked as untagged (<a href="https://redirect.github.com/serde-rs/serde/issues/2403">https://github.com/facebook/flipper/issues/2403</a>)</li>
<li><a href="bbba632ab3"><code>bbba632</code></a> Revert &quot;Ui tests with compile_error resolved at call site&quot;</li>
<li><a href="e77db40b8d"><code>e77db40</code></a> Ui tests with compile_error resolved at call site</li>
<li>Additional commits viewable in <a href="https://github.com/serde-rs/serde/compare/v1.0.163...v1.0.164">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=serde&package-manager=cargo&previous-version=1.0.163&new-version=1.0.164)](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/4813

Reviewed By: lblasa

Differential Revision: D46680063

Pulled By: passy

fbshipit-source-id: 4af9e5a742ca46b5ce33410e4847799189ee6365
2023-06-13 04:00:08 -07:00
dependabot[bot]
ba5a19f53d Bump com.github.ben-manes.versions from 0.46.0 to 0.47.0 (#4814)
Summary:
Bumps com.github.ben-manes.versions from 0.46.0 to 0.47.0.

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=com.github.ben-manes.versions&package-manager=gradle&previous-version=0.46.0&new-version=0.47.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/4814

Reviewed By: lblasa

Differential Revision: D46680058

Pulled By: passy

fbshipit-source-id: 896ac8ec5a5a4587b786aa68d96c795e49ff5a56
2023-06-13 03:57:21 -07:00
dependabot[bot]
d4cb23446e Bump react-native-flipper from 0.192.0 to 0.195.0 in /react-native/ReactNativeFlipperExample (#4825)
Summary:
Bumps [react-native-flipper](https://github.com/facebook/flipper) from 0.192.0 to 0.195.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a href="https://github.com/facebook/flipper/releases">react-native-flipper's releases</a>.</em></p>
<blockquote>
<h2>v0.195.0</h2>
<p>See <a href="https://github.com/facebook/flipper/blob/main/desktop/static/CHANGELOG.md">https://github.com/facebook/flipper/blob/main/desktop/static/CHANGELOG.md</a>
for full notes.</p>
<h2>v0.194.0</h2>
<p>See <a href="https://github.com/facebook/flipper/blob/main/desktop/static/CHANGELOG.md">https://github.com/facebook/flipper/blob/main/desktop/static/CHANGELOG.md</a>
for full notes.</p>
<h2>v0.193.0</h2>
<p>See <a href="https://github.com/facebook/flipper/blob/main/desktop/static/CHANGELOG.md">https://github.com/facebook/flipper/blob/main/desktop/static/CHANGELOG.md</a>
for full notes.</p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a href="cbadce41db"><code>cbadce4</code></a> Flipper Release: v0.195.0</li>
<li><a href="4ed40506bf"><code>4ed4050</code></a> Make PWA menu bar the Flipper color</li>
<li><a href="16b4d58ac3"><code>16b4d58</code></a> Support filtering by exact match</li>
<li><a href="b34d3e0a74"><code>b34d3e0</code></a> Bootstrap logging and performance improvement</li>
<li><a href="6b655d64db"><code>6b655d6</code></a> Custom log handler setup</li>
<li><a href="56694b441e"><code>56694b4</code></a> Use assets_DO_NOT_HARDCODE in public as well</li>
<li><a href="146a5cf666"><code>146a5cf</code></a> Move server started analytics</li>
<li><a href="b29ced9d52"><code>b29ced9</code></a> Refactor open functionality into function</li>
<li><a href="2062fd7d94"><code>2062fd7</code></a> Flipper Snapshot Bump: v0.194.1-SNAPSHOT</li>
<li><a href="3afe8175d3"><code>3afe817</code></a> Flipper Release: v0.194.0</li>
<li>Additional commits viewable in <a href="https://github.com/facebook/flipper/compare/v0.192.0...v0.195.0">compare view</a></li>
</ul>
</details>
<br />

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=react-native-flipper&package-manager=npm_and_yarn&previous-version=0.192.0&new-version=0.195.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/4825

Reviewed By: lblasa

Differential Revision: D46679159

Pulled By: passy

fbshipit-source-id: 8d4e4f919379e296c2c2a61ee0642da4b7a4f9ec
2023-06-13 03:53:24 -07:00
Lukas Kurucz
279a9e6b52 fix: prefixed plugin package name (#4811)
Summary:
When distributing plugin over Marketplace. Currently there is an issue with downloading a plugin to `tmp` folder if the plugin `packageName` starts with `company-prefix/flipper-plugin-name`. It would throw `ENONET` error while trying to stream the response data into `tmp` folder.

## Changelog

- add support for prefixed plugin package names (`shopify/flipper-plugin-name`,...)

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

Test Plan: - Try install a plugin from Marketplace which has `/` in the plugin `package.json` `name`.

Reviewed By: lblasa

Differential Revision: D46679195

Pulled By: passy

fbshipit-source-id: f330896dae9da7cbe101b1c6d7ed07667fb7ae0a
2023-06-13 03:53:18 -07:00
Lorenzo Blasa
0db4e99aff Track bootstrap diagnostics
Summary:
^

In addition to logging to the console bootstrap performance metrics, track these events to scuba as well.

Reviewed By: aigoncharov

Differential Revision: D46648876

fbshipit-source-id: 191704c13158884bb8cfbca614a23f2a64f1fd93
2023-06-13 02:45:57 -07:00
generatedunixname89002005306973
5f292bcc08 Flipper Snapshot Bump: v0.195.1-SNAPSHOT
Summary: Releasing snapshot version 0.195.1-SNAPSHOT

Reviewed By: lblasa

Differential Revision: D46643991

fbshipit-source-id: 0787d22934d23675a624ffd03b757660a3b46b82
2023-06-12 09:50:21 -07:00
generatedunixname89002005306973
cbadce41db Flipper Release: v0.195.0
Summary: Releasing version 0.195.0

Reviewed By: lblasa

Differential Revision: D46643992

fbshipit-source-id: 1c50201061ec0335f80d49d46eddfe1b534f39a6
2023-06-12 09:50:21 -07:00
Pascal Hartig
4ed40506bf Make PWA menu bar the Flipper color
Summary:
{F1026310422}

I think it's quite nice having a matching title bar and buttons?

Changelog: The Flipper PWA now uses the Flipper purple as theme color

Reviewed By: lblasa

Differential Revision: D46646266

fbshipit-source-id: 1bc6573c3cd863678ceed5b9358a78d19606ee8a
2023-06-12 09:22:54 -07:00
Andrey Goncharov
16b4d58ac3 Support filtering by exact match
Summary: Project: https://docs.google.com/document/d/1SbFrpvfIShX5npANNa1AkgHliR1M-VMLW5Q9RhREt94/edit

Reviewed By: antonk52

Differential Revision: D46642517

fbshipit-source-id: e23eead18189adb9aaacb7eab3244cfce289203e
2023-06-12 07:29:55 -07:00
Lorenzo Blasa
b34d3e0a74 Bootstrap logging and performance improvement
Summary:
Add a few console logs as to highlight how long does it take for our server to start.

Additionally, do not wait until we are ready for client connections before attempting to launch. There's nothing else we do at this point. Instead, launch and wait until we are ready.

Reviewed By: passy

Differential Revision: D46639482

fbshipit-source-id: c098d229edc3cd52e5c876c509a7c81532635afa
2023-06-12 04:51:24 -07:00
Murat Seker
6b655d64db Custom log handler setup
Summary: Add custom log handler setup so people can use their own log infra instead of "printf".

Reviewed By: Neil-Clifford-FB

Differential Revision: D46590343

fbshipit-source-id: ded9cf6caa580d477a71a9155cad9db295151c84
2023-06-09 06:26:52 -07:00
Michel Weststrate
56694b441e Use assets_DO_NOT_HARDCODE in public as well
Summary: Since ~couple of days to last week we cannot download image assets anymore from facebook.com during build, which is worked around in previous diff. This diff fixes it also in the development environment (`yarn start`)

Reviewed By: lblasa

Differential Revision: D46556075

fbshipit-source-id: ee5d912fb06d1632c41ff6d536b64a55608f5848
2023-06-09 04:01:17 -07:00
Lorenzo Blasa
146a5cf666 Move server started analytics
Summary: This is a better place as it takes place once the server starts listening.

Reviewed By: passy

Differential Revision: D46558350

fbshipit-source-id: f586defecc8e16d8f0b285615803662d8b6b75fb
2023-06-08 11:03:44 -07:00