Gentoo 개발자, 순수 Python 패키지에 uv-build를 쓰지 말아 달라고 호소

6 days ago 16

Gentoo 개발자가 순수 Python 패키지의 빌드 백엔드로 uv-build를 사용하지 말아 달라고 요청. 핵심 의존성 하나의 전환으로 십여 개 패키지에서 일부 아키텍처의 지원 표식이 제거된 것이 계기 Rust 기반 uv-build는 작은 Python 백엔드보다 의존성이 크고, 잦은 릴리스로 소스에서 빌드하는 Gentoo 사용자의 부담도 커짐 빌드 시간보다 큰 문제는 이식성. Rust 컴파일러가 있는 환경에서도 의존성의 플랫폼 지원이나 32비트 주소 공간 제약 때문에 uv를 빌드하거나 실행하지 못할 수 있음 Python 패키징 표준인 PEP 517에 따라 uv와 flit-core, hatchling 등을 함께 사용할 수 있으므로, uv를 쓴다는 이유만으로 uv-build를 선택할 필요는 없음 드물게 실행하는 패키지 빌드에서 얻는 작은 속도 이점보다, 빌드 백엔드 자체를 컴파일하고 여러 플랫폼에서 유지하는 비용이 더 크다는 문제 제기 순수 Python 패키지에 추가되는 Rust 의존성 Gentoo의 핵심 의존성 하나가 uv-build로 전환하면서, 십여 개 패키지에서 일부 아키텍처의 동작 확인 표식인 KEYWORDS가 제거됨 Gentoo의 KEYWORDS는 패키지가 각 아키텍처에서 동작하는지와 안정성 수준을 나타내는 표식 빌드 의존성의 지원 범위가 좁아지면, 그 의존성을 사용하는 패키지에도 영향이 이어짐 요청의 대상은 uv-build를 순수 Python 패키지의 빌드 백엔드로 선택하는 것 uv 자체나 다른 Astral 도구에 대한 비판은 아니며, 도구의 품질과 개발팀의 친절하고 빠른 대응은 긍정적으로 언급 순수 Python 패키지를 빌드하는 작업에서는 Rust의 장점을 활용할 여지가 작은 반면, Rust로 작성된 백엔드를 빌드하고 유지하는 부담이 추가됨 uv-build 0.13.0의 wheel은 플랫폼에 따라 1.2~1.5MiB 순수 Python 백엔드인 flit-core의 wheel은 45KiB 글 작성 전 30일 동안 uv-build가 12차례 릴리스됐으며, 소스에서 패키지를 빌드하는 Gentoo 사용자에게는 반복적인 컴파일 부담으로 이어짐 패키지 빌드에서 아끼는 시간이 작다면, 새 uv-build 버전을 계속 컴파일하는 비용을 상쇄하기 어려움 원문은 이를 “백엔드를 실행하는 데 100ms를 쓰는 대신, 새 버전들을 빌드하는 데 여러 시간을 쓰는” 상황에 빗댐 빌드 시간보다 큰 문제는 이식성 Python은 ...

Read Entire Article




피플앤툴즈 네트워크
🛍 샵