Commit Graph

29 Commits (fenix/119.1.0)

Author SHA1 Message Date
mcarare b92867654f Bug 1849833 - Use configureEach to avoid unnecessary configuration. 8 months ago
Gabriel Luong a3df7acfda Bug 1842694 - Refactor GithubDetailsTask into a plugin using composite build 10 months ago
Gabriel Luong 0676ef5608 Bug 1845354 - Refactor ApkSizeTask into a plugin using composite build 10 months ago
Gabriel Luong a688ce8faf Bug 1838120 - Unify Fenix buildSrc/Config with the ConfigPlugin 11 months ago
Gabriel Luong 1d4cdcc0b8 Bug 1837478 - Refactor FenixDependencies into a plugin using composite build 12 months ago
Ben Dean-Kawamura 24895cb11c Bug 1833452 - Fix app services autopublish when building Fenix/Focus
Moved the code into `settings.gradle` and put it inside an `allprojects`
block.  I'm not 100% sure what's going on but I think this applies the
changes to android-components projects as well.  In any case, `./gradlew
assembleDebug` now seems to pick up the local app-services code.
1 year ago
Christian Sadilek c1afbd89ad Bug 1825649 - Introduce shared-settings.gradle to allow reusing build logic 1 year ago
rahulsainani 5913d09770 Bug 1807324 - Add macrobenchmarks for startup metrics 1 year ago
Gabriel Luong f19e9d7ee0 Bug 1815939 - Clean up AC autopublish code in Fenix and Focus 1 year ago
Gabriel Luong 390e980860 Bug 1804785 - Consume AC via gradle build with relative path in Fenix 1 year ago
Jan-Erik Rediger f09f6bf618 [fenix] Auto-publish & substitute local Glean package
Careful with this: If anything inside Glean Core changes this will still
require a local substitute for the Gecko build.
2 years ago
Stefan Arentz 1480a5292b [fenix] Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (https://github.com/mozilla-mobile/fenix/pull/20457)
* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (Automation/TC)

* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (GitHub Workflows)

* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (GitHub Workflows)

* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (GitHub Issue Templates)

* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (Jenkins)

* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (README & Documentation)

* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (Jenkins)

* Fixes https://github.com/mozilla-mobile/fenix/issues/11427 - Rename master branch to main (Random)
3 years ago
Mark Hammond 95b8b64373 [fenix] Cleanup locall publish flows for application-services 4 years ago
Mark Hammond ec15cedecf [fenix] Allow the automatic local publication workflows to work on Windows.
The end result is that Android Studio can be used in Windows to build Fenix
when using the "local publish" workflow managed by settings.gradle -
android-components publishes automatically, although it's necessary to
manually public application-services because it doesn't build on native
Windows, only via WSL. So instead of trying to build it, it just
prints a message indicating the manual build is necessary.
4 years ago
Grisha Kruglov aaec95cbae [fenix] Speed-up autoPublication workflows
This change switches to using python scripts directly in a-c and a-s repositories, which achieves two things:
- we avoid overhead of running through a-c and a-s gradle's build phases, which is quite significant
- all of the logic for checking if projects are up-to-date or need to be republished now lives in those projects

End result is that local fenix builds now incur zero costs if there are no changes in a-c or a-s,
and if there are _any_ changes at all, the corresponding project is reliably recompiled and republished.
4 years ago
ekager ccee01a230 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/8944 - Adds custom lint checks 4 years ago
Ryan Kelly 7d08e36843 [fenix] Add support for application-services autoPublish local dev workflow. 4 years ago
Grisha Kruglov 4df26017e6 [fenix] No issue: make fenix build again
Regression from when we made auto-publish flow work on Windows.
4 years ago
Mark Hammond adde8beb17 [fenix] Allow builds with a local android-components to work on Windows 4 years ago
Will Hawkins 78e86d8f2b [fenix] 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
Will Hawkins dac9353a73 [fenix] Fix Issue https://github.com/mozilla-mobile/fenix/issues/7366: Reference local android-components gradlew correctly
In `settings.gradle` when Fenix determines whether there is an
overriding local android-components it calls `gradlew` from the
`autoPublish.android-components.dir` directory. It sets the current
working directory (cwd) to `autoPublish.android-components.dir` and then
invokes `<autoPublish.android-components.dir>/gradlew`. The proper
behavior is to invoke `./gradlew` because the cwd is already set properly.
4 years ago
Gabriel 9ed4f7f119 [fenix] For https://github.com/mozilla-mobile/fenix/issues/5574 - Migrate SessionControl to LibState (https://github.com/mozilla-mobile/fenix/pull/6651)
* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 1: Port TabAction.SaveTabGroup to TabSessionInteractor and SessionControlController. (https://github.com/mozilla-mobile/fenix/pull/6651)

- Introduces the TabSessionInteractor, SessionControlInteractor and SessionControlController classes.
- Removes the TabAction.SaveTabGroup.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 2: Port TabAction.PrivateBrowsingLearnMore to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 3: Port TabAction.ShareTabs to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 4: Remove unused TabAction.Share and TabItemMenu (https://github.com/mozilla-mobile/fenix/pull/6651)

In https://github.com/mozilla-mobile/fenix/issues/2205, the tab overflow button was removed which would have shown the
TabItemMenu when clicked. So, we can remove TabItemMenu since it is not
used and as a result, we can also remove TabAction.Share since there are
no consumers.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 5: Port TabAction.PlayMedia and TabAction.PauseMedia to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 6: Port TabAction.Select to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 7: Port Onboarding.Finish to OnboardingInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 8: Port TabAction.Close and TabAction.CloseAll to TabSessionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

- Removes TabAction

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 9: Port CollectionAction.Delete to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 10: Port CollectionAction.ShareTabs to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 11: Port CollectionAction.AddTab and CollectionAction.Rename to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 12: Port CollectionAction.RemoveTab to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 13: Port CollectionAction.OpenTab to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 14: Port CollectionAction.CloseTabs to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 15: Introduce a HomeFragmentStore (https://github.com/mozilla-mobile/fenix/pull/6651)

- We will hook up the HomeFragmentStore in later parts.
- Removes List<Tab>.toSessionBundle(context: Context) since it is unused.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 16: Port CollectionAction.Collapse and CollectionAction.Expand to CollectionInteractor and SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

- We assume the store is hooked up to the SessionControlController in this part,
but this work will be done in a later part.
- Removes CollectionAction.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 20: Remove the architecture module. (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 17:  Remove duplicate subscribeToTabCollections in BrowserFragment.kt (https://github.com/mozilla-mobile/fenix/pull/6651)

There is a duplicate call of subscribeToTabCollections() in both HomeFragment and BrowserFragment.
In this patch, we remove the call in BrowserFragment to avoid passing the HomeFragmentStore to
BrowserFragment in order to dispatch the CollectionsChange event.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 18: Delete SessionControlComponent and fix TabCollection and Tab imports (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 19: Use the new HomeFragmentStore in the HomeFragment (https://github.com/mozilla-mobile/fenix/pull/6651)

- Renames SessionControlUIView to SessionControlView

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 21: Fix white screen on home fragment (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 22: Fix formatting in SessionControlInteractor and replace See with @see in SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 23: Move to metrics.track call to the beginning of handleCollectionRemoveTab (https://github.com/mozilla-mobile/fenix/pull/6651)

This ensures that the metrics.track will be called immediately before the tab is removed from the collection.

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 24: Use the sessionManager getter in SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 25: Use mapNotNull in List<Tab>.toSessionBundle (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 26: Simplify closeTab and closeAllTabs functions by assigning a deletionJob constant (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 27: Replace listOf() with emptyList() in removeAllTabsWithUndo (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 28: Replace the Context parameter with the HomeActivity in SessionControlController (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Part 29: Add test for HomeFragmentStore, DefaultSessionControlController and SessionControlInteractor (https://github.com/mozilla-mobile/fenix/pull/6651)

* For https://github.com/mozilla-mobile/fenix/issues/5574 - Removes running CI against the architecture debug build varient
5 years ago
Grisha Kruglov 6e6d2ec9c6 [fenix] Closes https://github.com/mozilla-mobile/fenix/issues/1022: Auto-publication workflow for android-component
This patch enabled support for an auto-publication workflow for android-components.

It automates a common pattern seen in local development:

Old way:
- after every change in a-c, publish it locally with a unique version (bumping it manually)
- manually modify Fenix to consume a custom version of a-c from a mavenLocal repository

New way:
- set a flag in fenix's local.properties to enable auto-publication
- run Fenix builds after making changes to a-c. Changes in a-c will be automatically picked up.

Note that no changes are necessary to any Fenix files other than a single flag in local.properties.
Manually bumping android-components version is also not necessary.
5 years ago
Nick Alexander dbb115a551 [fenix] Consume new `substitute-local-geckoview.gradle` script from Bug 1533465. 5 years ago
Thom Chiovoloni ddd5dc79fb [fenix] Remove misinformation from settings.gradle 5 years ago
Thom Chiovoloni dc7b4f682d [fenix] Update fenix for new megazord setup 5 years ago
Colin Lee 6311a7abd1 [fenix] Fixes https://github.com/mozilla-mobile/fenix/issues/916, fixes https://github.com/mozilla-mobile/fenix/issues/917, fixes https://github.com/mozilla-mobile/fenix/issues/920: Save, share, and delete bookmarks 5 years ago
Sebastian Kaspari b3d56e5720 [fenix] Move architecture/mvi code to separate gradle module. 5 years ago
Jeff Boek 06f1bf6471 [fenix] Initializes Android project
Co-authored-by: Colin Lee <mncolinlee@gmail.com>
Co-authored-by: Sawyer Blatz <sdblatz@gmail.com>
Co-authored-by: Emily Kager <emilykager@gmail.com>
6 years ago