Hello, Currently, librejs filters all html and js requests / responses, and accepts / edits / rejects accordingly. It forces the display of <noscript> element content only when an inline script / event handler etc on an html has been modified. This can cause problems when librejs leaves html unmodified, but blocks some external scripts. An example is certain versions of discourse forums, like [0][1] and sometimes the fsf member forum, with librejs the browser may display a blank / broken page, but they render fine in browsers not supporting javascript like eww and lynx.
[0] https://discourse.haskell.org/ [1] https://emacs-china.org/ I was thinking about what to do with this. I can think of a few options 1. Add a button to allow the user to manually force noscript display until the next (re)load. This is what I have done in [2]. 2. Add a more persistent user option, which when enabled, make librejs reject all scripts when a noscript tag is present. 3. Something in between: a per-site / url option to force noscript display. [2] https://git.savannah.gnu.org/cgit/librejs.git/commit/?h=noscript-toggle&id=b849b8d461479cf6530c77b97b094807840ce0d7 A few relevant questions: 1. Do developers ever sneak scripts between <noscript> tags? 2. Does it make sense to reject all scripts, free or nonfree, when opting for noscript display, assuming sites generally use <noscript> to offer a version when *all* scripts are blocked? Otherwise there may be duplicate content on a web page if some scripts are accepted and <noscript> content is displayed. Best, Yuchen -- PGP Key: 47F9 D050 1E11 8879 9040 4941 2126 7E93 EF86 DFD0 <https://ypei.org/assets/ypei-pubkey.txt>
