Gawk 5.0.1
Summary
New upstream major version of gawk has been released (4.2.1 -> 5.0.X). Among many changes, the version 5 introduced a namespaces, which may possible break some of the existing scripts.
Owner
- Name: Jakub Martisko
- Email: jamartis@redhat.com
Current status
- Targeted release: Fedora 31
- Last updated: 2019-06-26
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
The new version of gawk has been released. The new version fixes a number of bugs, some of which were quite significant. Other notable changes include:
- The regex routines have been replaced with those from GNULIB
- Comment handling in the pretty-printer has been reworked almost completely from scratch. As a result, comments in many corner cases that were previously lost are now included in the formatted output.
- Namespaces have been added.
- Gawk now uses the locale settings for ignoring case in single byte locales, instead of hardwiring in Latin-1.
The introduction of namespaces may break some scripts written for gawk 4.2.1 due to different variable names. (This is considered to be a bug by the upstream and patch is being prepared)
Benefit to Fedora
See above, the main benefit are several bug fixes.
Scope
- Proposal owners: Update the source archive of the gawk, drop no longer needed patches.
- Other developers: Some modifications to existing gawk scripts may be needed.
Especially those, using the inplace gawk extension, where some of the variables have been renamed.(This is considered to be a bug by the upstream and patch is being prepared)
- Release engineering: #Releng issue number (a check of an impact with Release Engineering is needed)
- Policies and guidelines: N/A
- Trademark approval: N/A (not needed for this Change)
Upgrade/compatibility impact
see above
How To Test
N/A
User Experience
Dependencies
dnf repoquery -q --releasever=rawhide --disablerepo='*' --qf='%{name}' --enablerepo=fedora-source --enablerepo=updates-source --enablerepo=updates-testing-source --archlist=src --whatrequires 'gawk'
Judy Macaulay2 acl apt autoconf213 avr-binutils avr-gcc clucene cone crack dictd eterm geomview git glibc gnome-libs gnome-menus gpgme gpm gscan2pdf gyachi japanese-bitmap-fonts kde-filesystem kdelibs3 kernel kernel-tools krb5 lapack libAfterImage libassuan libecpg libgcrypt libgpg-error libguestfs libksba libpaper libphidget libpq libsvm libtpms libvirt linuxdoc-tools lm_sensors lxcfs maildrop mingw-clucene nco netcdf nss ocaml ocaml-calendar ocaml-csv ocaml-curl ocaml-curses ocaml-expat ocaml-extlib ocaml-findlib ocaml-libvirt ocaml-pcre ocaml-ssl ocaml-xml-light paperkey pcb postgresql powermanga quilt rbldnsd rpm rss-glx samba selinux-policy stow surfraw swig systemd topgit tzdata virt-top xblast xdg-utils xfsdump xschem xscreensaver yara zsh
dnf repoquery -q --releasever=rawhide --disablerepo='*' --qf='%{name}' --enablerepo=fedora --enablerepo=updates --enablerepo=updates-testing --whatrequires 'gawk'
R-core akmods am-utils authselect-libs autoconf213 autofs backupninja calamares centerim ceph-selinux check-checkmk checksec cloud-utils cloud-utils-growpart condor-vm-gahp copr-backend coreos-installer ctdb dhcp-client dkms docbook-utils dracut-kiwi-oem-dump e2fsprogs-devel esh execstack flamegraph-stackcollapse flamegraph-stackcollapse-perf gawk-abort gawk-devel gawk-doc gawk-errno gawk-json gawk-lmdb gawk-nl_langinfo gawk-pgsql gawk-redis gawk-select gawk-xml gawkextlib geeqie git-secret glimmer groff gt5 gtkpod guilt hylafax+ initscripts krb5-libs latex2rtf lbdb lde libguestfs libsmi linuxconsoletools linuxdoc-tools lorax ltunify m17n-db neofetch netconsole-service netdump-server network-scripts nfs-utils ocaml opari2 pal pcp phpPgAdmin pkgdiff policycoreutils prettyping quilt rarian readonly-root rear redhat-lsb-core redis resource-agents rf rpm-build rpmdevtools rust-packaging screenie selinux-policy seqan seqan2-apps sofia-sip-devel spectre-meltdown-checker surfraw syslog-ng systemtap-testsuite testssl topgit translate-shell tuned tw twa txt2man unity-gtk-module-common virt-p2v-maker virt-v2v vzctl-core xfce4-dev-tools xschem ypserv zram
Contingency Plan
- Contingency mechanism: Reverting to gawk 4.2.1 if significant issues are discovered
- Contingency deadline: Beta freeze (?)
- Blocks release? No
- Blocks product? no
Documentation
- http://git.savannah.gnu.org/cgit/gawk.git/tree/NEWS?h=gawk-5.0-stable
- https://www.gnu.org/software/gawk/manual/
- https://www.gnu.org/software/gawk/manual/gawk.html#Namespaces