-
Notifications
You must be signed in to change notification settings - Fork 305
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
Switch to manifest v3 #1430
Comments
Firefox doesn't yet support v3, although I think they are planning on adding it soon. So I would wait
|
Chrome doesn't support all the things we need too, like passing a config to content scripts synchronously or creating nested workers in the background context. These things may appear only next year, but we'll have to start the migration sooner because it takes time. We'll keep the MV3 version separate somehow, so that the ongoing work doesn't break the main extension in older browsers. |
Makes you wonder if they're kickin' the can because there's already been a more significant, preemptive backlash than they originally predicted. The memes about Google killing adblockers, and how everyone should switch to Firefox, have certainly been making the rounds in recent weeks. I'm sure it's all a numbers game to Google. How much of their market share monopoly are they willing to sacrifice for increased ad revenue? No doubt they have projections which legitimize the shady moves they've been planning for years now, but obviously something's changed. Predictions are all well and good 'till the pitchforks come out. |
An update on this: Mozilla is planning general availability of MV3 extensions on Firefox for Android. NOT MV2 extensions. |
https://developer.chrome.com/blog/resuming-the-transition-to-mv3?hl=en
|
MV3 still doesn't implement a way to ensure the styles are applied in time to avoid FOUC (flash of unstyled content):
The only way to avoid FOUC is to use the
In other words ManifestV3 is inherently inferior for userstyles as observed with the original Stylish extension if you open a page, read it for more than 30 seconds, open another page on a fast site. It seems unreasonable to break Stylus as well, so I think we should just keep using ManifestV2 until a native API is implemented. ManifestV2 can be enabled for a year via policies or registry (if you're not an administrator, replace HKEY_LOCAL_MACHINE with HKEY_CURRENT_USER). |
@tophf I don't know the complexities here, but if I understand instant-inject correctly, it could enable a workaround I could live with as a user - instant-inject a style that hides everything while the background script is starting and finding the right styles to apply. Your calculations make it sound like very fast sites would have up to 300ms delay in showing up. I could live with that. What do you think? |
That's completely unusable i.e. I don't see the point of maintaining Stylus if that's how it has to work. Also, many sites open within 100ms, especially those that have a service worker installed e.g. telegram may start opening (onCommitted) in 30ms since the earliest moment the URL becomes known (onBeforeRequest). It'd be especially bad when navigating the same site with a style that applies differently depending on the page URL because pages could be loaded very fast and they look similar, so hiding the old contents would be very disruptive and ugly. I guess I'll try |
OK, fair enough... |
@tophf Please do what you can. 🙏 Stylus has a special importance in my browser usage and work. |
Chiming in here as well. I love creating customizable styles and sharing them with my friends the community. If this extension doesn't work on the web browser that 75% of the world uses it's kind of a let down. Even a "lite" variant of this extension would be better than nothing, even if it is a little slow and impractical. This addon knocks Stylish out of the park with auto-updates, the editor, cloud syncing, and numerous usability improvements. So much so that I now host my styles exclusively on userstyles.world. But yeah, Google's pretty evil in this regard. |
I am legally blind with albinism and have light sensitivity. This extension has been a godsend for me. I'm already mostly using Firefox except for development / testing with Chrome. But please, if there's any way to defeat Goliath Google's constantly trampling down on users with disabilities by trying to take control out of our hands by crippling extensions such as Stylus... if there's any way to get around their constant nonsense, please do it. If you ask me, Google is asking for a major, major accessibility lawsuit worth millions if they cripple this and other such extensions. |
Thinking more about this and following other affected projects, I imagine it must be incredibly painful to now have to be responsible for maintaining two versions of the same extension. If the developers fully migrate to Manifest V3 to comply with Google's demands, it will cripple and restrict the Firefox/Mozilla/Gecko version. If they do nothing, it won't work on any Chromium browser. Who is going to be responsible for maintaining both versions at the same time? Google is potentially killing off thousands of open source projects and scrapping years of development. It's outrageously sad to realize just how much control Google has over the entire "open" web. |
This comment was marked as off-topic.
This comment was marked as off-topic.
This assessment helped me to understand the situation better: |
With the MV3 thing I don't want to trust google any more and I want something under my control. |
Test MV3 build is available in #1828 or in my comments below. |
@tophf |
"Write new style as UserCSS" opens the classic editor instead. Edit: After installing usercss style and saving it as template (or reset template) and then restarting the browser fixes it :D |
I do not have a problem with writing new styles, but with the window not working, the one in the screenshot above. Edit: @pabli24 Saving as a template, resetting the template and resetting the browser, I tried various combinations but nothing helped. |
Fixed the bugs reported above, hopefully without adding new ones: |
@tophf Thank you for the fix, this version works well, for these moments I see no more problems. |
so if a mv3 build is in the works, what sacrifices/compromises had to have been made? |
|
Apologies for asking this here (but it is kinda related 😉), what is the plan on the MV2 version of Stylus? The new BETA expects at least Cr128 to install, I suspect because needed APIs are not there in Cr<=127 (?). Supermium is a Chromium fork very popular in older OS users (Win8.1/7SP1/VistaSP2/XPSP3); the exact OSes Google cut support for in their browser; Supermium won't remove support for MV2-type extensions any time soon (so uBlock origin MV2 will continue to work there); it's currently in the Chromium-126ESR branch, so while it does support MV3, latest Stylus-BETA 3.0.0 won't install there... Will you be willing to continue publishing (say, on GitHub) MV2 versions of Stylus for some additional time (if possible, code-wise) for the sake of those Chrome forks targeting Win < 10 ? If MV2 is to be axed pretty soon, then at least one last MV2 version based on the latest Thanks for your precious time reading this 😄 . |
MV2 version will be used in Firefox, because its support for MV3 is still spotty and MV3 doesn't yet offer any advantages for userstyles. It'll be added to github releases as well.
The MV2 version does.
I don't know what you referring to. The stable version in the web store works in Chrome 56. If something is broken you can make a bug report and if I can replicate it here I'll fix it. |
This comment was marked as resolved.
This comment was marked as resolved.
No, it's not a universal build, it's just for Firefox web store, so it won't have Chromium-specific code. A separate Chromium build will be attached to github releases.
It works for me, just as Chrome 56, and the options are displayed properly using Stylus from the web store. |
Ah I see, I have to make the window smaller. Should be an easy fix then. Anyway, don't hijack issues with unrelated problems. The fix itself is simple and you can use it as a userstyle: @-moz-document url-prefix("chrome-extension://clngdbkpkpeebahjckkjfobafhncgmne/options.html") {
.block {
flex-shrink: 0;
}
} |
This comment was marked as off-topic.
This comment was marked as off-topic.
Please open a new issue. |
https://developer.chrome.com/blog/mv2-transition/
The text was updated successfully, but these errors were encountered: