Jesus Cea writes:

 > I think we are doing some antipatterns with our current approach,
 > battling the tools instead of "joining them".

Yes.  That is deliberate; see PEP 0374.  I admit I personally didn't
foresee the issues Nick describes with the flow of patches from one
branch to another.  Also, the "collapse" stage was completely
unexpected to me (and wasn't stated as a requirement for PEP 0374),
although in hindsight it seems natural for Python.

The problem with "joining" the tools is that is a euphemism for "RTFM,
OK?"  People who are already working with hg and similar tools in
their daily lives can probably make that transition in Python's
workflow pretty easily, but they are not going to be very good at
providing scripts for the DVCS newbies because they don't have them;
they Just Do It.  The DVCS newbies, OTOH, were told that the workflow
would change as little as possible, and we (the PEP 0374 authors) did
our best to make that possible.  Unfortunately, it hasn't worked as
well as hoped.  I, for one, am sorry about that.

I'm coming to the conclusion that those who say that Mercurial
documentation should be found at the Mercurial project are wrong.  I
think there's a reasonably strong case (based on the explicit promise
of PEP 0374 that workflows would change as little as possible) for a
follow-on informational PEP providing verbal, and maybe automated,
scripts for the various operations needed in the Python workflow.

OTOH, people who are having problems with the workflow imposed by
Mercurial need to recognize that Subversion basically ripped a big
hole in the QA aspect of Python's workflow.  As Nick points out,
Subversion merges create new versions in the repository that *never
existed in any developer's workspace* and therefore was never tested
before committing.  This is somewhat mitigated by buildbot testing,
but that is mostly unit testing and inherently is not very good at
catching problems due to interactions across modules.  That is, it's
not that Subversion provided a simpler way of doing the work.  Rather,
it hid the fact that certain work was not being done at all.  hg
exposes this fact.

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

Reply via email to