Bol nový vydaný preklad programovacieho jazyka AWK od projektu GNU — Gawk 5.2.0. AWK bol vyvinutý v 70. rokoch minulého storočia a od polovice 80. rokov neprešiel významnými zmenami, ktoré určovali základný rámec jazyka, čo umožnilo zachovať jeho pôvodnú stabilitu a jednoduchosť počas posledných desaťročí. Napriek svojmu pokročilému veku sa AWK stále aktívne používa administrátormi na vykonávanie rutinných úloh súvisiacich s analýzou rôznych typov textových súborov a generovaním jednoduchých výsledkových štatistík.
Kľúčové zmeny:
- Bola pridaná experimentálna podpora pre správcu pamäte pma (persistent malloc), ktorá umožňuje uchovávať hodnoty premenných, polí a používateľských funkcií medzi rôznymi spusteniami awk.
- Podpora aritmetiky vysokej presnosti, implementovaná pomocou knižnice MPFR, bola vyňatá z oblasti zodpovednosti správcov GNU Awk a odovzdaná externému nadšenecovi. Uvádza sa, že implementácia módu MPFR v GNU Awk je považovaná za chybu. V prípade zmien v stave správy sa plánuje úplne odstrániť túto možnosť z GNU Awk.
- Aktualizované komponenty build infraštruktúry Libtool 2.4.7 a Bison 3.8.2.
- Bola zmenená logika porovnávania čísel, ktorá bola prispôsobená logike používané v jazyku C. Pre používateľov sa zmena týka hlavne porovnávania hodnôt Infinity a NaN s bežnými číslami.
- Bola poskytnutá možnosť používať hashovaciu funkciu FNV1-A v asociatívnych poliach, aktivovaná nastavením premennej prostredia AWK_HASH na hodnotu „fnv1a“.
- Bola odstránená podpora pre build s použitím CMake (kód podpory CMake sa ukázal byť nepotrebným a päť rokov sa neaktualizoval).
- Bola pridaná funkcia mkbool() na vytváranie boolean hodnôt, ktoré sú číslami, ale sú spracované ako dátový typ Boolean.
- V móde BWK bola z flexibilne zapnutej podporne výrazov pre určenie rozsahov s povolenou voľbou „-traditional“ zahrnutá podpora výrazov predtým zapnutých voľbou „-r“ („—re-interval“).
- V rozšírení rwarray boli navrhnuté nové funkcie writeall() a readall() na hromadné zapisovanie a čítanie všetkých premenných a polí.
- Bol pridaný skript gawkbug na zasielanie informácií o chybách.
- Zabezpečené okamžité ukončenie práce v prípade zistenia syntaktických chýb, čo rieši problémy s používaním nástrojov na fuzzing-testovanie.
- Podpora operačných systémov OS/2 a VAX/VMS bola ukončená.
Zdroj: opennet.ru
