Page MenuHomePhabricator

Re-evaluate installed Wikimedia Phabricator applications
Closed, ResolvedPublic

Description

MediaWiki has a lot of extensions, but Wikimedia wikis don't install all of them. WordPress has a lot of plugins, but the Wikimedia blog doesn't install all of them.

With Phabricator, I think we should re-examine and prune, if needed, the installed Phabricator applications. Looking at tasks such as T106924: Consider using the Badges application for a few special roles to highlight those users' comments and tools such as https://phabricator.wikimedia.org/phurl/, a URL shortener, I'm questioning the virtue of having these applications installed.

Event Timeline

MZMcBride raised the priority of this task from to Needs Triage.
MZMcBride updated the task description. (Show Details)
MZMcBride added a project: Phabricator.
MZMcBride added subscribers: MZMcBride, Peachey88, Nemo_bis and 2 others.
Restricted Application added subscribers: scfc, Aklapper. · View Herald TranscriptAug 15 2015, 5:14 PM

Not sure we want to keep Passphrase around (CCing Chris about this). Some others of questionable value are Macros and Tokens, but I wouldn't be too bothered about those. Other than that I couldn't find anything odd on the lists.

@Krenair I always thought that Passphrase would be useful but as it turns out I have never used it. Perhaps its because I don't usually share machines and if I want to share a MW instance I just use the email password function. Passphrase might be useful to Labs machines but other than that I don't know how useful it is.

mmodell added a comment.EditedAug 17 2015, 4:25 PM

The url shortener application should not be uninstalled, phabricator core applications will be making use of it so disabling it could cause us to miss out on useful functionality in other applications - specifically diffusion and maniphest.

Passphrase is required for harbormaster. Harbormaster is required for CI integration with differential. Ci integration with differential is a current-quarter project for Release-Engineering-Team.

The usefulness of phabricator applications may not be immediately obvious for everyone but it doesn't mean that nobody is using them for important work.

Okay, that's really useful/helpful information to have. Thank you!

Maybe this task will ultimately be about better documenting the various installed applications, then.

Nemo_bis removed a subscriber: Nemo_bis.Aug 17 2015, 6:04 PM
Qgil added a subscriber: DStrine.

Maybe this task will ultimately be about better documenting the various installed applications, then.

@DStrine, you have put a lot of work improving Wikimedia Phabricator's documentation in mediawiki.org. What do you think?

Let's agree what this task needs to be considered Resolved.

Would some sort of quarterly review help this?

Each quarter we could dun down the list of Applications. If any are risky (i.e. security or stability) or they are hard to maintain, then remove them. Otherwise, we may accidentally remove a tool that a small group of people find really valuable.

Is it easy to pull the list of plugins? I could volunteer to facilitate the first review. However I would not have first hand knowledge about most of them.

greg added a subscriber: greg.Sep 16 2015, 3:29 PM

Would some sort of quarterly review help this?

Sure, if it's light weight and we trust the people making the decisions (I mostly do, especially due to my next sentence). I guess the team to manage this review would be some combo of TPG, RelEng, and DevRel. Probably just one person from each would be sufficient, I guess.

Is this really worth doing regularly? I don't really expect the applications to change very often at this point.

Aklapper triaged this task as Lowest priority.Feb 9 2016, 10:51 PM
Restricted Application added a subscriber: Luke081515. · View Herald TranscriptFeb 9 2016, 10:51 PM

I filled a dupe task T127429: Review and enable Phabricator application Badges which expose some use cases I have. Merely to show appreciation to folks working on project I am co-leading. The task detail has a few links to upstream features:

If there's a complete index of installed Phabricator applications, I'm inclined to close this task.

While I personally would not want to maintain such a large set of applications, the people who are doing so seem fine with it. And since this task was filed, we now have even more applications installed in our Phabricator installation.

If there's a complete index of installed Phabricator applications, I'm inclined to close this task.

@MZMcBride: Is https://phabricator.wikimedia.org/applications/ sufficient?

About Prototype Apps

The upstream project adds new prototype applications occasionally, and it's interesting to try them out just to get an idea of where phabricator development might be headed. Some prototypes are eventually retired, others get polished and released as fully supported features.

Most prototype apps are initially limited to administrators only, generally because they haven't been vetted and their prototype status means that Phacility has not endorsed them for production use.

NOTE: We do make use of some prototype apps that are on Phacility's roadmap for full support. The prime example here is harbormaster.

About "installed" vs "uninstalled" in Phabricator

As far as I can tell, there is zero or very nearly zero overhead incurred by having phabricator apps "installed." Meanwhile, "uninstalling" apps doesn't really remove anything; phabricator simply disables access to "uninstalled" apps.

We have explicitly "uninstalled" a few phabricator applications, most notably Phriction which is a wiki which would duplicate the functionality and purpose of wikitech.wikimedia.org / mediawiki.org. It has been proposed to disable other phabricator apps and I usually object. In my opinion there isn't much (if any?) harm in having built-in applications which are dormant nor is there a measurable benefit to uninstalling them.

Phurl

I would additionally argue that phurl could really be useful and should be enabled. With phurl, you can create short keywords to embed in markup fields, which are transformed into links by the remarkup rendering engine. It's a nice abstraction for managing reusable links in phabricator:

  • It's great for sharing links to things like saved searches, custom forms, or other hard to remember phabricator URLs.
  • It allows the destination URL to be changed without tracking down and editing every place where that URL was referenced. This alone could save a ton of time when reorganizing documentation or other similar tasks.

I think phurl is much preferable to using a 3rd party URL shortener, and here are a few reasons:

  • Most of these services produce short but not very memorable URLs.
  • The links are opaque, giving no indication of where they will redirect you to.
  • Operated by 3rd parties which could have vulnerabilities that lead to phishing or other undesirable outcomes.
  • These services have the ability to (and often actually do) track users browsing activity.

So phurl has potential to be really useful, at least for internal links to phabricator as well as links to documentation on wikimedia.org and other technical resources. I don't think we should operate a generic URL shortener for external use, there are already many of them and very little need for another but I do think phurl can prove very useful for it's intended, very limited use-cases that benefit from the way in which the functionality is integrated into phabricator.

Users can hide unwanted apps

Each user can edit the list of applications that they see in the main navigation menu. By clicking 'customize menu' you can easily select which apps you care about and hide the rest.

If there's a complete index of installed Phabricator applications, I'm inclined to close this task.

@MZMcBride: Is https://phabricator.wikimedia.org/applications/ sufficient?

I thought we might do some kind of documentation on mediawiki.org as suggested in some of the previous comments on this task, but that link is also good enough.

@mmodell: Thanks for the detailed note. Regarding Phurl, there are allegedly plans underway to set up a URL shortener for use within Wikimedia (T44085). I imagine such a generic URL shortener would also support phabricator.wikimedia.org links. This discussion quickly gets pretty far outside the scope of this task. We should use T44085 or a separate task to discuss Phurl specifically.

My only hesitation in marking this task resolved is that T106924 is still open/unresolved and I'm not sure we're supposed to have closed tracking bugs that have open dependencies.

Btw, what do you think about Phrequent? Allows users to track the time which they need for review/a task. Optional, and no big disadvantages imo.

greg added a comment.Mar 24 2016, 2:34 AM

My only hesitation in marking this task resolved is that T106924 is still open/unresolved and I'm not sure we're supposed to have closed tracking bugs that have open dependencies.

I think T106924 could be removed as a blocker to this task (as well as T130569). This task did its purpose (I think, as I believe the original intent was to remove unneeded applications) and if we need to re-evaluate any specific installed application we/someone can file a task about that application.

For proposals to enable new applications to Phab (eg Phurl and Phrequent) we can just use independent tasks for them in Phabricator.

greg added a comment.Mar 24 2016, 2:35 AM

Btw, what do you think about Phrequent? Allows users to track the time which they need for review/a task. Optional, and no big disadvantages imo.

I think it might be useful for some people/some use-cases and as you said it's optional and won't hurt anyone for not using it. I'd say file a task for it :)

greg closed this task as Resolved.Mar 24 2016, 2:36 AM

My only hesitation in marking this task resolved is that T106924 is still open/unresolved and I'm not sure we're supposed to have closed tracking bugs that have open dependencies.

I think T106924 could be removed as a blocker to this task (as well as T130569).

/me was bold

hashar removed a subscriber: hashar.Mon, Aug 19, 8:15 AM