Template talk:Testing/entry

Handling of "User" entry
The "User" entry needs a correction. The "Special:Contributions" page won't exist for users that aren't registered, and it's only displayed for such. I would lean to using the "Special:Contributions" page for users that exist and a generic search on the user name otherwise.Kolano 09:02, 17 February 2012 (CET)

Actually, on closer look, the "Special:Contributions" does work for registered users that don't have user pages. Not clear if there is a way to identify unregistered users and provide a generic search for them instead.Kolano 09:04, 17 February 2012 (CET)

Linux Purge
Why did you do a mass replace purging "Linux" from the wiki? That text is necessary to flag titles as having been tested on Linux. After which I'm also guessing there are a number of test results that list no OS at all now. Kolano (talk) 01:35, 15 November 2015 (CET)

That's something that was really bothering me for a while, while we have clean and consistent namings for Windows (Windows 7/8/8.1/10) or Mac OS X (Mac OS X 10.6/10.6.1/10.7) the naming for Linux was veeeery inconsistent across the wiki (e.g. regarding Ubuntu, I saw it listed as Linux Ubuntu 10.04_64, Linux (Ubuntu), Ubuntu 12.04 Precise, etc while in essence it should be as simple as Ubuntu ). Now that I had time I did the edits, they're consistent to the distro naming and version now, similar to Mac OS X and Windows (although I may have missed some edge cases -- still investigating). And now that you mentioned about tagging, I didn't look into depth but in Linux case it didn't worked reliably, at least for me (e.g. relied in having "Linux" in the OS parameter even when the distro doesn't have "Linux" in its name at all, like elementary OS, Debian or Ubuntu) and even that weren't consistent (some pages had Linux test entries but didn't even list "Linux" anywhere)

For a while I even thought the tagging feature didn't work with Linux test entries at all and then did the mass edits (now I see I broke something -- sorry). But don't worry, I plan reintegrating the tagging feature again as fast as I can, by having a list of distro keywords stored somewhere (probably a sub-page of the template) and use that to re-flag those test entries in the Linux category while maintaining naming consistency with OS X and Windows (basically < os name/official distro name > ). Yes, I know, there's thousands of distros available, but so far in the replaces I only found a subset of the most common (Ubuntu and its popular variants, Arch Linux, Fedora, Debian) and I want to make this transition as painless as it can be (e.g. if an user add a test entry of a random distro we don't have listed for tagging we simply edit the template page with the distro names and that shiny new entry and any future entry using that distro gets tagged automagically). With more work it also opens more possibilities (like tagging test entries by distro). And finally, regarding test entries that only listed "Linux", I took care to not touch them during the mass edits.

(regarding testing of those changes in a sandbox page, well, I confess I skipped that part because it looked it wouldn't break anything, until you made me realize that it broke the tagging feature -- fixing that is a top high priority now, and probably easier than rolling back around 300 pages that would probably need to be purged again after I fix that -- and of course, if you have any objection, just tell me and I try to address it and if not possible, mass revert) - Jhonn (talk)


 * If you are looking for consistency we should just list "Linux" and not bother with all the various distro names, as you indicate there are hundreds if not thousands of distros out there. Trying to base things on the distro names is just asking for frustration. In your replacements there was also: elementary, openSUSE, Slackware, and likely others as I found those with just a few clicks). Even if you capture all the current distro cases, undoubtedly someone will add a new one soon enough.


 * I also had thought the naming had been fairly consistent previously, almost as you indicate: "Linux  ". I had avoided performing too many clean up edits there except to add in the "Linux" text when it was missing since I wasn't familiar with either the distros or their versions.


 * The impression I had with the tagging was that it always worked as long as the entry included "Linux" somewhere in it's OS string, the only ones that should have been missing are the ones that didn't include Linux (i.e. "Umbuntu X", etc). If there was a bug there, that would have been easier to fix than reverting all your updates. Kolano (talk) 09:20, 15 November 2015 (CET)


 * Just so we're clear... I am aware of this, but I don't care! I trust you guys can figure it out without me, I don't mind. I could weigh in if you need me to break a tie or something I suppose, but I don't think that's necessary. - MaJoR (talk) 14:41, 15 November 2015 (CET)


 * Well, the way I was thinking of implementing it was doing something very simple, storing the currently used distros somewhere to auto tag them in a generic category like "Tested on Linux" (I know there are thousands of distros but right now we only have entries of a subset of 10-15 of them, generally the most popular ones or variants of the most popular). Then, we monitor recent changes (or implement a fall back category, like a logic in template to tag the page as "pages with unknown OS/distro" if it doesn't fit either in Windows, Mac or Android -- I haven't tested "Android" tagging but it probably works) and periodically just add those new distros in the DB (something similar to Global Problems, but probably without needing variables or CurrentGitRevision which is edited periodically), the template would then do the rest. And just to make clear, even before the mass replaces I did we already had many Linux entries missing "Linux" wording at all that is what bothered me most, and I don't see "Linux  " as an optimal solution that will work cleanly in all cases, if the distro name already have "Linux", like Arch Linux or Gentoo Linux, it would result in something that looks somewhat weird to me like "Linux Arch Linux 3.1" or "Linux Gentoo Linux 2". But, if you like to return to how it were before, we can do that too, just give me some time, tomorrow I'll try the simple distro tagging method and if it doesn't work well I'll start undoing the replaces I did. - Jhonn (talk)


 * OK. Just to be clear I am on board with bringing consistency to our handling of Linux OS indicators, but I'm still concerned with your general plan here.
 * If it's 15 different distros tested against today it will be 16 tomorrow. Even if the distro list is separated out in some way, we'll need to frequently update the related template, which I'd prefer to avoid.
 * I'm also guessing over time as the list grows it will become less clear when the list needs to be updated (i.e. it won't be apparent just from the recent changes list).
 * For many things you could likely keep the match simple enough to match a number of inputs, but I have a feeling that we'd still need to update Linux test results frequently to align with our specific names.
 * Though I'm guessing the list can get fairly long before it would be an issue, at some point there may be performance concerns with a long list of matches.
 * I'm still unsure on how to move forward. but regarding such...
 * I concur that the doubled Linux would be weird given that syntax. I think I had avoided adding the duplicate when Linux appeared in the distro name, but that is inconsistent. Perhaps such can be resolved with different syntax that would further separate the distro indicator: "Linux ( )" or "Linux:  ". Since Linux tests don't show up often enough to provide examples to folks, it may be hard to get testers to comply with that though. Part of the "Linux XXX" naming came from it being a popular default naming convention.
 * Perhaps since other OS's have clearer indicators (Windows, Mac, Android), we could just presume Linux when the OS field was not blank and didn't match one of those. That would alleviate needing to maintain the template, though it wouldn't bring consistency to the Linux OS naming (I guess that's a separate effort no matter what we do though).
 * I'm unclear that it would come up, but I'd guess there may be Linux distros that may match one of our other OS search strings. This seems like a possible problem for either handling, so I guess we shouldn't worry over it till it comes up.
 * Let me know your thoughts, and hopefully we can move forward with something soon. One of my goals here would be to design the template so it wouldn't require ongoing maintenance. We'll likely be stuck doing test OS naming clean up no matter what route we take, so it would be good to avoid needing template maintenance too. Kolano (talk) 10:21, 16 November 2015 (CET)


 * You raised some good points here, I haven't thought of a big distro naming list (and that reminds me of the old days where our game lists were split in various pages -- awful). Said that, I'm also against my initial approach now, so, discarding it. I really liked the "assume to be Linux" approach, I mean, currently Dolphin runs on Windows, Mac, Android and Linux, and excluding Linux, all other OSes have very well defined namings (Windows < edition name/ version number >, Mac OS X, Android ) and so I think that approach could work well while maintaining consistency with the official name of a given distro, without increasing maintenance when compared to what we do today (we would still need to keep monitoring Recent Changes when users add test entries to assure they didn't screw anything, though). Speaking of that, we may implement logic to tag FreeBSD too, for future-proofness (although we haven't any test entry AFAIK, current Dolphin builds can be compiled and run in FreeBSD) and even in that case the "assume to be Linux" approach would work too because FreeBSD also have a well defined naming. Updating our documentation to reflect that and the template logic modification would suffice to restore Linux tagging, so, I think we have a winner, unless you have any more concerns or points against the "assume to be Linux" approach. If they're not addressable I'm OK with the "Linux ( )" approach too, as a last resort... - Jhonn (talk)


 * I'm onboard for handing the logic in the test template that way. Even though such won't effect the flagging, we may still want to work out some specifics of our naming conventions for Linux. I presume you'd want to go with how things were revised in your recent edits (i.e. just " "). Please review / update Template:Testing/doc as appropriate. I just realized I needed to purge out the CPU architecture stuff from there so I did a bit of clean-up already. Kolano (talk) 22:14, 16 November 2015 (CET)


 * It's done (updating documentation right now) and it works really well. But I did other changes that I also want to hear from you:


 * Introduction of variables: at first it looked ugly and hacky to me but afterwards it looked somewhat cleaner (doing regexp only one time and saving its results for further reutilization). We would only need to edit only one instance of that particular regexp in future (e.g. adding a new CPU/GPU brand or OS), less prone to editing one regexp and missing the other (leaving the template bugged), also probably saving some server processing (e.g. for CPU attribute we do the same regexp two times, could be reduced to only one). Thoughts? I would like to extend its usage further (CPU/GPU) if you're ok with it...


 * This seems fine to me, I wasn't familiar with template variables when I put this together initially. Kolano (talk) 15:24, 17 November 2015 (CET)


 * Future proofness: should we create categories for possible test entries in future? I created Android and FreeBSD (OS) but didn't move on the mobile CPU/GPU manufacturers. Thoughts?


 * It looks like you did capture some of the mobile CPU/GPU stuff. This also seems fine, though I also have a bad feeling many folks will have no idea what CPU/GPU are in their phones and we'll be cleaning stuff up a lot. I guess that would be dependent on actually getting some Android test results though. Kolano (talk) 15:24, 17 November 2015 (CET)
 * I'm putting this on hold indefinitely, just realized some other issues we'll certainly have in current design (e.g. two different devices may use exactly the same CPU/GPU and Android version and yet may perform completely different because of OEM shipping older/newer GPU drivers or one including optimizations not available in the other). Including device model would fix that but it would also probably require some redesigns. In other words, at least currently it's not worth the work needed, we still don't have any Android testing entry... - Jhonn (talk)


 * Category rename: it's completely personal taste but also to differentiate from wiki namespaces, before it looked like a sub-namespace (and that doesn't exist AFAIK), adding a little space helped me differentiate visually (subjective, I know). But if that was the intention (to really look like a sub-namespace) I'm OK too, just tell me and I revert those category changes...


 * No big deal. Kolano (talk) 15:24, 17 November 2015 (CET)


 * That's all for now. - Jhonn (talk)

Variable Usage
Um does your comment about variables on your ToDo list (i.e. "variables are global to the pages they exist, not exclusively to the templates defining them" now apply here? Kolano (talk) 15:37, 17 November 2015 (CET)
 * Well, yes and no. I'm already using a somewhat unique name here (tl_testing_entry_os) so it's not a problem here. The entry in my to do is to use something unique everywhere else on the wiki too, so, the chances of defining a variable with the same name in other page is almost zero (I set that as critical because defining a variable named i in Video Gallery is potentially dangerous if we include another template that also uses i variable on the same page, in worst case we would have a race condition and both templates would be buggy when included together). But yes, that means that another template can "read" the regexp result that is stored in tl_testing_entry_os if such template and Testing/entry are included together. - Jhonn (talk)