You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Greg Stein <gs...@gmail.com> on 2009/04/06 15:00:56 UTC

[discuss] Required Python Versions

I think this is an issue that the svn devs need to discuss: what
Python versions are required, expected, and supported.

I'm going to throw out a strawman here for discussion.


End-users
- Python is not required to use "core" svn
- Python scripts that are part of our distribution bundle
  - Minimum: 2.4
  - Supported: 2.x
  - Possible for some scripts: 3.0

Packagers
- Python is not required

Developers
- Python is required: gen-make, test suite, dist packaging, etc
- Minimum: 2.4
- Supported: 2.x


There are two primary goals with my selections above:
- Support end-user choices
- Reduce maintenance costs

It would be nice to support end-user scripts < 2.4, but that increases
maintenance costs for us. I believe that 2.4 is a fair balance between
user choice and our cost. During the 1.6 release process, we ended up
bumping the minimum user version to 2.4. That happened without
explicit discussion, so I'm bringing it up for closure on whether that
is what we're going to shoot for.

Also note that Python 3.0 is *not* part of the Developer toolset. Not
even supported. I've been reviewing the changes on trunk for the 3.0
compatibility effort with increasing concern. The changes introduce
maintenance cost (*), yet with no perceivable benefit to the Developer
community. If we confine our support to 2.x, then the dev toolset will
be easier to expand, modify, and refine.

Thoughts?

Cheers,
-g

(*) where "cost" means awareness and coding specifically for: variant
imports, byte/string/unicode/encode/decide changes, syntax concerns,
builtin function changes, special methods, etc.

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1562312

Re: [discuss] Required Python Versions

Posted by Ivan Zhakov <iv...@visualsvn.com>.
On Mon, Apr 6, 2009 at 7:00 PM, Greg Stein <gs...@gmail.com> wrote:
> I think this is an issue that the svn devs need to discuss: what
> Python versions are required, expected, and supported.
>
> I'm going to throw out a strawman here for discussion.
>
>
> End-users
> - Python is not required to use "core" svn
> - Python scripts that are part of our distribution bundle
>  - Minimum: 2.4
>  - Supported: 2.x
>  - Possible for some scripts: 3.0
>
> Packagers
> - Python is not required
>
> Developers
> - Python is required: gen-make, test suite, dist packaging, etc
> - Minimum: 2.4
> - Supported: 2.x
>
>
> There are two primary goals with my selections above:
> - Support end-user choices
> - Reduce maintenance costs
>
> It would be nice to support end-user scripts < 2.4, but that increases
> maintenance costs for us. I believe that 2.4 is a fair balance between
> user choice and our cost. During the 1.6 release process, we ended up
> bumping the minimum user version to 2.4. That happened without
> explicit discussion, so I'm bringing it up for closure on whether that
> is what we're going to shoot for.
>
> Also note that Python 3.0 is *not* part of the Developer toolset. Not
> even supported. I've been reviewing the changes on trunk for the 3.0
> compatibility effort with increasing concern. The changes introduce
> maintenance cost (*), yet with no perceivable benefit to the Developer
> community. If we confine our support to 2.x, then the dev toolset will
> be easier to expand, modify, and refine.
>
> Thoughts?
>
+1, I fully agree with you that support for python 3.0 does not give
any benefit while costs a lot.

-- 
Ivan Zhakov
VisualSVN Team

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1591245


RE: [discuss] Required Python Versions

Posted by Bert Huijben <rh...@sharpsvn.net>.
> -----Original Message-----
> From: Greg Stein [mailto:gstein@gmail.com]
> Sent: Monday, April 06, 2009 5:01 PM
> To: dev@subversion.tigris.org
> Subject: [discuss] Required Python Versions
> 
> I think this is an issue that the svn devs need to discuss: what
> Python versions are required, expected, and supported.
> 
> I'm going to throw out a strawman here for discussion.
> 
> 
> End-users
> - Python is not required to use "core" svn
> - Python scripts that are part of our distribution bundle
>   - Minimum: 2.4
>   - Supported: 2.x
>   - Possible for some scripts: 3.0
> 
> Packagers
> - Python is not required
> 
> Developers
> - Python is required: gen-make, test suite, dist packaging, etc
> - Minimum: 2.4
> - Supported: 2.x
> 
> 
> There are two primary goals with my selections above:
> - Support end-user choices
> - Reduce maintenance costs

+1 to this.

	Bert

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1564787

Re: [discuss] Required Python Versions

Posted by Stefan Sperling <st...@elego.de>.
On Mon, Apr 06, 2009 at 02:14:22PM -0500, Peter Samuelson wrote:
> 
> [Greg Stein]
> > Packagers
> > - Python is not required
> 
> Well, only if packagers choose not to run testsuites, which I think
> would be foolish.  So really packagers are in the developers camp.

Yeah, I and others run make regress on the OpenBSD port, too!

Stefan

Re: [discuss] Required Python Versions

Posted by Greg Stein <gs...@gmail.com>.
On Mon, Apr 6, 2009 at 21:14, Peter Samuelson <pe...@p12n.org> wrote:
>
> [Greg Stein]
>> Packagers
>> - Python is not required
>
> Well, only if packagers choose not to run testsuites, which I think
> would be foolish.  So really packagers are in the developers camp.

Oh, I generally agree. But I consider packager's use of Python as
"optional, subject to their choice, and Python availability". I agree
that they "should" be running the test suite for their platform, but I
not believe the project should *mandate* that packagers do that, or
that we require they do XYZ which needs Python.

So consider it the difference between a MUST and a SHOULD. :-)

>...

Cheers,
-g

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1564537


Re: [discuss] Required Python Versions

Posted by Peter Samuelson <pe...@p12n.org>.
[Greg Stein]
> Packagers
> - Python is not required

Well, only if packagers choose not to run testsuites, which I think
would be foolish.  So really packagers are in the developers camp.

> Developers
> - Python is required: gen-make, test suite, dist packaging, etc
> - Minimum: 2.4
> - Supported: 2.x

Speaking as a packager (Debian, and my work is used in Ubuntu), +1.
I could live with a restriction of python 2.5+ for packagers/
developers, going forward, but that seems unnecessarily restrictive
for other platforms.
-- 
Peter Samuelson | org-tld!p12n!peter | http://p12n.org/

Re: [discuss] Required Python Versions

Posted by Blair Zajac <bl...@orcaware.com>.
Greg Stein wrote:
> I think this is an issue that the svn devs need to discuss: what
> Python versions are required, expected, and supported.
> 
> I'm going to throw out a strawman here for discussion.
> 
> 
> End-users
> - Python is not required to use "core" svn
> - Python scripts that are part of our distribution bundle
>   - Minimum: 2.4
>   - Supported: 2.x
>   - Possible for some scripts: 3.0
> 
> Packagers
> - Python is not required
> 
> Developers
> - Python is required: gen-make, test suite, dist packaging, etc
> - Minimum: 2.4
> - Supported: 2.x
> 
> 
> There are two primary goals with my selections above:
> - Support end-user choices
> - Reduce maintenance costs

+1.

Blair

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1568575

Re: [discuss] Required Python Versions

Posted by Justin Erenkrantz <je...@apache.org>.
On Mon, Apr 6, 2009 at 8:00 AM, Greg Stein <gs...@gmail.com> wrote:
> End-users
> - Python is not required to use "core" svn
> - Python scripts that are part of our distribution bundle
>  - Minimum: 2.4
>  - Supported: 2.x
>  - Possible for some scripts: 3.0

(guess you include 'bindings' in this - I'm fine with this.)

> Packagers
> - Python is not required
>
> Developers
> - Python is required: gen-make, test suite, dist packaging, etc
> - Minimum: 2.4
> - Supported: 2.x

+1 to all of the above.  -- justin

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1564658


Re: [discuss] Required Python Versions

Posted by Arfrever Frehtes Taifersar Arahesis <Ar...@GMail.Com>.
2009-04-09 11:35:38 Greg Stein napisał(a):
> On Thu, Apr 9, 2009 at 10:54, Arfrever Frehtes Taifersar Arahesis
> <ar...@gmail.com> wrote:
> > 2009-04-07 19:14:57 Greg Stein napisał(a):
> >> Everybody:
> >>
> >> The current trend of this thread is to follow the plan below.

IMHO this thread was about which Python versions are supported, not
about what to do with code related to currrently unsupported versions.

> >> Please speak up on your thoughts.
> >>
> >> I plan to take action to further this plan, beginning Thursday (that
> >> provides 72 hours for people to see this thread and provide their
> >> input).
> >>
> >> We are seeing some further failures in the test suite caused by the
> >> recent unicode changes. I want to give ample time for discussion, but
> >> also want to get moving on this to avoid problems like we're seeing in
> >> the tests.
> >
> > I can't reproduce any test failures, but in r37128 I reverted using of
> > unicode type in 'subversion/tests' directory.
> 
> I wasted time tracking down a serf test failure a couple days ago,
> only to find it was because the output had been converted to Unicode,
> but the output verification pattern was non-Unicode. Thus, it couldn't
> find it.

I can't reproduce it:

>>> import re
>>> a = re.compile("abc")
>>> a.match("abcdef").group(0)
'abc'
>>> a.match(u"abcdef").group(0)
u'abc'
>>>

> r37128 brings in even more if/else branches for 3.0, so it is *still*
> adding complexity to a codebase which doesn't need it.

The minimal amount of additional complexity exists in very rarely changed
code and doesn't cause any problems. There are no technical reasons to
remove it.

> It is all coming out later today.

Please post patches for discussion before removing any code.

-- 
Arfrever Frehtes Taifersar Arahesis

Re: [discuss] Required Python Versions

Posted by Greg Stein <gs...@gmail.com>.
On Thu, Apr 9, 2009 at 10:54, Arfrever Frehtes Taifersar Arahesis
<ar...@gmail.com> wrote:
> 2009-04-07 19:14:57 Greg Stein napisał(a):
>> Everybody:
>>
>> The current trend of this thread is to follow the plan below. Please
>> speak up on your thoughts.
>>
>> I plan to take action to further this plan, beginning Thursday (that
>> provides 72 hours for people to see this thread and provide their
>> input).
>>
>> We are seeing some further failures in the test suite caused by the
>> recent unicode changes. I want to give ample time for discussion, but
>> also want to get moving on this to avoid problems like we're seeing in
>> the tests.
>
> I can't reproduce any test failures, but in r37128 I reverted using of
> unicode type in 'subversion/tests' directory.

I wasted time tracking down a serf test failure a couple days ago,
only to find it was because the output had been converted to Unicode,
but the output verification pattern was non-Unicode. Thus, it couldn't
find it.

r37128 brings in even more if/else branches for 3.0, so it is *still*
adding complexity to a codebase which doesn't need it. It is all
coming out later today.

Cheers,
-g

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1611662


Re: [discuss] Required Python Versions

Posted by Arfrever Frehtes Taifersar Arahesis <Ar...@GMail.Com>.
2009-04-07 19:14:57 Greg Stein napisał(a):
> Everybody:
> 
> The current trend of this thread is to follow the plan below. Please
> speak up on your thoughts.
> 
> I plan to take action to further this plan, beginning Thursday (that
> provides 72 hours for people to see this thread and provide their
> input).
> 
> We are seeing some further failures in the test suite caused by the
> recent unicode changes. I want to give ample time for discussion, but
> also want to get moving on this to avoid problems like we're seeing in
> the tests.

I can't reproduce any test failures, but in r37128 I reverted using of
unicode type in 'subversion/tests' directory.

> On Mon, Apr 6, 2009 at 17:00, Greg Stein <gs...@gmail.com> wrote:
> > I think this is an issue that the svn devs need to discuss: what
> > Python versions are required, expected, and supported.
> >
> > I'm going to throw out a strawman here for discussion.
> >
> >
> > End-users
> > - Python is not required to use "core" svn
> > - Python scripts that are part of our distribution bundle
> >  - Minimum: 2.4
> >  - Supported: 2.x
> >  - Possible for some scripts: 3.0
> >
> > Packagers
> > - Python is not required
> >
> > Developers
> > - Python is required: gen-make, test suite, dist packaging, etc
> > - Minimum: 2.4
> > - Supported: 2.x
> >
> >
> > There are two primary goals with my selections above:
> > - Support end-user choices
> > - Reduce maintenance costs
> >
> > It would be nice to support end-user scripts < 2.4, but that increases
> > maintenance costs for us. I believe that 2.4 is a fair balance between
> > user choice and our cost. During the 1.6 release process, we ended up
> > bumping the minimum user version to 2.4. That happened without
> > explicit discussion, so I'm bringing it up for closure on whether that
> > is what we're going to shoot for.
> >
> > Also note that Python 3.0 is *not* part of the Developer toolset. Not
> > even supported. I've been reviewing the changes on trunk for the 3.0
> > compatibility effort with increasing concern. The changes introduce
> > maintenance cost (*), yet with no perceivable benefit to the Developer
> > community. If we confine our support to 2.x, then the dev toolset will
> > be easier to expand, modify, and refine.
> >
> > Thoughts?
> >
> > Cheers,
> > -g
> >
> > (*) where "cost" means awareness and coding specifically for: variant
> > imports, byte/string/unicode/encode/decide changes, syntax concerns,
> > builtin function changes, special methods, etc.

-- 
Arfrever Frehtes Taifersar Arahesis

Re: [discuss] Required Python Versions

Posted by Greg Stein <gs...@gmail.com>.
Everybody:

The current trend of this thread is to follow the plan below. Please
speak up on your thoughts.

I plan to take action to further this plan, beginning Thursday (that
provides 72 hours for people to see this thread and provide their
input).

We are seeing some further failures in the test suite caused by the
recent unicode changes. I want to give ample time for discussion, but
also want to get moving on this to avoid problems like we're seeing in
the tests.

Cheers,
-g

On Mon, Apr 6, 2009 at 17:00, Greg Stein <gs...@gmail.com> wrote:
> I think this is an issue that the svn devs need to discuss: what
> Python versions are required, expected, and supported.
>
> I'm going to throw out a strawman here for discussion.
>
>
> End-users
> - Python is not required to use "core" svn
> - Python scripts that are part of our distribution bundle
>  - Minimum: 2.4
>  - Supported: 2.x
>  - Possible for some scripts: 3.0
>
> Packagers
> - Python is not required
>
> Developers
> - Python is required: gen-make, test suite, dist packaging, etc
> - Minimum: 2.4
> - Supported: 2.x
>
>
> There are two primary goals with my selections above:
> - Support end-user choices
> - Reduce maintenance costs
>
> It would be nice to support end-user scripts < 2.4, but that increases
> maintenance costs for us. I believe that 2.4 is a fair balance between
> user choice and our cost. During the 1.6 release process, we ended up
> bumping the minimum user version to 2.4. That happened without
> explicit discussion, so I'm bringing it up for closure on whether that
> is what we're going to shoot for.
>
> Also note that Python 3.0 is *not* part of the Developer toolset. Not
> even supported. I've been reviewing the changes on trunk for the 3.0
> compatibility effort with increasing concern. The changes introduce
> maintenance cost (*), yet with no perceivable benefit to the Developer
> community. If we confine our support to 2.x, then the dev toolset will
> be easier to expand, modify, and refine.
>
> Thoughts?
>
> Cheers,
> -g
>
> (*) where "cost" means awareness and coding specifically for: variant
> imports, byte/string/unicode/encode/decide changes, syntax concerns,
> builtin function changes, special methods, etc.
>

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1580257


Re: [discuss] Required Python Versions

Posted by "C. Michael Pilato" <cm...@collab.net>.
Mark Phippard wrote:
> On Mon, Apr 6, 2009 at 11:00 AM, Greg Stein <gs...@gmail.com> wrote:
>> I think this is an issue that the svn devs need to discuss: what
>> Python versions are required, expected, and supported.
>>
>> I'm going to throw out a strawman here for discussion.

[...]

>> Thoughts?

[...]

> I do not know what the state of our bindings and Python 3.x is.  I
> could see that someone might want to write their own tools using
> Python 3.x and our bindings.  If someone wants to make that work,
> great.  But it needs to come without the costs that the current work
> does.

What he said, +1, and all that.

-- 
C. Michael Pilato <cm...@collab.net>
CollabNet   <>   www.collab.net   <>   Distributed Development On Demand

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1562511

Re: [discuss] Required Python Versions

Posted by Mark Phippard <ma...@gmail.com>.
On Mon, Apr 6, 2009 at 11:00 AM, Greg Stein <gs...@gmail.com> wrote:
> I think this is an issue that the svn devs need to discuss: what
> Python versions are required, expected, and supported.
>
> I'm going to throw out a strawman here for discussion.
>
>
> End-users
> - Python is not required to use "core" svn
> - Python scripts that are part of our distribution bundle
>  - Minimum: 2.4
>  - Supported: 2.x
>  - Possible for some scripts: 3.0
>
> Packagers
> - Python is not required
>
> Developers
> - Python is required: gen-make, test suite, dist packaging, etc
> - Minimum: 2.4
> - Supported: 2.x
>
>
> There are two primary goals with my selections above:
> - Support end-user choices
> - Reduce maintenance costs
>
> It would be nice to support end-user scripts < 2.4, but that increases
> maintenance costs for us. I believe that 2.4 is a fair balance between
> user choice and our cost. During the 1.6 release process, we ended up
> bumping the minimum user version to 2.4. That happened without
> explicit discussion, so I'm bringing it up for closure on whether that
> is what we're going to shoot for.
>
> Also note that Python 3.0 is *not* part of the Developer toolset. Not
> even supported. I've been reviewing the changes on trunk for the 3.0
> compatibility effort with increasing concern. The changes introduce
> maintenance cost (*), yet with no perceivable benefit to the Developer
> community. If we confine our support to 2.x, then the dev toolset will
> be easier to expand, modify, and refine.
>
> Thoughts?

I am all for someone doing work so that our Python bindings could work
in 3.0, but I do not see any reason why our test suite or developer
tools should work with 3.0.  I do not believe we are within 5 years of
a developer desktop not having a Python 2.x interpreter installed and
running our test suite in 3.0 offers zero benefits.  It is not like it
makes the tests run 2x faster.  At the same time, the code that is
being added makes the existing code harder to maintain and it is
regularly breaking the tests on Windows and other platforms.

The costs of the Python 3.x work seems to dwarf the benefits, which I
see as almost zero.  I think all of this Python 3.x compat code should
be removed from trunk and this work should stop.  Let's just declare
that the tests must be run with 2.x.

I do not know what the state of our bindings and Python 3.x is.  I
could see that someone might want to write their own tools using
Python 3.x and our bindings.  If someone wants to make that work,
great.  But it needs to come without the costs that the current work
does.

-- 
Thanks

Mark Phippard
http://markphip.blogspot.com/

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=1562356