Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: Python: Dev

Mercurial migration: progress report (PEP 385)

 

 

First page Previous page 1 2 3 4 Next page Last page  View All Python dev RSS feed   Index | Next | Previous | View Threaded


rdmurray at bitdance

Jul 7, 2009, 7:17 AM

Post #76 of 83 (714 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

On Tue, 7 Jul 2009 at 15:26, M.-A. Lemburg wrote:
> The merge process itself is more or less clear. What I'm missing
> is the agreed upon strategy for applying the patches to the various
> branches.
>
> I've seen a few discussions about this, but no final statement
> of what strategy to follow and whether hg makes this easier (AFAIR,
> that was the main argument for switching to hg).

I think the main reason for switching was that it would make it easier
for non-core-committers to maintain branches and submit patches (as
changesets core committers can pull). I don't think it was ever clear
that the merge workflow would in fact get easier, except insofar as
hg's merge support is better than SVN's (at least, I believe people
have said that last is true). There is _hope_ that it will be easier,
but I think it remains to be proven/worked out. And I believe there is
no tool like svnmerge for tracking changesets to be merged, which could
be an issue that needs a resolution.

IIUC, the discussion about named versus cloned branches is part of
figuring out the workflow....

--David
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Jul 7, 2009, 2:29 PM

Post #77 of 83 (712 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

M.-A. Lemburg wrote:
> Dirkjan Ochtman wrote:
>> On Tue, Jul 7, 2009 at 10:16, M.-A. Lemburg<mal [at] egenix> wrote:
>>> Is there a standard notation for hg revisions that roundup could
>>> detect and turn into links (much like it does for svn) ?
>> [a-f0-9]{12} should mostly do.
>
> Hmm, no prefix or suffix ?
>
> So we'll always have to write "see deadbeefdeadbeefff for details"
> or "Reverting f00fl33df00fl33d00 after problems on Pentium CPUs" ?!

No, rather "see deadbeefdead for details" and
"Reverting f00fl33df00fl33d00 after problems on Pentium CPUs".
In practice, rather 30ba63d28b1b or 12fb3b32d75d (from html5lib,
fwiw).

Dirkjan meant "[a-f0-9]{12}" literally.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Jul 7, 2009, 2:32 PM

Post #78 of 83 (712 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

>> Hmm, no prefix or suffix ?
>
> No, not really. hg often shows revision integers as well, but as they
> aren't globally consistent, they're of little value in communicating
> changeset pointers.

I think MAL wasn't asking for a "1354:" prefix, but for a, say,
"r" or "R" prefix, or perhaps "V" or "merc:".

I think you are proposing that there is no prefix because the chance
for a misidentification of some word as a hg revision number is small,
as it has to be exactly 12 hex digits.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


martin at v

Jul 7, 2009, 2:42 PM

Post #79 of 83 (710 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

>> I've seen a few discussions about this, but no final statement
>> of what strategy to follow and whether hg makes this easier (AFAIR,
>> that was the main argument for switching to hg).
>
> I think the main reason for switching was that it would make it easier
> for non-core-committers to maintain branches and submit patches (as
> changesets core committers can pull).

Indeed, it's all in PEP 374:
- motivation 1: give direct tool support to non-committers
- motivation 2: allow disconnected (off-line) access to the repository
- motivation 3: allow revisions of a patch
- motivation 4: allow tracking the mainline while working on a patch
- motivation 5: avoid using arcane third-party tools for merge tracking

So merge tracking was not the main argument, but the fifth.

Regards,
Martin
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


ncoghlan at gmail

Jul 7, 2009, 2:43 PM

Post #80 of 83 (712 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

Martin v. Löwis wrote:
> I think you are proposing that there is no prefix because the chance
> for a misidentification of some word as a hg revision number is small,
> as it has to be exactly 12 hex digits.

So triggering it accidentally would require a 12 letter word or object
name that used only the letter a-f? Agreed that seems very unlikely.

Cheers,
Nick.

--
Nick Coghlan | ncoghlan [at] gmail | Brisbane, Australia
---------------------------------------------------------------
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


stephen at xemacs

Jul 7, 2009, 7:19 PM

Post #81 of 83 (706 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

R. David Murray writes:
> On Tue, 7 Jul 2009 at 15:26, M.-A. Lemburg wrote:

> > I've seen a few discussions about this, but no final statement
> > of what strategy to follow and whether hg makes this easier (AFAIR,
> > that was the main argument for switching to hg).

Yes, yes, yes, and no. In reverse order, no: the main argument for
switching to hg is that it makes private branching easier.

Yes: hg will make public branching easier, too, but that can't be
proved until the workflow adjustments get worked out. For that
reason, it is essential that the current workflow be supportable
essentially without change, and it is. With respect to "how", I'm not
a Mercurial geek, but I have been working with Mercurial queues a bit
recently in another area, and I think they have some promise for
helping organize the workflow. (Although by themselves they're
clearly not sufficient, since they're oriented to a single branch.)

Yes: there has been no final statement of what strategy to follow
because opinions are extremely varied, even as to what is feasible
with Mercurial. For example, Dirkjan and Georg want a workflow that
makes moving patches among the public branches worry-free Mercurial
merges. I believe that means (to the extent it is implemented)
essentially gutting the current strategy of cutting maintenance
branches and simply lagging the maintenance branches relative to the
dev branches, and that it's infeasible for py3k vs. py2. I can't
substantiate that; maybe the patch flow would support what they want,
I'm not that familiar with how much patches currently morph across
branches.

And yes: there are a few inconclusive discussions. That's why PEP 374
was written consciously with the intent of postponing the hard issues
of workflow across the public branches in favor of picking off the low
hanging fruit of private branching and disconnected version control.

> I think the main reason for switching was that it would make it easier
> for non-core-committers to maintain branches and submit patches (as
> changesets core committers can pull).

Patches or "bundles" aka merge directives. "Pulling" submissions is
probably not going to happen; that's a practice that is common with
highly distributed workflows, but Python has a fairly centralized
workflow.

> but I think it remains to be proven/worked out. And I believe there is
> no tool like svnmerge for tracking changesets to be merged, which could
> be an issue that needs a resolution.

I think that Mercurial queues or some related extension can be adapted
to this, but I can't say for sure (after all, I was the git person on
the PEP 374 team :-).

> IIUC, the discussion about named versus cloned branches is part of
> figuring out the workflow....

Peripherally. But actually it's not really relevant to workflow.
Anything that can be done with named branches can be done with cloned
branches, possibly requiring substantially more space. That
discussion really is about whether anything is *lost* by using named
branches. I worry that something is lost, but the discussion so far
has been inconclusive.
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


p.f.moore at gmail

Jul 18, 2009, 2:55 AM

Post #82 of 83 (633 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

2009/7/4 Brett Cannon <brett [at] python>:
>> > While I really like the idea of using named branches for each release so
>> > that there is a single py3k branch that contains all relevant history
>> > for
>> > every release, I think we should start simple and go with cloned
>> > branches.
>> > That way the workflow does not radically shift from what we do now for
>> > svn
>> > to start. Once the conversion is done and people are comfortable with hg
>> > we
>> > can then discuss moving towards a named branch approach.
>>
>> I don't think the cloned branches is much simpler than the named
>> branches approach, in several ways. For example, populating the branch
>> part of a sys.whatever value is significantly harder. Also, if you
>> follow a useful tagging approach, doing cloned branches means that
>> release tags aren't available on trunk/main/default. That seems like a
>> step backwards.
>
> I personally prefer named branches, but that's just me and I am not about to
> force my preferences on everyone. Guess we just have to see if others have
> opinions against named branches.

Personally, I prefer clones, as it seems to me that Mercurial named
branches are not quite what people generally think of when they think
of "branches", in some subtle respects. I could be wrong, as I don't
personally use named branches. However, there's been a small thread on
distutils-sig recently with a new Mercurial user complaining that he's
got confused and messed up a repository. Without digging particularly
deeply, it appears that the problems were caused by confusion over
named branches.

FWIW, the Mercurial book
(http://hgbook.red-bean.com/read/managing-releases-and-branchy-development.html)
describes named branches with the comment "If you're more in the
“power user” category (*and* your collaborators are too)" (author's
emphasis). I'm not sure we want to require contributors to be "power
users" of Mercurial...

Paul.

PS Sorry for responding to an old thread - I couldn't locate more
recent discussion, although I thought there had been some.
_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com


skippy.hammond at gmail

Jul 19, 2009, 6:27 AM

Post #83 of 83 (622 views)
Permalink
Re: Mercurial migration: progress report (PEP 385) [In reply to]

Sorry Dirkjan - I just noticed I didn't CC you on this mail originally.
I'm wondering if you have any more thoughts on these EOL issues and if
there is anything I can do to help?

Cheers,

Mark

On 4/07/2009 2:03 PM, Mark Hammond wrote:
> On 4/07/2009 12:30 PM, Nick Coghlan wrote:
> ...
>> I think there needs to be a solid answer in place for these use cases
>> before the actual migration to Mercurial takes place. A hand-waving "use
>> win32text" isn't enough - it needs to be "use win32text with these exact
>> settings" (with server side hook support to enforce the rules).
>>
>> And since Mercurial doesn't even allow us to say "this is a binary file"
>> the way CVS used to I'm currently not seeing any way for that to happen
>> except for win32text to be updated to correctly handle wild cards in
>> combination with negative filters.
>
> I agree with your conclusion. My ruminating on this over the last few
> months leaves me thinking this would involve:
>
> * my older 'accepted but then lost' hg patch to allow an explicit 'none'
> rule for a single file to override wildcards.
>
> * win32text be enhanced to use a normal versioned file in the root of
> the repo, much like hgingore, where a project can maintain project wide
> rules.
>
> * win32text be enhanced such that all python developers, regardless of
> platform, are willing to use this extension, even if the majority of
> files happen to use their native line ending (sauce for the goose is
> sauce for the gander, and all that...)
>
> * commit hooks be implemented to enforce this - but this should not be
> necessary if the above was implemented and socially enforced.
>
> Cheers,
>
> Mark
>>
>> Cheers,
>> Nick.
>>
>> [1] http://mail.python.org/pipermail/python-dev/2006-March/062225.html
>>
>

_______________________________________________
Python-Dev mailing list
Python-Dev [at] python
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: http://mail.python.org/mailman/options/python-dev/list-python-dev%40lists.gossamer-threads.com

First page Previous page 1 2 3 4 Next page Last page  View All Python dev RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.