Following system colour scheme Selected dark colour scheme Selected light colour scheme

Python 개선 제안 한국어 번역

부록: PyPI의 설치 프로그램 사용 분석

Note

이 분석은 완벽하지 않습니다. 이 분석은 이용 가능한 최상의 데이터를 사용하지만, 미러, 기업이 사용하는 캐시 및 기타 교란 요인이 이 분석의 수치에 영향을 줄 수 있습니다. 수치를 구체적이고 신뢰할 수 있는 수치라기보다 추세로 간주하십시오.

Python 사용자가 설치 프로그램을 얼마나 자주 업데이트하는지가 PEP 777과 관련된 중요한 질문 하나입니다. 사용자가 매우 자주 업데이트한다면 호환성 문제는 그다지 중요하지 않습니다. 새로운 기능이 추가될 때쯤이면 사용자는 최신 상태가 되어 있을 것이기 때문입니다. 반면 사용자가 이전 버전의 설치 프로그램을 자주 사용한다면 PyPI의 호환되지 않는 휠은 훨씬 더 광범위한 영향을 미칠 것입니다. 최신 설치 프로그램과 오래된 설치 프로그램의 상대적인 비중을 파악하기 위해 PyPI 다운로드 통계를 사용할 수 있습니다.

PyPI는 BigQuery dataset을 게시하며, 여기에는 가능한 경우 설치 프로그램 이름과 버전을 포함하여 PyPI가 수신하는 각 다운로드에 대한 정보가 포함되어 있습니다. 다음 쿼리를 사용하여 이 분석을 위한 데이터를 수집했습니다.

#standardSQL
SELECT
  details.installer.name as installer_name,
  details.installer.version as installer_version,
  COUNT(*) as num_downloads,
FROM `bigquery-public-data.pypi.file_downloads`
WHERE
  -- Only query the last 6 months of data
  DATE(timestamp)
    BETWEEN DATE_TRUNC(DATE_SUB(CURRENT_DATE(), INTERVAL 6 MONTH), MONTH)
    AND CURRENT_DATE()
GROUP BY `installer_name`, `installer_version`
ORDER BY `num_downloads` DESC

원시 데이터를 사용할 수 있으므로 PyPI에서 패키지를 다운로드하는 설치 프로그램이 얼마나 최신 상태인지 조사할 수 있습니다. 아래 차트는 2024년 3월 10일부터 2024년 9월 10일까지 6개월 동안 PyPI에서 발생한 모든 다운로드를 설치 프로그램 이름별로 분류하여 보여 줍니다.

A pie chart breaking down PyPI downloads by installer. pip makes up 87.5%, uv makes up 4.8%, poetry makes up 3.0%, requests makes up 1.6%, and "null" makes up 2.1%.

위에서 볼 수 있듯이 이 기간에는 pip가 가장 인기 있는 설치 프로그램입니다. 단순화를 위해 설치 프로그램의 최신 상태를 고려할 때 이 분석에서는 pip 설치에 초점을 맞춥니다. pip는 오랫동안 존재해 왔으므로 패키지 다운로드에 사용된 pip 버전을 분석하면 사용자가 설치 프로그램을 얼마나 자주 업데이트하는지 파악할 수 있습니다. 아래는 동일한 6개월 동안 PyPI에서 이루어진 설치를 pip 설치 프로그램의 주요 버전별로 그룹화하여 분류한 차트입니다. pip는 달력 버전 관리를 사용하므로 pip 20.x에서 설치했다는 것은 사용자가 4년 동안 pip를 업데이트하지 않았음을 의미합니다.

A pie chart breaking down PyPI downloads by pip major version. 24.x makes up 47.7%, 23.x makes up 19.9%, 22.x makes up 10.5%, 21.x makes up 13.9%, 20.x makes up 5.4%, and 9.x makes up 1.9%.

현재 사용자의 3분의 2 이상은 올해 또는 지난해 버전의 pip를 실행합니다. 그러나 약 7%는 최소 4년 이상 된 버전을 사용하고 있습니다(!). 이는 설치 프로그램을 정기적으로 업데이트하지 않는 사용자가 긴 꼬리처럼 존재한다는 것을 나타냅니다.

PEP 777의 최초 질문으로 돌아가면, 주요 버전 2인 휠을 PyPI에 게시할 때는 주의를 기울여야 합니다. pip를 정기적으로 업데이트하지 않는 소수이지만 상당한 비율의 사용자에게 문제가 발생할 가능성이 있기 때문입니다.