După șapte ani de la ultima versiune și douăsprezece ani și jumătate de la publicarea ramurii 2.7, a fost lansată versiunea utilitarului GNU patch 2.8. Acest utilitar permite aplicarea patch-urilor pe fișiere, care includ liste de modificări generate de programul diff. Codul este scris în limbajul C și este distribuit sub licența GPLv3+.
În noua versiune:
- Problema anului 2038 a fost rezolvată — utilitarul acum procesează corect datele despre timpul fișierelor create după anul 2038, chiar și pe platformele cu un tip de time_t pe 32 de biți.
- Opțiunea „—follow-symlinks” se aplică acum nu doar fișierelor de intrare, ci și fișierelor generate.
- Conform cerințelor standardului POSIX.1-2024, utilizarea caracterului de sfârșit de linie în numele fișierelor este interzisă.
- Utilizarea octetelor nule (‘\0’) în șirurile cu directive diff este interzisă.
- Este permisă specificarea spațiilor și tabulațiilor înainte și după valorile cu numerele de lini.
- A fost efectuată o muncă de eliminare a comportamentului nedefinit sau incorect în situații anormale, de exemplu, în timpul procesării dimensiunilor foarte mari ale câmpurilor, erorilor de intrare/ieșire, lipsei de memorie, stărilor de concurență și trimiterii semnalelor în momente nepotrivite.
- Codul vechi „Plan B” destinat sistemelor cu pointere de 16 biți a fost eliminat.
- Cerințele pentru compilator au fost ridicate, care acum trebuie să suporte standardul C99 (anterior se solicita C89).
- A fost adăugat suport pentru versiunile noi de GCC, Autoconf și Gnulib.
Sursa: opennet.ro
