1. 개발 워크플로우 및 도구 개선
-
bin/ci 도입:
config/ci.rb를 통해 CI 단계를 정의하고 실행하는 표준화된 방식을 제공합니다. -
Dev Containers 확장: VSCode 외의 환경에서도 Dev Container를 사용할 수 있는 스크립트가 추가되었습니다.
-
Rails.app 별칭:
Rails.application을Rails.app으로 짧게 호출할 수 있게 되어 가독성이 향상되었습니다.
2. ActiveRecord 및 데이터베이스
-
트랜잭션 격리 수준:
with_default_isolation_level을 통해 특정 코드 블록 내에서 데이터베이스 격리 수준을 명시적으로 설정할 수 있습니다. -
PostgreSQL 18 지원: 가상 생성 컬럼(Virtual Generated Columns) 지원이 추가되었습니다.
-
연관 관계 지원 중단:
deprecated: true옵션을 통해 특정 연관 관계의 사용을 경고하거나 제한할 수 있습니다.
3. 보안 및 성능 최적화
-
현대적인 CSRF 보호:
Sec-Fetch-Site헤더를 활용하여 토큰 없이도 동일 출처 요청을 검증하는 새로운 전략이 도입되었습니다. -
Active Job Continuations: 작업 중단 시 상태를 저장하고 나중에 재개할 수 있는
ActiveJob::Continuable기능이 추가되었습니다. -
ActiveStorage 즉시 처리:
process: :immediately옵션으로 업로드 시점에 변형 이미지를 생성하고 메타데이터를 즉시 검증에 활용할 수 있습니다.
4. 기타 주요 기능
-
구조화된 이벤트 보고:
Rails.eventAPI를 통해 통합된 텔레메트리 및 구조화된 로그 전송이 가능해졌습니다. -
통합 자격 증명 관리:
Rails.app.creds를 통해 환경 변수(ENV)와 암호화된 자격 증명 파일을 단일 인터페이스로 조회할 수 있습니다. -
Markdown 지원: 기본 Markdown 렌더러와 디버그 예외 화면에서의 Markdown 출력을 지원하여 CLI 도구와의 호환성을 높였습니다.