Summary:
Apparently this seems to be the only way to make build work, with the updated licenses. It also follows the same strategy as Travis.
I am using double pipe in `sdkmanager` command execution, to avoid breaking the build, because `sdkmanager` returns exit code 141 in case it meets the requirements requested. (e.g.: `yes | sdkmanager --licenses` returns 141, which in turn breaks the build due to `set -eo pipefail` Bash flags, that CircleCI is using in order to execute any scripts)
For the record, I tried the following solutions, that did not work:
* Add accepted license SHA in Android SDK licenses folder.
* Accept all licenses prior to running the other jobs (with a separate job, working as a dependency to the rest of the Workflow jobs) (`yes | sdkmanager --licenses`)
* Accept all licenses prior to executing any Gradle command (without a separate job) (`yes | sdkmanager --licenses`)
Pull Request resolved: https://github.com/facebook/flipper/pull/362
Differential Revision: D13817430
Pulled By: passy
fbshipit-source-id: d8c95fc5b9202306dd50ea103b6e90142e73ef61
Summary: This adds some frankly disgusting magic to the bump script to determine the next viable snapshot version and creates a second commit.
Reviewed By: jknoxville
Differential Revision: D13801765
fbshipit-source-id: 40728afe9dfde3da7a4fced645a89ed293109878
Summary:
Part 2 of changing flipper to use customizable ports: iOS SDK.
Still to go: JS app.
env var should be of the format:
`FLIPPER_PORTS=1111,2222` for insecure port: 1111 and secure port: 2222.
Reviewed By: danielbuechele
Differential Revision: D13800988
fbshipit-source-id: 3560ba850389964f4b784551b803c45c6524e6f0
Summary: Due to a change in the roadmap the plugin has been renamed to Sections
Reviewed By: danielbuechele
Differential Revision: D13505447
fbshipit-source-id: ff171c5b69ef8186744298a32c7c6b9de49daf2a
Summary:
A new test uses a non-public dependency causing the travis CI to fail.
Use the standard roboelectric one instead.
Reviewed By: passy
Differential Revision: D13801098
fbshipit-source-id: 9fcda26fceaed22d18bd743f10bf39eaae0da7a6
Summary:
Compiled statically for darwin and Linux (x86_64). Also
changed some flags to make this reproducible.
Reviewed By: danielbuechele
Differential Revision: D13801305
fbshipit-source-id: d98701afca3c4787922d377bc6b674b59421f5b8
Summary: Makes building a bit easier and I can have my own README in there.
Reviewed By: jknoxville
Differential Revision: D13784725
fbshipit-source-id: b694c1ce812d4e383ad44faeacd8e0094a96b432
Summary:
Add Podfile documentation so that projects that use `use_frameworks!` have a way to import Flipper into their project
Pull Request resolved: https://github.com/facebook/flipper/pull/347
Reviewed By: passy
Differential Revision: D13761700
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 36d8a5d590b96203ac30fd5d0ca32cae4f194024
Summary:
Part 1 of enabling flipper to run on custom ports: android SDK.
Still to go: iOS SDK and desktop
This should allow you to run mobile apps that use flipper on different ports than the default (8089,8088).
`adb shell`
`su`
`setprop flipper.ports 1111,2222`
From what I can tell, this only works on rooted devices.
Reviewed By: passy
Differential Revision: D13753238
fbshipit-source-id: c5f370c9d8c7382e8c17fb81d4010c642ef7c114
Summary:
After the LogManager interface change this file wasn't updated.
The test isn't enabled at the moment, but I don't know why flow didn't notice this.
Reviewed By: passy
Differential Revision: D13783861
fbshipit-source-id: 09d887f6567300aa9a16ec2a97b17a2d9de338d1
Summary:
Currently, when bumping the version, the script will override "-SNAPSHOT" mentions in both the docs and the properties. This requires some manual fixup after every release. With this change, you can pass "-s" or "--snapshot" to change the version number to a snapshot release and it will only affect the places where that change is necessary.
Did some overall cleanup, too, like getting rid of the macro magic to determine the current location which messes with tooling.
This does *not* include the updated binaries yet. I'll put them up as a separate diff.
Reviewed By: priteshrnandgaonkar
Differential Revision: D13782177
fbshipit-source-id: 87ad0ab20a5f544ddb6aa3e2d30949bbabbabfc4
Summary:
It turns out puma was erroring on the GK field inside the log json, because of improperly escaped " in the fields.
To simplify it I'm changing it to use simple comma separated key:value pairs, since they are always plain string and boolean values.
"gatekeepers":"TEST_PASSING_GK:false,TEST_FAILING_GK:false,devtools_sonar_team:false"
Reviewed By: passy
Differential Revision: D13782283
fbshipit-source-id: 3f331dc9189b1a57f69a2af0d4393baf45e1fa55
Summary:
We had a promise for initializing the servers, but it wasn't rejected when server startup failed.
Fixed by resolving / rejecting based on the listen / error events fired from the server.
Reviewed By: passy
Differential Revision: D13762580
fbshipit-source-id: a0d1a56473f84dc416e5ce2de91a53b21574f452
Summary: Android and iOS each have a separate metric
Reviewed By: passy
Differential Revision: D13763758
fbshipit-source-id: f679360ec0ee008b434bfe12107ac6548d882a1f
Summary: I made that release so it better be good.
Reviewed By: jknoxville
Differential Revision: D13761454
fbshipit-source-id: 28cc1e113e91c3cb96b493a67b21afa77ea61a27
Summary:
Android SDK license SHA has been updated as of January 16, 2019 so it needs to be re-accepted. This is only needed for CircleCI since in Travis setup `sdkmanager` is used in order to accept the Licenses.
Pull Request resolved: https://github.com/facebook/flipper/pull/359
Differential Revision: D13751841
Pulled By: passy
fbshipit-source-id: f3d84277f06bedf06b7a766429d9f7e3275bb516
Summary:
This helps Kotlin nullity inference and *should* already be enforced
by Infer/Eradicate. More details here: https://medium.com/square-corner-blog/non-null-is-the-default-58ffc0bb9111
Reviewed By: jknoxville
Differential Revision: D13732788
fbshipit-source-id: c0c60f0f8e9dc8bffe3780c7a1a700d682a6d2b8
Summary: Manually checked that the snapshot doesn't contain the auto updater.
Reviewed By: jknoxville
Differential Revision: D13715520
fbshipit-source-id: 720fed1e9952b788bce3311ecb508cfcfdc1758a
Summary: Provide a `--no-updater` option that disables the in-app auto updater when passed.
Reviewed By: jknoxville
Differential Revision: D13713919
fbshipit-source-id: 49a647105fea1efa23f653e4a6ed452b3489879b
Summary: This diff adds support to send crash notification whenever the cpp exception of Flipper is suppressed. Also updated the tests regarding the same
Reviewed By: jknoxville
Differential Revision: D13635822
fbshipit-source-id: 01e4a57c391476e5b044e64946d337cb4582a527
Summary: To allow comparisons between metrics/errors in and out of GKs.
Reviewed By: passy
Differential Revision: D13714754
fbshipit-source-id: 311a1cd7bd5a7b2332e20a32d37d0fb323d00569
Summary:
The folly version which we were using to build open source was v2018.08.06.00, which is very outdated.
This PR updates the version of the folly to the latest one.
Pull Request resolved: https://github.com/facebook/flipper/pull/355
Reviewed By: passy
Differential Revision: D13710812
Pulled By: priteshrnandgaonkar
fbshipit-source-id: 62b205d10c18f4338ead69612b24805c697081fb
Summary: Will allow us to look into bad sessions if necessary.
Reviewed By: passy
Differential Revision: D13695386
fbshipit-source-id: 2cfc8ec28ef4cb387ef7a5a58b02aa77a367ae81
Summary: Remove `$Subtype` and `$Supertype` utilities. Replacement was done on a best-effort basis. In many cases it sufficed to replace `$Supertype<T>` and `$Subtype<T>` with `T`, but when this was not possible `any | T` and `any & T` were used instead.
Reviewed By: jbrown215
Differential Revision: D13624765
fbshipit-source-id: 82ee9d43cfc318ed4bd2d84e0f4c5c1d8f488a9c
Summary: Will provide some visibility on error rates.
Reviewed By: passy
Differential Revision: D13671492
fbshipit-source-id: 60971a7e8163c58dd4d6540e57e05b38c852744e
Summary: This tracker isn't really used, but at least now it can benefit from having the sessionId.
Reviewed By: passy
Differential Revision: D13671367
fbshipit-source-id: 3a79e843e3fabab191d0d7471d56a81b1a91a1e9
Summary:
The advantage of this is that anyone can now log without needing to carry around a Logger object.
Primary reason is for making metrics less intrusive in the codebase.
Reviewed By: passy
Differential Revision: D13671368
fbshipit-source-id: 162ab1351a124683aef13983fc3bcec01385cd1a
Summary:
The gradle dependency on soloader was using a wrong groupId (flipper instead of soloader)
Pull Request resolved: https://github.com/facebook/flipper/pull/354
Differential Revision: D13671271
Pulled By: passy
fbshipit-source-id: b03a77199bb14601fb6a3a1f21e8c404d0072104
Summary:
- Refactored [Crash Reporter Plugin's](https://fbflipper.com/docs/crash-reporter-plugin.html) android implementation to show the crash notification for all kind of crashes. It sniffs the logcat and fires notification whenever crash happens.
- "Plugin not showing?" in the plugin list now supports more cases for telling you what went wrong.
- Plugins are now sorted by name.
Reviewed By: jknoxville
Differential Revision: D13650988
fbshipit-source-id: 8b4861befa962162dea84a1394ea2829b88ab4c9
Summary: We've seen some flakiness here, so adding this to get better visibility on it.
Reviewed By: passy
Differential Revision: D13635051
fbshipit-source-id: 98d2dcc0bb11f3afb2f27942b9f4bf241808a4fc
Summary: Wraps a future and records the success rate. This will be stored along with the sessionId and the userId, so we can drill down and get the success rate at different levels.
Reviewed By: passy
Differential Revision: D13635049
fbshipit-source-id: 4e0e6bdc0f9b76b08cf37c5d9fe87909f7338534
Summary:
This is semi-explorative to see how far we can get with this approach, but I think it'l be useful. If it is, we can factor the code into a nicer utility, that perhaps wraps promises or even just has succeeded/failed methods.
Using 1 and 0 instead of true and false so we can do numerical aggregates on it, like average, which will give the success rate.
This will allow queries such as:
* What percentage of attempts fail? - Not very useful because they get retried if they fail.
* What percentage of sessions that attempt, encounter a failure? - More useful, but still not perfect because they could retry and succeed.
* What percentage of sessions attempt and don't ever succeed? - Better but still not perfect because one device might succeed and another fail, but this will be rare.
Reviewed By: passy
Differential Revision: D13625987
fbshipit-source-id: 2b9f45cc888247d068cc52281443e9ece7985da8
Summary:
I've left InteractionTracker without a store, so it doesn't know the sessionId. It really should have one, but that will have to be a different change.
We don't actually use the InteractionTracker at the moment so it's not a major deal for now.
The idea is to be able to get data like what percentage of sessions encounter an error, and how many errors sessions usually have etc.
Reviewed By: passy
Differential Revision: D13624031
fbshipit-source-id: 664e7ac5023166c2f72df3058c219901be7ff77a
Summary: This diff updates the type of os in Store from string to a custom enum kind of type.
Reviewed By: passy
Differential Revision: D13622598
fbshipit-source-id: c57a1f2eedbe9e88d43c681c2fa6ca72b93e8808
Summary:
The path where a plugin was loaded from was not displayed correctly before, but pointed to Flipper's cache directory.
Plugins that are bundled with Flippers application package are now marked as bundled. Dynamically loaded plugins show the path where they are loaded from.
Reviewed By: passy
Differential Revision: D13622148
fbshipit-source-id: 7951ecd37e45d2d4b3a55bd7dc126697367c7e69
Summary:
Updated the logic of parsing the crash log. Earlier the function written to parse crash log just expected the iOS crashes. Now it also gets android crash logs.
I have also written the tests for the same and updated the tests to accommodate for the API change
Reviewed By: passy
Differential Revision: D13612576
fbshipit-source-id: cf7e9d2bca4a425ad7338fc5ec15e29cf88e2e77
Summary: Sort plugins in sidebar by name (or ID as fallback).
Reviewed By: passy
Differential Revision: D13621422
fbshipit-source-id: dd264bde64409a2cd81caa0b41af81bf614f9e62