JRuby 10.0.1.0은 총 62개 이상의 이슈와 PR(Pull Request)이 해결된 중요한 업데이트입니다. 가장 주목할 만한 개선 사항 중 하나는 ‘Zeitwerk’의 완전한 지원입니다. 이는 Ruby on Rails를 포함한 최신 Ruby 애플리케이션에서 코드 로딩 및 자동 로딩을 관리하는 데 필수적인 요소로, JRuby 환경에서 Ruby on Rails 7.x 및 최신 라이브러리들을 더욱 원활하게 사용할 수 있게 합니다. (#6781, #8852, #8853, #8863, #8777). 또한, net-imap
라이브러리가 0.5.4에서 0.5.8로 업데이트되어 보안 취약점 해결 및 기능 개선이 이루어졌습니다 (#8826, #8828).
이번 릴리스에서는 다양한 버그 수정 및 최적화가 포함되었습니다. 주요 개선 사항은 다음과 같습니다:
- 호환성 및 동작 일관성: MRI(Matz’s Ruby Interpreter)와 JRuby 간의
String
동작 불일치 문제 해결 (#8624),BigDecimal
변환 오류 수정 (#8740),it
특수 블록 변수 관련 문제 해결 (#8767, #8796, #8799),sprintf
의 정밀도 처리 수정 (#8769), endless method definition 관련 구문 오류 및 동작 문제 해결 (#8776, #8778). - 라이브러리 및 통합: JSR223 ScriptEngine 인터페이스의 리소스 정리 문제 해결 (#8690), Fiddle 및 FFI 라이브러리 관련 테스트 실패 및 동작 문제 수정 (#8780, #8781, #8787), DRb 테스트 개선 (#8802).
- 성능 및 메모리: 시작 속도 및 메모리 사용량 개선을 위한 최적화 (#8831), 동적 문자열
invokedynamic
사이트 개선 (#8848). - 시간 및 날짜 처리:
Date.parse
오류 수정 (#8782),Time.new
의 나노초 파싱 및 키워드 인자 처리 오류 수정 (#8788, #8858, #8860, #8880, #8881, #8890),Time#xmlschema
(ISO8601) 네이티브 구현 추가 (#8856). - 키워드 인자 및 파서: 키워드 인자 처리의 여러 코너 케이스 수정 (#8793),
ruby2_keywords_hash
덤핑 구현 (#8905). - 내부 구조 및 안정성: SAST(정적 애플리케이션 보안 테스트)를 통해 발견된 잠재적 버그 수정 (#8840, #8895), 메인 스레드와 JIT 스레드 간의 교착 상태 문제 해결 (#8846),
ClassCastException
및NullPointerException
과 같은 런타임 오류 수정 (#8847, #8854). - 종속성 업데이트:
joda-time
을 2.14.0으로,bundler
및rubygems
를 최신 버전으로 업데이트 (#8864, #8865),jruby-maven-plugins
를 3.0.6으로 업데이트 (#8874).
이번 릴리스에 기여한 @PChambino, @kares, @Earlopain에게 감사의 말씀을 전합니다. 이들의 노력 덕분에 JRuby는 지속적으로 발전하고 있습니다.