Serious Discussion Resuming the transition to Manifest V3

CyberTech

Level 44
Thread author
Verified
Top Poster
Well-known
Nov 10, 2017
3,250
In December of last year, we paused the planned deprecation of Manifest V2 in order to address developer feedback and deliver better solutions to migration issues. As a result of this feedback, we’ve made a number of changes to Manifest V3 to close these gaps, including:
  • Introducing Offscreen Documents, which provide DOM access for extensions to use in a variety of scenarios like audio playback
  • Providing better control over service worker lifetimes for extensions calling extension APIs or receiving events over a longer period of time
  • Adding a new User Scripts API, which allows userscript manager extensions to more safely allow users to run their scripts
  • Improving content filtering support by providing more generous limits in the declarativeNetRequest API for static rulesets and dynamic rules
In addition to closing gaps, we’ve also added new features to the platform, such as the Side Panel API, which shipped earlier this year, and the Reading List API, currently in Beta. We discussed many of these changes recently at the Ad-Filtering Dev Summit, and shared more context on the changes and improvements we’ve made based on feedback.

With these changes in place, we’ve seen support for Manifest V3 increase significantly among the extension developer community. Specifically, we are encouraged by our ongoing dialogue with the developers of content blocking extensions, who initially felt Manifest V3 could impact their ability to provide users with the features they’ve come to expect.

"With Manifest V3, we've observed the immense effort that browser teams (Chrome in particular, but also other browsers) are putting into working on a unified platform, and I see how they are listening to the feedback from extension developers. As always, migrating to a new platform is a large undertaking, but we're very hopeful that the new unified platform will bring substantial benefits to the entire browser extensions ecosystem, and that ad blockers like us will be able to continue being up to the task and further improve.” - Andrey Meshkov, CTO AdGuard
Having addressed these migration concerns from our developer community, we are ready to continue moving towards Manifest V3 and the higher security and privacy guarantees it provides.

As a result, we are resuming the deprecation timeline.

# The phase-out timeline​

We will begin disabling Manifest V2 extensions in pre-stable versions of Chrome (Dev, Canary, and Beta) as early as June 2024, in Chrome 127 and later. Users impacted by the rollout will see Manifest V2 extensions automatically disabled in their browser and will no longer be able to install Manifest V2 extensions from the Chrome Web Store. Also in June 2024, Manifest V2 extensions will lose their Featured badge in the Chrome Web Store if they currently have one.

We will gradually roll out this change, gathering user feedback and collecting data to make sure Chrome users understand the change and what actions they can take to find alternative, up-to-date extensions.

We will communicate with developers throughout the rollout, and we will continue to closely monitor feedback during this process. We expect it will take at least a month to observe and stabilize the changes in pre-stable before expanding the rollout to stable channel Chrome, where it will also gradually roll out over time. The exact timing may vary depending on the data collected, and during this time, we will keep you informed about our progress.

Enterprises using the ExtensionManifestV2Availability policy to ensure the continued functioning of Manifest V2 extensions in their organization will have one additional year - until June 2025 - to migrate the Manifest V2 extensions in their organization. Browsers with the policy enabled will not be impacted by the rollout of the deprecation until that time.

# Next steps for extension publishers​

For extensions publishers who still publish Manifest V2 extensions, we highly recommend completing migration to Manifest V3 before June 2024. We’ve published a migration guide covering everything you need to know to successfully migrate. For a summary of some of the recent improvements to the Extensions platform, check out our quarterly updates from July and October. If you have any questions or trouble during the migration, please reach out via our support channels.

In the meantime, we’ll be continuing to release new features and functionality to improve the overall extension development experience.

Thank you to everyone who gave feedback. This has been invaluable in our work to evolve the platform in pursuit of a safer, more performant, and more privacy-preserving extensions ecosystem.

Source
 
F

ForgottenSeer 97327

Dynamic rules set limit increased from 5000 to 30000 (these can be updated by extension, static rules are only updated when extension updates). Better control over service worker lifetime is important for Extension developers. Safer user scripts API's and increasing maximum number of filters to be used simultaneously from 10 to 50 is important to both developers and users. (y)

Seems that Manifestv$ was a storm in a glass of water (as we say in Dutch).
 

JustInTime

Level 1
Feb 21, 2022
46
Dynamic rules set limit increased from 5000 to 30000 (these can be updated by extension, static rules are only updated when extension updates). Better control over service worker lifetime is important for Extension developers. Safer user scripts API's and increasing maximum number of filters to be used simultaneously from 10 to 50 is important to both developers and users. (y)

Seems that Manifestv$ was a storm in a glass of water (as we say in Dutch).
I am no dev or coder but is ubo dynamic filtering (Medium mode and Hard mode) possible with mv3?
 
F

ForgottenSeer 97327

I have not coded in 20 years or so (now project leader of software development and implementation 4 days a week).

uBO has dynamic and static rules. Manifest v3 also has static and dynamic rules, but they are not the same (they only have the same name). uBO's dynamic rules overrule uBO's static rules, while UBO's static rules also have an $important option to overrule other static rules. When I read the specs of Manifestv3 there is only one hierarchy (not two as with uBO), so there does not seem to be an easy way to implement medium and hard mode (as higher hierarchy overruling 'normal' and 'important' rules).

That said, uBlockOrigin has (like AdGuard and to a lesser degree ABP) advanced rules which were not possible to implement with the Mv3 static and Mv3 dynamic rules which are applied by the browser itself. AdGuard solved this by injecting javascript into each webpage (similar to userscripts), so developers have found a way to work around (some of) the limitations of Mv3. Maybe GorHill finds a way to realize medium and hard mode in a different manner.
 
Last edited by a moderator:

nicolaasjan

Level 3
May 29, 2023
142
There is an option to extend support with 1 additional year via a policy. :)
:)

Chrome Enterprise Policy List & Management | Documentation.
Enterprises using the ExtensionManifestV2Availability policy to ensure the continued functioning of Manifest V2 extensions in their organization will have one additional year - until June 2025 - to migrate the Manifest V2 extensions in their organization. Browsers with the policy enabled will not be impacted by the rollout of the deprecation until that time.
Example of a Windows policy for Chrome/Chromium (.reg file):

Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Chromium] "ExtensionManifestV2Availability"=dword:00000002 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome] "ExtensionManifestV2Availability"=dword:00000002

Despite Googles concessions, I still don't think uBOL will be as powerful as MV2 uBO:

Filtering capabilities which can't be ported to MV3.

Here's hoping that my main browser Firefox will keep allowing MV2 extensions...
 
F

ForgottenSeer 97327

Despite Googles concessions, I still don't think uBOL will be as powerful as MV2 uBO:

Filtering capabilities which can't be ported to MV3.

Here's hoping that my main browser Firefox will keep allowing MV2 extensions...
Nice find about the support continuation using GPO (y)

The link you posted clearly states the limitations of Mv3 vs Mv2, but on the other hand how many users use these advanced Mv2 functions?
When I recall right @silversurfer posted he is very satisfied with UBOL (correct me when I am wrong).

I am currently using NextDNS with only 2 privacy list (AdGuardDNS and 1HostLight) and AdGuardMv3 with 3 small filters (Kees1958 Mv3, Bypass Clean Filter and uBlock Quick fixes) and don't see advertisements. AG Mv3 also has an ad-sniper tool to create cosmetic rules for left overs


____smal HOW TO create your own user rules in AG Mv3 when AD_SNIPER does not work ---

I know HTML , CSS and Javascript, so I can easily add an USER rule to create a cosmetic rule to hide an ID or CLASS.
Just move your mouse to the advertisement or part you want to hide and right-click Inspect.
1700239585402.png


The two examples below hide a DIVider (part of a website) with a certain ID (BBC.COM) or with a CLASS (RTLnieuws) containing part of a logical name.
Websites often use self explaining logical names for easy website maintenance. Usually wrapper is the highest level of a component, so choose that when you see it.

! BBC.com hide DIV's with ID containing "leaderbord"
bbc.com##div[id*="leaderboard"]

! RTL nieuws hide DIV's with CLASS containing "billboard-wrapper"
rtlnieuws.nl##div[class*="billboard-wrapper"]

The *= means contains, so in the last example a class called "top-billboard-wrapper 123randomABC" is also hidden.
Adding random numbers is a common anti-adblock tactic (makes it also harder to create custom rules using AdGuard's ad-sniper or uBO's element picker)
 
Last edited by a moderator:

nicolaasjan

Level 3
May 29, 2023
142
Nice find about the support continuation using GPO (y)
Btw, in Linux, you have to set the policy in the file:
/etc/chromium/policies/managed/ExtensionManifestV2Availability.json
with the following content:
{ "ExtensionManifestV2Availability": 2 }

The permissions are important. Ensure that if the policy is a managed policy, chmod it so its only writeable by root or admin.


screenshot-20231117.png
 

oldschool

Level 82
Verified
Top Poster
Well-known
Mar 29, 2018
7,114
The link you posted clearly states the limitations of Mv3 vs Mv2, but on the other hand how many users use these advanced Mv2 functions?
Probably a small minority.
When I recall right @silversurfer posted he is very satisfied with UBOL (correct me when I am wrong).
You are correct. And for some more flexibility users can use Adguard and µBOL as you've posted elsewhere. These users would likely be a minority as well.
 
F

ForgottenSeer 97327

Will MV3 Adguard or uBolLite be able to beat Youtube anti-adblock? They need filter update every 12 hours.
AdGuard Mv3 YES (uses dynamic rules), uBOL at the moment NO, but with the increase of dynamic rules from 5000 to 30000 Gorhill might also add his quick fixes (like I have in AG Mv3) and some other uBO assets in uBOL using dynamic rules.
 
F

ForgottenSeer 97327

I like Chromium based browsers, so will shift to Brave from June 2024 if MV3 dynamic rules are not enough to tackle Youtube. Brave in-built adblocker updates adblocking rules every 100 minutes so will be much better option than Chrome+uBOL.
Mv3 was a big opportunity for Brave (that is why I tried it on Windows). Manifest v3 implementing a fair part of the extension builders request sort of reduced that (that is why I dropped it again), but Google's new anti-adblock trials with youtube might increase the attractiveness of Brave again. Who knows?
 

plat

Level 29
Top Poster
Sep 13, 2018
1,793
Most likely does not apply to most here but Mr. Hill did put a kibbosh on unreal expectations for uBO Lite on the anticipated transition to MV3. I mean: this is still so fluid--MV3 first has to travel its way thru the test (DEV, Canary, etc) channels before it reaches the mainstream channels anyway. Who knows how long that will take past June (or whenever) 2024. :unsure:
gorhill ubol.PNG
If anyone is interested, here is the link via the X post. I uploaded a snip of the post since some have made it ABUNDANTLY clear they don't have an acct. there. :D
 

nicolaasjan

Level 3
May 29, 2023
142
Thanks a lot, (y)(y)(y) is the JSON file location the same for Chromium running in Flatpak?
Since I know virtually nothing about Flatpaks, I did some Googling and only found this:
https://github.com/flathub/org.chromium.Chromium/issues/37.
And this:
https://github.com/flathub/org.chromium.Chromium#extension-points

This is what Bing Chat came up with:

I'm sorry, but I couldn't find the exact directory for Chromium policies for the Flatpak version on Ubuntu. The directories can vary based on your specific Linux distribution and Chromium installation method. It's always a good idea to refer to the official documentation or community forums for the most accurate information. If you encounter any issues, feel free to ask for help in the relevant support communities. They are usually very helpful. If you still can't find the information, you might want to consider reaching out to the Chromium project or the Flatpak community for more specific guidance. They should be able to provide the most accurate and up-to-date information.

Source: Conversation with Bing, 18-11-2023
(1) How to configure policies/preferences for Chromium - Ask Ubuntu. How to configure policies/preferences for Chromium.
(2) . Chromium policy location for Flatpak version in Ubuntu - Bing.
(3) Old Flatpak version in Focal repo: no Chromium for me?. Old Flatpak version in Focal repo: no Chromium for me?.
(4) Assign flatpak run org.chromium.Chromium to an alias - Ask Ubuntu. Assign flatpak run org.chromium.Chromium to an alias.
(5) undefined. How to Install Flatpak on Ubuntu 22.04 or 20.04.
(6) undefined. How to Install Chromium Web Browser on Ubuntu 20.04.
(7) undefined. Linux Quick Start.
(8) undefined. Flatpak—the future of application distribution.
(9) undefined. https://flathub.org/repo/flathub.flatpakrepo.
 

About us

  • MalwareTips is a community-driven platform providing the latest information and resources on malware and cyber threats. Our team of experienced professionals and passionate volunteers work to keep the internet safe and secure. We provide accurate, up-to-date information and strive to build a strong and supportive community dedicated to cybersecurity.

User Menu

Follow us

Follow us on Facebook or Twitter to know first about the latest cybersecurity incidents and malware threats.

Top