PM x64 33.x crash with noscript

Users and developers helping users with generic and technical Pale Moon issues on all operating systems.

Moderator: trava90

Forum rules
This board is for technical/general usage questions and troubleshooting for the Pale Moon browser only.
Technical issues and questions not related to the Pale Moon browser should be posted in other boards!
Please keep off-topic and general discussion out of this board, thank you!
User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1537
Joined: 2018-10-28, 19:56
Location: Georgia

Re: PM x64 33.x crash with noscript

Unread post by athenian200 » 2024-03-08, 09:25

Kris_88 wrote:
2024-03-08, 07:21
"Build a system that even a fool can use and only a fool will want to use it."
I like that quote. Ultimately, I guess that's what keeps me going. I know that there are at least a few curious tinkerer types out there that would appreciate something like this and are more realistic about expecting unmodified extensions to work forever. Maybe there are fewer of them, but ultimately that's who my target audience would have to be.

Come to think of it, I kind of embrace a philosophy like that with Epyrus... I got rid of the warning screen that tells you modifying about:config is dangerous, and also made it easier to find than it was in Thunderbird. It's all a part of trying to convey the message that this program is not for ordinary users who need a polished experience, or any kind of support or protection.
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35651
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: PM x64 33.x crash with noscript

Unread post by Moonchild » 2024-03-08, 13:05

athenian200 wrote:
2024-03-08, 05:48
Essentially, the whole situation seems to be proving Mozilla right, and showing that XUL is just too powerful for the average end user to be able to handle, because the average user doesn't want their extension to be a full-blown JavaScript runtime environment that can touch any part of the browser almost, they want something simple and limited that will let them do a few extra things, and which fails gracefully if anything goes wrong. That's part of why I find thinking about NoScript to be demoralizing... it just seems like a situation that goes a long way towards proving Mozilla right and makes me question what I have been doing working on a project like this, whether it's even viable... you know what I mean?
I know where you're coming from, but at the same time I have to remind you that there are tens of thousands of extensions that were made, vetted and accepted for Firefox. They were safe to use and didn't do anything untoward. The problem is that you're drawing what is clearly a massive outlier in as being "the normal state of things". It is not. It's a mental trap you should avoid here. Just one bad extension doesn't mean the XUL extension framework is bad. It just means that you have to be more careful and not use calls that reach deep into the browser guts unless you know exactly what you are doing and are intimately familiar with the intricacies of the parts you touch, and keep a close eye on any changes in code you call into and update your extension side to accomodate. Abandoned extensions clearly will not do the latter, and they will break sooner or later; the more advanced the interaction with the browser core, the faster that will happen. NoScript doesn't have to do its script blocking in the way it does, but its developer chose to do it that way. Since he walked away 6 years ago before things like Shadow DOM, JS modules, JS preloading, multiple document roots and more advanced JS internals were a thing, NoScript has simply started to mismatch what it is extending and it needs to be maintained like any other extension to keep pace with browser development.
As a side note: I chose to make this a new milestone for a reason. We crossed another threshold under the hood. And this seems to be some of the fallout from it.
andikay wrote:
2024-03-08, 04:29
Nonetheless, it doesn't make the addon less popular and when it was working in PM 32.5.2 but it's crashing in 33.0.x then it's quite clear that it's not suddenly the addon that has changed, so some change in browser code had to be responsible for it.
Not necessarily. On the surface it may seem that it's some bug introduced in the browser that now crashes, but it just seems to me that v33 simply exposed something that the extension is doing that is no longer gracefully recovered from because surrounding code changed on the browser side. The extension did something wrong before, but it didn't lead to a crash until now. I have an inkling it may be related to our JS module code as I do think there's a conflict with how NoScript blocks JS and how we are now expected to dynamically load and unload whole JS module scripts on-the-fly. e.g. what happens when a module script is loaded internally, but NoScript prevents it? Suddenly there's nothing for the compiler to process. Etc Etc.
I'm not sure how those two dance together under the hood.
The previous "NoScript patch" was also for a situation that in normal circumstances would simply never occur, but with NoScript it did. When we change code in the JS engine, we have to take into account the (already complex) environment it is in, but can't take into account every possible contingency that doesn't logically follow from our own code, as Athenian already explained above.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
andyprough
Keeps coming back
Keeps coming back
Posts: 752
Joined: 2020-05-31, 04:33

Re: PM x64 33.x crash with noscript

Unread post by andyprough » 2024-03-08, 13:53

Moonchild wrote:
2024-03-08, 13:05
It just means that you have to be more careful and not use calls that reach deep into the browser guts unless you know exactly what you are doing and are intimately familiar with the intricacies of the parts you touch, and keep a close eye on any changes in code you call into and update your extension side to accomodate. Abandoned extensions clearly will not do the latter, and they will break sooner or later; the more advanced the interaction with the browser core, the faster that will happen. NoScript doesn't have to do its script blocking in the way it does, but its developer chose to do it that way.
Sounds like you should just hard-block noscript and any abandoned extension that acts like it and move on. This is taking too much developer time and clearly causing developer frustration. Let the noscript 5.x diehards scream and yell and then wander off or adapt to using the script blocking tools they've been graciously provided. If this extension is holding the project back or taking an inordinate amount of time and frustration to deal with, I don't see the upside of continuing to cater to its adherents, especially after they've already been given adequate alternative ways of blocking scripts. noscript dev Giorgio Maone gave up on them years ago. I'd rip the bandage off. This is a good browser, it should be advancing, not being chained to someone else's past mistakes.

You've blocked it and like 4 people have complained. This clearly isn't an important or popular extension any longer.

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35651
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: PM x64 33.x crash with noscript

Unread post by Moonchild » 2024-03-08, 14:23

Oh, I'm done with it, make no mistake. I just wanted to provide more explanation.
It's been a good run. v33 was the inevitable breaking point for it. Time to move on.
You do not have the required permissions to view the files attached to this post.
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
Piotr Kostrzewski
Lunatic
Lunatic
Posts: 280
Joined: 2018-08-14, 15:08

Re: PM x64 33.x crash with noscript

Unread post by Piotr Kostrzewski » 2024-03-08, 14:34

Moonchild right now:
You do not have the required permissions to view the files attached to this post.

User avatar
Plume
Moongazer
Moongazer
Posts: 13
Joined: 2020-10-22, 18:18

Re: PM x64 33.x crash with noscript

Unread post by Plume » 2024-03-08, 15:16

moonbat wrote:
2024-03-06, 09:29
Plume wrote:
2024-03-05, 18:59
I thought maybe I'd just bring up a reason why some users don't use eMatrix. I have tried it, I simply can't use it. I am visually impaired.
andyprough wrote:
2024-03-05, 23:53
That's a good point, maybe the developer of eMatrix could add some additional font sizes and color-blind color schemes.
eMatrix already has a color-blind friendly option in its settings, if you enable that, it changes the colors to a presumably better contrasting scheme. Give it a try.
Unfortunately the color-blind setting has no effect when Windows is running in High Contrast Mode (because it basically puts the menu in black&white mode). I have posted in the extension forum and talked to the person working on the extension who is going to look into making some changes if possible. Fingers crossed.

User avatar
andyprough
Keeps coming back
Keeps coming back
Posts: 752
Joined: 2020-05-31, 04:33

Re: PM x64 33.x crash with noscript

Unread post by andyprough » 2024-03-08, 15:36

Plume wrote:
2024-03-08, 15:16
Unfortunately the color-blind setting has no effect when Windows is running in High Contrast Mode (because it basically puts the menu in black&white mode). I have posted in the extension forum and talked to the person working on the extension who is going to look into making some changes if possible. Fingers crossed.
@vannilla made the changes today and posted the new version. You should try it, I think it works real well now with magnification and with very clear indications of what's being blocked and what's being allowed. I'll be using it in this mode on my smaller laptop screens, I'm glad he did this bit of work.

User avatar
therube
Board Warrior
Board Warrior
Posts: 1651
Joined: 2018-06-08, 17:02

Re: PM x64 33.x crash with noscript

Unread post by therube » 2024-03-08, 17:18

what's to stop a web page with malformed JS from crashing the browser in the same way?" And that's a good question, because in some cases that might happen. But the thing is, JavaScript running on an actual web page is limited in how it can touch the browser internals, because we don't trust web content...
so it wouldn't be able to manipulate things on nearly as deep a level
But, in fact, malformed or malicious JS can "crash" (or at least put things into a loop, such that the only action a user would be able to do is to kill the browser, PM included - even with 33 & its' now defaulted, "Automatically stop non-responsive scripts") some browsers.


(And I'll note, that should one have happened upon said malformed or malicious JS, if you were blocking JS, via NoScript or other means, you're less likely to even be affected to begin with.)

Off-topic:
the whole situation seems to be proving Mozilla right
I'd certain argue [against] that point ;-).

User avatar
Moonchild
Pale Moon guru
Pale Moon guru
Posts: 35651
Joined: 2011-08-28, 17:27
Location: Motala, SE

Re: PM x64 33.x crash with noscript

Unread post by Moonchild » 2024-03-08, 17:59

hang != crash
"Sometimes, the best way to get what you want is to be a good person." -- Louis Rossmann
"Seek wisdom, not knowledge. Knowledge is of the past; wisdom is of the future." -- Native American proverb
"Linux makes everything difficult." -- Lyceus Anubite

User avatar
Mæstro
Lunatic
Lunatic
Posts: 463
Joined: 2019-08-13, 00:30
Location: Casumia

Re: PM x64 33.x crash with noscript

Unread post by Mæstro » 2024-03-08, 23:14

Adamant NoScript users like myself might be interested in the following workaround based on my earlier diagnosis. In the configuration menu (about:config), setting media.mp4.enabled to false will make it so that opening a page ending in .mp4 should active the response indicated under the applications tab among the settings without crashing. The original site and my own online test example no longer crash.
Browser: Pale Moon (Pusser’s repository for Debian)
Operating System: Linux Mint Debian Edition 4 (amd64)
※Receiving Debian 10 LTS security upgrades
Hardware: HP Pavilion DV6-7010 (1400 MHz, 6 GB)
Formerly user TheRealMaestro: æsc is the best letter.

User avatar
andikay
Moon lover
Moon lover
Posts: 91
Joined: 2019-05-25, 23:40

Re: PM x64 33.x crash with noscript

Unread post by andikay » 2024-03-09, 00:52

andyprough wrote:
2024-03-05, 15:07
Block remote fonts with uBlock. See https://github.com/gorhill/uMatrix/issues/480
Wait, so I'd have to use an additional addon to block fonts? Why is eMatrix not able to block fonts? Quite the oversight in my opinion.
andyprough wrote:
2024-03-05, 15:07
eMatrix is a fork of uMatrix, and I've found that nearly all the documentation for uMatrix applies: https://github.com/gorhill/uMatrix/wiki
I am currently browsing through it, thanks.


@athenian200: If eMatrix would offer the same as NoScript UI-wise and feature-wise I would ditch NoScript and switch. It's not that I absolutely have to use that exact extension, I just want the usability and functionality and to me eMatrix does not offer that for me right now. I might find out more about it if I use it for a longer period of time, but I am at a point where I got my addons sorted for years now and I changing the workflow and how I use a browser because of eMatrix is not something that is viable at this point. But I will work on it.

Kris_88 wrote:
2024-03-08, 07:21
"Build a system that even a fool can use and only a fool will want to use it."
Which is obviously not true, because most systems today for the everyday user are built so that a fool can use them - the entire ecosystem of Apple is built around that, for example. And all mainstream browsers too, which includes FF. Unless you want to imply that we all are fools, of course :).
Mæstro wrote:
2024-03-08, 23:14
Adamant NoScript users like myself might be interested in the following workaround based on my earlier diagnosis. In the configuration menu (about:config), setting media.mp4.enabled to false will make it so that opening a page ending in .mp4 should active the response indicated under the applications tab among the settings without crashing. The original site and my own online test example no longer crash.
It's not only MP4, it also crashes on WEBM, for example, like I outlined in my initial diagnosis here: viewtopic.php?f=3&t=30911#p249198

User avatar
andyprough
Keeps coming back
Keeps coming back
Posts: 752
Joined: 2020-05-31, 04:33

Re: PM x64 33.x crash with noscript

Unread post by andyprough » 2024-03-09, 03:03

andikay wrote:
2024-03-09, 00:52
andyprough wrote:
2024-03-05, 15:07
Block remote fonts with uBlock. See https://github.com/gorhill/uMatrix/issues/480
Wait, so I'd have to use an additional addon to block fonts? Why is eMatrix not able to block fonts? Quite the oversight in my opinion.
It's a good question. The original uMatrix was created by the developer of uBlock Origin. The two extensions were not created to do the same functions but instead to work together - since uBlock Origin already allowed you to block fonts there was no reason to put that function in uMatrix. Today, eMatrix and uBlock Origin continue to work very well together, and give you a number of protections you will not get with noscript alone.

I hope that helps. Keep in mind, any of us that use eMatrix now probably went through a similar process that you are currently going through, we probably nearly all used to be noscript users and moving to uMatrix or eMatrix seemed difficult at the time. Once you get over the initial shock of the difference I think you will settle into a pretty comfortable experience and find some things to appreciate about the way this works. When I think back to when I first used noscript, probably 17 years ago, that was also a difficult process for me. I knew I should be blocking scripts as I'd been to enough security conference presentations to understand the basic issues, but creating rules for each website seemed like absolute torture. But, as with any new thing I got comfortable with noscript, and then I struggled to use uBlock in advanced mode to block scripts for a long time, and then I really fell in love with the simplicity of the uMatrix table layout some years back. It does take some effort though.

User avatar
andikay
Moon lover
Moon lover
Posts: 91
Joined: 2019-05-25, 23:40

Re: PM x64 33.x crash with noscript

Unread post by andikay » 2024-03-09, 03:10

I do not only use NoScript, I also use AdBlock Latitude (or ABP on FF) in conjunction. I am trying out eMatrix right now, I might just have to get used to not being able to block fonts on some sites that use obnoxious and harder to read fonts. What also annoys me a bit with eMatrix is that I cannot move the popup window where I want to, it seems to be hard-coded. I do like the general concept of the addon, though, it's just missing some features.

Regarding uBO and eMatrix, I do not understand how uBlock Origin and eMatrix (or the original version of it) are supposed to supplement each other, they seem to exist to do the same thing and they both have a matrix where you can block stuff, eMatrix just seems to have gone further into that concept.

Image

Image

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4984
Joined: 2015-12-09, 15:45

Re: PM x64 33.x crash with noscript

Unread post by moonbat » 2024-03-09, 03:20

andikay wrote:
2024-03-09, 03:10
they both have a matrix where you can block stuff
Typically superficial understanding. uBlock Origin has powerful CSS filtering and removal of ad and banner placeholders on webpages so that it doesn't leave an empty space where something was blocked. There are tons of filter subscriptions to get rid of cookie notices, newsletter subscription popups and other annoyances, and its smaller memory footprint and dynamic rules you won't find with Adblock Plus derived blockers like ABL.

The matrix you see is not the primary way to interact with uBO; the rulesets and additional filter subscriptions are. With a proper set of filters you won't need to fiddle with that matrix (which only creates a custom filter behind the scenes). It's not for nothing that this is the most popular adblocker today across all browsers.

There is a whole community on r/ublockorigin dedicated to creating rules and helping with ads still persisting on certain sites. Also to reiterate, since so many people don't understand this - an adblocker is just a ruleset parser. It is the filter subscriptions that mark its effectiveness, not the extension itself. Which is why the legacy version for Pale Moon continues to work fine given that Pale Moon is a stable platform and doesn't need updates since the underlying platform hasn't changed; neither does it dig its hooks into the browser internals the way NoScript did.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
andyprough
Keeps coming back
Keeps coming back
Posts: 752
Joined: 2020-05-31, 04:33

Re: PM x64 33.x crash with noscript

Unread post by andyprough » 2024-03-09, 03:30

moonbat wrote:
2024-03-09, 03:20
uBlock Origin has powerful CSS filtering and removal of ad and banner placeholders on webpages so that it doesn't leave an empty space where something was blocked. There are tons of filter subscriptions to get rid of cookie notices, newsletter subscription popups and other annoyances, and its smaller memory footprint and dynamic rules you won't find with Adblock Plus derived blockers like ABL.

The matrix you see is not the primary way to interact with uBO; the rulesets and additional filter subscriptions are. With a proper set of filters you won't need to fiddle with that matrix (which only creates a custom filter behind the scenes). It's not for nothing that this is the most popular adblocker today across all browsers.
What you're saying is intriguing. It would be interesting if you could share your list of filters. I've used it as my script blocker and to block all kinds of elements at various times in the past, but what you are talking about sounds a bit different.

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4984
Joined: 2015-12-09, 15:45

Re: PM x64 33.x crash with noscript

Unread post by moonbat » 2024-03-09, 04:54

You can find these lists on the filterlist site I linked above - the most coverage is with Easylist, EasyPrivacy and Fanboy's various lists. Plus I've added these to the custom filter lists (paste the list URL in the custom filters textbox on the Filter lists tab of uBO preferences) -
Easylist Cookie list, Fanboy's annoyances (includes 'subscribe to our newsletter' popups), Bypass Paywalls Clean (see the instructions), I don't care about newsletters, Fuck Fuckadblock (and various other anti-adblock warning filters you can find on filterlists.com), Web Annoyances Ultralist - Modal Overlay Filters and Web Annoyances Ultralist - Newsletter subscription Filters .

Note that too many filter lists can also slow down performance slightly. Since uBO is a general adblocker, it can filter not just ads but these other elements as well as they are just a set of rules using the same syntax.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
andikay
Moon lover
Moon lover
Posts: 91
Joined: 2019-05-25, 23:40

Re: PM x64 33.x crash with noscript

Unread post by andikay » 2024-03-09, 05:59

Aren't these the same filters that ABP and ABL use? To me it seems that NoScript and ABP/ABL work well in conjunction, eMatrix is a bit of a different twist on what NoScript does to a certain extend, and uBO apparently unifies what NoScript and ABP/ABL do.

So I wonder, why is eMatrix the suggested addon here when apparently uBO is what we really want? Is it because uBO is "legacy" as well? Especially considering there has been some work done recently on a fork, which has already been discussed here: viewtopic.php?f=46&t=30787

User avatar
athenian200
Contributing developer
Contributing developer
Posts: 1537
Joined: 2018-10-28, 19:56
Location: Georgia

Re: PM x64 33.x crash with noscript

Unread post by athenian200 » 2024-03-09, 06:51

andikay wrote:
2024-03-09, 05:59
So I wonder, why is eMatrix the suggested addon here when apparently uBO is what we really want? Is it because uBO is "legacy" as well? Especially considering there has been some work done recently on a fork, which has already been discussed here: viewtopic.php?f=46&t=30787
I think it's because uBO is one of the most popular Pale Moon add-ons, so people assume you have some reason for not wanting to use it if you're on NoScript, that maybe you want something a little more "out there" in terms of script blocking, and eMatrix fills that niche.

That is, people would usually discover uBO first, and then only use NoScript after rejecting it and looking for something different. I've never heard of anyone going straight to NoScript first...
"The Athenians, however, represent the unity of these opposites; in them, mind or spirit has emerged from the Theban subjectivity without losing itself in the Spartan objectivity of ethical life. With the Athenians, the rights of the State and of the individual found as perfect a union as was possible at all at the level of the Greek spirit." -- Hegel's philosophy of Mind

User avatar
moonbat
Knows the dark side
Knows the dark side
Posts: 4984
Joined: 2015-12-09, 15:45

Re: PM x64 33.x crash with noscript

Unread post by moonbat » 2024-03-09, 07:27

andikay wrote:
2024-03-09, 05:59
Aren't these the same filters that ABP and ABL use?
No, the syntax is different. When you search on Filterlists, you can shortlist the results by adblocker syntax - lists made for ABP won't work for uBO and vice versa. In recent years ABP has fallen out of favor thanks to their dubious 'acceptable ads' policy, plus uBO has more powerful dynamic element filtering - so you see more lists for the latter. Especially the lists for blocking newsletter subscription and cookie popups. With uBO you don't need separate extensions like IDCAC for specifically blocking cookies. And
athenian200 wrote:
2024-03-09, 06:51
I've never heard of anyone going straight to NoScript first...
NoScript is quite an old extension, almost dating to the beginning of Firefox. Likely there are diehard users going back to the mid 00s who have never used anything else and expect to continue using the abandoned version on Pale Moon.
"One hosts to look them up, one DNS to find them and in the darkness BIND them."

Image
Linux Mint 21 Xfce x64 on HP i5-5200 laptop, 12 GB RAM.
AutoPageColor|PermissionsPlus|PMPlayer|Pure URL|RecordRewind|TextFX

User avatar
andikay
Moon lover
Moon lover
Posts: 91
Joined: 2019-05-25, 23:40

Re: PM x64 33.x crash with noscript

Unread post by andikay » 2024-03-09, 08:33

athenian200 wrote:
2024-03-09, 06:51
That is, people would usually discover uBO first, and then only use NoScript after rejecting it and looking for something different. I've never heard of anyone going straight to NoScript first...
Well for me NoScript was the first well-known addon of its kind, uBO came way later and since I had NoScript I did not have a need for uBO.
moonbat wrote:
2024-03-09, 07:27
In recent years ABP has fallen out of favor thanks to their dubious 'acceptable ads' policy,
Do you mean the "Acceptable Ads" that you can disable with one checkbox in the settings? I still use it on my FF and I have no issues with it, the provided settings and features combined with the hassle-free ease of use are enough to not fix what isn't broken whatsoever.
moonbat wrote:
2024-03-09, 07:27
NoScript is quite an old extension, almost dating to the beginning of Firefox. Likely there are diehard users going back to the mid 00s who have never used anything else and expect to continue using the abandoned version on Pale Moon.
Bingo. But "expect" is a difficult word - many people using PM use it because it has support for old FF addons that FF has abandoned long ago and that have not been re-created for newer FF. Not to mention that many of those people also do not like the newer FF UI. I have no problem saying that if PM did not support these addons I would not use it.

@moonbat: So what would you suggest to use instead of NoScript then? The recently updated uBO? Because eMatrix is quite nice (I am using it right now), but it does lack some functionality. It just seems more...superficial than NoScript, whereas NoScript is probably too far in the opposite direction. And would you suggest getting rid of ABL if using uBO as it's possibly redundant?