Thanks everyone for sharing thoughts here and on the talk page https://www.mediawiki.org/wiki/Talk:Best_practices_for_extensions.
A number of clarifications have been made, and some unready/outdated sections have for the time being been removed, shortened or replaced with a non-nominal reference to a different page (such as Accessibility).
To the best of my knowledge, the remaining points of this best practices guide are now reflective of the practices that most MediaWiki extension maintainers have been practicing in recent years (both in WMF-deployed extensions and many third-party extensions alike). As such, I've marked it as a developer guideline.
There are open discussion topics on the talk page https://www.mediawiki.org/wiki/Talk:Best_practices_for_extensions about more practices to add, including a topic about Accessibility guidelines https://www.mediawiki.org/wiki/Topic:Wqvqvhgsvpu1je15 (Do we re-incorporate some of it? And how? How much do we duplicate? If not, what should we do instead?)
-- Timo
On Thu, 27 Jan 2022, at 04:43, Krinkle wrote:
Hi all,
You may be familiar with the Best practices for extensions https://www.mediawiki.org/wiki/Best_practices_for_extensions page on mediawiki.org. It has been marked as a draft since 2017.
I'd like to polish this page and get it to a state where it would be uncontroversial to label it as "Development guideline https://www.mediawiki.org/wiki/Development_guidelines". This would not make it a hard policy. Neither does it imply that it covers all practices in all situations.
Rather, it would mean that the items that are there now are indeed a part of our current best practices. We would keep it alive through bold https://en.wikipedia.org/wiki/Wikipedia:Be_bold edits and talk page conversations, similar to our Coding conventions https://www.mediawiki.org/wiki/Manual:Coding_conventions/PHP and other such guidelines that we maintain peer to peer and through consensus.
The reason I've not simply labelled it as such already is because before today I found the document to be out of sync with our actual practices. I have made a number of changes with descriptive edit summaries to bring it in sync with what I percieve to be our best practices; based on how myself and other maintainers perform code review at large, and how we review new extensions prior to deployment.
All are welcome to fix mistakes, raise questions/concerns on the talk page, on this thread. You're also welcome to message me directly anytime if you prefer.