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
Summary: Makes it easier to debug.
Reviewed By: mweststrate
Differential Revision: D20645818
fbshipit-source-id: db7cb15487508b5d103db482ecf84adfebc09f48
Summary:
I think this'll clarify how to use the lifecycle methods.
Diagram edit link: https://excalidraw.com/#json=5696112581148672,nDwD6t1BNXVreQ8YE8917g
Reviewed By: mweststrate
Differential Revision: D20645302
fbshipit-source-id: 0814dbe8421cfe8e85c297bd5bfb4a8f1a83c353
Summary:
They have some security vulns, resolving all to the 7.x release
where it's fixed.
What's bothering me about this is that we can't leave comments in the `package.json` to explain why this is there.
Reviewed By: nikoant
Differential Revision: D20645477
fbshipit-source-id: 0ea1a9d27066349943e25d618339a19b48d76def
Summary:
These aren't updated but - importantly - are pinning
some deps with security vulns.
Reviewed By: nikoant
Differential Revision: D20645332
fbshipit-source-id: 491721d5a856e55f23e6a9608ae11632e1667eb2
Summary:
There is error written to console just after launch. It is related to wrong resolution of adbkit-logcat version. This diff forces resolution to the single version everywhere.
{F232416275}
Reviewed By: mweststrate
Differential Revision: D20632452
fbshipit-source-id: bf45bbd6d245dbb1093b093c20e808840689971b
Summary:
This gets us on the latest Prettier 2.x:
https://prettier.io/blog/2020/03/21/2.0.0.html
Notably, this adds support for TypeScript 3.8,
which introduces new syntax, such as `import type`.
Reviewed By: zertosh
Differential Revision: D20636268
fbshipit-source-id: fca5833d003804333a05ba16325bbbe0e06d6c8a
Summary:
Kinda what is in the title. But shouldn't be merged yet as RN 0.62 didn't ship yet.
Also, the iOS tutorial hasn't been verified yet, as the relevant diff hasn't been merged yet (see D19391739)
Reviewed By: passy
Differential Revision: D19468497
fbshipit-source-id: 9e7d90123d3637a1a552c4a9def6420137cf8246
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 [prettier](https://github.com/prettier/prettier) was updated from `1.19.1` to `2.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:** [thorn0](https://www.npmjs.com/~thorn0)
**License:** MIT
[Find out more about this release](https://github.com/prettier/prettier).
---
<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/917
Reviewed By: jknoxville
Differential Revision: D20596394
Pulled By: passy
fbshipit-source-id: 27c551944d3fe15b4cf001f7b0757d31a60e3cbe
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 [prettier](https://github.com/prettier/prettier) was updated from `1.19.1` to `2.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:** [thorn0](https://www.npmjs.com/~thorn0)
**License:** MIT
[Find out more about this release](https://github.com/prettier/prettier).
---
<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/916
Reviewed By: jknoxville
Differential Revision: D20594930
Pulled By: passy
fbshipit-source-id: 5c5eb01c79c184e6ed61dab6a701bddf97e773aa
Summary:
Quick notes:
- This looks worse than it is. It adds mandatory parentheses to single argument lambdas. Lots of outrage on Twitter about it, personally I'm {emoji:1f937_200d_2642} about it.
- Space before function, e.g. `a = function ()` is now enforced. I like this because both were fine before.
- I added `eslint-config-prettier` to the config because otherwise a ton of rules conflict with eslint itself.
Close https://github.com/facebook/flipper/pull/915
Reviewed By: jknoxville
Differential Revision: D20594929
fbshipit-source-id: ca1c65376b90e009550dd6d1f4e0831d32cbff03
Summary: Fix for build on windows
Reviewed By: mweststrate
Differential Revision: D20601309
fbshipit-source-id: 9845964513d7904f58e3511b1c4daa8716f7b054
Summary:
Collecting notifications is done in the store.subscribe. If this throws however, the entire original dispatch throws (really Redux?!). So added a try catch around collecting notifications. This stops plugins from crashing while processing the queue (in fact this could happen during any Redux dispatch).
Will look into a more robust mechanism in the future
I suspect this also fixes the hanging graphQL issue
Reviewed By: jknoxville
Differential Revision: D20619226
fbshipit-source-id: 2f6b8e13a5c884dd63b6963d317474a2abf0725c
Summary:
This is the change made by Pascal at D19813495. to clean up the file
Shouldn't really change how it works but makes it
safer and brings it in line with our coding standards.
Reviewed By: passy
Differential Revision: D20474258
fbshipit-source-id: 67d77316a5b7efd7258072b4f35a2d9c50de408e
Summary:
Add logic on client side
# How it works (from the code)
1. Server side sends request url and method to response data and headers to client side
1.1. This will happen every time server update **any** mock response (add, edit, and remove)
2. Client stores those in map
3. For every network request,
3.1. Check if there is a matching url and method
3.2. If so, create a new response with the data and headers and drop the request
3.3. If not, proceed and send the request and wait for a response
`addNetworkInterceptor` is changed to `addInterceptor` to allow short-circuit and proceed without fetching anything. More info can be found at https://square.github.io/okhttp/interceptors/
Note:
- This is an original PR.
- The content below is from original PR
Add network response mocking for Network plugin. See discussion [here](https://github.com/facebook/flipper/issues/475)
## Changelog
- Add Network response mocking, currently support Android clients only
- Change the Android example app to use `addInterceptor()` instead of `addNetworkInterceptor()`
Pull Request resolved: https://github.com/facebook/flipper/pull/488
Test Plan:
{F231673798}

- Connect an Android device
- Tap on Network plugin
- Click on the Mock button
- Click on Add Route button, and specify the URL
- Edit the mock data in the text area
- Optionally, click the Headers tab to edit the headers data
- Click close button to close the dialog
- Send some network data in your application. You should be able to see the mock data appears in the Network table in those rows highlighted in yellow
Reviewed By: passy
Differential Revision: D16580291
Pulled By: cekkaewnumchai
fbshipit-source-id: fc391f5e7efebc6f51a72b00d16263e009e1fdb0
Summary:
per title
Note:
- This is a part of this PR: https://github.com/facebook/flipper/pull/488
Reviewed By: jknoxville
Differential Revision: D20474257
fbshipit-source-id: d2ac79d03ac67453bd67ecc46ace973be1590c04
Summary:
- Add a new listener to be called when the plugin is initialized
Note:
- This is a part of this PR: https://github.com/facebook/flipper/pull/488
Reviewed By: jknoxville
Differential Revision: D20474259
fbshipit-source-id: ef1673ffa7fbc087761a753fbae813346bd481c3
Summary: Not sure how, but after I removed gitignore, symlink to it kept on its place and caused errors on "flipper-oss-ios-build" job. This diff removes the symlink.
Differential Revision: D20601201
fbshipit-source-id: 0ea21e875f82a0da25d07c635f889232c9f637a0
Summary:
Breaking down 'big' links and diving deeper into stack trace
each link is built from multiple events with same function on top of call stack
Now we can break that group and/or navigate one level deeper in that stack
coloring links: according to the latest event timestamp: blue -> orange gradient
{F232164201}
Reviewed By: SimoneCasagranda
Differential Revision: D20596812
fbshipit-source-id: 9debbc55a716166e20c94f51989742bf40b95878
Summary:
The memoized callback didn't have any dependencies, so whenever a context menu was computed for a component, it was never changed again.
This broke the network plugin as the context menu should change depending on what element is selected.
Reviewed By: cekkaewnumchai
Differential Revision: D20596750
fbshipit-source-id: 275453d972079954e310fd3e97f2dd9f437bf748
Summary:
The network plugin warns about network requests that cannot be properly deflated if they are big and binary. Not sure yet why that is the case and if that is something that should be addressed (planned T63909985 for that), but if the body is big and binary it causes problems for our logging.
While testing I had some requests that where 45m large, and Electron literally hang for a few minutes before recovering. Failed to capture that, but the test plan shows smaller cases of the problem
Reviewed By: jknoxville
Differential Revision: D20560083
fbshipit-source-id: 324eb180b203dd585814dba5c94373d8daee5dde
Summary:
A lack of correct chaining of promises, error handling and not explicitly dealing with the ADB state 'still connecting' causes errors to be shown in Flipper on the main thread, the browser console and in the debug error bar.
This diff fixes several of those issue, which gives a stabler much stabler experience when disconnecting and connecting emulators and physical devices a lot (it is a bit hard to capture in a movie, but more noticeable when doing it IRL)
Reviewed By: jknoxville
Differential Revision: D20559197
fbshipit-source-id: 643172d322aefe1be209741a48fa0e96358881eb
Summary: Fixed circular dependency warnings and removed some dead code while at it.
Reviewed By: jknoxville
Differential Revision: D20557313
fbshipit-source-id: 856c42113a9abe36d3e14f9d538eb40705ceb87f
Summary:
Our usage of requestIdleCallback (probably) causes more trouble than it solves:
1. It makes sure everything is processed asynchronously. But since everything is arriving over a network stack, that is already the case without wrapping it again to run on a separate event loop tick
2. The timeout we set before `500` forces the app to give _more_ priority to message processing instead of less
3. In a next diff (D20151700) in this stack we will make sure that messages are not processed immediately, but simple stored, which should not be significantly more expensive (probably even cheaper) than scheduling another tick on the event loop
Reviewed By: jknoxville
Differential Revision: D20557104
fbshipit-source-id: 6cc10ba537e3cb5f31e6c32e1fdeb57c20f06f17
Summary: Did run for 2 months stable now, time to remove some dead code.
Reviewed By: passy
Differential Revision: D20556785
fbshipit-source-id: 514673995212d62d21744f304286caa6e91007fb
Summary: Added tsconfig.base.json and extend other tsconfigs from it.
Reviewed By: passy
Differential Revision: D20594653
fbshipit-source-id: 28dd80262613e78a7c4ce25fa31f251537ec2b06
Summary:
Updates the instructions to integrate iOS pods for the case with the usage of `use_frameworks!` for cocoapods 1.9. Also changed our podfile for Tutorial app and add travis test for the same, so that in future if there are any further changes with the API in new releases of cocoapods, we can catch it.
## Changelog
- Added travis test for iOS Tutorial app
- Updated the getting started guide for iOS
Pull Request resolved: https://github.com/facebook/flipper/pull/892
Test Plan: Travis test passed and also tested that tutorial app builds with cocoapods 1.9
Reviewed By: mweststrate
Differential Revision: D20587989
Pulled By: priteshrnandgaonkar
fbshipit-source-id: b297e6b1298a20a9279ad6414e9d099917876fb1
Summary:
Set line height to make space between lines look better in cramper space (See Test Plan).
This has direct side effect on:
- https://fburl.com/diffusion/0dtt1cgl
- ToggledSection component
In addition, this diff adds an offline cache.
Reviewed By: mweststrate
Differential Revision: D20574486
fbshipit-source-id: 8689bc95e2f18409e82c923fea361e033e77bc00
Summary:
1) Add VSCode settings to the source control, so users won't need to configure them
2) Copy VSCode settings to both "sonar" and "sonar/desktop" folders so both folders can be opened for development
Reviewed By: passy
Differential Revision: D20594643
fbshipit-source-id: 4331659008e4dbf9dfcc44a3723ab0612a3bd333
Summary:
1) moved "sonar/desktop/src" to "sonar/desktop/app/src", so "app" is now a separate package containing the core Flipper app code
2) Configured yarn workspaces with the root in "sonar/desktop": app, static, pkg, doctor, headless-tests. Plugins are not included for now, I plan to do this later.
Reviewed By: jknoxville
Differential Revision: D20535782
fbshipit-source-id: 600b2301960f37c7d72166e0d04eba462bec9fc1
Summary:
See the linked task. The QPL can literally freeze Flipper. Initial testing showed that the cause is primary the timeline view.
It was already suggested in the past to hide the timeline by default, as it is not that useful. So did.
Will try to unbreak the timeline in the future, but this at least unblocks the linked task.
Reviewed By: jknoxville
Differential Revision: D20538421
fbshipit-source-id: 8f5cd18c89322e94da5ab055e1913b6434eacf8a
Summary:
This has never worked due to historic problems with idb log: https://fb.workplace.com/groups/idb.users/permalink/875711589527983/
It sounds like they have been fixed though, so I'll look into getting it going. But for now, disabling it until it's working to hide a broken experience.
Reviewed By: passy
Differential Revision: D20534205
fbshipit-source-id: 3a39c9930fa195562d946bcfe9fd3388e3329be3
Summary: When expanding the sidebar, sometimes the sign in / profile button would disappear, as the main content would be to height
Reviewed By: passy
Differential Revision: D20534482
fbshipit-source-id: 6248df501afcefc4afb6df3a6fd864462f8290e4