Re: [Python-Dev] [python-committers] How are we merging forward from the Bitbucket 3.5 repo?

2015-08-16 Thread Nathaniel Smith
On Sun, Aug 16, 2015 at 7:08 AM, Guido van Rossum  wrote:
> (I'm only familiar with the GitHub PR flow, and I don't like its behavior,
> which seems to always create an extra merge revision for what I consider as
> logically a single commit.)

For whatever it's worth, this is a "feature": the extra merge revision
serves as a record of the fact that a PR was merged, who merged it,
and what the state of the branch was before and after the merge
(useful in case the PR contains multiple revisions that are all
getting merged together). These are all things that git makes
impossible to reconstruct after the fact otherwise, because it stores
no metadata about which branch each revision started out in. But if
you consistently make a merge commit every time, then 'git log
--first-parent' will reliably show one entry per merged PR.

-n

-- 
Nathaniel J. Smith -- http://vorpus.org
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] [python-committers] How are we merging forward from the Bitbucket 3.5 repo?

2015-08-16 Thread Larry Hastings

On 08/16/2015 07:08 AM, Guido van Rossum wrote:
I presume the issue here is that Hg is so complicated that everyone 
knows a different subset of the commands and semantics.


I personally don't know what the commands for cherry-picking a 
revision would be.


There are a couple.  The command you'd want for this use case is 
probably "hg transplant", because it lets you pull revisions from a 
different repo.  Note that "transplant" is an extension; it's 
distributed with Mercurial but is turned off by default. (Presumably 
because it's an "unloved" feature, which seems to translate roughly to 
"deprecated and only minimally supported".)


The Mercurial team recommends "graft", and they also provide "rebase", 
but neither of those can pull revisions from another repo.


Since all revisions committed to 3.5.0 should be merged into 3.5.1 
sooner or later, personally I don't see the *need* for cherry-picking.



I also don't know exactly what happens when you merge a PR using 
bitbucket. (I'm only familiar with the GitHub PR flow, and I don't 
like its behavior, which seems to always create an extra merge 
revision for what I consider as logically a single commit.)


Bitbucket doesn't appear to create any extraneous merge revisions. Of 
the two PRs I've accepted, only one created a merge, and that was sensible.



BTW When I go to https://bitbucket.org/larry/cpython350 the first 
thing I see (in a very big bold font) is "This is Python version 3.6.0 
alpha 1". What's going on here? It doesn't inspire confidence.


It was displaying the readme from the default branch.  We use the 3.5 
branch.


I just went and looked, and there's a "default branch" option for the 
repo on Bitbucket.  I changed it from "default" to "3.5" and now it 
displays "This is Python version 3.5.0 release candidate 1". Hopefully 
that inspires more confidence!


/
/arry/
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] [python-committers] How are we merging forward from the Bitbucket 3.5 repo?

2015-08-16 Thread R. David Murray
On Sun, 16 Aug 2015 11:24:32 -0400, "R. David Murray"  
wrote:
> On Sun, 16 Aug 2015 00:13:10 -0700, Larry Hastings  wrote:
> >  3. After your push request is merged, you pull from
> > bitbucket.com/larry/cpython350 into hg.python.org/cpython and merge
> > into 3.5.  In this version I don't have to do a final null merge!
> > 
> > I'd prefer 3; that's what we normally do, and that's what I was 
> > expecting.  So far people have done 1 and 2.

Thinking about this some more I realize why I was confused.  My
patch/pull request was something that got committed to 3.4.  In that
case, to follow your 3 I'd have to leave 3.4 open until you merged the
pull request, and that goes against our normal workflow.

Maybe my patch will be the only exception...

--David
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] [python-committers] How are we merging forward from the Bitbucket 3.5 repo?

2015-08-16 Thread M.-A. Lemburg
On 16.08.2015 16:08, Guido van Rossum wrote:
> I presume the issue here is that Hg is so complicated that everyone knows a
> different subset of the commands and semantics.
> 
> I personally don't know what the commands for cherry-picking a revision
> would be.
> 
> I also don't know exactly what happens when you merge a PR using bitbucket.
> (I'm only familiar with the GitHub PR flow, and I don't like its behavior,
> which seems to always create an extra merge revision for what I consider as
> logically a single commit.)
> 
> BTW When I go to https://bitbucket.org/larry/cpython350 the first thing I
> see (in a very big bold font) is "This is Python version 3.6.0 alpha 1".
> What's going on here? It doesn't inspire confidence.

You are probably looking at the default branch within that repo fork.

This is the 3.5 branch:

https://bitbucket.org/larry/cpython350/branch/3.5

> On Sun, Aug 16, 2015 at 10:13 AM, Larry Hastings  wrote:
> 
>>
>>
>> So far I've accepted two pull requests into bitbucket.com/larry/cpython350
>> in the 3.5 branch, what will become 3.5.0rc2.  As usual, it's the
>> contributor's responsibility to merge forward; if their checkin goes in to
>> 3.5, it's their responsibility to also merge it into the
>> hg.python.org/cpython 3.5 branch (which will be 3.5.1) and default branch
>> (which right now is 3.6).
>>
>> But... what's the plan here?  I didn't outline anything specific, I just
>> assumed we'd do the normal thing, pulling from 3.5.0 into 3.5.1 and
>> merging.  But of the two pull requests so far accepted, one was merged this
>> way, though it cherry-picked the revision (skipping the pull request merge
>> revision Bitbucket created), and one was checked in to 3.5.1 directly (no
>> merging).
>>
>> I suppose we can do whatever we like.  But it'd be helpful if we were
>> consistent.  I can suggest three approaches:
>>
>>1. After your push request is merged, you cherry-pick your revision
>>from bitbucket.com/larry/cpython350 into hg.python.org/cpython and
>>merge.  After 3.5.0 final is released I do a big null merge from
>>bitbucket.com/larry/cpython350 into hg.python.org/cpython.
>>2. After your push request is merged, you manually check in a new
>>equivalent revision into hg.python.org/cpython in the 3.5 branch.  No
>>merging necessary because from Mercurial's perspective it's unrelated to
>>the revision I accepted.  After 3.5.0 final is released I do a big null
>>merge from bitbucket.com/larry/cpython350 into hg.python.org/cpython.
>>3. After your push request is merged, you pull from
>>bitbucket.com/larry/cpython350 into hg.python.org/cpython and merge
>>into 3.5.  In this version I don't have to do a final null merge!
>>
>> I'd prefer 3; that's what we normally do, and that's what I was
>> expecting.  So far people have done 1 and 2.
>>
>> Can we pick one approach and stick with it?  Pretty-please?
>>
>>
>> */arry*
>>
>> ___
>> python-committers mailing list
>> python-committ...@python.org
>> https://mail.python.org/mailman/listinfo/python-committers
>>
>>
> 
> 
> 
> 
> ___
> python-committers mailing list
> python-committ...@python.org
> https://mail.python.org/mailman/listinfo/python-committers
> 

-- 
Marc-Andre Lemburg
eGenix.com

Professional Python Services directly from the Source  (#1, Aug 16 2015)
>>> Python Projects, Coaching and Consulting ...  http://www.egenix.com/
>>> mxODBC Plone/Zope Database Adapter ...   http://zope.egenix.com/
>>> mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/

2015-08-12: Released mxODBC 3.3.4 ... http://egenix.com/go80
2015-08-22: FrOSCon 2015 ...6 days to go

: Try our mxODBC.Connect Python Database Interface for free ! ::

   eGenix.com Software, Skills and Services GmbH  Pastor-Loeh-Str.48
D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg
   Registered at Amtsgericht Duesseldorf: HRB 46611
   http://www.egenix.com/company/contact/
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] [python-committers] How are we merging forward from the Bitbucket 3.5 repo?

2015-08-16 Thread Xavier Morel
On 2015-08-16, at 16:08 , Guido van Rossum  wrote:

> I presume the issue here is that Hg is so complicated that everyone knows a 
> different subset of the commands and semantics.
> 
> I personally don't know what the commands for cherry-picking a revision would 
> be.

graft

> I also don't know exactly what happens when you merge a PR using bitbucket. 
> (I'm only familiar with the GitHub PR flow, and I don't like its behavior, 
> which seems to always create an extra merge revision for what I consider as 
> logically a single commit.)

Same thing IIRC, I don't think there's a way to "squash" a merge via the web 
interface in either.

> BTW When I go to https://bitbucket.org/larry/cpython350 the first thing I see 
> (in a very big bold font) is "This is Python version 3.6.0 alpha 1". What's 
> going on here? It doesn't inspire confidence.

It's the rendered content of the README file at the root of the repository, 
same as github.___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com


Re: [Python-Dev] [python-committers] How are we merging forward from the Bitbucket 3.5 repo?

2015-08-16 Thread Guido van Rossum
I presume the issue here is that Hg is so complicated that everyone knows a
different subset of the commands and semantics.

I personally don't know what the commands for cherry-picking a revision
would be.

I also don't know exactly what happens when you merge a PR using bitbucket.
(I'm only familiar with the GitHub PR flow, and I don't like its behavior,
which seems to always create an extra merge revision for what I consider as
logically a single commit.)

BTW When I go to https://bitbucket.org/larry/cpython350 the first thing I
see (in a very big bold font) is "This is Python version 3.6.0 alpha 1".
What's going on here? It doesn't inspire confidence.

On Sun, Aug 16, 2015 at 10:13 AM, Larry Hastings  wrote:

>
>
> So far I've accepted two pull requests into bitbucket.com/larry/cpython350
> in the 3.5 branch, what will become 3.5.0rc2.  As usual, it's the
> contributor's responsibility to merge forward; if their checkin goes in to
> 3.5, it's their responsibility to also merge it into the
> hg.python.org/cpython 3.5 branch (which will be 3.5.1) and default branch
> (which right now is 3.6).
>
> But... what's the plan here?  I didn't outline anything specific, I just
> assumed we'd do the normal thing, pulling from 3.5.0 into 3.5.1 and
> merging.  But of the two pull requests so far accepted, one was merged this
> way, though it cherry-picked the revision (skipping the pull request merge
> revision Bitbucket created), and one was checked in to 3.5.1 directly (no
> merging).
>
> I suppose we can do whatever we like.  But it'd be helpful if we were
> consistent.  I can suggest three approaches:
>
>1. After your push request is merged, you cherry-pick your revision
>from bitbucket.com/larry/cpython350 into hg.python.org/cpython and
>merge.  After 3.5.0 final is released I do a big null merge from
>bitbucket.com/larry/cpython350 into hg.python.org/cpython.
>2. After your push request is merged, you manually check in a new
>equivalent revision into hg.python.org/cpython in the 3.5 branch.  No
>merging necessary because from Mercurial's perspective it's unrelated to
>the revision I accepted.  After 3.5.0 final is released I do a big null
>merge from bitbucket.com/larry/cpython350 into hg.python.org/cpython.
>3. After your push request is merged, you pull from
>bitbucket.com/larry/cpython350 into hg.python.org/cpython and merge
>into 3.5.  In this version I don't have to do a final null merge!
>
> I'd prefer 3; that's what we normally do, and that's what I was
> expecting.  So far people have done 1 and 2.
>
> Can we pick one approach and stick with it?  Pretty-please?
>
>
> */arry*
>
> ___
> python-committers mailing list
> python-committ...@python.org
> https://mail.python.org/mailman/listinfo/python-committers
>
>


-- 
--Guido van Rossum (python.org/~guido)
___
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com