Page MenuHomePhabricator

Archive the EnhanceContactForm extension
Closed, DeclinedPublicRequest



Archived on by @Kghbln. Filing task per T190671

To-do list

  • This task
    • Add maintainers of that extension as subscribers to this task (if they have no apparent Phabricator account, notify them on-wiki or via email if possible and note it here).
    • Add Phabricator project <#ProjectX> as a tag for this task, and remove MediaWiki-extensions-Other as appropriate.
  • On-wiki documentation
    • Archive documentation on ( replace page contents with {{Archived extension|last revision id before archiving|reason=archive reasons, per {{phab|T248764}.}} (for extensions)
    • If documentation page was translatable, remove <translate>, visit Special:PageTranslation, and click "remove from translation" (if you don't have the translation administrator right, ask a user who does).
    • Update Wikidata item ( associated with documentation page
      • add statement Abandonware (Q281039) to instance of (P31) together with qualifier start time (P580) = the YYYY-MM-DD date that you decided to archive extension (generally per edit history)
      • add qualifier end time (P582) = the YYYY-MM-DD (same date as above) to instance of (P31) = MediaWiki extension (Q6805426)
  • Phabricator
    • Mark all Phabricator tasks for the extension either Declined or Invalid. Add a comment pointing to this task when doing so for reference.
    • Archive Phabricator project <#ProjectX> for the extension.
    • Edit Phabricator project <#ProjectX> description for the extension with a link to this ticket.
  • Configuration/tests/integrations/etc.
  • Repositories
    • Empty repository, leaving only the README indicating the repo is archived, and referring to this task by URL.
    • Remove from mediawiki/extensions (along with in .gitmodules).
    • Mark the repository read-only in Gerrit (also edit description to prepend "[ARCHIVED]" and a reference to this task): (provide Gerrit Repository URL).
    • Archive the Diffusion repository for the extension: (provide the Diffusion repository callsign or URL).
    • Archive the GitHub mirror: (provide GitHub repository URL).

Event Timeline

As I said in the task description, it was archived on-wiki by @Kghbln. I filed this task as simple cleanup. If you want to know why Kghbln archived the extension on-wiki, you'd have to ask them, although depending on an extension that was never created seems like a perfectly good reason.

For what it's worth, I don't think it's a good practise to archive extensions without ever contacting their maintainer(s)/author(s), especially as in this case the maintainer/author -- me -- still happens to be around.

As for the actual concern, the MyInfo extension very much exists and has existed since 2008 at ShoutWiki; it's largely a wrapper around the Full Featured PHP Browser Detection & OS Detection script, but indeed, it's not (yet) open source.

Regardless, even without MyInfo installed, EnhanceContactForm does provide more details about the wiki where the report was sent: its DB name ($wgDBname), URL ($wgServer) and the reporter's IP address. IIRC only the last one is one that Special:Contact can be natively configured to send (and it certainly wasn't the case when EnhanceContactForm was originally written).

Not all properly licensed software is terribly useful for everyone; but this piece of code is useful for us and it was moved to WMF SVN at the time when the idea of hosting software on a wiki page was starting to go out of fashion. If code like this is unsuitable for WMF gerrit, please let me know the approved rationale as to why and inform me in advance so that I can move these kind of extensions and skins out of WMF gerrit.

I'm almost two years late here, but just want to point out, this task is a case study for why this is the very first item in the cleanup checklist:

Add maintainers of that extension as subscribers to this task (if they have no apparent Phabricator account, notify them on-wiki or via email if possible and note it here).

It's difficult to do that when the reason the task was filed is that someone else archived the extension without following the checklist and no one noticed for two years.