# Rye: 번거로움 없는 Python 경험

> Clean Markdown view of GeekNews topic #15771. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=15771](https://news.hada.io/topic?id=15771)
- GeekNews Markdown: [https://news.hada.io/topic/15771.md](https://news.hada.io/topic/15771.md)
- Type: GN+
- Author: [neo](https://news.hada.io/@neo)
- Published: 2024-07-10T09:45:56+09:00
- Updated: 2024-07-10T09:45:56+09:00
- Original source: [rye.astral.sh](https://rye.astral.sh/)
- Points: 2
- Comments: 2

## Topic Body

### **Rye:** 번거로움 없는 파이썬 경험

Rye는 파이썬 프로젝트와 패키지 관리 솔루션임. Rye는 모든 파이썬 사용자를 위한 통합 경험을 제공하며, 파이썬 설치, `pyproject.toml` 기반 프로젝트, 종속성 및 가상 환경을 원활하게 관리할 수 있음. 복잡한 프로젝트, 모노레포, 글로벌 도구 설치를 지원함.

#### 설치 지침

##### Linux
- 운영 체제와 CPU 아키텍처에 맞는 바이너리를 설치하는 curl 명령어 실행
  ```bash
  curl -sSf https://rye.astral.sh/get | bash
  ```
- 최신 릴리스 바이너리를 다운로드하여 설치
  ```bash
  gunzip rye-x86_64-linux.gz
  chmod +x ./rye-x86_64-linux
  ./rye-x86_64-linux
  ```

##### macOS
- 운영 체제와 CPU 아키텍처에 맞는 바이너리를 설치하는 curl 명령어 실행
  ```bash
  curl -sSf https://rye.astral.sh/get | bash
  ```
- 최신 릴리스 바이너리를 다운로드하여 설치
  ```bash
  gunzip rye-aarch64-macos.gz
  chmod +x ./rye-aarch64-macos
  ./rye-aarch64-macos
  ```

##### Windows
- 최신 릴리스 바이너리를 다운로드하여 실행
- "Developer Mode" 활성화 권장
- 64비트 Intel Windows: `rye-x86_64-windows.exe`
- 32비트 Intel Windows: `rye-x86-windows.exe`

#### 주의사항
- Rye는 아직 서명된 바이너리를 사용하지 않음. 실행 파일을 허용해야 함.
- "Bearfoos" 트로이 목마 경고가 나타날 수 있음. 이는 오탐임.
- Rust와 Cargo가 필요함. rustup을 사용하여 설치 가능.
  ```bash
  cargo install --git https://github.com/astral-sh/rye rye
  ```

### GN⁺의 정리
- Rye는 파이썬 개발자에게 통합된 프로젝트 및 패키지 관리 솔루션을 제공함.
- 복잡한 프로젝트와 글로벌 도구 설치를 지원하여 개발자 경험을 향상시킴.
- 설치 과정에서 몇 가지 주의사항이 필요하지만, 전반적으로 사용이 간편함.
- 비슷한 기능을 가진 도구로는 Poetry와 Pipenv가 있음.

## Comments



### Comment 27152

- Author: lum7671
- Created: 2024-07-11T15:28:02+09:00
- Points: 1

저는 좀 됐지만, 이것 저것 사용하다가   
[Introduction - PDM](https://pdm-project.org/latest/)  
를 사용하고 있습니다.  
  
Rye 도 사용을 해봐야 겠네요.

### Comment 27122

- Author: neo
- Created: 2024-07-10T09:45:56+09:00
- Points: 1

###### [Hacker News 의견](https://news.ycombinator.com/item?id=40911637) 
- uv에서 많은 핵심 패키징 개발이 진행 중이며, Rye도 uv를 사용함
  - 최근 uv에 "universal" 해상도 지원을 추가하여 모든 플랫폼과 운영 체제에서 작동하는 requirements.txt 파일을 생성할 수 있게 되었음
  - Rye도 최신 릴리스에서 이를 지원함
  - Rye와 uv에 대해 질문이 있으면 답변 가능함

- Rye의 단점은 비표준 Python 빌드를 사용하도록 강력히 권장하는 것임
  - Rye 철학 페이지에 따르면, CPython 빌드는 완전히 부적절하며, 다양한 플랫폼에서 다양한 문제를 일으킴
  - 이 프로젝트는 indygreg standalone 빌드를 사용함
  - 다른 Python을 선택할 수도 있음
  - 공식 Python 빌드에서 문제를 경험한 적이 없으며, 비표준 빌드 사용에 대한 우려가 있음

- Rye를 좋아하는 사용자는 많음
  - Rye는 venv/Python 버전/패키징 과정을 실제로 쾌적하게 만들어줌
  - Python을 Cargo처럼 느끼게 해줌

- HN의 냉소주의에 놀라는 사용자도 있음
  - 다른 언어의 패키지 관리자(cargo, hex)를 사용한 후, Python에 유사한 시스템이 없어서 아쉬웠음
  - Rye가 이 문제를 완전히 해결해줌

- 새로운 Python 의존성 관리자는 새로운 JavaScript 프레임워크를 발견한 것과 같음

- pixi를 좋아하는 사용자도 있음
  - pixi는 Python 버전을 고정하고, conda와 PyPI에서 패키지를 설치할 수 있게 해줌
  - Rust로 작성됨

- 비 Python 개발자는 Python 프로젝트의 DX가 왜 그렇게 나쁜지 이해하지 못함
  - npm/node는 프로젝트 부트스트랩과 의존성 이해가 매우 쉬움
  - Python이 "requirements.txt"에 대한 성숙한 대안을 찾는 데 왜 이렇게 오래 걸렸는지 의문임

- uv 팀이 Armin 프로젝트를 인수했음을 주목할 필요가 있음

- Rye는 훌륭해 보이며, Poetry도 즐겨 사용함
  - Go의 고품질 기본 도구에 대한 존경심이 큼
  - Python 프로젝트를 시작할 때마다 의존성/venv 관리에 대해 다시 배워야 하는 느낌이 듦

- Rye 소개 페이지에 따르면, Rye는 아직 매우 실험적인 도구임
  - 이 프로젝트에 대해 매우 기대하고 있지만, 더 성숙한 단계에 도달할 때까지 기다릴 계획임
  - Astral 팀의 다른 모든 프로젝트를 좋아하기 때문에 큰 기대를 가지고 있음
