Youngkwang YangEnglish
목차

OSS 26.07

OSS

이번에도 pip 작업이 대부분이었다.

pypa/pip의 열린 이슈 수 추이 그래프. 2017년 12월부터 2026년 9월까지를 보여 준다. 최근 몇 년은 940에서 980 사이를 오가다가, 2026년 여름에 860 근처까지 가파르게 내려간다. 출처: sichard.ca/ghstats/pip

메인테이너가 공유한 현재 pip 레포의 오픈된 이슈 개수 추이다. (6월부터 줄고있다.)

한 일 (7월 12일 - 8월 13일)

코드

  • pip
    • Zipapp으로 실행했을 떄 self version 체크가 실행 중인 pip이 아니라 환경에 설치된 pip의 버전을 읽던 버그 수정. #13084, #14217
    • entry_points.txt에 형식이 어긋난 항목이 있을 때 traceback이 나오던 것 수정. #8573, #14220
    • pip index versions(latest) 표시가 한 번도 출력되지 않던 문제. 다만 출력 형식에 의존을 가진것들에서 문제가 발생할 수 있어서 출력은 수정하지 않고 데드코드만 지웠다. #14177, #14178
    • macOS 설정 문서가 실제로 동작하는 XDG_DATA_DIRS, XDG_DATA_HOME 대신 XDG_CONFIG_*를 안내하던 것 올바르게 수정. #14200, #14207
    • Requires-Python 때문에 건너뛴 사유가 디버그 로깅 없이도 남는지 확인하는 회귀 테스트 추가. #14170
    • 지난달 작업했던 Git partial clone opt-out 환경 변수가 머지됐다. #14163

트리아지

리뷰

  • pip
    • pip <subcommand> --version이 오류 없이 그냥 실행되던 버그. #14231
    • pip list --outdated--uploaded-prior-to를 무시하던 이슈 재현 #14189, #14190
    • exceptions.py를 각각의 모듈로 분리하는 리팩터링 PR (좋은 개선 같다.) #14176
    • pip config editshell=True를 걷어내는 PR이었는데, 수정하려는 기존 동작이 의도된 동작인 것 같아서 관련 배경을 찾아봤다. #14180
  • django-auditlog
    • LogEntry 모델을 swappable로 만드는 PR 확인 후 approve. #805
    • Action.ACCESS가 생긴 뒤 갱신되지 않았던 docstring 수정 approve. #817

다음 목표

pip

  • 디스크가 찼을 때 불완전한 파일이 남는 pip downloadpip install --target 명령어 개선 예정. 같은 패턴이 pip 코드에 더 있어서 재사용가능한 방식으로 작업 예정#9964
  • 버전 충돌로 후보에서 제외된 패키지에 “no matching distributions” 힌트가 붙던 버그. 현재 코드 리뷰 대기중 #14193, #14194
  • 불완전하게 삭제된 패키지에 ~...dist-info 경고를 표시하는 PR. 현재 수정 중. #14047
  • 하위 모듈이 네임스페이스 패키지로 갈라진 뒤 기존 버전 위에 설치하면 import가 깨지는 이슈. 메인테이너가 제안한 이슈인데, 꽤 히스토리가 복잡한 이슈라서 추후에 시간을 내서 볼 예정 #12211

django-auditlog

  • 변경을 감지하는 로직에서 원본 값과 직렬화된 값을 나눠 비교하도록 수정 진행 중. #835
  • PR이 CHANGELOG를 고쳤는지 CI에서 확인하는 워크플로. (자주 놓치는 것 같아서..) #836, #837