루비

루비 2.5

루비 2.5는 루비의 최신 안정 버전입니다. 많은 새로운 기능과 개선(향상)은 루비에 대한 점점 더 다양하고 확장되는 요구 사항을 위해 포함되어 있습니다. 페도라 26의 루비 2.4에서 페도라 28의 루비 2.5로의 주요 최신화를 통해, 페도라는 우수한 루비 개발 기술환경이 되었습니다.

새로운 기능:

  • rescue/else/ensure`는 이제 `do/end 블럭과 함께 직접 사용 할 수 있습니다.

  • 문맥에서 주어진 블럭을 생성하려면 `yield_self`를 추가하세요. '탭’과 달리, 이는 블록의 결과를 반환합니다.

  • 분기 branch coverage와 method coverage 측정을 지원합니다. branch coverage는 실행되는 분기와 실행되지 않는 분기를 나타냅니다. method coverage는 호출된 메서드와 그렇지 않은 메서드를 나타냅니다. 이러한 새로운 기능으로 시험군을 동작하면, 어떤 분기와 메소드가 실행되는지 알 수 있고, 시험 군의 전체 범위를 보다 엄격하게 평가 할 수 있습니다.

  • Hash#sliceHash#transform_keys.

  • `Struct.new`는 키워드 인수를 허용 할 수 있는 클래스를 생성 할 수 있습니다.

  • 열거 가능한 #any?, all?, `none?`과 `one?`은 패턴 인수를 허용합니다.

  • 최-상위 상수 조-회는 더 이상 사용 할 수 없습니다.

  • 우리가 가장 사랑하는 라이브러리 중의 하나인 `pp.rb`는 이제 자동으로 적재됩니다. 당신은 더 이상 require `pp`를 작성 할 필요가 없습니다.

  • 역순으로 역추적과 오류 메시지를 출력합니다(가장 오래된 호출이 우선이고, 가장 최근 호출이 마지막). 자신의 터미널(TTY)에서 긴 역추적이 나타날 때에, 역추적 하단에서 해당 줄을 쉽게 찾을 수 있습니다. 순서가 역추적을 터미널에 직접 출력할 때만 반대로 되는 것을 주의하세요.

루비의 이전 버전을 갖는 원천 수준 호환성은 유지되어야 합니다. 그럼에도 불구하고, 사용자 지정 루비 바이너리 확장은 다시 빌드해야 합니다.

루비 2.5에 대한 더 많은 정보를 위해 업스트림 출시 기록을 참고하세요.