iceraven
fenix/125.3.0
fenix/125.0
fenix/124.0
fenix/124.1.0
fenix/124.2.0
fenix/123.1.0
fenix/123.0
fenix/122.1.0
fenix/122.0
fenix/121.1.0
fenix/121.0
fenix/120.0
fenix/120.1.0
fenix/119.0.2
fenix/119.1.0
fenix/119.1.1
fenix/119.0
fenix/118.2.0
fenix/118.1.1
fenix/118.1.0
fenix/118.0
fenix/117.1.0
fenix/117.0.1
fenix/117.0
fenix/116.3.0
fenix/116.2.0
fenix/116.0
fenix/115.2.0
fenix/114.1.0
fenix/114.0
fenix/113.1.0
fenix/113.0
fenix/112.2.0
fenix/112.1.0
fenix/112.0
fork
upstream-sync
fork-history
drag-tabs-2
drag-tabs
fix-addon-search
beta-sync
describe-install
hide-myths
issues/166-allow-fallback-location
issues/115-die-for-your-ram
issues/131-accept-version-name
issues/111-change-appid
issues/125-camera-permissions-stuck-off
issues/111-temp-icon
issues/111-fix-weasels
issues/111-rebrand-strings
issues/82-fix-tests
issues/74-fix-whats-new
master
patch-1
releases/v80.0.0
longTapDelay
releases/v79.0.0
releases/v79.1.0
fennec/production
fennec/beta
innovation-week
fennec/nightly
staging
nightly-build-test
0.0.1-alpha
0.1.0-beta.0
fennec/nightly/1
fennec/nightly/2
fennec/nightly/3
fennec/nightly/4
fennec/nightly/5
fennec/nightly/6
fennec/nightly/7
fennec/nightly/8
fennec/nightly/9
fork-0
fork-1
fork-10
fork-2
fork-3
fork-4
fork-5
fork-6
fork-7
fork-8
fork-9
iceraven-1.0.0
iceraven-1.1.0
iceraven-1.10.0
iceraven-1.11.0
iceraven-1.11.1
iceraven-1.12.0
iceraven-1.13.0
iceraven-1.14.0
iceraven-1.15.0
iceraven-1.16.0
iceraven-1.16.1
iceraven-1.17.0
iceraven-1.18.0
iceraven-1.18.1
iceraven-1.18.2
iceraven-1.18.3
iceraven-1.18.4
iceraven-1.19.0
iceraven-1.2.0
iceraven-1.2.1
iceraven-1.20.0
iceraven-1.21.0
iceraven-1.21.1
iceraven-1.21.2
iceraven-1.3.0
iceraven-1.4.0
iceraven-1.5.0
iceraven-1.6.0
iceraven-1.7.0
iceraven-1.7.1
iceraven-1.8.0
iceraven-1.9.0
iceraven-2.0.0
iceraven-2.0.1
iceraven-2.0.2
iceraven-2.0.3
iceraven-2.1.0
iceraven-2.10.0
iceraven-2.10.1
iceraven-2.10.2
iceraven-2.10.3
iceraven-2.10.4
iceraven-2.10.5
iceraven-2.10.6
iceraven-2.11.0
iceraven-2.11.1
iceraven-2.12.0
iceraven-2.12.1
iceraven-2.13.0
iceraven-2.13.1
iceraven-2.13.2
iceraven-2.13.3
iceraven-2.13.4
iceraven-2.14.0
iceraven-2.14.1
iceraven-2.14.2
iceraven-2.15.0
iceraven-2.15.1
iceraven-2.15.2
iceraven-2.16.0
iceraven-2.16.1
iceraven-2.17.0
iceraven-2.17.1
iceraven-2.17.2
iceraven-2.18.0
iceraven-2.18.1
iceraven-2.18.2
iceraven-2.18.3
iceraven-2.18.4
iceraven-2.19.0
iceraven-2.19.1
iceraven-2.2.0
iceraven-2.2.1
iceraven-2.20.0
iceraven-2.3.0
iceraven-2.4.0
iceraven-2.4.1
iceraven-2.5.0
iceraven-2.5.1
iceraven-2.6.1
iceraven-2.7.0
iceraven-2.8.0
iceraven-2.8.1
iceraven-2.8.2
iceraven-2.8.3
iceraven-2.8.4
iceraven-2.8.5
iceraven-2.9.0
iceraven-2.9.1
iceraven-2.9.2
v0.1
v0.3.0-rc.0
v0.3.0-rc.1
v1.0.0
v1.0.0-rc.0
v1.0.0-rc.1
v1.0.0-rc.2
v1.0.1
v1.0.1-rc.1
v1.1.0
v1.1.0-rc.1
v1.1.0-rc.2
v1.2.0
v1.2.0-rc.1
v1.2.0-rc.2
v1.3.0
v1.3.0-rc.1
v1.3.0-rc.2
v1.3.0-rc.3
v1.3.1
v1.4.0
v1.4.0-rc.1
v1.4.1
v100.0.0-beta.1
v100.0.0-beta.2
v100.0.0-beta.3
v100.0.0-beta.4
v100.0.0-beta.5
v100.0.0-beta.6
v100.0.0-beta.7
v100.1.0
v100.1.1
v100.1.2
v100.1.3
v100.2.0
v100.3.0
v101.0.0-beta.1
v101.0.0-beta.2
v101.0.0-beta.3
v101.0.0-beta.4
v101.0.0-beta.5
v101.0.0-beta.6
v101.1.0
v101.1.1
v101.2.0
v102.0.0-beta.1
v102.0.0-beta.2
v102.0.0-beta.3
v102.0.0-beta.4
v102.0.0-beta.5
v102.1.0
v102.1.1
v102.2.0
v102.2.1
v103.0.0-beta.1
v103.0.0-beta.2
v103.0.0-beta.3
v103.0.0-beta.4
v103.0.0-beta.5
v103.1.0
v103.2.0
v104.0b1
v104.0b2
v104.0b3
v104.0b4
v104.0b5
v104.0b6
v104.0b7
v104.1.0
v104.2.0
v105.0b1
v105.0b2
v105.0b3
v105.0b4
v105.0b5
v105.0b6
v105.1.0
v105.2.0
v106.0b1
v106.0b2
v106.0b3
v106.0b4
v106.0b5
v106.1.0
v107.0b1
v107.0b2
v107.0b3
v107.0b4
v107.0b5
v107.0b6
v107.1.0
v107.2.0
v108.0b1
v108.0b2
v108.0b3
v108.0b4
v108.0b5
v108.0b6
v108.1.0
v108.1.1
v108.2.0
v109.0b1
v109.0b2
v109.0b3
v109.0b4
v109.0b5
v109.0b6
v109.1.1
v109.2.0
v110.0.1
v110.0b1
v110.0b2
v110.0b3
v110.0b4
v110.0b5
v110.0b6
v2.0.0
v2.0.0-rc.2
v2.0.0-rc.3
v2.1.0
v2.1.0-rc.1
v2.1.0-rc.2
v2.1.0-rc.3
v2.1.0-rc.4
v2.2.0
v2.2.0-rc.1
v2.2.0-rc.2
v2.3.0
v2.3.0-rc.1
v2.3.0-rc.2
v3.0.0
v3.0.0-beta.1
v3.0.0-beta.2
v3.0.0-beta.3
v3.0.1
v3.0.2
v3.1.0
v3.1.0-beta.1
v3.1.0-beta.2
v3.1.0-beta.3
v3.1.0-beta.4
v3.1.0-rc.1
v3.2.0
v3.2.0-beta.1
v3.2.0-beta.2
v3.2.0-beta.3
v3.2.1
v4.0.0
v4.0.0-beta.1
v4.0.0-beta.2
v4.0.0-beta.3
v4.0.0-beta.4
v4.0.0-beta.5
v4.1.0
v4.1.0-beta.1
v4.1.0-beta.2
v4.2.0
v4.2.0-beta.1
v4.2.0-beta.2
v4.2.0-beta.3
v4.2.1
v4.2.1-beta.1
v4.3.0
v4.3.0-beta.1
v4.3.0-beta.2
v5.0.0
v5.0.0-beta.1
v5.0.0-beta.2
v5.1.0
v5.1.0-beta.1
v5.1.0-beta.2
v5.1.0-beta.3
v5.1.1
v5.2.0
v5.2.0-beta.1
v5.2.0-beta.2
v74.0.0-beta.1
v74.0.0-beta.2
v74.0.0-beta.3
v75.0.0-beta.1
v75.0.0-beta.2
v75.0.0-beta.3
v75.0.0-beta.4
v75.0.0-beta.5
v75.0.0-beta.6
v76.0.0-beta.1
v76.0.0-beta.2
v77.0.0-beta.1
v77.0.0-beta.2
v78.0.0-beta.1
v78.0.1-beta.1
v79.0.0
v79.0.0-beta.1
v79.0.0-beta.2
v79.0.0-beta.3
v79.0.0-beta.4
v79.0.0-beta.5
v79.0.0-beta.6
v79.0.0-beta.7
v79.0.0-beta.8
v79.0.0-beta.9
v79.0.1
v79.0.2
v79.0.3
v79.0.4
v79.0.5
v79.1.0-beta.1
v80-alpha
v80.0.0-beta.1
v80.0.0-beta.2
v80.0.0-beta.3
v80.0.0-beta.4
v80.0.0-beta.5
v80.0.0-beta.6
v80.0.0-beta.7
v80.0.1
v80.0.1-beta.1
v80.0.1-beta.2
v80.1.0
v80.1.1
v80.1.2
v80.1.3
v81.1.0
v81.1.0-beta.1
v81.1.0-beta.2
v81.1.0-rc.1
v81.1.1
v81.1.1-beta.3
v81.1.1-beta.4
v81.1.1-beta.5
v81.1.2
v81.1.3
v81.1.4
v81.1.5
v82.0.0-beta.1
v82.0.0-beta.2
v82.0.0-beta.3
v82.0.0-beta.4
v82.0.0-beta.5
v82.0.0-beta.6
v82.1.0
v82.1.0-rc.1
v82.1.0-rc.2
v82.1.1
v82.1.2
v82.1.3
v83.0.0-beta.1
v83.0.0-beta.2
v83.0.0-beta.3
v83.0.0-beta.4
v83.1.0
v83.1.0-rc.1
v83.1.0-rc.2
v84.0.0-beta.1
v84.0.0-beta.2
v84.0.0-beta.3
v84.0.0-beta.4
v84.1.0
v84.1.0-rc.1
v84.1.1
v84.1.2
v84.1.3
v84.1.4
v85.0.0-beta.1
v85.0.0-beta.2
v85.0.0-beta.3
v85.0.0-beta.4
v85.0.0-beta.5
v85.0.0-beta.6
v85.0.0-beta.7
v85.0.0-beta.8
v85.0.0-beta.9
v85.1.0
v85.1.0-rc.1
v85.1.1
v85.1.2
v85.1.3
v86.0.0-beta.1
v86.0.0-beta.2
v86.0.0-beta.3
v86.0.0-beta.4
v86.0.0-beta.5
v86.1.0
v86.1.0-rc.1
v86.1.1
v87.0.0-beta.1
v87.0.0-beta.2
v87.0.0-beta.3
v87.0.0-beta.4
v87.0.0-beta.5
v87.0.0-beta.6
v87.0.0-rc.1
v88.0.0-beta.1
v88.0.0-beta.2
v88.0.0-beta.3
v88.0.0-beta.4
v88.0.0-beta.5
v88.0.0-beta.6
v88.1.0
v88.1.1
v88.1.2
v88.1.3
v88.1.4
v89.0.0-beta.1
v89.0.0-beta.10
v89.0.0-beta.2
v89.0.0-beta.3
v89.0.0-beta.4
v89.0.0-beta.5
v89.0.0-beta.6
v89.0.0-beta.7
v89.0.0-beta.8
v89.0.0-beta.9
v89.1.0
v89.1.1
v90.0.0-beta.1
v90.0.0-beta.2
v90.0.0-beta.3
v90.0.0-beta.4
v90.0.0-beta.5
v90.0.0-beta.6
v90.1.0
v90.1.1
v90.1.2
v90.1.3
v91.0.0-beta.1
v91.0.0-beta.2
v91.0.0-beta.3
v91.0.0-beta.4
v91.0.0-beta.5
v91.0.0-beta.6
v91.1.0
v91.2.0
v91.3.0
v91.3.1
v91.4.0
v92.0.0-beta.2
v92.0.0-beta.3
v92.0.0-beta.4
v92.0.0-beta.5
v92.0.0-beta.6
v92.0.0-beta.7
v92.0.0-beta.8
v92.1.0
v92.1.1
v93.0.0-beta.1
v93.0.0-beta.2
v93.0.0-beta.3
v93.0.0-beta.4
v93.1.0
v93.2.0
v94.0.0-beta.1
v94.0.0-beta.2
v94.0.0-beta.3
v94.0.0-beta.4
v94.0.0-beta.5
v94.1.0
v94.1.1
v94.1.2
v95.0.0-beta.1
v95.0.0-beta.2
v95.0.0-beta.3
v95.0.0-beta.4
v95.0.0-beta.5
v95.0.0-beta.6
v95.1.0
v95.2.0
v96.0.0-beta.1
v96.0.0-beta.2
v96.0.0-beta.3
v96.0.0-beta.4
v96.0.0-beta.5
v96.1.0
v96.1.1
v96.2.0
v96.3.0
v96.3.1
v97.0.0-beta.1
v97.0.0-beta.2
v97.0.0-beta.3
v97.0.0-beta.4
v97.0.0-beta.5
v97.0.0-beta.6
v97.1.0
v97.1.1
v97.2.0
v97.3.0
v98.0.0-beta.1
v98.0.0-beta.2
v98.0.0-beta.3
v98.0.0-beta.4
v98.1.0
v98.1.1
v98.2.0
v98.3.0
v99.0.0-beta.1
v99.0.0-beta.2
v99.0.0-beta.3
v99.0.0-beta.4
v99.0.0-beta.5
v99.1.0
v99.1.1
v99.2.0
${ noResults }
17 Commits (990bfa7e6dd5894d61473a41da6129e6947974e2)
Author | SHA1 | Message | Date |
---|---|---|---|
MarcLeclair |
990bfa7e6d
|
16900 make navgraph inflation asynchronous (#18889)
* For #16900: implement async navgraph inflation For #16900: removed nav graph from xml For #16900: inflate navGraph programatically For #16900: Made NavGraph inflation asynchronous For #16900: Changed to block with runBlocking For #16900: Refactored blocking call into a function For 16900: NavGraph inflation is now async We now attach the nav graph (or check if its attached) on every nav call ( an extension function for NavController). This is done by checking the value of the job stored in PerfNavController.map which keeps track of the job with the NavController as a Key. If the job hasn't been completed, it will block the main thread until the job is done. The job itself is responsible for attaching the navgraph to the navcontroller (and the inflation of the latter too) For 16900: rebased upstream master For 16900: Rebase on master For #16900: Fixed Async Navgraph navigation per review comments. 1)The Asynchronous method is now found in NavGraphProvider.kt. It creates a job on the IO dispatcher 2)The Job is tracked through a WeakHashMap from Controller --> NavGraph 3)The Coroutine scope doesn't use MainScope() anymore 4)The Coroutine is cancelled if the Activity is destroyed 5)The tests mockk the blockForNavGraphInflation method through the FenixReoboelectricTestApplication instead of calling the mock every setup() For #16900: inflateNavGraphAsync now takes navController For #16900: Pass lifecycleScope to NavGraphProvider For #16900: removed unused mock For #16900: Added linter rules for navigate calls We need linting rules to make sure no one calls the NavController.navigate() methods For #16900: Added TestRule to help abstract the mocks in the code For 16900: Fix linting problems For #16900: Cleaned duplicated code in tests For #16900: cleaned up NavGraphTestRule for finished test For #16900: had to revert an accidentally edited file For #16900: rebased master * For #16900: Review nits for async navgraph This is composed of squash commits, the original messages can be found below: -> DisableNavGraphProviderAssertionRule + kdoc. Use test rule in RobolectricApplication. Fix failing CrashReporterControllerTest Fix blame by -> navigate in tests. This commit was generated by the following commands only: ``` find app/src/test -type f -exec sed -i '' "/import org.mozilla.fenix.ext.navigateBlockingForAsyncNavGraph/d" {} \; find app/src/test -type f -exec sed -i "" "s/navigateBlockingForAsyncNavGraph/navigate/g" {} \; git checkout app/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker ``` Fix various blame This is expected to be squashed into the first commit so, if so, it'd fix the blame. Move test rule to helpers pkg. add missing license header Add import change I missed fix unused imports Replace robolectricTestrunner with test rule. Improve navGraphProvider docs Remove unnecessary rule as defined by robolectric. add clarifying comment to robolectric remove unnecessary space * For #16900: nit fixes for MozillaNavigateCheck and lint fixes 3 squash commits: *Changed violation message and fixed the lint rule for MozillaNavigateCheck *Added suppression to NavController.kt *Fixed detekt violations * For 16900: Fixed failing tests Co-authored-by: Michael Comella <michael.l.comella@gmail.com> |
3 years ago |
Sebastian Kaspari | 2b759e9d6f | Integrate new search code from Android Components into Fenix. | 4 years ago |
Michael Comella | c647679e4d | No issue: move relevant :mozilla-detekt-rules to perf/ pkg. | 4 years ago |
Michael Comella | 0f770ca39b | For #15279: add MozillaUseLazyMonitored custom detekt rule. | 4 years ago |
MarcLeclair |
7b1af41b40
|
15278 detekt rule runblocking (#15942)
* For #15278: added CoroutineManager to count runBlocking calls * For #15278: Added actual detekt rule for runblocking and its config to the yaml * For #15278: Added unit test for RunblockingCounter * For #15278: renamed StrictModeStartupSuppressionCountTest.kt to PerformanceStartupTest.kt and added runBlockingCount test * Lint fix * For #15278: made runblocking a Long to prevent overflow * For #15278: fixed MozRunblocking name, description and moved RunBlockingCounter to perf package * For #15278:Renamed MozillaRunblockingCheck to MozillaRunBlockingCheck * For #15278: Added setup for unit test, since it failed without restting counter * For #15278: Fixed naming for RunBlocking lint check * For #15278: removed changes made to test to use runBlockingIncrement * For #15728: added test exclusion for runBlocking check * For #15278: changed null check and added Synchronized to count setter * For #15278: fix for nits * For #15278: added StartupExcessiveResourceUseTest to CODEOWNERS * For #15278: fixed for nits * For #15278: Moved increment function to extension function and fixed indentation * For #15278: Added tests for Atomic Integer extension and nit fix |
4 years ago |
Michael Comella | 6a635c479b | For #15707: add MozillaStrictModeSuppressionTest. | 4 years ago |
Michael Comella | 12e856ca11 |
For #15707: correctly configure JUnit for mozilla-detekt-rules.
Without this, the tests would not run from the command line though they could run in Android Studio. |
4 years ago |
Michael Comella | 0a63362f95 |
For #15707: clean up lint rules dependencies.
For mozilla-detekt-rules, the tests didn't compile at all so apparently they haven't been running in testing. mozilla-lint-rules worked but they were not clean. |
4 years ago |
Michael Comella | 3e96f6b385 | For #13959 - review: add clarifying comments. | 4 years ago |
Michael Comella | 3b5d6d58d9 | For #13959: add MozillaStrictModeSuppression detekt check. | 4 years ago |
Michael Comella | 66f220c22a |
For #13959: improve custom detekt violation output.
Before it used to output the violations all one one line. Now it looks like: ``` MozillaStrictModeSuppression: 'import mozilla.components.support.ktx.android.os.resetAfter' at (17,1) in /StrictModeManager.kt Please use `components.strictMode.resetAfter` instead because it has performance improvements and additional code to monitor for performance regressions. MozillaStrictModeSuppression: 'setThreadPolicy(threadPolicy.build())' at (56,24) in /StrictModeManager.kt Please use `components.strictMode.resetAfter` instead because it has performance improvements and additional code to monitor for performance regressions. MozillaStrictModeSuppression: 'setVmPolicy(builder.build())' at (71,24) in /StrictModeManager.kt NOT YET IMPLEMENTED: please consult the perf team about implementing`StrictModeManager.resetAfter`: we want to understand the performance implications of suppressing setVmPolicy before allowing it. ``` |
4 years ago |
Michael Comella | f690f8736d |
No issue: replace LintUnitTestRunner with detekt implementation.
This should be more performant and easier to maintain. |
4 years ago |
Tiger Oakes | 5a4c391b52 | Suppress YamlConfig deprecation | 4 years ago |
Michael Comella | f1159f3558 |
No issue: remove assertJ.
It was only used for 3 checks so it's not worth having a dependency on it. |
4 years ago |
Emily Kager |
b94ac93ce9
|
Upgrade to detekt 1.6.0 (#9306)
Changelog: https://arturbosch.github.io/detekt/changelog.html Fixes #7360. Also use more exact test glob. Co-authored-by: Andrew Gaul <andrew@gaul.org> |
4 years ago |
Sawyer Blatz |
20396f78a9
|
For #7698: Adds search back button animation (#7840)
* For #7698: Adds search back button animation * Refactor for searchController |
4 years ago |
Will Hawkins | f69009aa9e |
No Issue: Add custom detekt rule to blacklist certain properties
Add a custom detekt rule to blacklist certain properties. This is immediately useful for making sure that developers do not configure runtime behavior using the `BuildConfig.DEBUG` property but it is useful in a wider context. |
4 years ago |