Summary:
This is a first step in breaking up the getting started docs.
Ultimately, the React Native Android and iOS bits will become
separate sections, too, but I won't to keep the diffs a bit smaller.
This one doesn't really do much apart from reorganising the current
content.
Reviewed By: mweststrate
Differential Revision: D20815235
fbshipit-source-id: 5c85b788211699a2a9f5808b9e2590c7db68a1c1
Summary: Metro shows cyclic dependencies warnings in dev mode even if they are caused by 3rd party packages installed into node_modules. This produces a lot of noise, but totally unactionable. In this diff I have implemented patch for "metro" package wich disables these unactionable warnings.
Reviewed By: passy
Differential Revision: D20835057
fbshipit-source-id: 2aebc59a0f8c0adfc768ed4c170e5d0b9ced7e0e
Summary: Adding a role and tabIndex because it's clickable.
Reviewed By: mweststrate
Differential Revision: D20814436
fbshipit-source-id: 2d5acc06363df0cce1c24df7e77b1a6eaa98ab63
Summary:
changelog: Add scroll to inspected element in layout plugin
Before this diff, when one inspected an element, one needed to scroll down to see highlighted line for that element. This diff added automatic scroll to inspected element. It will scroll so that the line is in middle of the app.
Also, fix direct state mutation and this error:
```
Public property 'onKeyDown' of exported class has or is using private name 'Element'.
```
Reviewed By: passy, mweststrate
Differential Revision: D20798587
fbshipit-source-id: 763eb63cd51abd73940e301e36e89232033722c3
Summary:
There was a problem for the next diff because ContextMenu doesn't forward reference to child elements which causes no component attached to ref.
This diff forward ref of ContextMenu to its child. Also, there is casting because of genetic functional component used by NotificationHub
Reviewed By: mweststrate
Differential Revision: D20817968
fbshipit-source-id: d0a19a447decca73db53f02ea029f56fc7127e94
Summary:
Looks like jsdom for jest wants either 10 or 12, but not 11. ¯\_(ツ)_/¯
Pull Request resolved: https://github.com/facebook/flipper/pull/961
Test Plan: Watch Travis signal.
Reviewed By: cekkaewnumchai
Differential Revision: D20815326
Pulled By: passy
fbshipit-source-id: 6b7a8ddda75299443853d8bdca56fe1ce3d60afe
Summary:
Launcher was sort of a proxy for cases where we *wanted* to have an update
mechanism but possibly couldn't use it, e.g. Windows at FB.
This makes sure we can also show this in OSS.
Reviewed By: nikoant
Differential Revision: D20770804
fbshipit-source-id: 62d2dddf9cbd22d51098dda65eea50df420a3078
Summary:
When using baseUrl in site config, it adds a prefix to all link paths.
But for assets, it doesn't work if you refer to them as `docs/assets/...`, you have to use just `assets/...`. Source: https://github.com/facebook/Docusaurus/issues/861
Reviewed By: passy
Differential Revision: D20796933
fbshipit-source-id: 2346e42b8b548f576a1e143f56ee5236eab55073
Summary:
Fix issue where not the full sonar repo was search when looking for Diffs with a changelog entry.
(note that we don't use absolute paths as that gaves problems in the past on CI where a sparse checkout happens and the hg root turned out to be different)
Reviewed By: passy
Differential Revision: D20793800
fbshipit-source-id: a77e1602e00127ba2d831a4c6392e2f1984a4fc6
Summary:
Fixed error "SHA-1 for file is not computed" on 3rd party plugin compilation in dev mode. The error started to appear after moving to yarn workspaces.
Changelog: Fixed error "SHA-1 for file is not computed" on 3rd party plugin compilation in dev mode (yarn start).
Reviewed By: mweststrate
Differential Revision: D20789712
fbshipit-source-id: bbc2fcca197955da50ebf2b51a1fd9cb62f79727
Summary: It takes few seconds for ts-node to start even for small scripts. TS_NODE_TRANSPILE_ONLY env var makes loading much faster ~100-200ms.
Reviewed By: mweststrate
Differential Revision: D20769639
fbshipit-source-id: 9b09a4e128e6b9c9651de98d8193b1d3a8f42b64
Summary: This diff adds the capability to show the plugin names for which flipper failed to fetch metadata. These changes are done for both export as URL and export as File. This diff also fixes the logging for the export as a file and logs the result object in scuba.
Reviewed By: jknoxville
Differential Revision: D20724860
fbshipit-source-id: 4c9591267ca05045e0ed084804d96851c9d7636d
Summary: Publish all the public packages (excluding those with "private=true") included as workspaces to "desktop" project.
Reviewed By: jknoxville
Differential Revision: D20765097
fbshipit-source-id: 444541e9a682a90eba02cb3da85ada9bd00d93d0
Summary:
Automatically bump versions for all local npm packages included as workspaces and fix local dependencies correspondingly.
As a part of this I have also aligned versioning for all the packages by using the same version for all of them.
Reviewed By: jknoxville
Differential Revision: D20745632
fbshipit-source-id: 2d438c4b23ee72f7d7c068c5ce161063c7ceb9e5
Summary:
This got removed a while ago but will cause new checkouts to fail
syncing.
Pull Request resolved: https://github.com/facebook/flipper/pull/946
Test Plan: grep & CI
Reviewed By: jknoxville
Differential Revision: D20736839
Pulled By: passy
fbshipit-source-id: ea5081b5c39e79ddebae5847cafe44ef116990ee
Summary: Import ws package in a usual way instead of importing it as source code
Reviewed By: jknoxville
Differential Revision: D20724584
fbshipit-source-id: 39cad6e544b71e66560a9351f1e5a0c89be2c152
Summary:
***
☝️ **Important announcement:** Greenkeeper will be saying goodbye 👋 and passing the torch to Snyk on June 3rd, 2020! [Find out how to migrate to Snyk and more at greenkeeper.io](https://greenkeeper.io)
***
## The devDependency [ts-jest](https://github.com/kulshekhar/ts-jest) was updated from `24.3.0` to `25.3.0`.
This version is **not covered** by your **current version range**.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
---
**Publisher:** [kul](https://www.npmjs.com/~kul)
**License:** MIT
[Find out more about this release](https://github.com/kulshekhar/ts-jest).
---
<details>
<summary>FAQ and help</summary>
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>
---
Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/942
Reviewed By: nikoant
Differential Revision: D20733257
Pulled By: passy
fbshipit-source-id: 2129d9af444223bf69f91ddd479e1230d9fd59e5
Summary:
***
☝️ **Important announcement:** Greenkeeper will be saying goodbye 👋 and passing the torch to Snyk on June 3rd, 2020! [Find out how to migrate to Snyk and more at greenkeeper.io](https://greenkeeper.io)
***
## The devDependency [types/testing-library__react](https://github.com/DefinitelyTyped/DefinitelyTyped) was updated from `9.1.3` to `10.0.0`.
This version is **not covered** by your **current version range**.
If you don’t accept this pull request, your project will work just like it did before. However, you might be missing out on a bunch of new features, fixes and/or performance improvements from the dependency update.
---
**Publisher:** [types](https://www.npmjs.com/~types)
**License:** MIT
[Find out more about this release](https://github.com/DefinitelyTyped/DefinitelyTyped).
---
<details>
<summary>FAQ and help</summary>
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).
</details>
---
Your [Greenkeeper](https://greenkeeper.io) bot 🌴
Pull Request resolved: https://github.com/facebook/flipper/pull/937
Reviewed By: nikoant
Differential Revision: D20701052
Pulled By: passy
fbshipit-source-id: 06d069a66a48dca5b9d3abdf5900d3f25a55d7db
Summary:
Enabling Metro cache for dev mode. For release builds we reset the cache.
Cache is used for faster compilation in dev mode for both main and renderer bundles, as well as for plugins.
Currently we have few side effects based on env vars, so cache is invalidated when they are changed. Also the cache is invalidated when transformations are changed (changed code, bumped dependency etc). Also added a script to reset the cache if something is going wrong.
Reviewed By: mweststrate
Differential Revision: D20691464
fbshipit-source-id: 478947d438bd3090f052dbfa6ad5c649523ecacb
Summary:
flybefree
Only moved, formatted the JSON and changed the headers.
changelog: New Hermes Debugger plugin for React Native apps.
Reviewed By: rickhanlonii
Differential Revision: D20673166
fbshipit-source-id: 9ecf4708f8834e00699d2d39aa6daa51c46a771b
Summary:
Before we dropped all messages if the client connected before the device has been registered. Which happens typically on iOS (it can actually take very long, will investigate that as well, but not in this diff).
However, we don't need to wait for the device to process messages, we just need its serial, which we already know (given that we use that query id to find the matching device in the first place).
I think this will greatly improved perceived stability for iOS
Reviewed By: jknoxville
Differential Revision: D20734892
fbshipit-source-id: f98e8d31558ef606b9a8287e03fc41ab6c3a087d
Summary:
1) Forced consistend line endings in VSCode on all OSes
2) Copied VSCode settings to both root folder and "desktop" subfolder so both these folders can be opened as VSCode workspace
Reviewed By: passy
Differential Revision: D20724126
fbshipit-source-id: b9e35c6a055457e05cd1c2d6145a58820cc511f8
Summary:
Tracks images in disk cache. It seems performant even with 500+ images in disk cache. Sidebar displays the local path for an image when that image is selected. Shows total size of images in disk cache. 'Clear Cache' clears the disk cache.
For now we unpack the async cache request in the plugin, should implement a `getSync()` method on `bufferedDiskCache` in the future. For some reason Flipper doesn't work with a blocking call (https://fburl.com/smj0s4li).
Reviewed By: defHLT
Differential Revision: D20001062
fbshipit-source-id: 1e7a7900e9f42d05e3bf30472e57cd643caa5aca
Summary: See previous two diffs, this applies the abstraction to our code base
Reviewed By: passy
Differential Revision: D20679687
fbshipit-source-id: 05e340dca3f832971783a844a78d1ffd553ff9d2
Summary:
This diff introducing the sideEffect abstractions, that creates a fundamental solution for the problem in D20619226: If a subscription to the store errors, the entire store can't be updated anymore, bringing the entire app to a halt.
Applying this abstraction will be done in a next diff.
To essential idea of sideEffect is that it fixes a few problems:
1. I decouples and throttles the effect so that no arbitrary expensive burden is added to every store update
2. It makes sure that a crashing side effect doesn't crash the entire store update
3. It helps with tracing and monitoring perf problems
4. It puts the side effect behind a selector so that the side effect is only triggered if a relevant part of the store changes, like we do for components.
Note that if some subscription _must_ be handled synchronously, than that logic should be in a reducer, not in a subscription or side effect. Luckily we don't have any examples of that in our code base.
This abstraction might actually be intesting to be shared wider for fun and profit.
Reviewed By: passy
Differential Revision: D20625872
fbshipit-source-id: adaf8356950594d50e6a99a17a862f757c3777db
Summary:
SORRY FOR BIG DIFF, but it's really hard to split it as all these changes are cross-dependent and should be made at once:
1. Moved transformations to separate package "flipper-babel-transformer" and linked it using yarn workspaces to "static" and "pkg" packages where they are re-used. Removed double copies of transformations we had before int these two packages.
2. Converted transformations to typescript
3. Refactored transformations to avoid relying on file system paths for customisation (FB stubs and Electron stubs for headless build)
4. As babel transformations must be built before other builds - enabled incremental build for them and changed scripts to invoke the transformations build before other build scripts
5. As we need to deploy all the dependencies including the fresh "flipper-babel-transformer" as a part of "static" - implemented script which copies package with all the dependencies taking in account yarn workspaces (hoisting and symlinks)
Reviewed By: passy, mweststrate
Differential Revision: D20690662
fbshipit-source-id: 38a275b60d3c91e01ec21d1dbd72d03c05cfac0b
Summary:
Upgrading the embedded version of React DevTools, primarily to pull in [this PR](https://github.com/facebook/react/pull/18397) which will reduce the impact of this package on `node_modules` size.
# Update process
Following a similar process as D15973709, I began by searching for [all of the references](https://our.intern.facebook.com/intern/biggrep/?corpus=xplat&filename=.json&case=false&view=default&extre=&s=%22react-devtools&engine=apr_strmatch&context=false&filter[uninteresting]=false&filter[intern]=false&filter[test]=false&grep_regex=) to the `react-devtools-core` package and updated all v4 usage to to point to the new 4.6.0 release:
1: Manually update "react-devtools-core" versions:
```
js/package.json
js/react-native-github/package.json
nuclide/package.json
sonar/desktop/app/package.json
sonar/desktop/plugins/reactdevtools/package.json
vscode/modules/vscode-webview/package.json
```
2: Setup Yarn proxy:
```
yarn config set proxy http://fwdproxy:8080/
yarn config set https-proxy http://fwdproxy:8080
```
3: Run "yarn" in each of the above directories.
4: Run the lockfile shell script:
```
~/xplat/js/scripts/update-oss-yarn-lockfile.sh
```
5: Update the generated `MOBILE_JS_NODE_MODULE_DEPS.bzl` by running
```
js1 build buckfiles
```
## Changelog:
[General] [Changed] - Upgrade embedded React DevTools backend from v4.0.6 to v4.6.0.
Reviewed By: cpojer, gaearon
Differential Revision: D20676091
fbshipit-source-id: 99865bdba9bce45e2a7d582d5fb550cfdbeeca3a
Summary:
Solves another acorn/minimist sec vuln. Also removed pins which
don't seem to be necessary anymore based on `yarn.lock` output
which seems to just remove them.
Pull Request resolved: https://github.com/facebook/flipper/pull/930
Test Plan: Ran `yarn build` and it still looks fine.
Reviewed By: mweststrate
Differential Revision: D20669831
Pulled By: passy
fbshipit-source-id: 8d82678cfac6304273aaf752b885edac91e0a8eb
Summary:
Still had the old paths referenced.
Pull Request resolved: https://github.com/facebook/flipper/pull/929
Test Plan: Next release, I guess?
Reviewed By: nikoant
Differential Revision: D20669327
Pulled By: passy
fbshipit-source-id: e268259065df5a48336ec09b81776771e1124fd0
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/928
This should end up out on GitHub as `.gitattributes`.
Reviewed By: nikoant
Differential Revision: D20645657
fbshipit-source-id: d914d05a8f3e1297c4058f2d458959a7439a506d
Summary: Added some UI so that we can manually verify that logging and network inspection is working in RN + Flipper.
Reviewed By: jknoxville
Differential Revision: D20668428
fbshipit-source-id: 4271595583e055b2b0324b3da7ac216c39717093
Summary: We can OOM in flipper, and we'd like to catch those and prevent them from crashing the app. They are Errors, not Exceptions.
Reviewed By: mweststrate
Differential Revision: D20648824
fbshipit-source-id: 60002a3c950518e56189776f05df8f2c92a851f0
Summary: Flipper should never crash the mobile app. This is a plugin entry point, so it's understandable that it can, but we should avoid it whenever possible.
Reviewed By: passy
Differential Revision: D20648373
fbshipit-source-id: f32b428cccdd0c78eb15e9e95a64ecf3f4e10429