지난 글들

1171개의 글이 있습니다

Minitest 5.26.0 버전 출시: Ruby 개발자를 위한 강력한 테스트 프레임워크

minitest version 5.26.0 has been released! | software releases | by ryan davis

  • Minitest 5.26.0이 출시되었으며, TDD, BDD, 모킹, 벤치마킹을 지원하는 Ruby용 통합 테스트 솔루션을 제공합니다.
  • Minitest는 `minitest/test`, `minitest/spec`, `minitest/benchmark`, `minitest/mock`, `minitest/pride` 등 다양한 모듈을 통해 포괄적인 테스트 기능을 제공합니다.
  • Ruby의 기본 기능을 재활용하여 학습 곡선이 낮고, RSpec과 달리 Ruby 자체의 문법을 활용하여 개발자들이 친숙하게 사용할 수 있도록 설계되었습니다.
Ruby Weekly 2025년 10월 07일
  • Doctor Lib은 84,000개의 테스트와 130 CPU 시간을 소모하는 대규모 Rails 모놀리스의 테스트 스위트를 최적화하기 위해 Rails 기본 설정으로 회귀하고 팩토리 및 데이터베이스 리셋 문제를 해결했습니다.
  • 테스트 성능 개선을 위해 트랜잭션 테스트 도입, 팩토리를 픽스처로 대체, Capybara::Lockstep을 통한 프론트엔드 동기화로 플래키 테스트를 줄여 한 엔진의 테스트 시간을 7분에서 1분 미만으로 단축했습니다.
  • 대규모 Rails 애플리케이션의 확장성 확보를 위해 10개의 Aurora PostgreSQL 라이터와 다수의 리더를 활용한 데이터베이스 샤딩, 기능 스위치를 통한 안전한 코드 배포, DCTL CLI 도구를 통한 개발자 경험 개선 전략을 공유했습니다.
Ruby on Rails Youtube 2025년 10월 07일

루비 유저그룹 정기 모임 개최 및 발표자 모집

Hamburg on Ruby - Ruby Usergroup Hamburg - September 2025

  • 루비 유저그룹 정기 모임이 9월 10일 오후 7시 1KOMMA5° 쇼룸에서 개최됩니다.
  • 루비 개발자들과의 네트워킹 및 교류를 위한 기회가 제공됩니다.
  • 루비, 레일스 관련 주제로 발표할 연사를 모집하며, 라이트닝 토크도 환영합니다.
Ruby on Rails 소식지 2025년 10월 07일

루비 온 레일스 생태계 최신 동향: AI, 커뮤니티 인프라, 보안 및 개발자 역할 확장

ep 28. 루비:레일스 최신 동향 요약 | AI 에이전트, Gem coop, Rails 보안 강화법

  • 루비 온 레일스 커뮤니티는 AI 통합, 커뮤니티 주도 인프라 구축, 보안 강화, 개발자 역할 확장을 통해 활발히 진화하고 있습니다.
  • SF 루비 컨퍼런스에서는 AI를 활용한 코드베이스 이해도 향상과 개발자를 위한 기술 마케팅 전략 등 실용적인 주제들이 논의됩니다.
  • Gem.coop과 같은 협동조합 모델의 잼 서버, SQLite 대시보드 같은 생산성 도구, 그리고 실질적인 보안 강화 팁들이 새롭게 제시되었습니다.
Ruby on Rails 소식지 2025년 10월 07일

오래된 마이그레이션 파일이 완전히 쓸모없는 이유

Delete your old migrations, today - Julik Tarkhanov

  • 오래된 마이그레이션 파일은 데이터베이스 스키마의 현재 상태와 맞지 않아 쓸모없을 뿐만 아니라, 코드베이스를 복잡하게 만들고 디버깅을 어렵게 하여 해롭습니다.
  • 프로덕션 환경에서는 `rails db:schema:load` 또는 `rails db:structure:load`를 사용하여 데이터베이스를 초기화하므로, 과거의 모든 마이그레이션을 순차적으로 실행할 필요가 없습니다.
  • 최근 6-12개월 이내의 마이그레이션을 제외한 모든 오래된 마이그레이션 파일을 삭제하여 코드베이스를 정리하고, 스키마 기록은 `schema.rb`와 Git 기록으로 관리하는 것이 효율적입니다.
Ruby Weekly 2025년 10월 07일

Turbo Stream: 폼 제출 및 응답 처리 방식 상세 분석

How does Turbo listen for Turbo Streams?

  • Turbo는 폼 제출을 가로채 `Accept: text/vnd.turbo-stream.html` 헤더를 추가하여 서버에 Turbo Stream 응답을 요청합니다.
  • 서버가 `Content-Type: text/vnd.turbo-stream.html`로 응답하면, Turbo는 해당 Turbo Stream 요소를 DOM에 추가하여 정의된 액션(append, prepend 등)을 자동으로 실행합니다.
  • 성공적인 Turbo Stream 폼 제출 후 일반 HTML 응답을 원할 경우, Turbo는 리다이렉션을 요구하며, 그렇지 않으면 오류를 발생시킵니다.
Hotwire Weekly 2025년 10월 07일
  • Rails 8의 SQLite 기반 Solid 스택(queue, cache, cable) 도입은 초기 4개 데이터베이스 관리의 복잡성에 대한 우려를 넘어선 실질적인 이점을 제공합니다.
  • Postgres, Redis, Memcached를 사용하는 기존 배포 방식 대비, SQLite 스택은 Dokku와 같은 환경에서 배포를 간소화하고 Devops 오버헤드를 줄입니다.
  • 개발 환경 단순화(Docker 불필요), 단일 서버 환경에서의 성능 향상, 그리고 데이터 접근성 용이성 등 개발자 경험 측면에서 상당한 개선을 가져옵니다.
HackerNews 2025년 10월 07일

Turbo Frame의 busy 속성을 활용한 사용자 경험(UX) 개선

Improving Turbo Frame UX with the busy Attribute

  • Turbo Frame은 새로운 콘텐츠 로딩 시 `busy` 및 `aria-busy="true"` 속성을 자동으로 추가하여 로딩 상태를 알립니다.
  • Tailwind CSS의 `aria-busy:*` 변형 또는 일반 CSS 속성 선택자를 사용하여 이 로딩 상태를 시각적으로 표시할 수 있으며, 별도의 JavaScript는 필요하지 않습니다.
  • 로딩 표시기는 `turbo-frame` 내부에 오버레이로 구현하거나(`group-aria-busy`), 프레임 외부에 형제 요소로 배치하여(`peer-aria-busy`) 사용자에게 명확한 피드백을 제공할 수 있습니다.
Hotwire Weekly 2025년 10월 07일

Doctolib의 대규모 Rails 앱 테스트 최적화 및 스케일링 전략

Optimizing Rails Tests at Doctolib Scale – On Rails

  • Doctolib은 8만 4천 개 이상의 테스트와 130+ CPU 시간을 소모하는 대규모 Rails 모놀리스의 테스트 성능을 최적화하기 위해 Rails 기본 설정으로 회귀하는 전략을 채택했습니다.
  • 테스트 속도 저하의 주요 원인으로 데이터베이스 리셋, 비효율적인 팩토리 사용, 그리고 수년간 축적된 불필요한 코드들이 지목되었으며, 이를 개선하기 위한 구체적인 방법론이 적용되었습니다.
  • 트랜잭션 테스트와 픽스처(fixtures) 사용을 통해 특정 엔진의 테스트 시간을 7분에서 1분 미만으로 단축하여 개발자 경험을 개선하고 인프라 비용을 절감하는 데 성공했습니다.
HackerNews 2025년 10월 07일
  • DSPy.rb가 BAML 스키마 형식을 도입하여 LLM 프롬프트에 포함되는 스키마의 토큰 소비량을 획기적으로 줄였습니다.
  • BAML은 기존 JSON Schema 대비 최대 85.5%의 토큰 절감 효과를 제공하며, 이는 복잡한 시그니처와 고용량 애플리케이션에서 비용 효율성을 크게 높입니다.
  • DSPy.configure 설정 변경만으로 BAML 스키마를 자동으로 적용할 수 있으며, 모든 Enhanced Prompting 모드 제공자와 호환됩니다.
Ruby AI News 2025년 10월 07일

Ruby 3.4.7 릴리스 발표

Ruby 3.4.7 Released

  • Ruby 3.4.7이 CVE-2025-61594 취약점 해결을 위한 uri gem 업데이트 및 기타 버그 수정과 함께 공식 릴리스되었습니다.
  • 사용자들은 보안 강화를 위해 uri gem의 최신 버전으로 업데이트할 것이 권장되며, 기본 gem 사용자 편의를 위해 이번 릴리스에 포함되었습니다.
  • Ruby 3.4 버전은 두 달 간격으로 정기 릴리스될 예정이며, 다음 버전인 3.4.8은 12월, 3.4.9는 2월에 출시될 계획입니다.
Ruby-Lang 2025년 10월 07일

Evil Martians의 여름 회고: 블로그, 강연, 오픈 소스, 그리고 SFRuby 2025

Martian Summer: blog, talks, open source, and ready for SFRuby in Nov

  • 2025년 11월 19-21일 샌프란시스코에서 SFRuby 컨퍼런스가 개최되며, 600여 명의 루비 개발자가 모여 교류할 예정입니다.
  • Dev Propulsion Labs 팟캐스트를 통해 개발 도구 기업 창업가들의 통찰력 있는 인터뷰를 공유했습니다.
  • Martian Grotesk 폰트, LaunchKit 템플릿, Redprints CFP 앱 등 다양한 오픈 소스 프로젝트가 공개 및 업데이트되었습니다.
Evil Martians 2025년 10월 07일

CVE-2025-61594: URI 자격 증명 누출 우회 취약점 보안 권고

CVE-2025-61594: URI Credential Leakage Bypass previous fixes

  • URI gem의 CVE-2025-61594 취약점은 기존 CVE-2025-27221 패치를 우회하여 사용자 자격 증명 누출을 유발합니다.
  • URI 결합 시 '+' 연산자를 사용하면 원본 URI의 민감 정보(비밀번호 등)가 유출될 수 있습니다.
  • 이 취약점 해결을 위해 uri gem을 0.12.5, 0.13.3, 1.0.4 또는 이후 버전으로 즉시 업데이트해야 합니다.
Ruby-Lang 2025년 10월 07일

Ruby의 OptionParser를 활용한 서브 커맨드 CLI 개발

Building a Sub-command Ruby CLI with just OptionParser

  • Ruby 표준 라이브러리의 OptionParser는 서브 커맨드(git-like) CLI 구축에 가장 효과적인 도구입니다.
  • 글로벌 옵션과 서브 커맨드별 옵션을 각각 처리하기 위해 두 개의 OptionParser를 사용하는 전략이 핵심입니다.
  • 외부 Gem 대신 OptionParser를 사용함으로써 안정성, 유지보수성, 그리고 UNIX-like CLI의 일관성을 확보할 수 있습니다.
Ruby Weekly 2025년 10월 07일

Minitest에서 길을 잃으셨나요? 여기서 시작하세요!

Lost in Minitest? Start here! - Remi Mercier

  • Minitest는 Ruby 및 Ruby on Rails의 기본 테스트 프레임워크로, RSpec과 달리 어설션 기반의 테스트 방식을 사용합니다.
  • Minitest는 여러 테스트 문법 스타일(기본, Rails 커스텀, Spec 스타일)을 제공하여 초기에 혼란을 줄 수 있으나, 각 스타일에 대한 이해가 중요합니다.
  • Rails 환경에서는 ActiveSupport::TestCase 등을 상속받아 Minitest를 활용하며, 테스트 유형에 따라 적절한 상속 클래스를 선택해야 합니다.
Ruby Weekly 2025년 10월 07일