What is the problem with ports PR reaction delays?

John Marino dragonflybsd at marino.st
Sat Jan 25 09:14:57 UTC 2014

On 1/25/2014 09:55, Alfred Perlstein wrote:
> On 1/24/14, 11:45 PM, John Marino wrote:
>> On 1/25/2014 05:16, Alfred Perlstein wrote:
>>>> Thus, are you volunteering for this role?  It's not my call, but if you
>>>> really want to do clean out and triage the all PRs on an ongoing basis,
>>>> my guess is that would be very welcome and we'd figure out a way to set
>>>> that up.  It would definitely help, especially for those maintainer
>>>> that
>>>> "approve" patches but the PRs never get opened (or set to a better
>>>> state
>>>> than "open").
>>>> At some point we'll have a new PR system, that fact might be having an
>>>> impact on current PRs as well...
>>> To me it would speak of tooling as opposed to anything.
>>> Does the ports system have a 1 or 2 click interface for merging PRs like
>>> for instance github?
>> The SCM part of the ports process is not the bottleneck.
>>> Could ports take PRs in the form of pull requests on github?
>>> Wouldn't that just turn the number of updates into a few minor clicks?
>> This makes a fatal and untrue assumption: That was is submitted just
>> needs to be committed.  In my brief experience, I can tell you that's
>> simply not true.  If a submission can be taken without a single change,
>> that is truly an exception.  It's not even the submitters fault often,
>> sometimes the infrastructure changes but the submitter didn't know or
>> account for it, or the PR came before the infrastructure change.
>> One can RARELY take a submission as-is.  Thus, pull requests turn into
>> merge conflict exercises and cause more work, not less IMO.
> Your opinion is completely incorrect.  It is trivial for someone to take
> a pull request and resolve the differences and it is MUCH easier (orders
> of magnitude) to collab using git/github than it is to mail around
> patches over and over.  I really believe you don't understand how
> git/github works.

First, that's presumptuous.  I have a github account that I use.  DPorts
and DeltaPorts are both hosted on GitHub, and based on git.  I know how
what it can do.

Secondly, ports is SVN, not git, and it's not going to be based on git.
 So it's a moot discussion.

Thirdly, we don't mail patches around.  You just pull the patch from
GNATS.  Applying patches is not hard.  I personally prefer rejected
hunks than editing merge conflicts.  Sure I can do both.  I find
rejected hunks easier to deal with than yours/his/merged/common etc.

Lastly: you are skipping steps.  There's review and testing to be done.
 You don't just merge and commit.  Using pull requests (even if it were
possible on SVN) doesn't significantly change anything.

>>> (also wouldn't it make it easier for ports submitters)?
>> personally I don't really think so, plus I don't see the current or
>> future PR system as the barrier for port submitters.
>>> (maybe there is some great ports system that I'm not aware of that makes
>>> this all as easy github, but I somehow doubt that.)
>> I would like to see something where the submission gets tested in
>> Redports automatically, and automatically annotates if the port passes
>> on all platforms or not.  Then the submitter gets notice it needs fixing
>> immediately and FreeBSD folks don't have to take the PR, test it, reject
>> it, and state why.  That iteration can take a few cycles and automated
>> testing could cut that process time tremendously.
> That would be interesting.  If you could get it to work with github
> you'd find a lot more people active and willing to participate.
> Basically, if my workflow was:
> start:
>  git pull request -> creates redport submission -> then
>    either:
>      1) submission compiles and works -> promotes to "qualified" pull
> request -> either auto merged or given to maintainer to merge in 1 click.
>      2) submission fails, then either I fix and resubmit the pull
> request, or I collab with the submitter to get it to work and then
> resubmit GOTO start.

Well, that's not what I said above.  That gets freebsd committers
involved before the patch is verified to build.  I was trying to get
freebsd committers not to see patches that don't even build and make
sure they get fixed before committers spend any time on it.

> That said, you'll have to be up for learning new tools, and that doesn't
> leave me very optimistic of this ever happening.

IIUC, you are trying to start a git migration from subversion
discussion.  While I am happy with either one (given that DragonFly
Ports and sources is hosted on git), I don't see the acceptance by
others.  The "use git tools and/or github" discussion is not going to go
far, no.  It's not a new tools thing either.  The replace of GNATS is a
big tool change that freebsd people are impatiently waiting for.


More information about the freebsd-ports mailing list