Jika Anda, seperti saya, mencari fitur tajuk alih-alih changelog lengkap, pos oleh pengelola ini, Chet Ramey, membahasnya. Inilah bagian yang menarik:
Rilis ini memperbaiki beberapa bug yang beredar di bash-4.4 dan memperkenalkan beberapa fitur baru. Perbaikan bug yang paling signifikan adalah perbaikan bagaimana variabel nameref menyelesaikan dan sejumlah potensi kesalahan memori di luar batas yang ditemukan melalui fuzzing. Ada sejumlah perubahan pada ekspansi $ @ dan $ * dalam berbagai konteks di mana pemisahan kata tidak dilakukan untuk menyesuaikan dengan interpretasi standar Posix, dan perubahan tambahan untuk menyelesaikan kasus sudut untuk kesesuaian Posix.
Fitur-fitur baru yang paling menonjol adalah beberapa variabel shell baru: BASH_ARGV0, EPOCHSECONDS, dan EPOCHREALTIME. Builtin `history 'dapat menghapus rentang entri histori dan memahami argumen negatif sebagai offset dari akhir daftar histori. Ada opsi untuk memungkinkan variabel lokal mewarisi nilai variabel dengan nama yang sama pada lingkup sebelumnya. Ada opsi shell baru yang, ketika diaktifkan, menyebabkan shell mencoba memperluas subscript array asosiatif hanya sekali (ini adalah masalah ketika mereka digunakan dalam ekspresi aritmatika). Opsi shell `globasciiranges 'sekarang diaktifkan secara default; itu dapat dinonaktifkan secara default pada waktu konfigurasi.
Ada beberapa perubahan yang tidak kompatibel antara bash-4.4 dan bash-5.0. Perubahan bagaimana variabel nameref dipecahkan berarti bahwa beberapa penggunaan nameref akan berperilaku berbeda, meskipun saya telah mencoba untuk meminimalkan masalah kompatibilitas. Secara default, shell hanya menetapkan BASH_ARGC dan BASH_ARGV saat startup jika mode debugging diperpanjang diaktifkan; itu adalah pengawasan yang ditetapkan tanpa syarat dan menyebabkan masalah kinerja ketika skrip disahkan banyak argumen.
Ia juga merujuk ke dua file ini, jika Anda menginginkan lebih:
- BERITA : lebih detail (juga dalam jawaban Kusalananda)
- PERUBAHAN : paling detail
CHANGES
file: git.savannah.gnu.org/cgit/bash.git/tree/…