enterprisemediawiki / common

Repository for common EMW issues and such
0 stars 1 forks source link

Consider moving EMW extensions to Gerrit #1

Open jamesmontalvo3 opened 5 years ago

jamesmontalvo3 commented 5 years ago

I think we should consider moving our extensions to Gerrit. It's a little more cumbersome to work with from behind certain firewalls, but it's manageable. Wondering what people think...

jamesmontalvo3 commented 5 years ago

@darenwelsh @krisfield ?

krisfield commented 5 years ago

I have't used Gerrit extensively so it's hard to weigh it's benefits. I believe being on Gerrit would allow for easier testing against Mediawiki version ( I think this is what @jamesmontalvo3 has said) which could be nice.

I do like Github's interface as well as issues tracker. It's all in one place whereas Phabricator is used to track issues for repositories in Gerrit.

darenwelsh commented 5 years ago

Pros:

Cons:

Not sure if pro or con:

jamesmontalvo3 commented 5 years ago

We'd have +2 on our repositories. People who have blanket +2 would also be able to merge, which is potentially good and bad. Good because they'll fix minor issues and add things like automated testing. Bad because (makes protectionist gesture wrapping arms around repos) these are ours!

There is [1] that explains how to use Gerrit without needing to use their non-standard SSH port (which is generally the reason corporate firewalls block it). I've asked for help on riot.im [2] if anyone has any experience using this.

As for Phabricator...I hear you on the not liking it as much as GitHub issues. I'm not sure what "separate from the code" means, though. GitHub issues aren't actually part of the repository...they're just at the same domain. One benefit of Phabricator may be that it'd be easier to group EMW issues together, since you can pull issues into any workboard. Also Phabricator has task dependencies (Task A needs to be completed before Task B).

[1] https://www.mediawiki.org/wiki/Gerrit/Troubleshooting#Push_using_HTTPS_(when_SSH_is_not_functional) [2] https://matrix.to/#/!mduWVRtKzYinVAelXP:matrix.org/$1544109179579434gUAxo:matrix.org?via=matrix.org

jamesmontalvo3 commented 5 years ago

The gerrit method linked above works, so no need to hotspot.

darenwelsh commented 5 years ago

There are features in GH that allow you to tag a line of code in an issue or link to an issue in a code comment, but I don't know if Gerrit and phabricator have this. I think you can set up different boards in GitHub based on milestones. These aren't really show stoppers, but are worth mentioning.

GH also provides a nice web interface for simple changes, which is nice. Does Gerrit? Having to always pull, change, commit, and push using a local clone isn't as easy for a small change.

On Thu, Dec 6, 2018, 10:30 James Montalvo <notifications@github.com wrote:

The gerrit method linked above works, so no need to hotspot.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/enterprisemediawiki/common/issues/1#issuecomment-444935374, or mute the thread https://github.com/notifications/unsubscribe-auth/AGar5OWGWdua8xTUSETpeyWhnfH6QCTpks5u2UY2gaJpZM4YlT0C .

jamesmontalvo3 commented 5 years ago

tag a line of code in an issue

Isn't this just linking to a line? You can do that in Phabricator: https://phabricator.wikimedia.org/diffusion/ESHG/browse/master/extension.json$12

link to an issue in a code comment

You're saying you can have a comment in PHP (for example) like // see issue #1234 and it'll reference it in the issue, right? I don't know if Phab/Gerrit will do this.

web interface

I don't know if Gerrit allows for making edits from the web. I doubt it.

hexmode commented 5 years ago

Gerrit does allow edits via the web-interface. See this edit I just made to fix a typo.

hexmode commented 5 years ago

Phabricator does have a way to view links in code to issues. It over-interprets things, so PHP code doesn't look as well.

tgr commented 5 years ago

The WMF Gerrit install includes a repo browser called Gitiles, which can be used to link lines example. It does not support multiline linking like GitHub does, and is not as discoverable, OTOH it is much faster. (Or you can just link to GitHub, I usually do that.) The Phabricator repo browser is not really useful IMO.

Gerrit has an old and a new UI (there is a switch link in the footer). The old UI allows editing (it is a bit more featureful than GitHub, you can put together multi-file patches in the web UI) but is otherwise pretty bad. The new UI is more decent but does not allow editing (promised to be in the next release).

In general the UX of Gerrit is not really cutting edge but it is transitioning from a community-run open source project to Google-run open source (AIUI Google has kind of adopted is as their official CR tool) so that will probably improve.

Internationalization (I assume that refers to using Translatewiki) is not in any way dependent on Gerrit.

I don't think +2 is used to merge things against the repo maintainer's wishes (as long as the maintainer is active and gives feedback on patches) short of emergencies and uncontroversial stuff like i18n file updates.