Summary:
Bumping the version as the manifest is very much incompatible
with the previous one.
Reviewed By: jknoxville
Differential Revision: D24078358
fbshipit-source-id: 562a1216e8c913b18a2509b126402dbd56054c8d
Summary: Just going through all the lints that have popped up.
Reviewed By: jknoxville
Differential Revision: D24078571
fbshipit-source-id: 06504aafa969eea92ee934ac607d3daf51e47914
Summary: This now makes use of the `tarsum` mod to surface both intrinsic and extrinsic checksums as part of the manifest. I also threw in the file name and the bytes for good measure. This is output in Sandcastle logs and can help identify mismatches. The filename also means we no longer have to rely on piecing together paths on Sandcastle which is nice.
Reviewed By: nikoant
Differential Revision: D24046464
fbshipit-source-id: dc6dc50eb510a067674166b5fdb11af9cf6762b2
Summary:
# Problem
Oddly enough, since the addition of ReactiveCocoa to Electron on MacOS, we're seeing non-determinism when creating tar archives. P144049799 shows the difference between two release artifacts built on Sandcastle. Their contents are identical but they're packed differently.
# Approach
To counter this, I'm now calculating the checksum not based on the archive itself but on its *sorted* contents by first inserting all files into a `BTreeMap` with the file path as key and then lastly hashing all hashes, building some sort of bastardised Merkle tree.
# This diff
I'm only implementing the hashing here. The next diff will actually make use of this.
# Further steps
This requires a few more downstream changes which will require some finesse to roll out.
- The manifest will need to include both the intrinsic and extrinsic checksums as Launcher depends on the latter to verify the download integrity. We could also calculate the intrinsic checksum again, but that just adds more complexity which is hard to debug.
- Sandcastle will need to understand the new manifest format and we need to schedule the MSDK rollout accordingly. Not a huge problem as the call volume is low and manual.
- We need to modify the artifact and release ents to contain both checksums.
- The release endpoint needs to be modified to return the checksum the launcher cares about.
Reviewed By: nikoant
Differential Revision: D24024011
fbshipit-source-id: 55de748178c033c18a69c79c68f12e7c1aaf4deb
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/1564
Reviewed By: cekkaewnumchai
Differential Revision: D24046974
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 2722a6a6598c20494a345da8c1c7f51194a40b31
Summary:
Changelog: Flipper can now launch iOS simulators by using `File > Launch Emulator...`
In the Sandy designs the device selector dropdown no longer shows the option to launch an emulator. So added a button to app inspect and the main menu instead.
I found it always a bit funny that we can launch android emulators, but not iOS emulators. Turns out that launching them is actually not very complex, so added capabilities to launch ios emulators
Reviewed By: jknoxville
Differential Revision: D24021737
fbshipit-source-id: c106cc2246921e008f9c808ebb811d8e333aa93b
Summary: If a new code path uses some Ant design based components in classic flipper, they are unstyled before this diff. By making sure that the ant stylesheet is loaded we can safely 'leak' new UI elements into the old UI. For example when we use toasters, dialogs etc.
Reviewed By: cekkaewnumchai
Differential Revision: D24021751
fbshipit-source-id: 3b42d28f1c75e4df441170660027562264e879dd
Summary: This is a small utility to be able to render a react element without giving it a position somewhere in the react render tree, so that dialogs can be triggered and rendered imperatively for example.
Reviewed By: cekkaewnumchai
Differential Revision: D24021752
fbshipit-source-id: 84633624c63c72a38a1b277207efba75af358a03
Summary: Added standardized dimensions for padding and gap, to encourage people to build layouts that look consistent, using for example `padv="small"`
Reviewed By: cekkaewnumchai
Differential Revision: D23961386
fbshipit-source-id: 33cd3b8974858e021a8b7d1b32f018fe3f007c63
Summary:
This diff introduces:
- ScrollContainer
- Make sure Ant Link components always open URLs externally, to avoid users needing to use electron api's
- Introduce a design systems page where people can find docs on how to organise sandy layout, and it also provides a convenient way to test layout mechanisms.
- Fixed several layout bugs found as a result of adding the design system page
In next diff:
- more convenience around organizing paddings
- making the design system accessible from the menu
Reviewed By: cekkaewnumchai
Differential Revision: D23930274
fbshipit-source-id: 4aab058d15b3391287e0e32513a5d83831448857
Summary:
The instructions for React Native were outdated. In RN0.63, most of the setup has been moved to a helper method.
## Changelog
* Updated instructions for React Native 0.63 (petrbela)
Pull Request resolved: https://github.com/facebook/flipper/pull/1546
Test Plan: N/A
Reviewed By: mweststrate
Differential Revision: D23961759
Pulled By: passy
fbshipit-source-id: db89d2b9836da1959ff46683d76c23aea8e2a2fd
Summary: The same as D23729972 (0982dc06a0), but now it is also possible to reload device plugins independently.
Reviewed By: jknoxville
Differential Revision: D23960058
fbshipit-source-id: 01e0edb29a62ed173dfe6f5946466269adee453a
Summary: Show plugin version on hover to easily check the current version without opening Plugin Manager
Reviewed By: mweststrate
Differential Revision: D23730582
fbshipit-source-id: 580da6ccd38c10b13dd9c438d4cf8d6ba8719644
Summary: Implemented a way for re-loading single plugin on auto-update. This make it possible to apply update without full Flipper restart.
Reviewed By: mweststrate
Differential Revision: D23729972
fbshipit-source-id: ed30f7cde5a0537945db0b5bb6969ae8fde42cb6
Summary: The misbehavior came from undefined height and width inside `Sidebar` component. This is fixed by put it in the container that expands through whole `Sidebar`.
Reviewed By: Andrey-Mishanin
Differential Revision: D23954008
fbshipit-source-id: 9c096a8f3141a012a2a1ab32c2d5e689e7bde396
Summary:
I noticed that after the typescript upgrade, I got several weird positives from ESLint (like unused parameters in a type definition, which are obviously always unused, e.g. `type onClick = (e: Event) => void`). After some investigation, it turned out these warnings are generated by eslint, but that those rules should be performaned by typescript/eslint instead. For future reference to which rules this applies:
https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/README.md#extension-rules
Updated the config, and while at it, fixed all warnings in our codebase, except for `react-hooks/exhaustive-deps` warnings, since those require semantic changes.
This reduces the amount of eslint warnings from 86 to 39.
Reviewed By: passy
Differential Revision: D23905630
fbshipit-source-id: 0557708fd9ec6b17840a3c191e7d3baf225bdf23
Summary:
This diff introduces the AppInspect pane.
I didn't get very fare, and it is markup only, but while at it made a bunch of other improvement in the component lib, so figured to prematurely submit to don't make the diffs too big.
Improvements
- Separated sidebar and Layout.X, as it was to much responsibility for one component, and made customization hard. Also caused state loss when switching between resizable and not.
- Setup a basic top level selection. Maybe will move it into redux in the future, but for now it suffices.
- Introduced Layout.Horizontal and `Layout.Vertical` as alternative to Ant design's space. The reason is that the latter can't stretching children, which we use quite frequently. (that is because they use wrappers to create spacing, but since we run on Electron, we can use CSS `gap` instead, which handles that much more elegantly).
- Fixed issue where gutter handle could disappear when dragging to far.
Reviewed By: cekkaewnumchai
Differential Revision: D23867265
fbshipit-source-id: e872b7f48b868e255f2c34d45e811b8ed93d0b00
Summary: May be useful for stability signals, or general bug correlation down the line.
Reviewed By: nikoant
Differential Revision: D23904843
fbshipit-source-id: ca31722b58d4657a9600fe5ce16ea3b5efd2c870
Summary: Send data to NT/Bloks plugin instead of Bloks plugin. There are changes on the distillery side as well D23873230, which needs to land together with this diff.
Differential Revision: D23903952
fbshipit-source-id: 2b748e73116f10d69ec1cf810075882bb8fa09a6
Summary: This way we don't need to depend on Sandcastle configurations. amurawska pointed out that the header in `generate-changelog.js` indicates it must be run with Node 6, but trying to do so actually raises a Syntax error.
Reviewed By: mweststrate
Differential Revision: D23904875
fbshipit-source-id: 264f3b16d64ebfbae6afb0028715f67624166499
Summary:
Bumps [react-native-flipper](https://github.com/facebook/flipper) from 0.56.0 to 0.57.0.
<details>
<summary>Commits</summary>
<ul>
<li><a href="2fcab458bf"><code>2fcab45</code></a> Flipper Release: v0.57.0</li>
<li><a href="bb176577e9"><code>bb17657</code></a> Back out "Use interface SupportSQLiteDatabase in Android Databases Plugin"</li>
<li><a href="09e3c7a80f"><code>09e3c7a</code></a> Add chocolatey as a way to install openssl for windows (<a href="https://github-redirect.dependabot.com/facebook/flipper/issues/1527">https://github.com/facebook/flipper/issues/1527</a>)</li>
<li><a href="a5fbe167b9"><code>a5fbe16</code></a> Bump react-native-flipper from 0.54.0 to 0.56.0 in /react-native/ReactNativeF...</li>
<li><a href="48270af383"><code>48270af</code></a> Bump eslint-plugin-react-hooks from 4.1.0 to 4.1.2 in /flipper-js-client-sdk ...</li>
<li><a href="bb807243ae"><code>bb80724</code></a> Revert "fbjni 0.0.4 (<a href="https://github-redirect.dependabot.com/facebook/flipper/issues/1428">https://github.com/facebook/flipper/issues/1428</a>)" (<a href="https://github-redirect.dependabot.com/facebook/flipper/issues/1524">https://github.com/facebook/flipper/issues/1524</a>)</li>
<li><a href="d468d94363"><code>d468d94</code></a> Back out "Show FB internal instructions by default on "Getting Started" page"</li>
<li><a href="643a656cd9"><code>643a656</code></a> Back out "Merge internal and external troubleshooting pages into one with opt...</li>
<li><a href="8425db7b8b"><code>8425db7</code></a> Merge internal and external troubleshooting pages into one with optional inte...</li>
<li><a href="12d7b48443"><code>12d7b48</code></a> Show FB internal instructions by default on "Getting Started" page</li>
<li>Additional commits viewable in <a href="https://github.com/facebook/flipper/compare/v0.56.0...v0.57.0">compare view</a></li>
</ul>
</details>
<br />
[](https://docs.github.com/en/github/managing-security-vulnerabilities/configuring-github-dependabot-security-updates)
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/1537
Reviewed By: mweststrate
Differential Revision: D23876572
Pulled By: cekkaewnumchai
fbshipit-source-id: 37fa5e66f6feb60701762f43a349dbe3b6eec1fd
Summary:
This adds support for flipper logs in Sandy, including some theme adjustments.
Did remove storage and showing of debug messages, as I noticed it tends to crash Flipper after a while since there are so many. Also added a fixed limit of only remembering last 1000
Also converted Toolbar and button with dropdown items to Sandy.
Reviewed By: cekkaewnumchai
Differential Revision: D23824528
fbshipit-source-id: b89d1182d4f14682251dbb482d93c2c009ddc7a4
Summary:
allow-large-files
Updated to typescript 4. Note that this is no new major, the way TS numbers is that 4.0 is simply the number after 3.9 (so they refuse to use 3.10).
Primarily reason is that it allows us to use `/** deprecated */`. although there are definitely more interesting improvements
Reviewed By: passy, nikoant
Differential Revision: D23869445
fbshipit-source-id: 54e251b398b8698d9b18898ce66c3203b32aa356
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/1542
Reviewed By: mweststrate
Differential Revision: D23888791
Pulled By: cekkaewnumchai
fbshipit-source-id: 75e0de6ea8f4d356fc1d3fca88127351d9164bba
Summary:
Per title
~~Note: `useStore.tsx` is copied from D23783500 (e7fdd8332d). This should be merged correctly in case the diff is landed before.~~
Reviewed By: mweststrate
Differential Revision: D23784302
fbshipit-source-id: adb5678c1b2614e3af4278889529c3fa79335bef
Summary:
Typography on Sandy! The designed typography is [here in Figma](https://www.figma.com/file/4e6BMdm2SuZ1L7FSuOPQVC/Flipper?node-id=238%3A172)
Current deflects
- cannot find component for 'body - small' and 'meta'
- don't know how to set 'link secondary hover' as designed
Reviewed By: mweststrate
Differential Revision: D23869256
fbshipit-source-id: efb1475749cebad529b502458d1b15bd445bb346
Summary:
We're seeing some CSR mismatches when they aren't expected. Adding logging to print out what is being found, to see if it's any OS-specific encoding issues or something like that, or completely different CSRs, etc.
URL encoded in case there are differences in non printable characters.
Reviewed By: nikoant
Differential Revision: D23867267
fbshipit-source-id: f406a396c808687b6b84561eb1def61b565aee34
Summary: The Flipper `Button` component now uses Ant.design under the hood if available. This is detected using context
Reviewed By: cekkaewnumchai
Differential Revision: D23813166
fbshipit-source-id: 489a34d55c0b69d7b5bcd30f4275b89d0bb22c0d
Summary: Converted Buttons to hooks, to make it easier to use context in the future. No further changes.
Reviewed By: cekkaewnumchai
Differential Revision: D23812921
fbshipit-source-id: 3739ad49e734dbe4d903a23d58da7cc267f6e109
Summary:
This enables opening the settings panel from Sandy. Created a small code switch in layouting to make sure it looks ok in both sandy and native dialog. Inside the settings no new components are used yet, which will be done in next diffs.
Also removed the close button from temporarily titlebar as settings are now accessible from Sandy chrome
Reviewed By: cekkaewnumchai
Differential Revision: D23812321
fbshipit-source-id: f8888373632786bb75f6dad635d300729b5086dc
Summary: This copies several utilities from the old title bar to the new one. We will have to revisit this in the future as it will eventually disappear. But in the mean time it makes sure version info and performance graphs are shown
Reviewed By: cekkaewnumchai
Differential Revision: D23824366
fbshipit-source-id: 0e495cd6d70db6a38da6df52b47ffee4bcb6f69f
Summary: FlipperEditor has migrated to `litho-editor-flipper`, so this diff fixes the dependency tree and deletes the file.
Reviewed By: muraziz
Differential Revision: D23380023
fbshipit-source-id: 75f5f037dc392194212fc156499f090c381999bd
Summary: I accidently broke search by query in a previous diff, so fixing it here
Reviewed By: passy
Differential Revision: D23842187
fbshipit-source-id: 9fcc7a46048ff99e1bf26c8a70ef0240b38018cb
Summary:
Implemented a first button: make main menu collapsible.
Also introduced some additional utilities and hooked up startup performance logging
Reviewed By: cekkaewnumchai
Differential Revision: D23783500
fbshipit-source-id: 2456fd781a52d497facbaccfabe885e4f8c408c5