Page MenuHomePhabricator

Choose a recommended IDE for MediaWiki and maintain a plugin for it
Open, Needs TriagePublic

Description

Good IDE integration convenient for everyone but especially helpful to new contributors who are not experienced coders - they have to learn a thousand new things from code review / distributed version control workflows to security back practices, and if we can avoid adding "learn how to tweak your IDE configuration" to that pile, we can make the learning curve significantly smoother.

A well-integrated IDE would

  • ensure that the right coding conventions are followed
  • do some of the CI checks in a much more user-friendly way (banana, autoloading etc.)
  • provide docs / typing / code completion / clickthrough navigation for systems which IDEs cannot figure out by default (e.g. hooks, global variables, extension-provided services, ResourceLoader modules)
  • maybe show docs/help from mediawiki.org
  • maybe warn when some MediaWiki best practices are not used (e.g. extension with PHP endpoint)

This does not mean that MediaWiki would be optimized to work with one IDE to the detriment of others, but it's nice to have a default.

PHPStorm integration already seems to have some momentum behind it, but which IDE we focus on is secondary to agreeing to focus on a single one.

Event Timeline

Tgr created this task.Jan 31 2017, 11:35 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptJan 31 2017, 11:35 PM
Tgr updated the task description. (Show Details)Jan 31 2017, 11:35 PM
Tgr added subscribers: Yurik, Reedy.Jan 31 2017, 11:55 PM

@Reedy and @Yurik are the people who have worked on this in the past, if memory serves.

This proposal is selected for the developer wishlist voting round and will be added to a MediaWiki page very soon. To the subscribers, or proposer of this task: please help modify the task description: add a brief summary (10-12 lines) summarizing the problem that this proposal raises, topics discussed in the comments, and a proposed solution (if there is any yet). Remember to add a header with a title "Description," to your content. Please do so before February 5th, 12:00 pm UTC.

Anomie added a subscriber: Anomie.Feb 6 2017, 3:20 PM

This does not mean that MediaWiki would be optimized to work with one IDE to the detriment of others,

I hope also not to the detriment of not using with an IDE at all.

In case a recommended IDE is chosen, it must be completely FOSS!

Reedy added a comment.Feb 8 2017, 12:11 PM

In case a recommended IDE is chosen, it must be completely FOSS!

Must? Should? Ideally?

The reason people stop using Eclipse etc because it's painful. I started using PhpStorm because it worked well.

There's also no point maintaining a plugin if few/no one uses it

Anomie added a comment.Feb 8 2017, 5:10 PM

In case a recommended IDE is chosen, it must be completely FOSS!

Must? Should? Ideally?

Ideally, per the Wikimedia Foundation Guiding Principles.

Reedy added a comment.Feb 8 2017, 5:28 PM

And the foundation itself is the worst at doing this. See also Google Apps, all the macbooks etc etc etc

Topics regarding WMF's Guiding Principles can be discussed on the corresponding talk page. Let's please try to keep this on-topic. Thanks :)

In case a recommended IDE is chosen, it must be completely FOSS!

Must? Should? Ideally?

"MUST" as in RFC 2119. Please do not take this lightly. In case no suitable free IDE is found, you can keep maintaining unofficial plugins for proprietary IDEs.

Topics regarding WMF's Guiding Principles can be discussed on the corresponding talk page. Let's please try to keep this on-topic. Thanks :)

Not off-topic for sure. It is a key requirement for the fulfillment of the task.