17P by xguru 1달전 | ★ favorite | 댓글 5개
  • Git hook 관리의 속도와 효율성을 높이기 위해 만들어진 pre-commit 대체 도구로 기존 설정 및 훅 호환성 유지
  • Rust 기반 단일 실행 파일로 제공되며, 병렬 처리 구조를 통해 훅 설치 및 실행 시간을 단축
  • CPython, Apache Airflow, FastAPI, Home Assistant 등 주요 프로젝트에서 이미 채택중
  • Python, Node.js, Go, Rust, Ruby 등 다중 언어 툴체인 통합 관리 지원
  • uv 통합으로 Python 가상환경 생성 및 의존성 설치 속도 향상
  • 워크스페이스(모노레포) 환경을 기본 지원, 각 서브프로젝트별 설정 가능
  • prek run, prek list, prek auto-update향상된 CLI 명령어 제공
    • --directory, --last-commit 옵션으로 특정 디렉터리나 최근 커밋만 검사 가능
    • --cooldown-days 옵션으로 공급망 공격 완화 기능 제공
  • 일부 공통 훅을 Rust 네이티브로 내장하여 오프라인·제로 설정 실행 지원
  • MIT 라이선스
  • Astral의 uv 프로젝트에서 영감을 받아 개발됨

개발자분들께 궁금한 것이 있는데, 왜 근래 대부분 프로젝트들은 Golang보다는 rust로 개발되는 경우가 많나요? 가장 큰 이유는 GC 유무 때문인가요?

이 프로젝트는 GC가 문제가 될 정도는 아닐 겁니다. "근래 대부분 프로젝트" 중 사실 프로그래밍 언어 채택은 특정 언어의 장점이나 한계 때문이라기보다는 취향의 영역인 경우가 많다고 보는데요, 그럼에도 범용 프로그래밍 언어로서 Rust가 Go에 대해 갖는 비교우위가 무엇이냐고 묻는다면 저는 Rust가 제공하는 추상화 수준과 컴파일 타임에 여러 오류를 잡아낼 수 있다는 점이라고 답할 것 같습니다. 물론 Go도 Rust에 대해 손쉬운 비동기 프로그래밍, 빠른 컴파일 타임, 간결한 문법 등의 장점이 있습니다.

뭐, 추측이긴합니다만, Rust 진입 장벽이 사라져서 아닐까 싶습니다.
가장 큰 어려움이 코딩했더니 컴파일이 계속 실패한다 인데, AI가 대신해주니깐요.

rust는 컴파일때 오류가 잡히는 비중이 커서 컴파일 실패가 오히려 AI가 올바른 길로 가도록 도와주는 느낌이 있더라고요

요거 좋더라고요