[PATCH] util: subclass deque for Python 2.4 backwards compatibility

Matt Mackall mpm at selenic.com
Mon Jun 4 10:44:59 CDT 2012


On Mon, 2012-06-04 at 09:30 -0500, Augie Fackler wrote:
> On Mon, Jun 4, 2012 at 9:07 AM, Matt Mackall <mpm at selenic.com> wrote:
> > On Mon, 2012-06-04 at 07:44 -0500, Augie Fackler wrote:
> >> On Jun 4, 2012, at 7:10 AM, Mads Kiilerich wrote:
> >>
> >> > On 04/06/12 09:58, Dirkjan Ochtman wrote:
> >> >> On Sat, Jun 2, 2012 at 10:36 PM, Matt Mackall<mpm at selenic.com>  wrote:
> >> >>> Thanks, queued for default.
> >> >> Would it perhaps be time to drop 2.4? These things starting to slip by
> >> >> is usually a good indication.
> >> >>
> >> >> Debian stable has 2.6, RHEL users have had 2.6 since 2010 (RHEL 5 is
> >> >> still on 2.4, it will be supported for 5 more years.)
> >> >
> >> > For the record, it was discussed at last sprint and the decision summarized at http://mercurial.selenic.com/wiki/SupportedPythonVersions#Future_support_plan .
> >>
> >> What I took away from the sprint was that I could make a run at
> >> ripping out 2.4 features and getting us on b-prefixed strings (and
> >> u-prefixed ones if we have any of those) at the end of 2012/beginning
> >> of 2013.
> >
> > You might as well clone and start hacking today. Since we're not
> > dropping 2.x any time soon, there won't be much to talk about until it
> > runs some basic commands on both 2.x and 3.x from the same code base.
> 
> Doing that at all sensibly implies requiring at least Python 2.6 IMO.
> Anything else is likely to be a path to madness (I've talked to some
> projects that are doing the mixed-universe 2.x and 3.x codebase thing,
> and this is by far the easiest route.) That's why I want to drop 2.4
> (and 2.5, though nobody seems to care about that one) so badly.
> 
> Are you suggesting I should do the 2.6 upgrade work and get basic
> commands working on 3.x, and then if that all works mail out an RFC
> series, and that might be enough to convince us to drop 2.4 more
> quickly than the end of 2012? Otherwise, I'm more inclined to wait for
> EO2012.

Unless someone goes over the mountains and comes back and says "actually
no, the sea isn't 3k miles away, here, I've got nice photos from my
trip", I'm actually inclined to hold onto 2.4 support for quite a while
past 2012. There's no point pulling up stakes and packing everything
into the wagons until we're sure we want to go.

Yes, this means I'm seriously considering not ever migrating. As far as
I can tell, it would actually be less work for me to maintain a public
legacy fork of Python for several years than to create and maintain a
dual-language Mercurial or maintain two versions of Mercurial. And
there's probably millions of lines of other mission-critical legacy
Python code that would also benefit from not having to deal with the
Great Unfunded Mandate.

I'm willing to be proved wrong, and decide that Py3k isn't so bad, but
it's definitely going to be a case of "shut up and show me the code".
I've done too much of my own Py3k experimenting and seen too many
results from our past GSoC efforts to be convinced by anything else.

-- 
Mathematics is the supreme nostalgia of our time.




More information about the Mercurial-devel mailing list