[04:10:45] why is jsdoc complaining about function foo() {} at the top level of a package file being a global? That's not global, it's in an implicit IIFE. [04:11:08] does it just not know what package files are? [04:32:53] TimStarling: generally yes. Which repo and locally or CI? [04:36:51] PS11 here: https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1130956/11 , in CI here: https://integration.wikimedia.org/ci/job/mwgate-node20/32569/console [04:36:59] in PS12 I implemented a workaround [05:17:17] Ah those are tests. We usually place them inside the QUnit module closure in that case. Afaik those aren't package files. Granted they aren't global either, but it does mean it shares scope with other test files [05:17:59] TimStarling: ^ [05:18:59] ok [05:19:11] Eh.. oh you're not talking about eslint wanring about global vars [05:19:19] But about JSDoc. [05:19:44] are you going to review this terrible JS code when I finally get it sufficiently tested and passing? you know I subscribed you to the task but you didn't respond there [05:22:54] you don't need to give +2, commtech will review it anyway, just in case you have any tips for me [05:38:54] I'll try. I had forgotten about that ping, got distracted. [05:39:53] Was going to ask if it'd be simpler to have the API call return the HTML, and/or submit natively (ie progressive enhance rather than fully replace submission). [05:40:23] Rather than recreate each piece separately. But I suppose it might come again sometime. [05:41:11] are you are thinking of a different task? I mean https://phabricator.wikimedia.org/T389161 [05:41:24] no doubt I've pinged you about a lot of things :) [05:41:41] Regarding the JSDoc, it's presumably about the doc block, not about any lexical analysis. It needs to be either ignored or if part of a class attached to a class linearly or via @member [05:42:14] It's basically saying the block is implied global because it's not part of a class that it knows about [05:42:27] Not about your function itself. [05:43:41] Ah I've not seen that task but I thought you pinged me a while back about rendering timestamps in Special Block Js [05:43:50] I assumed it was the same use case still [05:45:21] I noticed that eg the legend stays visible after submit, the button isn't a submit button, and form has no target so eg submitting to a new window/tab doesn't work when JS is enabled. Those would naturally be fixed, but I realise it's a late change of course. Maybe another time. [05:46:21] UI stuff is mostly Harumi [05:46:50] I'm trying to stay out of it, with mixed success [06:11:43] I see enough use cases that it seems like at least need a better answer than: don't or roll your own, so that's reasonable for sure [06:12:26] Letting php do heavy lifting and compile something ready to use for the current language only also +1 [06:13:38] Might look at the actual patch next week. ... a sentence I've already said to three people this week, so might be later. [06:13:49] Left a reply on task about one aspect of it [06:58:18] thanks