diff options
Diffstat (limited to 'NEWS')
-rw-r--r-- | NEWS | 99 |
1 files changed, 99 insertions, 0 deletions
@@ -5,6 +5,105 @@ are permitted in any medium without royalty provided the copyright notice and this notice are preserved. +Changes from 4.1.x to 4.2.0 +--------------------------- + +1. If not in POSIX mode, changes to ENVIRON are reflected into + gawk's environment, affecting any programs run by system() + or for piped redirections. This can also affect built-in routines, such + as mktime(), which is typically influenced by the TZ environment variable. + +2. The series of numbers returned by rand() should now be "more + random" than previously. Gawk's rand() remains repeatable; you will + get the same series of numbers each time you call rand() repeatedly, + but this will be a different series than previously. + +3. The --pretty-print option no longer runs the program too. + +4. The igawk script and igawk.1 man page are no longer installed by + `make install'. They have been obsolete since gawk 4.0.0. + +5. Gawk now has a `intdiv()' function to perform integer division; this is + primarily useful for the -M option to avoid MPFR division when all + values involved are integers. + +6. Gawk can now be built with CMake. This is an alternative build + system for those who may want it; gawk is not going to switch off + use of the autotools anytime soon, if ever. + +7. Gawk now processes a maximum of two hexadecimal digits in \x + escape sequences inside strings. + +8. Setting PROCINFO["redirection", "NONFATAL"] to true makes I/O + errors for "redirection" not fatal, setting ERRNO. Setting + PROCINFO["NONFATAL"] makes all I/O nonfatal. + +9. MirBSD is no longer supported. + +10. Pretty printing now preserves comments and places them into the + pretty-printed file. + +11. `make install' now installs shell startup files + $sysconfdir/profile.d/gawk.{csh,sh} containing shell functions to + manipulate the AWKPATH and AWKLIBPATH environment variables. On a Fedora + system, these files belong in /etc/profile.d, but the appropriate location + may be different on other platforms. + +12. Gawk now supports retryable I/O via PROCINFO[input-file, "RETRY"]; see + the manual. + +13. The API minor version has been increased to 2; the get_file() + API provides access to open redirections. Also see the manual. + +14. Revisions in the POSIX standard remove the special case for POSIX + mode when FS = " " where newline was not a field separator. The code + and doc have been updated. + +15. Gawk now supports strongly typed regexp constants. Such constants + look like @/.../. You can assign them to variables, pass them to + functions, use them in ~, !~ and the case part of a switch statement. + More details are provided in the manual. + +16. The new typeof() function can be used to indicate if a variable or + array element is an array, regexp, string or number. The isarray() + function is deprecated in favor of typeof(). + +17. As promised when 4.1 was released, the old extension mechanism, + using the `extension' function, is now gone. + +18. Support for GNU/Linux on Alpha systems has been removed. + +19. Optimizations are now enabled by default. Use the new -s/--no-optimize + option(s) to disable them. Pretty printing and profiling automatically + disable optimizations so that the output program is the same as the + original input program. + +20. The extension API now provides a mechanism for generating nonfatal + error messages. + +20. Gawk now uses fwrite_unlocked if it's available. The yields a 7% - 18% + improvement in raw output speed (gawk '{ print }' on a large file). + +21. Pretty printing now uses the original text of constant numeric values for + pretty printing and profiling. + +22. Passing negative operands to any of the bitwise functions now + produces a fatal error. + +23. The C API has undergone changes that break binary compatibility with + the previous version. Thus the API version is now at 2.0. YOU WILL + NEED TO RECOMPILE YOUR EXTENSIONS to work with this version of gawk. + Source code compatibility remains intact, although you will get + compiler warnings if you do not revise your extensions. We strongly + recommend that you do so. Fortunately, the changes are fairly minor + and straightforward. + +24. Programs that toggle IGNORECASE a lot should now be noticeably faster. + +25. The mktime function now accepts an optional second argument. If this + argument is present and is non-zero or non-null, the time will be converted + from UTC instead of from the local timezone. + Changes from 4.1.3 to 4.1.4 --------------------------- |