Page MenuHomePhabricator

Setup differential for https://github.com/wikimedia/composer-merge-plugin
Closed, ResolvedPublic

Description

The composer-merge-plugin project is currently managed exclusively as a GitHub project. This hosting choice was made as an experiment to see if it would attract more outside development interest in a software component that is critical for MediaWiki 3rd party use but also generally useful for the larger Composer and PHP developer communities.

By and large this experiment has been successful. The feature set of the plugin has grown in response to feature requests and code submissions from outside the typical MediaWiki contributor base. It has also been useful for allowing easy communication with the related upstream Composer project's users and maintainers who are typically used to GitHub interactions.

Where it has really fallen short is in the usefulness of GitHub's code review process. GitHub has no support for dependent change sets (pull requests) and seeing the history of changes that have been developed using a rebase-centric workflow is very difficult. The pull request model also leaves the project's commit history littered with merge commits.

I'm interested in being a test project for differential code review. I'm especially interested in helping figure out if we can build a workflow for code review similar to the system used by HHVM. In their process, patches can be proposed as a GitHub pull request but the review takes place in their Phabricator instance. Their bot integration even allows updating the Differential review by force pushing or adding a new commit to the GitHub PR.

Composer-merge-plugin is a self-contained and low volume project so it seems like a nice candidate for experimenting with new workflows that may ultimately be useful to a wider range of Wikimedia projects.

Revisions and Commits

Event Timeline

bd808 created this task.Oct 30 2015, 10:00 PM
bd808 raised the priority of this task from to Needs Triage.
bd808 updated the task description. (Show Details)
bd808 added a subscriber: bd808.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptOct 30 2015, 10:00 PM
hashar added a project: Gerrit-Migration.
hashar added subscribers: demon, mmodell.
hashar added a subscriber: hashar.

I would love to get @bd808 involved in Differential as an early adopter. Might prove useful to gather feedback and constructive help for the RFC.

@bd808: This is an excellent idea. I've created rGCMP which should be mirroring from github. Now all you need to do is create a .arcconfig in the project root and push that to github to enable arcanist. An example can be seen here: https://phabricator.wikimedia.org/diffusion/MSCA/browse/master/.arcconfig

Only the phabricator.url and repository.callsign are needed (the callsign is "GCMP" - no leading r, that is just needed when you mention it in markup, to make a link to the repo)

For further details about arcanist, see https://secure.phabricator.com/book/phabricator/article/arcanist_quick_start/

Also feel free to ping me here or on IRC, I'll be glad to answer any questions you have.

mmodell triaged this task as Medium priority.Nov 2 2015, 4:27 AM
mmodell moved this task from INBOX to In-progress on the Release-Engineering-Team board.
mmodell set Security to None.
Legoktm added a subscriber: Legoktm.Nov 2 2015, 4:33 AM

is Facebook/HHVM's pull request importer bot open source?

greg edited projects, added Differential; removed Gerrit-Migration.Nov 2 2015, 4:47 AM
greg awarded a token.
bd808 added a comment.Nov 2 2015, 5:12 AM

is Facebook/HHVM's pull request importer bot open source?

I haven't been able to find it anywhere yet. I did find a blog post about it (or part of it). I'll ask in the hhvm irc channel soon.

I guess I need this to merge before phabricator will mirror from github: https://gerrit.wikimedia.org/r/#/c/250370

ok I got the repo to import, finally

bd808 closed this task as Resolved.Nov 4 2015, 5:24 PM
bd808 assigned this task to mmodell.
bd808 moved this task from To Do to Done on the User-bd808 board.Nov 6 2015, 5:12 PM
bd808 moved this task from Done to Archive on the User-bd808 board.Nov 19 2015, 4:08 PM