2013-03-15 2 views
4

제출 실패 설치 PIP 수행함으로써 :PyPI 업로드 내가 원래 명령 줄을 통해, 프로젝트, <a href="https://pypi.python.org/pypi/cvrfparse" rel="nofollow">cvrfparse</a>을 업로드</p> <p>... 작동이 중지 내가 예상대로 첫 PyPI 프로젝트 지난 밤 일이 (앞으로 긴 글을 경고) 작동하지 않는

% python setup.py sdist upload 

이렇게하면 초기 프로젝트를 아주 잘 만들었습니다. 그러나 주사위를 통해 프로젝트를 설치하려고, thusly 히 실패

% sudo pip install cvrfparse 
Password: 
Downloading/unpacking cvrfparse 
    Running setup.py egg_info for package cvrfparse 
    Traceback (most recent call last): 
     File "<string>", line 16, in <module> 
     File "/private/tmp/pip-build-root/cvrfparse/setup.py", line 3, in <module> 
     from distribute_setup import use_setuptools 
    ImportError: No module named distribute_setup 
    Complete output from command python setup.py egg_info: 
    Traceback (most recent call last): 

    File "<string>", line 16, in <module> 

    File "/private/tmp/pip-build-root/cvrfparse/setup.py", line 3, in <module> 

    from distribute_setup import use_setuptools 

ImportError: No module named distribute_setup 

---------------------------------------- 
Command python setup.py egg_info failed with error code 1 in /private/tmp/pip-build-root/cvrfparse 
Storing complete log in /Users/m/Library/Logs/pip.log 

가 나는 경우 단지 http://pythonhosted.org/distribute/setuptools.html#using-setuptools-without-bundling-it에 "작업"을해야 따르면 setup.py에서 loadcard 후

합니다.

: 다음 PyPI에 새 패키지를 업로드하려고 그래서 파일을 추가하고 setup.py에서 버전 번호를 해주 후

% cat MANIFEST.in 
include distribute_setup.py 

: 그때마다 같은 MANIFEST.in에 distribute_setup.py을 추가하는 시도

% python setup.py sdist upload 
running sdist 
running egg_info 
writing requirements to cvrfparse.egg-info/requires.txt 
writing cvrfparse.egg-info/PKG-INFO 
writing top-level names to cvrfparse.egg-info/top_level.txt 
writing dependency_links to cvrfparse.egg-info/dependency_links.txt 
writing entry points to cvrfparse.egg-info/entry_points.txt 
reading manifest file 'cvrfparse.egg-info/SOURCES.txt' 
reading manifest template 'MANIFEST.in' 
writing manifest file 'cvrfparse.egg-info/SOURCES.txt' 
running check 
creating cvrfparse-0.10 
creating cvrfparse-0.10/cvrfparse 
creating cvrfparse-0.10/cvrfparse.egg-info 
creating cvrfparse-0.10/cvrfparse/sample-xml 
creating cvrfparse-0.10/cvrfparse/schemata 
creating cvrfparse-0.10/cvrfparse/schemata/common 
creating cvrfparse-0.10/cvrfparse/schemata/common/1.1 
creating cvrfparse-0.10/cvrfparse/schemata/cvrf 
creating cvrfparse-0.10/cvrfparse/schemata/cvrf/1.1 
creating cvrfparse-0.10/cvrfparse/schemata/dublincore 
creating cvrfparse-0.10/cvrfparse/schemata/prod 
creating cvrfparse-0.10/cvrfparse/schemata/prod/1.1 
creating cvrfparse-0.10/cvrfparse/schemata/scap 
creating cvrfparse-0.10/cvrfparse/schemata/vuln 
creating cvrfparse-0.10/cvrfparse/schemata/vuln/1.1 
creating cvrfparse-0.10/cvrfparse/schemata/w3.org 
making hard links in cvrfparse-0.10... 
hard linking MANIFEST.in -> cvrfparse-0.10 
hard linking README -> cvrfparse-0.10 
hard linking distribute_setup.py -> cvrfparse-0.10 
hard linking setup.py -> cvrfparse-0.10 
hard linking cvrfparse/__init__.py -> cvrfparse-0.10/cvrfparse 
hard linking cvrfparse/cvrfparse.py -> cvrfparse-0.10/cvrfparse 
hard linking cvrfparse.egg-info/PKG-INFO -> cvrfparse-0.10/cvrfparse.egg-info 
hard linking cvrfparse.egg-info/SOURCES.txt -> cvrfparse-0.10/cvrfparse.egg-info 
hard linking cvrfparse.egg-info/dependency_links.txt -> cvrfparse-0.10/cvrfparse.egg-info 
hard linking cvrfparse.egg-info/entry_points.txt -> cvrfparse-0.10/cvrfparse.egg-info 
hard linking cvrfparse.egg-info/requires.txt -> cvrfparse-0.10/cvrfparse.egg-info 
hard linking cvrfparse.egg-info/top_level.txt -> cvrfparse-0.10/cvrfparse.egg-info 
hard linking cvrfparse/sample-xml/CVRF-1.1-cisco-sa-20110525-rvs4000.xml -> cvrfparse-0.10/cvrfparse/sample-xml 
hard linking cvrfparse/schemata/catalog.xml -> cvrfparse-0.10/cvrfparse/schemata 
hard linking cvrfparse/schemata/common/1.1/common.xsd -> cvrfparse-0.10/cvrfparse/schemata/common/1.1 
hard linking cvrfparse/schemata/cvrf/1.1/cvrf.xsd -> cvrfparse-0.10/cvrfparse/schemata/cvrf/1.1 
hard linking cvrfparse/schemata/dublincore/dc.xsd -> cvrfparse-0.10/cvrfparse/schemata/dublincore 
hard linking cvrfparse/schemata/prod/1.1/prod.xsd -> cvrfparse-0.10/cvrfparse/schemata/prod/1.1 
hard linking cvrfparse/schemata/scap/cpe-language_2.2a.xsd -> cvrfparse-0.10/cvrfparse/schemata/scap 
hard linking cvrfparse/schemata/scap/cvss-v2_0.9.xsd -> cvrfparse-0.10/cvrfparse/schemata/scap 
hard linking cvrfparse/schemata/scap/scap-core_0.9.xsd -> cvrfparse-0.10/cvrfparse/schemata/scap 
hard linking cvrfparse/schemata/vuln/1.1/vuln.xsd -> cvrfparse-0.10/cvrfparse/schemata/vuln/1.1 
hard linking cvrfparse/schemata/w3.org/xml.xsd -> cvrfparse-0.10/cvrfparse/schemata/w3.org 
Writing cvrfparse-0.10/setup.cfg 
Creating tar archive 
removing 'cvrfparse-0.10' (and everything under it) 
running upload 
Traceback (most recent call last): 
    File "setup.py", line 21, in <module> 
    ['cvrfparse = cvrfparse.cvrfparse:main',]} 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/core.py", line 152, in setup 
    dist.run_commands() 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 953, in run_commands 
    self.run_command(cmd) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/dist.py", line 972, in run_command 
    cmd_obj.run() 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/upload.py", line 60, in run 
    self.upload_file(command, pyversion, filename) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/distutils/command/upload.py", line 135, in upload_file 
    self.password) 
TypeError: cannot concatenate 'str' and 'NoneType' objects 

뭔가가 이전에 있었던 None 인 것처럼 보입니까?

% python setup.py sdist 

그리고 웹 인터페이스를 통해 PyPI에 해당 파일을 업로드 :

나는 다음을 통해 분배를 작성하여 수동으로 패키지를 업로드했습니다. pip install은 새로운 .10 패키지와 동일한 문제를보고합니다. 내가 어디로 잘못 가고 있니?

+0

사용자 이름이나 비밀번호가 해당 행에 대해 '없음'입니다. 홈 디렉토리의'.pypirc' 파일을 확인하십시오. –

+1

사용자 이름이 정확합니다. 비밀번호는 생략됩니다. http://docs.python.org/2/distutils/packageindex#the-pypirc-file에 따르면 암호 필드를 생략하면 사용자에게 입력하라는 메시지가 표시됩니다. 빈 암호 "'password :' '를 추가하려고 시도한 다음 서버에서''업로드 실패 (401) : 권한이 없음' '이라는 오류가 발생했습니다. 아직 해결되지 않은 문제. –

+2

더 많은 정보 : 나는'$ python setup.py register'을 다시 쓰고 ~/.pypirc에 저장하기로 선택한 로그인/암호 정보를 다시 묻습니다. 다음으로'$ python setup.py sdist upload'를 실행했는데'Upload failed (400) : Bad Request'라는 또 다른 오류 메시지가 나타납니다. –

답변

1

PyPI가 패키지를 가지고있는 것처럼 보입니다. (나를 위해, 깨끗한 가상 환경에서 우분투 12.04.2로). 귀하의 도구는 console_scripts를 사용하며 main에는 인자 (progname)가 필요합니다.이 인자는 load_enry_point() (setuptools)가 보내지 않습니다. 해당 매개 변수에 기본값을 지정하면됩니다. 예 :

def main(progname=sys.argv[0]): 

및 황금이어야합니다. 버전 번호를 업데이트하고 PyPI로 재발급하는 것을 잊지 마십시오.

+0

감사합니다. 'python setup.py sdist upload'와'pip install cvrfparse' 모두 예상대로 작동하고 있습니다. 내가 언급 한 버그를 고쳤으며 모든 것이 잘되었습니다. –