Microsoft MVP성태의 닷넷 이야기
오류 유형: 815. PyPI에 업로드한 패키지가 반영이 안 되는 경우 [링크 복사], [링크+제목 복사]
조회: 5976
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

PyPI에 업로드한 패키지가 반영이 안 되는 경우

이상하군요, 분명히 5.6.0.12 새 버전으로 twine upload를 잘 했는데,

++ twine upload --repository pypi /app/python-agent/dist/jennifer_python-5.6.0.12-py3-none-any.whl
Uploading distributions to https://upload.pypi.org/legacy/
Uploading jennifer_python-5.6.0.12-py3-none-any.whl
100% ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.6/4.6 MB • 00:02 • 2.9 MB/s

PyPI 화면에 가보면 이렇게 이전 버전의 내용만 나옵니다.

pypi_update_1.png

재미있는 것은, 업로드한 버전을 콕 집어 보면,

https://pypi.org/project/jennifer-python/5.6.0.12/

이렇게 ^^; 해당 버전이 나옵니다.

pypi_update_2.png

하지만 예상할 수 있는 것처럼, pip install 명령으로 설치되는 버전은 5.6.0.12가 아니라 5.6.0.10 버전입니다. 그리고 이때 "-v" 옵션을 함께 주면,

$ pip install -v jennifer-python
...[생략]...
Given no hashes to check 17 links for project 'jennifer-python': discarding no candidates
Using version 5.6.0.10 (newest of versions: 5.3.0.20, 5.6.0.7, 5.6.0.8, 5.6.0.9, 5.6.0.10)
Collecting jennifer-python
...[생략]...

나열되는 버전에 5.6.0.12가 없습니다.




결론 먼저 말하면... 이것을 해결하는 방법은 그냥 기다리는 것으로, 원인은 PyPI의 내부 문제 탓이었던 것입니다.

이럴 때는 아래의 경로에 들어가,

https://twitter.com/PyPI
https://status.python.org/history

현재 문제가 없는지 확인해 보는 것도 도움이 될 수 있습니다. (이력을 보시면 알겠지만, 한 달에 2~3건 정도니까 제법 잦은 빈도에 해당합니다.) 그런데, 한국과 PyPI 관리자들의 업무 시간이 다를 것이므로 하루 정도는 그냥 기다려야 하는 수도 있습니다. 실제로 제 경우에 어제 오전에 이런 문제를 겪었는데 twitter 기록을 보면 오늘 새벽 시간에 문제를 인지하고 3시간이 지난 후 해결한 것으로 나옵니다.

암튼, 저도 처음이다 보니... ^^; 보통 PyPI의 패키지들이 3자리 이하의 버전 번호를 써서 제 경우에 4자리 버전을 사용해서 안 되는 것인가...? 라고 의심도 해보고 심지어 4자리 버전의 경우 마지막 자리의 숫자가 (하필 10이어서) 10까지만 지원하는 것인가...? 라는 온갖 추측과 검색으로 시간을 꽤나 낭비했습니다.

여러분은 저처럼 스트레스받지 마시고... ^^ 그냥 커피 한 잔과 함께 다른 업무 보면서 길게는 하루까지 기다려 보시면 될 것입니다.




(2024-03-28) 간혹 가다가, 업로드 자체를 PyPI 측에서 중지시키는 경우가 있습니다. 그런 경우 이런 오류 메시지를 보게 됩니다.
WARNING  Error during upload. Retry with the --verbose option for more details.
ERROR    HTTPError: 403 Forbidden from https://upload.pypi.org/legacy/
         New uploads are temporarily disabled. See https://pypi.org/help/#admin-intervention for more information.




[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]







[최초 등록일: ]
[최종 수정일: 3/28/2024]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...
NoWriterDateCnt.TitleFile(s)
13229정성태1/25/20235096.NET Framework: 2090. C# - UDP Datagram의 최대 크기
13228정성태1/24/20235219.NET Framework: 2089. C# - WMI 논리 디스크가 속한 물리 디스크의 정보를 얻는 방법 [2]파일 다운로드1
13227정성태1/23/20234920개발 환경 구성: 659. Windows - IP MTU 값을 바꿀 수 있을까요? [1]
13226정성태1/23/20234589.NET Framework: 2088. .NET 5부터 지원하는 GetRawSocketOption 사용 시 주의할 점
13225정성태1/21/20233843개발 환경 구성: 658. Windows에서 실행 중인 소켓 서버를 다른 PC 또는 WSL에서 접속할 수 없는 경우
13224정성태1/21/20234197Windows: 221. Windows - Private/Public/Domain이 아닌 네트워크 어댑터 단위로 방화벽을 on/off하는 방법
13223정성태1/20/20234395오류 유형: 838. RDP 연결 오류 - The two computers couldn't connect in the amount of time allotted
13222정성태1/20/20234070개발 환경 구성: 657. WSL - DockerDesktop.vhdx 파일 위치를 옮기는 방법
13221정성태1/19/20234304Linux: 57. C# - 리눅스 프로세스 메모리 정보파일 다운로드1
13220정성태1/19/20234421오류 유형: 837. NETSDK1045 The current .NET SDK does not support targeting .NET ...
13219정성태1/18/20233990Windows: 220. 네트워크의 인터넷 접속 가능 여부에 대한 판단 기준
13218정성태1/17/20233929VS.NET IDE: 178. Visual Studio 17.5 (Preview 2) - 포트 터널링을 이용한 웹 응용 프로그램의 외부 접근 허용
13217정성태1/13/20234507디버깅 기술: 185. windbg - 64비트 운영체제에서 작업 관리자로 뜬 32비트 프로세스의 덤프를 sos로 디버깅하는 방법
13216정성태1/12/20234768디버깅 기술: 184. windbg - 32비트 프로세스의 메모리 덤프인 경우 !peb 명령어로 나타나지 않는 환경 변수
13215정성태1/11/20236329Linux: 56. 리눅스 - /proc/pid/stat 정보를 이용해 프로세스의 CPU 사용량 구하는 방법 [1]
13214정성태1/10/20235874.NET Framework: 2087. .NET 6부터 SourceGenerator와 통합된 System.Text.Json [1]파일 다운로드1
13213정성태1/9/20235414오류 유형: 836. docker 이미지 빌드 시 "RUN apt install ..." 명령어가 실패하는 이유
13212정성태1/8/20235161기타: 85. 단정도/배정도 부동 소수점의 정밀도(Precision)에 따른 형변환 손실
13211정성태1/6/20235190웹: 42. (https가 아닌) http 다운로드를 막는 웹 브라우저
13210정성태1/5/20234283Windows: 219. 윈도우 x64의 경우 0x00000000`7ffe0000 아래의 주소는 왜 사용하지 않을까요?
13209정성태1/4/20234181Windows: 218. 왜 윈도우에서 가상 메모리 공간은 64KB 정렬이 된 걸까요?
13208정성태1/3/20234142.NET Framework: 2086. C# - Windows 운영체제의 2MB Large 페이지 크기 할당 방법파일 다운로드1
13207정성태12/26/20224437.NET Framework: 2085. C# - gpedit.msc의 "User Rights Assignment" 특권을 코드로 설정/해제하는 방법파일 다운로드1
13206정성태12/24/20224667.NET Framework: 2084. C# - GetTokenInformation으로 사용자 SID(Security identifiers) 구하는 방법 [3]파일 다운로드1
13205정성태12/24/20224981.NET Framework: 2083. C# - C++과의 연동을 위한 구조체의 fixed 배열 필드 사용 (2)파일 다운로드1
13204정성태12/22/20224277.NET Framework: 2082. C# - (LSA_UNICODE_STRING 예제로) CustomMarshaler 사용법파일 다운로드1
... [16]  17  18  19  20  21  22  23  24  25  26  27  28  29  30  ...