한 주간의 Hanami 개발 업데이트: 버그 수정, Ruby 4 호환성 및 웹사이트 연기

Continuations 2025/50: Egregious hack

작성자
발행일
2025년 12월 15일

핵심 요약

  • 1 Dry Logger와 Hanami Router의 중요한 버그가 수정되었으며, 다음 주 패치 릴리스가 예정되어 사용자 참여의 중요성을 강조했습니다.
  • 2 Ruby 4.0.0-preview2와의 호환성을 위해 `binding_of_caller` 문제를 임시 해결하여 Hanami CI가 정상 작동하도록 조치했습니다.
  • 3 새 웹사이트 런칭이 내년 2월로 연기되었으며, `repo-sync`를 통해 `hanami/hanami` CI 워크플로우를 개선하는 작업이 진행되었습니다.

도입

이번 주 저자는 젬 펠로우십에 지원하며 한 주를 시작했습니다. 주요 기술 업데이트로는 Dry Logger와 Hanami Router의 중요한 버그 수정이 있었으며, 이는 사용자들의 적극적인 참여와 상세한 버그 리포트 덕분에 가능했습니다. 또한, Hanami 프로젝트의 지속적인 발전을 위해 `repo-sync`를 활용한 CI 워크플로우 개선과 차세대 Ruby 버전인 4.0.0-preview2와의 호환성 확보 노력이 두드러졌습니다. 새로운 웹사이트 런칭 연기 소식과 함께 연례 'State of Hanami' 블로그 게시물 준비 소식도 전해졌습니다.

주요 버그 수정 및 패치 릴리스

  • Dry Logger: 컨텍스트 및 태그된 로깅의 스레드 안전성 문제를 해결했습니다. 이는 Armin과 Rob의 상세한 버그 리포트 덕분이었습니다.

  • Hanami Router: Andreas Haller의 리포트를 통해 두 가지 문제가 해결되었습니다.
    • 동적 스코프 접두사에 대한 Rack SCRIPT_NAME이 올바르게 설정되도록 수정했습니다.
    • 접두사가 지정된 마운트에 정확한 접두사로 접근할 때 빈 Rack PATH_INFO가 유지되도록 했습니다.
  • 다음 주 Dry Logger와 Hanami Router에 대한 패치 릴리스가 예정되어 있습니다. 이러한 사용자 리포트는 Hanami가 다양한 방식으로 활용되고 있으며 커뮤니티의 참여가 활발함을 보여줍니다.

repo-sync를 통한 Hanami CI 개선

  • 지난 주 repo-sync를 통한 PR 미리보기 기능 성공 후, hanami/hanami 프로젝트에 repo-sync를 적용하기 시작했습니다.

  • 초기에는 .github/workflows/ci.yml 파일에 집중하여 Node 빌드 지원을 추가하고, 저장소별로 repo-sync.yml을 통해 자체 CI 매트릭스 조건을 선언할 수 있도록 했습니다.

Ruby 4.0.0-preview2 호환성 확보

  • hanami/hanami의 CI 업데이트 과정에서 Ruby 4.0.0-preview2 빌드를 시작했습니다.

  • 이 과정에서 binding_of_caller 젬이 Ruby 2 또는 3 버전만 지원하고 4 버전에 대해 작동하지 않는 문제를 발견했습니다.

  • 임시 방편으로, Hanami의 개발 모드 사용자들이 BetterErrors 화면에서 binding_of_caller 기능을 계속 사용할 수 있도록 로컬에서 “극악무도한 해킹(egregious hack)”을 적용하여 문제를 해결했습니다. 이로 인해 Hanami CI는 Ruby 4에서도 정상적으로 작동하고 있습니다.

새 웹사이트 런칭 연기

  • 새 웹사이트 런칭은 내년 2월로 연기되었습니다.

  • 브랜드 색상에 대한 추가적인 미세 조정이 필요하고, 디자이너의 시간 부족 및 연말 휴가 시즌을 고려한 결정입니다.

  • 추가 시간을 통해 더욱 개선된 웹사이트를 선보일 예정입니다.

결론

이번 주는 Dry Logger와 Hanami Router의 핵심 버그 수정 및 패치 릴리스 준비를 통해 Hanami 에코시스템의 안정성을 강화하는 데 중점을 두었습니다. 특히 Ruby 4.0.0-preview2와의 호환성 문제를 해결하기 위한 신속한 대응은 Hanami가 미래 지향적인 개발을 추구하고 있음을 보여줍니다. `repo-sync`를 활용한 CI 워크플로우 개선은 개발 효율성을 높이는 중요한 단계입니다. 비록 웹사이트 런칭은 연기되었지만, 이는 더 나은 결과물을 위한 전략적인 결정으로 보입니다. 다가오는 'State of Hanami' 블로그 게시물은 올해의 성과를 총정리하는 좋은 기회가 될 것입니다.

댓글 0

로그인이 필요합니다

댓글을 작성하거나 대화에 참여하려면 로그인이 필요합니다.

로그인 하러 가기

아직 댓글이 없습니다

첫 번째 댓글을 작성해보세요!