Trying to post as a guest when all fields are empty shows me an error:


But if I fill at least one field (title, body, tags) I see no error message, but infinite processing indicator (I set only one letter ‘q’ for the title):


Moreover I can click on the “Post your question” button again and again and will see the following:

more processing

  • off-topic: I see you rolled back a burnination attempt for the tag guest-posting. I really don't think we need that tag. Can you explain why you so desperately want to hang on to that tag? Without a good reason I'm going to remove it again but I don't fancy getting into a rollback-war over it. – rene Dec 9 '18 at 11:02
  • @rene pretty sure OP here wasn't aware of the existing anonymous-visitors tag and wasn't aware of the word anonymous being used hence failed to find it. Based on this assumption, I'm removing the tag. – Shadow The Vaccinated Wizard Dec 9 '18 at 11:09

The immediate cause of this is the recent update to render validation errors inline. Specifically, those snazzy SVG images that validation now sticks to the side of the fields that've failed validation:

example SVG: an exclamation point in a red circle at the end of the title field

Yeah, that baby. Turns out, loading SVGs is a bit more tricky than loading, say, a GIF - so there's a tidy pile of JavaScript that gets loaded to handle it. The initialization for this script is a wee bit dicey: on load it pre-pre-initializes constants for all the predefined icons, and then - after the other scripts have loaded - there's an initialization routine that has to be called to finish pre-initializing those constants with a loader routine. Then, upon first use, each icon is actually loaded. And from then on, they're cached. This script is helpfully included in both the scripts loaded for logged-in users and the scripts loaded for anonymous users, so it really shouldn't be an issue...

...except that two years ago, someone added a little bit of script to the tag editor to track editing events. And that tiny bit of script loads full.js - the set of scripts normally reserved for logged-in users. It loads those scripts even if the current user isn't logged in... Which means when you open any editor with a tag-edit field as an anonymous user, a whole bunch of scripts get loaded twice...

...Including that SVG loader...

...Which has a really delicate initialization routine only partially completed on load...

...So now the second instance stomps on the already pre-initialized first instance, leaving it only pre-pre-initialized...

...and thus we get this:

Error in browser console: "Uncaught Svg icon getters must be initialized before an icon can be retrieved"

As you might guess, this also affects any anonymous editor trying to suggest an edit to a question on any site (since there's a tag editor there too).

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .