Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Meta] Fennec -> Fenix transition #662

Open
pocmo opened this issue Feb 25, 2019 · 6 comments

Comments

Projects
None yet
7 participants
@pocmo
Copy link
Collaborator

commented Feb 25, 2019

We are currently finalizing the transition plan. As this happens I'm going to update this meta to reflect the work that needs to be done. The primary goal of the work listed here is to make the transition from Fennec to Fenix feasible in the case where we decide to replace Fennec with Fenix (eventually).

Summary document: https://docs.google.com/document/d/187x6QaNXqSCczBraD8kVXO6tzF5gSIRv_jFtgGwhLBs/edit?usp=sharing

Preparation

  • #698: Creating transition product flavor dimension (greenfield vs. firefox)

MUST

Tasks that are a absolutely required. Shipping without completing those tasks is either impossible or can have disastrous consequences (e.g. unusable app). Only applies to firefox flavor(s).

  • #699: Re-use sharedUserId from Fennec (Nightly / Beta / Release)
  • #701: Build on top of (or re-use) versionCode mechanism of Fennec
  • #700: Re-use Fennec signing keys
  • #702: Re-use Fennec package names

SHOULD

Completing those task is recommended before shipping the app (as a replacement). Risk from not completing the task can partially be mitigated by extensive QA testing. Only applies to firefox flavor(s).

This is the list of SHOULD tasks that we decided to act on.

  • To be filed: Shared Preferences: Compare default shared preferences and key/value mappings. Is there overlap? Are there incompatible values?
  • To be filed: App directory files: Compare the file tree. Is there overlap? Are there incompatible files?

MAY

Tasks not technically required for transition. "Nice to have". Depends on "cost-benefit ratio".

This is the list of MAY tasks that we decided to act on.

  • To be filed: Launcher icons: Make sure to keep launcher icons intact and avoid them getting removed on upgrade.
  • To be filed: Home-screen shortcuts ("Pages added to the home screen"): Make sure to keep the shortcuts intact and avoid them getting removed on upgrade.
  • To be filed: Progressive Web Apps (PWAs): Make sure to keep the PWAs on the home screen intact and avoid them getting removed on upgrade.
  • To be filed: Migrate Firefox Account from fxa.account.json
  • To be filed: Migrate open tabs (Session store)
  • To be filed: Make sure that app remains default browser if it was before
@kbrosnan

This comment has been minimized.

Copy link
Contributor

commented Feb 28, 2019

Currently we have org.mozilla.firefox and org.mozilla.firefox_beta set up using a shared ID. Could we launch Fenix beta using a new app id such as org.mozilla.firefoxBeta and sign it with its own key. When we got to the point of Fenix launching on the org.mozilla.firefox id we could shut down the org.mozilla.firefox_beta app. This would leave us with one app inside the shared ID.

@chrmod

This comment has been minimized.

Copy link

commented Mar 7, 2019

At Cliqz we are running Fennec fork in form of Ghostery Browser https://play.google.com/store/apps/details?id=com.ghostery.android.ghostery
We are deeply concern by the future of Fennec as we consider it a platform on which we ship our features (independent search, adblocker and anti-tracking).
Running Fennec have never been easy for organization of our size (just a few Android developer and bit more JavaScript ones) but we were able to build a stable fork. Now, with Fenix, future of our product is unsure.

@pocmo Could you please provide a timeline of Mozilla migrating towards Fenix?
Also, if you find the summary document to be potentially helpful to us, please consider making it public.

@pocmo

This comment has been minimized.

Copy link
Collaborator Author

commented Mar 8, 2019

@chrmod Yes, we should talk! I think going forward with our "Android Components"- and "GeckoView"-based modular approach things will get a lot easier when forking or shipping a customized browser - something that wasn't easy with Fennec at all - and the reason why all our new browsers (Firefox Focus/Klar, Firefox for Fire TV, Firefox for Echo Show, Firefox Reality ... and finally Fenix) are not based on Fennec directly. Can you shoot me an email (skaspari - at - mozilla - dot - com) and I will make sure that you get all needed information and in contact with the right people.

And btw. I'm located in Bavaria and not far from the Cliqz Munich office. :)

@Amejia481

This comment has been minimized.

@creesch

This comment has been minimized.

Copy link

commented Mar 27, 2019

in the case where we decide to replace Fennec with Fenix (eventually).

Considering the discussion going on in #574 and the lack of mention of extensions here I figured I'd bring it up here as well. Speaking for me personally, one of the big reasons to use firefox on android currently is the fact that I can use extensions. I'd hate to have Fennec replaced with Fenix and loose my currently installed extensions and their settings.

@andreicristianpetcu

This comment has been minimized.

Copy link

commented Mar 29, 2019

Fenix MVP will not replace Fennec. Fenix will most likely get WebExt support post MVP #574 (comment)

@vesta0 vesta0 added the P2 label Mar 29, 2019

@vesta0 vesta0 added this to Fenix 2.0 Milestone 2 (Q3) in Fenix Post-MVP Roadmap Apr 4, 2019

@vesta0 vesta0 removed the P2 label Apr 4, 2019

@kbrosnan kbrosnan removed the meta size L label Apr 27, 2019

@vesta0 vesta0 removed this from Fenix 2.0 Milestone 2 (Q3) in Fenix Post-MVP Roadmap May 7, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.