Is uBO Lite a bad faith attempt at converting uBO to MV3?
See
*> The name of his new extension, "uBlock Origin Lite", will also not help with ... | Hacker News
No.
My goal with uBO Lite is a reliable and efficient MV3-compliant content blocker, leveraging the filter lists used by uBO. I am satisfied that I fulfilled that goal by ensuring uBO Lite was entirely declarative -- though at the cost of limitations beyond those intrinsic to MV3.
Reliability: Being entirely declarative, uBO Lite's service worker is not required to initiate DNR-, cosmetic-, or scriptlet-based filtering in a timely manner.
As a result, uBO Lite reliably filters at browser launch, or when navigating to new webpages while its service worker is suspended. This can't be achieved without uBO Lite's declarative approach. Example:
ABP 4.1 (MV3-compliant): fails to filter properly at browser launch
uBO Lite 2024.5.29.835: filters properly at browser launch
Efficiency: uBO Lite being entirely declarative means it's service worker is lightweight and initialize optimally when activated.
Non-declarative MV3-based content blockers will suffer unreliable filtering when their service worker has been suspended, since waking up a service worker requires a lot of initialization work and delays time-critical filtering abilities. Such content blocker may end up using trickery to force their service worker to always be up and running.
For instance, ABP 4.1 uses such trick to keep its service worker alive and ready to act: the service worker is force-restarted each time it is terminated by the browser, so every 30 seconds when the browser is idle. Despite using this trick, there is still no guarantee reliable filtering will occur should timely filtering be required just as when the service worker is being woken up (all event handlers are non-blocking in MV3).
Task manager: ABP 4.1 vs. uBO Lite 2024.5.29.835
The choice of being entirely declarative for the sake of reliability and efficiency meant sacrificing being able to create custom filters, hence the "Lite" in uBO Lite: it's not meant as an MV3-compliant version of uBO, it's meant as a reliable Lite version of uBO, suitable for those who used uBO in an install-and-forget manner.