Python
Kinerja Python yang diperbaiki
Bergantung pada beban kerja, sampai dengan 27% perbaikan kinerja kini teramati dalam perangkat lunak berbasis Python. Peningkatan kinerja dicapai dengan membangun interpreter Python dengan -fno-semantic-interposition
. Karena sekarang tidak ada interposisi semantik, pencarian simbol internal dari libpython
ke pustaka libpython
langsung dan lebih cepat.
Sebagai konsekuensi, bila pengguna Fedora perlu memakai LD_PRELOAD
untuk menimpa simbol dalam libpython
, cara yang disarankan adalah untuk membangun Python ubahan tanpa -fno-semantic-interposition
. Namun, masih mungkin memakai LD_PRELOAD
untuk menimpa simbol dalam pustaka lain (misalnya dalam glibc).
Python 2 telah dihapus
Upstream Python berhenti mendukung Python 2 pada 1 Januari 2020. Karena alasan ini, Fedora 32 menghapus paket Python 2.
Paket-paket berikut tidak tersedia lagi:
-
Paket
python2
dan semua sub paketnya. -
Semua paket yang memerlukan Python 2 untuk berjalan.
-
Semua paket yang memerlukan Python 2 untuk membangunnya.
Fedora 32 masih menyediakan suatu paket warisan python27
. Paket ini ditujukan untuk para pengembang yang memerlukan dukungan Python 2 dan untuk para pengguna yang memerlukan perangkat lunak yang bergantung kepada Python 2.
Paket python27
memiliki beberapa keterbatasan dibanding dengan paket python2
yang asli:
-
Paket tidak memiliki sub paket. Semua konten disimpan dalam paket tunggal.
-
Paket tidak memiliki build debug, yang sebelumnya tersedia sebagai
python2-debug
. -
Paket tidak menyediakan biner
/usr/bin/python
. -
Sebarang Provides yang kompatibel ke belakang dihapus (paket ini tidak dimaksudkan untuk menjadi kebergantungan).
Dukungan yang tidak berlaku lagi untuk Nose
Dukungan untuk Nose kini tidak berlaku lagi. Namun untuk saat ini, paket python3-nose
terus tersedia dalam repositori Fedora. Belum ada rilis spesifik yang ditarget untuk menghapus paket python3-nose
.
Pengguna dan pemaket dari paket-paket yang bergantung dianjurkan untuk berpindah ke python3-pytest
atau python3-nose2
.
Catatan tentang memigrasi paket-paket pip yang dipasang pengguna
Ketika Anda meningkatkan dari Fedora 30 atau 31 ke Fedora 32, versi interpreter Python utama berubah dari 3.7 ke 3.8. Bila Anda memasang sebarang paket Python memakai pip
, Anda mesti mengikuti prosedur berikut secara lengkap untuk memigrasi mereka ke versi baru:
-
Memasang versi Python utama sebelumnya:
sudo dnf install python3.7
-
Mengambil
pip
bagi versi Python utama sebelumnya:python3.7 -m ensurepip --user
-
Amati paket-paket yang dipasang:
python3.7 -m pip list
-
Simpan daftar dengan versi spesifik:
python3.7 -m pip freeze > installed.txt
-
Pasang paket-paket yang sama bagi versi yang kini baku:
python3 -m pip install --user -r installed.txt
-
Membongkar paket yang dipasang pengguna bagi 3.7; ini memastikan penghapusan berkas secara benar dalam
~/.local/bin
:python3.7 -m pip uninstall $(python3.7 -m pip list --user | cut -d" " -f1)
-
Opsional, membersihkan struktur direktori yang kini kosong:
rm -rf ~/.local/lib/python3.7/
-
Opsional, menghapus versi Python yang tidak diperlukan:
sudo dnf remove python3.7
Sebagai tambahan, bila Anda telah memasang sebarang paket pip
memakai sudo
, jalankan perintah berikut sebelum menjalankan langkah terakhir di atas yang menghapus `python3.7`, atau pasang lagi itu sementara:
-
Ambil
pip
bagi versi Python utama yang sebelumnya bagiroot
:sudo python3.7 -m ensurepip
-
Amati paket-paket yang dipasang oleh sistem:
sudo python3.7 -m pip list
-
Membongkar paket yang dipasang bagi 3.7; ini memastikan penghapusan berkas secara benar dalam
/usr/local/bin
:sudo python3.7 -m pip uninstall $(python3.7 -m pip list | cut -d" " -f1)
-
Opsional, membersihkan struktur direktori yang kini kosong:
sudo rm -rf /usr/local/lib*/python3.7/
Bila Anda mengikut prosedur pertama, paket-paket telah terpasang bagi akun pengguna Anda, yang merupakan opsi yang lebih disukai. Hindari memakai |
Want to help? Learn how to contribute to Fedora Docs ›