[Distutils] Proposal for Distribute 0.7

Tarek Ziadé ziade.tarek at gmail.com
Fri Oct 16 10:24:36 CEST 2009

On Fri, Oct 16, 2009 at 3:39 AM, ssteinerX at gmail.com
<ssteinerx at gmail.com> wrote:
> Some of the files (e.g. setuptools/archive_util.py) are only different by a
> bit of whitespace.

archive_util, in the mid term (2.7/3.2) will dissapear, in favor of
changes in Distutils side.

> In taking a closer look, the two products are still very close to each other
> but it would take a careful person a solid few days or a week to merge them
> back together into a single code-base, if that would even be desirable.

We had a "setuptools-compatible" branch for a while when PJE said he
might use our work
to release setuptools, but that didn't happened and we moved on.
[please no flame here,it's just a fact : it didn't happen. period]

At  this point, the code base is backward compatible, but is slightly
changing yes (we are working in bug fixes so..)

> P.S.
> While I was in there, I did a little actual work.  Not much, but now I feel
> like I've made a contribution, however small... ;-).   Does this make me a
> "contributor?"

Yes absolutely. Then if you keep them coming and you will be able the
have a contributor access.

btw, anyone that has a history in managing a known project for years
in the community can get a commit access
 instantly because we want this project to be open and to be run by
the people that are the ones doing packages every day. They know what
they are doing.

As, for the quality of the code, the current quality is very low in
many ways, so, for obvious bug patches, we trust anyone that is
already running a project succesfully, and we are counting on the fact
that many eyes are now watching the changesets being done.

Remember that 0.6.x is bugfix only.

The only hard part in setuptools is understanding what the code is
doing because it's hard to read, overdesigned and overcomplex and with
giant monolithic modules.

> This is from the archive pulled down by:
>        # wget
> http://pypi.python.org/packages/source/d/distribute/distribute-0.6.6.tar.gz
> While I was pawing around, I noticed that, in
> distribute-0.6.6/setuptools/command/alias.py, line 12, the <> operator is
> used.
> Since that's not allowed in Python 3.x, the test suite must not cover this
> 'cause Python 3 would barf.
> So...I whipped out my command line and:
>        find . -name "*.py" -exec grep "<>" {} \; -print
> I get:
> (~/src/distribute-0.6.6/setuptools)# find . -name "*.py" -exec grep "<>" {}
> \; -print
>    if arg.split()<>[arg]:
>        if self.remove and len(self.args)<>1:
> ./command/alias.py
>            if safe is None or bool(safe)<>flag:
> ./command/bdist_egg.py
>        if self.verbose<>self.distribution.verbose:
>                if k<>'target_version':
>            if len(parts)<>2 or not name.endswith('.pth'):
> ./command/easy_install.py
>            str(version)<>"unknown" and version >= self.requested_version
> ./depends.py
>                    if p<>package and not p.startswith(pfx)
>                    if p<>package and not p.startswith(pfx)
>                    if p.name<>package and not p.name.startswith(pfx)
> ./dist.py
>            if cs.hexdigest()<>info[4:]:
> ./package_index.py
> Those aren't going to fly in Python 3 and can be safely removed for 2.x as
> well.  A patch would be silly, just go fix it ;-).

Thanks ! we will fix it. The code base is not well covered in the
tests, so this problem
was not tackled. Notice that the latest released, if run under Python
3, will convert in the fly the
code, using 2to3, so make sure the tests are run after 2to3 (that's
what is supposed to happen)

If you find anything else, please come in #distutils (freenode)


More information about the Distutils-SIG mailing list