Reporting which plugin has caused the error

based on the errors I get in the admin panel, I feel discourse can understand which plugin has caused the error. look at these errors e.g.

Uncaught TypeError: Cannot read property 'inlineBetween' of undefined Url: https://padpors.com/assets/plugin-third-party-66034ae1bc6977c5ec45dcf7adb5f8f9799ab0ff261ffd958c9425a34a956605.js Line: 1 Col 

or this one:

 TypeError: Discourse.Dialect is undefined Url: https://padpors.com/assets/plugin-third-party-66034ae1bc6977c5ec45dcf7adb5f8f9799ab0ff261ffd958c9425a34a956605.js Line: 1 Column: 42472 Window Location: 

in both of them it has pointed to a js file with a coded name (i.e. plugin-third-party-66034ae1bc6977c5ec45dcf7adb5f8f9799ab0ff261ffd958c9425a34a956605.js).

is it possible that the plugin name is also mentioned in the error log?

2 Likes

This would be great. As a possibly related thing, it would be nice if one plugin throwing a JS exception didn’t break other plugins.

I don’t know enough about how plugins are loaded to know whether that would be feasible though…

1 Like

But it is… If you open that referenced JS file, you will see the very beginning starts with:

define("discourse/plugins/Recommander/discourse/initializers/Recommander",

Surely that identifies the plugin well enough at just a click?

1 Like

I never have thought about opening that link! :face_with_raised_eyebrow:

thanks for the hint.

My understanding is that the file linked contains the JavaScript for every plugin installed on the forum - Recommander just happens to be the first one in the file.

If you do a Ctrlf for define("discourse/plugins you’ll see many plugins.

2 Likes

Ah, oops, I guess that really only works in a dev environment.

1 Like