• @FooBarrington@lemmy.world
    link
    fedilink
    English
    18 months ago

    Can UserScripts actually intercept requests? I thought this wasn’t possible at all with Manifest v3. If so, nothing useful can be done with the lists.

    • @Sotuanduso@lemm.ee
      link
      fedilink
      English
      18 months ago

      I meant user scripts might be able to populate filter lists for the main extension to do.

      Based on the conversation so far, I’m pretty sure extensions can block ads, but the concern was that filter lists would have to be packaged with the extension instead of dynamically updated. User scripts might be a way around that, as they’d allow loading arbitrary code, but I don’t know what the limits on that would be.

      • @FooBarrington@lemmy.world
        link
        fedilink
        English
        18 months ago

        I meant user scripts might be able to populate filter lists for the main extension to do.

        You’d have to show me the API to do so. I’m reasonably sure the uBlock developers would have thought about this, or somebody else.

        Based on the conversation so far, I’m pretty sure extensions can block ads

        Not really. The extensions can give Chrome a list of things to block, but they can’t block themselves, and the lists have to be shipped in the extension.

        but the concern was that filter lists would have to be packaged with the extension instead of dynamically updated. User scripts might be a way around that, as they’d allow loading arbitrary code

        Arbitrary code only helps you if there is an API to call.

        • @Sotuanduso@lemm.ee
          link
          fedilink
          English
          18 months ago

          Have the uBlock developers been talking about this? I’d like to read up on that if so.

          • @FooBarrington@lemmy.world
            link
            fedilink
            English
            1
            edit-2
            8 months ago

            There is this resource: https://support.ublock.org/hc/en-us/articles/11749958544275-Google-s-Manifest-V3-What-it-is-and-what-it-means-for-uBlock-Users-

            Here is a summary of a contributor in a Github issue about Manifest v3: https://github.com/uBlockOrigin/uBlock-issues/issues/338#issuecomment-1507539114

            uBO Lite:

            • Filter lists update only when the extension updates (no fetching up to date lists from servers)
            • Many filters are dropped at conversion time due to MV3’s limited filter syntax
            • No crafting your own filters (thus no element picker)
            • No strict-blocked pages
            • No per-site switches
            • No dynamic filtering -No importing external lists

            So it really is a shadow of its former self.

            • @Sotuanduso@lemm.ee
              link
              fedilink
              English
              18 months ago

              Thanks! So yeah, I guess there will likely be an issue with YouTube ads, if what I’ve heard about it updating multiple times daily is true, but they don’t seem to be expressing concern about it.

              Right now I have two Chrome profiles with two different adblockers trying to get around YouTube ads in two different ways, and both of them are able to do so. One is uBlock, doing what uBlock does with an army of developers updating filter lists, and the other seems to be playing the ad in the background while skipping me ahead to the video. So I do think that even if uBlock’s current approach fails, they will be able to find a way.

              If things go awry and both my adblockers fail, even if it’s just on YouTube, I intend to switch to Firefox, but it’s not worth the bother yet.

              • @FooBarrington@lemmy.world
                link
                fedilink
                English
                18 months ago

                That’s the thing, it is literally impossible to find a way. Currently, they’ve implemented content-based blocking - the extension looks at requests made by YouTube, and filters based on them. They still need multiple list updates per day, but this filtering does most of the work.

                This is completely impossible with Manifest v3. There is only declarative blocking with v3, which allows for max. 30k rules per extension. The uBlock developers will not invest work to circumvent the restrictions: https://github.com/uBlockOrigin/uBlock-issues/issues/338#issuecomment-1253893421

                • @Sotuanduso@lemm.ee
                  link
                  fedilink
                  English
                  18 months ago

                  They will be able to block most ads. For more advanced sites like YouTube, they should be able to use the permissions API to request permissions for those specific sites, allowing them to use the scripting API to inject scripts to those pages, thus gaining better adblocking capabilities.

                  Also, the comment you linked to was a description of how uBlock Origin Lite works, not the issues faced in manifest v3. I didn’t read through the whole thread because it was really long, but I did still manage to find those points in there.

                  • @FooBarrington@lemmy.world
                    link
                    fedilink
                    English
                    18 months ago

                    They will be able to block most ads. For more advanced sites like YouTube, they should be able to use the permissions API to request permissions for those specific sites, allowing them to use the scripting API to inject scripts to those pages, thus gaining better adblocking capabilities.

                    Again: what APIs should they use with injected scripts? How do you intercept requests? You can’t.

                    Also, the comment you linked to was a description of how uBlock Origin Lite works, not the issues faced in manifest v3. I didn’t read through the whole thread because it was really long, but I did still manage to find those points in there.

                    The comment I linked is a description from the uBlock developer on how his Manifest v3-compatible version of uBlock works. That is uBlock for Manifest v3, and there won’t be another version.