RV 개발의 주요 동기는 기존 Ruby 버전 관리 방식의 비효율성 개선에 있습니다. 개발자는 Ruby를 설치할 때마다 configure, make, make install과 같은 복잡하고 시간이 오래 걸리는 과정을 반복해야 했습니다. 이러한 문제점은 Python의 UV 도구가 파이썬 설치뿐만 아니라 패키지 및 환경 설정까지 빠르게 처리하는 것을 보며 Ruby에도 유사한 도구가 필요하다는 확신으로 이어졌습니다.
RV는 다음의 핵심 기능을 제공합니다:
1. 초고속 Ruby 설치
-
RV는 사전 컴파일된 Ruby를 제공하여 Ruby 설치 시간을 약 1초로 단축합니다.
-
GitHub Actions의
setup-ruby액션과 유사하게 CI/CD 환경뿐만 아니라 로컬 개발 환경에서도 빠른 설치를 가능하게 합니다.
2. OpenSSL 문제 해결
-
기존 Ruby 설치 시 빈번하게 발생하던 OpenSSL 관련 의존성 문제를 해결합니다.
-
RV로 설치된 Ruby는 OpenSSL과 정적으로 링크되어 Homebrew와 같은 패키지 관리자가 OpenSSL을 삭제하더라도 Ruby가 손상되지 않습니다. 이는 개발자에게 상당한 편의성을 제공합니다.
3. 넓은 호환성 및 셸 통합
-
초기 버전(0.1)에서는 Ruby 3.4와 Zshell만 지원했지만, 0.2 버전에서는 모든 Ruby 버전, Intel 및 ARM 아키텍처(macOS, Linux), 모든 셸을 지원하도록 확장되었습니다.
-
RVM이나 rbenv와 유사하게 셸 설정 파일에 한 줄의 코드를 추가하는 것만으로 자동적인 Ruby 버전 전환 기능을 제공합니다.
RV는 Rust로 작성된 완전한 오픈 소스 프로젝트이며, 현재 Gem 설치 및 패키지 실행 속도 향상과 같은 추가 기능들을 개발 중에 있습니다.