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

Sunsetting the beta channel #964

Closed
3 tasks
lidel opened this issue Jan 19, 2021 · 2 comments · Fixed by #979
Closed
3 tasks

Sunsetting the beta channel #964

lidel opened this issue Jan 19, 2021 · 2 comments · Fixed by #979
Assignees
Labels
effort/hours Estimated to take one or several hours exp/intermediate Prior experience is likely helpful kind/maintenance Work required to avoid breaking changes or harm to project's status quo P1 High: Likely tackled by core team if no one steps up

Comments

@lidel
Copy link
Member

lidel commented Jan 19, 2021

TLDR: switch to the Stable channel ASAP

Firefox / Firefox for Android Chrome / Brave / Opera / Edge
Install From AMO Install from Chrome Store

Rationale

v2.17.1 illustrated problems with Chrome Web Store when publishing bugfix releases.
Below is a plan to improve current state of things.

Current setup

We have a dedicated Beta channel (which has separate ID) and we published a fix release there first.
After a day, we decided the fix is important enough that we also submitted it to the Stable channel.

Stable channel got reviewed within 1-2h, while Beta was still pending review, which defeats its purpose as a platform for fast-tracked testing. Based on our observations during 2020, the number of users impacts the priority in the review queue (~40k stable vs ~200 beta). With the user count on the Stable channel, reviews do not seem to ne an issue, and we should leverage that.

Proposed change

Deprecate Beta channel.
Chrome Web Store supports staged rollouts, where published can define % of users to get autoupdate.

This enables us to have a single publishing channel (current Stable) and initially publish to 1% of userbase (~400 atm), then do all the QA we need. It also enables us to bump it to 10%, 25% 50% 75% each following day and monitor github/forums, increasing our confidence and making big changes much less stressful.

Added value

  • Collapsing a lot of complexity and red tape
  • Single channel could be automated with less effort (Release Automation #778)
  • Improved UX when enthusiasts want to test new release (no need to disable Stable and switch to Beta, no need to manually migrate settings)

TODOs

  • we should stop announcing it in release notes, readmes and docs
  • we should add code that detects user is running Beta version and urging them to switch to stable channel
    • could be big red message in the main menu, in the place of feat: icon in browser action menu upon version update #935
    • I strongly believe the version should remain functional, but there should be permanent call for action urgin user to switch to the stable channel.
    • we might be able to signal when stable/beta is installed #beta and disable beta when stable is present (if there is no API, we may leverage ipfs block get|rm)
  • keep Beta channel unlisted "just in case" (errors/mistakes happen, extension ID for Beta is safelisted in Brave so it may be handy to temporarily switch to different ID if we want to quickly fix some upstream issue with Chrome Web Store)
@lidel lidel added the kind/maintenance Work required to avoid breaking changes or harm to project's status quo label Jan 19, 2021
@lidel lidel self-assigned this Jan 19, 2021
@jessicaschilling
Copy link
Contributor

@lidel This sounds great. I like the idea of using the "new version alert" position from #935 but replacing it with an alert triangle (glyph_attention) in .red (#ea5037).

We've embedded those icons as SVG, so https://gateway.ipfs.io/ipfs/QmQYzfzGKAeBWgarrmTSsG2PJ8AFfFEBprhVBFaudcFTof/icons/glyph_attention.svg would be the place to grab that code from, but I'm happy to provide anything else if you need it 😊

@jessicaschilling jessicaschilling added exp/intermediate Prior experience is likely helpful effort/hours Estimated to take one or several hours P1 High: Likely tackled by core team if no one steps up labels Jan 19, 2021
@lidel lidel mentioned this issue Jan 30, 2021
3 tasks
@lidel lidel closed this as completed in #979 Feb 3, 2021
@SgtPooki
Copy link
Member

FYI: If you're coming here from MV3 beta we just released (May 12 2023) then ignore the "upgrade to stable ASAP" message in this post. But know that beta is not intended to be a long lived extension, and we're currently only using it for a testground prior to upgrading the stable channel to mv3

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
effort/hours Estimated to take one or several hours exp/intermediate Prior experience is likely helpful kind/maintenance Work required to avoid breaking changes or harm to project's status quo P1 High: Likely tackled by core team if no one steps up
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants