[Distutils] Problem uploading SCons package to pypi. Receiving 403 You are not allowed to edit 'scons' package information

2013-08-08 Thread William Deegan
Greetings,

I apologize in advance if this is the wrong place for this.
I've filed a support ticket and a bug request at the following locations:

https://bitbucket.org/pypa/pypi/issue/49/upload-failed-403-you-are-not-allowed-to

http://sourceforge.net/p/pypi/support-requests/285/

Here's the summary of the problem.
The SCons project maintainer has been changed from Steven Knight (knight) to 
Gary Oberbrunner(garyo) and myself (William Deegan (bdbaddog))

The appropriate (I believe) roles have been added to Gary and my accounts: 
https://pypi.python.org/pypi?:action=role_formpackage_name=SCons
(We're both marked Owner).

I updated my setup.py to indicate that I'd be packaging and tried:
python setup.py --verbose  sdist upload --show-response

Which yields:
….
Creating tar archive
removing 'scons-2.3.0' (and everything under it)
running upload
Using PyPI login from /Users/bdbaddog/.pypirc
Submitting dist/scons-2.3.0.tar.gz to http://pypi.python.org/pypi
Upload failed (403): You are not allowed to edit 'scons' package information

The last package uploaded to pypi is ancient and we'd like to put a current 
version there.

Can anyone either correct the permissions and/or point us to what we're doing 
wrong?

Thanks,
Bill
___
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig


[Distutils] Unexpected VersionConflict

2013-08-08 Thread Townsend, Scott E. (GRC-RTM0)[Vantage Partners, LLC]
During easy_install of an egg where two versions of pyparsing were available 
(1.5.2 and 1.5.6), a VersionConflict was raised:

pkg_resources.VersionConflict: (pyparsing 1.5.6 
(/usr/lib/python2.7/dist-packages), Requirement.parse('pyparsing==1.5.2'))

This was unexpected since sys.path (via virtualenv) has version 1.5.2 before 
1.5.6.  And the system gets 1.5.2 from 'import pyparsing', not 1.5.6.

I've traced this to the line calling _sort_dists(dists), line 801 in my copy of 
pkg_resources.py:

def __getitem__(self,project_name):
Return a newest-to-oldest list of distributions for `project_name`

try:
return self._cache[project_name]
except KeyError:
project_name = project_name.lower()
if project_name not in self._distmap:
return []

if project_name not in self._cache:
dists = self._cache[project_name] = self._distmap[project_name]
_sort_dists(dists)

return self._cache[project_name]

The problem is that one dependent package of the egg has a requirement of 
'pyparsing' while a subsequent dependent package has a requirement of 
'pyparsing==1.5.2'.  The intent was that by using virtualenv with a correct 
sys.path version 1.5.2 would be used for both requirements.  Unfortunately, 
because of the call to _sort_dists(), the 'pyparsing' requirement is resolved 
to 1.5.6 by env.best_match() in WorkingSet.resolve().  Once that resolution was 
made, the more explicit requirement fails.

Note that without the _sort_dists() call the egg loads and runs correctly, 
using pyparsing 1.5.2.

Its not clear to me that removing the _sort_dists() call is correct in general, 
but it appears to be a bug that an egg which would load and run correctly 
reports a VersionConflict.

___
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig


Re: [Distutils] Unexpected VersionConflict

2013-08-08 Thread PJ Eby
On Thu, Aug 8, 2013 at 3:19 PM, Townsend, Scott E. (GRC-RTM0)[Vantage
Partners, LLC] scott.e.towns...@nasa.gov wrote:
 During easy_install of an egg where two versions of pyparsing were available
 (1.5.2 and 1.5.6), a VersionConflict was raised:

 pkg_resources.VersionConflict: (pyparsing 1.5.6
 (/usr/lib/python2.7/dist-packages), Requirement.parse('pyparsing==1.5.2'))

 This was unexpected since sys.path (via virtualenv) has version 1.5.2 before
 1.5.6.  And the system gets 1.5.2 from 'import pyparsing', not 1.5.6.

Have you tried declaring the 1.5.2 dependency from your main project?
IIRC, that should make it take precedence over either of the indirect
dependencies.
___
Distutils-SIG maillist  -  Distutils-SIG@python.org
http://mail.python.org/mailman/listinfo/distutils-sig