개발자를 위한 페도라 40의 변경 사항

파이토치

페도라 40은 컴퓨터 비전 및 자연 언어 처리와 같은 응용프로그램을 위해 사용되는 토치(Torch) 라이브러리에 기반한 기계학습(machine learning) 프레임워크인 파이토치(PyTorch)를 제공하는 최초의 페도라 배포판이며, 원래는 메타 AI에서 개발되었고 리눅스 재단(Linux Foundation) 산하의 일부분이 되었습니다. 수정된 BSD 허가에 따라 출시된 무료 및 개방형 원천 소프트웨어입니다.

페도라 꾸러미로서 파이토치를 제공하는 것은 사용자가 dnf를 pip 대신에 설치하는 데 사용 할 수 있다는 것을 의미합니다. 페도라 40에서 제공된 초기 버전은 2.1.2입니다. `dnf install python-torch`를 실행합니다.

파이토치(Pytorch)와 함께 시작하게 하려면, 공식 문서를 참고하세요. 페도라의 파이토치에 특별히 관심 있는 사람 - 개발자, 꾸러미 제작자, 최종-사용자, 등은 - 파이토치 페도라 특별 관심 그룹에 참여합니다.

PHP 8.3

PHP 프로그래밍 언어 인터프리터를 위한 스택은 다중 결점 수정 및 개선을 제공하는 버전 8.3으로 향상되었습니다. 주목 할만한 변경은 다음을 포함합니다:

  • 클래스 상수의 명시적 유형 지정

  • 동적 클래스 상수 가져오기

  • 신규 #[\Override] 속성

  • 읽기 전용 속성의 심층-복제

  • 신규 json_validate() 함수

  • 신규 Randomizer::getBytesFromString() 방법

  • 명령 줄 린터(linter)는 다중 파일을 지원합니다

전체 최신화 내용을 위해, 업스트림 출시 기록을 참고하세요.

Golang 1.22

페도라 40은 Golang 버전 1.22를 제공합니다. 완전한 변경 목록을 위해 업스트림 출시 기록을 참고하세요.

파이썬 3.7은 물러납니다

이들 출시와 함께 시작하는, 파이썬 버전 3.7은 2023년 6월의 수명 종료를 고려하여 교체 없이 폐기하도록 고려되었습니다.

LLVM 18

All LLVM sub-projects have been updated to version 18, which includes a soname version change for llvm libraries. Compatibility packages clang17, llvm17, and lld17 have been added to ensure that packages that currently depend on clang and llvm version 17 libraries will continue to work.

다른 주목 할만한 변경은 다음을 포함합니다:

  • clang will emit DWARF-5 by default instead of DWARF-4. This matches the upstream default. Fedora has been using DWARF-4 as the default for the last few releases due to https://bugzilla.redhat.com/show_bug.cgi?id=2064052.

  • The compatibility packages will now include the same content as the main package. In previous releases, the compatibility packages contained only libraries and headers, and the binaries and other content was stripped out. These packages will be supported for use as dependencies for other RPM packages, but not for general purpose usage by end users. Fedora users should use Clang/LLVM 18.

  • 페도라 40을 위해 추가된 호환성 꾸러미는 페도라 41 분기 이전에 폐기됩니다.

  • We will be enabling Fat LTO in redhat-rpm-config if this feature is complete in time for the upstream LLVM 18 release. Fat LTO is a feature that allows the compiler to produce libraries that contain LTO bitcode along side the traditional ELF binary code so that the libraries can be linked in both LTO mode and non-LTO mode. gcc also supports this feature and has it enabled in Fedora. In Fedora 39 and older, with LTO enabled, clang produces binaries with only LTO bitcode, so we need to run a post-processing script (brp-llvm-compile-to-elf) on the libraries to convert them to ELF code so they can be used by other packages. Enabling Fat LTO allows Fedora Project to remove this script and simplify the build process.

자세히 알기 위해 업스트림 출시 기록을 참고하세요.

GNU 개발 도구 모음 최신화

The GNU Compiler Collection, GNU Binary Utilities, GNU C Library, and the GNU Debugger make up the core part of the GNU Toolchain and it is useful for our users to transition these components as a complete implementation when making a new release of Fedora.

GNU 도구 모음의 구성(gcc, glibc, binutils, gdb)은 페도라 40에서 다음 버전으로 최신화 되었습니다:

Boost 1.83

페도라 40은 Boost 1.83을 포함합니다. 더 많은 정보를 위해 업스트림 출시 기록을 참고하세요.

루비 3.3

The Ruby language has been updated to version 3.3 in Fedora 40, up from version 3.2 provided in the previous Fedora release. The new version adds a new parser called Prism, uses Lrama as a parser generator, adds a new pure-Ruby JIT compiler called RJIT, and provides many performance improvements, especially YJIT.

자세한 내용을 위해, 업스트림 뉴스출시 발표를 참고하세요.

시스템 JDK로 java-21-openjdk

시스템 JDK는 페도라에서 버전 17에서 21로 최신화 되었습니다.

자바 21에 대한 더 많은 정보를 위해, JDK 21 출시 기록, 그리고 이전 안내를 참고하세요.

이와 같은 변경에 대한 빠른 질의응답(FAQ)을 위해 변경 부분도 참고하세요.

Pipenv는 폐기합니다

이와 같은 출시에서, pipenv는 페도라에서 더 이상 꾸러미화 되지 않고 폐기되며, 그리하여 향상(upgrade) 절차를 통해 제거 될 수 있습니다.

아직 pipenv가 필요한 개발자는 직접 pip에서 `pip install --user pipenv`을 통해 설치 할 수 있습니다.