[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

new snapshot available: sed-4.5.48-58eb

From: Jim Meyering
Subject: new snapshot available: sed-4.5.48-58eb
Date: Wed, 12 Dec 2018 22:24:00 -0800

I want to release sed-4.6 in the next week or two, so here's
a snapshot of the latest. Please build+test on as many systems as
you can, and let us know how it goes.

Thanks to Assaf Gordon for doing the vast majority of the work this time!

sed snapshot:      1.3 MB

** Improvements

  sed now prints a clear error message when r/R/w/W (and s///w) commands
  are missing a filename. Previously, w/W commands would fail with confusing
  error message, while r/R would be a silent no-op.

  sed now uses fully-buffered output (instead of line-buffered) when
  writing to files. This should noticeably improve performance of "sed -i"
  and other write commands.
  Buffering can be disabled (as before) with "sed -u".

  sed in non-cygwin windows environments (e.g. mingw) now properly handles
  '\n' newlines in -b/--binary mode.

** Bug fixes

  sed no longer accesses invalid memory (heap overflow) when given invalid
  backreferences in 's' command [bug#32082, present at least since sed-4.0.6].

  sed no longer adds extraneous NUL when given s/$//n command.
  [related to bug#32271, present since sed-4.0.7]

  sed no longer accesses invalid memory (heap overflow) with s/$//n regexes.
  [bug#32271, present since sed-4.3].

** New Features

  New option, --debug: print the input sed script in canonical form
  and annotate program execution.

Changes in sed since v4.5:

Assaf Gordon (38):
      sed: fix heap buffer overflow from invalid references
      sed: do not flush output stream unless in unbuffered mode
      sed: fix extraneous NUL in s///n command
      sed: fix heap buffer overflow from multiline EOL regex optimization
      sed: replace ck_memdup with gnulib's xmemdup
      sed: replace ck_strdup with gnulib's xstrdup
      sed: replace MALLOC/ck_malloc with gnulib's XCALLOC
      sed: replace ck_realloc with gnulib's xrealloc/xnrealloc
      sed: replace myname with gnulib's progname
      maint: syntax-check: fix tab indentation
      maint: syntax-check: space-before-open-paren
      maint: syntax-check: prohibit-form-feed
      maint: syntax-check: add sc_gitignore_missing
      maint: syntax-check: add sc_prohibit_strncmp
      maint: syntax-check: add various test-related checks
      maint: syntax-check: fail-0 and fail-1 in shell script tests
      maint: syntax-check: prohibit-operator-at-eol
      sed: do not close stderr on exit
      sed: free allocated memory under lint, remove DEBUG_LEAKS
      sed: fix memory leak
      gnulib: update to latest (for regex memory leaks)
      maint: add address-sanitizer build target
      maint: add undefined-behavior build target
      sed: mark function as attribute(malloc)
      build: use system's native sed during build
      maint: replace street address with URL in license text
      maint: remove REG_PERL code
      sed: update authors
      sed: reject r/R/w/W commands without a filename
      sed: change internal storage for 'R' command
      sed: add --debug feature
      build: rename stdin local variable
      gnulib: update to latest (for dfa improvements)
      build: update autoconf version requirements
      maint: update .gitignore
      sed: fix -b/--binary mode under windows/mingw
      tests: add text/binary mode tests

Bernhard Voelker (1):
      doc: tiny fix

Bjarni Ingi Gislason (1):
      doc: sed.x: some formatting corrections

Clint Adams (1):
      doc: use @key{TAB} in texinfo

Jannick (1):
      sed: fix memory leakage under lint

Jim Meyering (6):
      maint: post-release administrivia
      doc: insert two missing words
      sed: avoid UMR in --debug code path
      tests: avoid unnecessary dependency on Data::Dump
      maint: fix a syntax-check nit
      build: update gnulib to latest

Changes in gnulib since v4.5:

* gnulib ad52c65...1a833ed (437):
  > omap: Don't dispose the old value when the function returns it.
  > array-omap, avltree-omap, rbtree-omap: Tweak style.
  > rbtree-omap: Add tests.
  > avltree-omap: Add tests.
  > array-omap: Add tests.
  > xomap: New module.
  > rbtree-omap: New module.
  > avltree-omap: New module.
  > array-omap: New module.
  > omap: New module.
  > hash-set, linkedhash-set: Reduce code duplication.
  > array-set: Optimize.
  > times: Fix tests.
  > array-set, linkedhash-set, hash-set: Fix tests.
  > Fix comments.
  > hash-set: Add tests.
  > linkedhash-set: Add tests.
  > array-set: Add tests.
  > xset: New module.
  > hash-set: New module.
  > linkedhash-set: New module.
  > array-set: New module.
  > set: New module.
  > bison: don't force the Yacc mode
  > autoupdate
  > autoupdate
  > autoupdate
  > gnupload: Document short options.
  > gnupload: Support option -h as alias of --help.
  > memrchr: port better to clang
  > docs: mention printf %m considerations
  > autoupdate
  > bitset: rename ebitset/expandable.* as tbitset/table.*
  > bitset: check the operations
  > bitset: properly use false/true instead of 0/1 for Booleans
  > bitset: rename BITSET_VARRAY as BITSET_VECTOR
  > strerror_r-posix: memmove, not memcpy
  > autoupdate
  > bitsetv: new module
  > bitset: add tests and doc
  > bitset: new module
  > localename: Fix gettext test failures on mingw.
  > no more sync of gettext source files
  > autoupdate
  > autoupdate
  > mktime: add libc-config dependency
  > autoupdate
  > longlong: fix comment typo
  > havelib: Remove the need to include asm-underscore.m4.
  > parse-datetime: simplify test for mktime failure
  > posixtm: simplify test for mktime failure
  > nstrftime: simplify test for mktime failure
  > gnulib-common.m4: port _Noreturn to C++
  > gnu-make: Fix for NetBSD 8 'make'.
  > maintainer-makefile: fix syntax-check rule for "same.h"
  > dfa: Simplify a building state
  > dfa: reorder tokens before execution
  > dfa: a state has a set of current positions.
  > dfa: simplify dfa optimization
  > dfa: position set sorts increasing order
  > dfa: remove unneeded code
  > autoupdate
  > havelib: fix nested ‘configure’ chatter
  > backupfile: tweak for better code
  > autoupdate
  > backupfile: new dir_fd args
  > localename: Simplify support for per-thread locales on Solaris 11.4.
  > Mention changed minimum requirements for Automake and Autoconf.
  > std-gnu11: Support Autoconf versions < 2.64.
  > Assume Autoconf >= 2.63.
  > Assume Automake >= 1.11.
  > localename: Fix typo in comment.
  > Fix failure of 'gnulib-tool --create-testdir' with all modules.
  > locale: Ease integration with GNU libintl.
  > localename: Fine-tune support for per-thread locales on Solaris 11.4.
  > localename: Fine-tune support for per-thread locales on Solaris 11.4.
  > Small update from gettext.
  > autoupdate
  > mountlist: Remove support for Cray with UNICOS 9.
  > fsusage, mountlist, getloadavg, getgroups: Remove support for Ultrix.
  > getloadavg: Remove support for ConvexOS.
  > getloadavg: Remove support for Sony NEWS.
  > fsusage, mountlist, getloadavg: Remove support for Dynix/ptx.
  > fsusage: Remove support for AIX 3.
  > fsusage, stat-size, getloadavg: Remove support for AIX PS/2.
  > getloadavg: Remove support for HP-UX on m68k.
  > fsusage, mountlist: Remove support for DolphinOS (an SVR3 variant).
  > getloadavg: Remove support for Alliant FX/2800.
  > getloadavg: Remove support for tek4300.
  > getloadavg: Remove support for Ardent.
  > mountlist: Remove support for SVR2.
  > autoupdate
  > assure: Fix comment.
  > libc-config: merge from glibc
  > regex: depend on libc-config
  > autoupdate
  > localename: Add support for per-thread locales on Solaris 11.4.
  > timevar: use gethrxtime to get wall clock time
  > wcsnrtombs: Work around Solaris 11.4 bug.
  > mbsnrtowcs: Work around Solaris 11.4 bug.
  > doc: Update for Solaris 11.4.
  > floor, ceil, trunc, truncf, truncl: Defeat GCC optimizations.
  > bootstrap: fix wget command for po files.
  > timevar: improve the output format
  > timevar: expect that getrusage is available
  > mountlist: Improve support for Solaris in 64-bit mode.
  > mountlist: Add support for Minix.
  > Make better use of Autoconf.
  > mountlist: Modernize platform lists.
  > getprogname: Add support for 32-bit programs on HP-UX.
  > getprogname: Work around program name truncation when possible.
  > fts: cleanup after FTS_NOATIME removal
  > fts: remove FTS_NOATIME
  > csharpcomp*, csharpexec*: Remove support for pnet.
  > autoupdate
  > renameatu: prefer renameat2 to syscall
  > bootstrap, gnulib-tool: use https instead of insecure rsync
  > Add ChangeLog entry for last commit.
  > bootstrap, gnulib-tool: correct the translations wget command
  > doc: the gnulib snapshots are not maintained
  > timevar: add to lib_SOURCES
  > dirent: Update documentation.
  > strpbrk: Make it possible to namespace the defined symbol.
  > strcspn: Make it possible to namespace the defined symbol.
  > raise: Make it possible to namespace the defined symbol.
  > memcmp: Make it possible to namespace the defined symbol.
  > explicit_bzero: Make it possible to namespace the defined symbol.
  > mkdir-p: Depend on 'mkdir'.
  > tempname: Depend on 'mkdir'.
  > timevar: rely on gnulib modules for time portability.
  > sh-filename: New module.
  > fcntl: Make it possible to namespace the defined symbol, part 2.
  > spawn-pipe tests: Avoid test failure on native Windows.
  > fcntl: Make it possible to namespace the defined symbol.
  > vasnprintf tests: Avoid test failure on HP-UX/hppa and IRIX.
  > vasnprintf tests: Avoid test failure on Cygwin.
  > mkostemp, mkostemps: Update documentation.
  > mkostemp, mkostemps: Fix compilation error in C++ mode on Mac OS X.
  > hmac-*: refactor to remove repetitive code
  > hmac-sha512: fix hash for keys > blocksize (128 bytes)
  > vasnprintf: Avoid warnings from GCC's -Wsign-compare.
  > grantpt: Remove unnecessary dependency.
  > timevar: Small tweaks.
  > timevar: Include documentation in gnulib manual.
  > timevar: import from Bison.
  > javacomp-script, javacomp: Add preliminary support for Java 12..17.
  > javacomp-script, javacomp: Add support for Java 11.
  > vasnprintf: Fix heap memory overrun bug.
  > autoupdate
  > maint: mktime.c now shared with glibc
  > mktime: fix _LIBC typo
  > dfa: optimization for state merge
  > dfa: trivial comment fix: s/is/if/
  > dfa: use more-informative function name
  > dfa: tweak allocation performance
  > dfa: prune states as we go
  > dfa: reorder enum for efficiency
  > dfa: optimize alternation in NFA
  > dfa: simplify initial state
  > file-has-acl: Fix test failure on Cygwin 2.9.
  > stat-time tests: Fix test failure on Cygwin.
  > doc: fix typo
  > doc: OS X 10.11 lacked ns time functions
  > gettime: nanotime never existed
  > doc: Update statement about target platforms.
  > posix_spawn tests: Fix link error on 64-bit Cygwin.
  > timespec: new function current_timespec
  > setlocale: Improve locale handling on macOS 10.12 or newer.
  > Update list of locale names with scripts on macOS.
  > gettext: Use newer macOS APIs when possible.
  > gettext: Use newer macOS APIs when possible.
  > localename: Revisit macOS specific code.
  > setlocale: Improve support for locales not supported by libc.
  > strstr, strcasestr: Add workaround against glibc-2.28 bug.
  > doc: Fix bottom of top-level page.
  > Add test case from a recent glibc bug.
  > Apply Eric Blake's improvements from 2011-02-25 to more tests.
  > Apply Jim Meyering's fix from 2015-01-11 to more tests.
  > xstrtol: actually copy the intprops.h line
  > xstrtol: fix missing-TYPE_SIGNED typo
  > timespec: fix resolution confusion
  > mktime: simplify in prep for glibc merge
  > intprops: minor clarification of code
  > Fix a comment.
  > posix_spawn_file_actions_addchdir: Add tests.
  > posix_spawn_file_actions_addchdir: New module.
  > Fix typo in comment in yesterday's commit.
  > stddef: Override max_align_t on NetBSD 8.0/x86.
  > fcntl: Fix F_DUPFD_CLOEXEC behaviour on Haiku.
  > count-trailing-zeros tests: Rely on limits-h module.
  > count-leading-zeros tests: Rely on limits-h module.
  > count-one-bits tests: Rely on limits-h module.
  > xstrtoll: Rely on limits-h module.
  > strtoll, strtoull: Rely on limits-h module.
  > intprops tests: Fix compilation error with pre-C99 compiler.
  > limits-h: Provide numerical limits macros.
  > fcntl: Don't access nonexistent optional argument.
  > doc: mention environ pitfall
  > gnulib-tool: Fix build order when $testsbase is a subdir of $sourcebase.
  > mktime: fix unlikely race+overflow bug
  > mktime, timegm: simplify glibc time64_t
  > mktime, timegm: simplify merge to glibc
  > autoupdate
  > autoupdate
  > intprops: avoid evaluation of some expressions
  > autoupdate
  > autoupdate
  > autoupdate
  > getcwd: Add cross-compilation guesses.
  > ; autoupdate
  > autoupdate
  > glob-h: Formalize side effects from other modules.
  > fnmatch-h: Formalize side effects from other modules.
  > limits-h: Formalize side effects from other modules.
  > getpass: Move declaration to <unistd.h>.
  > glob: Fix over-optimization due to attribute __nonnull__.
  > glob: Fix another compilation error when glob.h is not replaced.
  > fnmatch: Avoid conflicting macro definitions of 'fnmatch'.
  > Avoid -Wcast-function-type warnings from casts after GetProcAddress.
  > glob: Fix another compilation error when glob.h is not replaced.
  > glob: Fix compilation error when glob.h is not replaced.
  > scratch_buffer: Add tests.
  > scratch_buffer: Fix include file.
  > glob-h: Revert Paul Eggert's revert.
  > glob-h: always build glob.h
  > autoupdate
  > monetary: Simplify m4 code.
  > fnmatch-gnu: Revert part of last commit (unneeded).
  > fnmatch, fnmatch-gnu: Fix compilation error on Mac OS X.
  > autoupdate
  > setlocale: Trivial simplification.
  > Fix ChangeLog typo.
  > verify: port 'assume' to traditional tools
  > fnmatch: Fix compilation error in C++ namespace mode on Mac OS X.
  > autoupdate
  > autoupdate
  > glob-h: Add tests.
  > glob-h: New module.
  > Force generation of substitute .h file when C++ support is enabled.
  > fnmatch-h: Fix test compilation error on mingw (regression from today).
  > sys_resource: Relicense under LGPLv2+.
  > fnmatch-h: Add tests.
  > fnmatch-h: New module.
  > Enable more C++ tests.
  > getopt-posix, utime-h: Ensure the .h file gets regenerated when needed.
  > utime-h: Generate header file when module 'posixcheck' is in use.
  > monetary: Generate header file when module 'posixcheck' is in use.
  > iconv-h: Generate header file when module 'posixcheck' is in use.
  > Optimize the "checking whether ... is declared without a macro" checks.
  > iconv-h: Enable 'posixcheck' warnings.
  > Fix link error regarding 'rpl_environ' (regression from 2012-11-21).
  > New module 'posixcheck'.
  > autoupdate
  > dfa: fix memory leak
  > ieee754-h: new module
  > autoupdate
  > iswcntrl: Mention minor problem on macOS.
  > bootstrap, gnulib-tool: fix translations rsync
  > bootstrap, gnulib-tool: fix translations rsync
  > autoupdate
  > bootstrap: reinstate definition fo gnulib_mk.
  > doc: For module names, use texinfo markup @code{} or @samp{}.
  > doc: Avoid some overfull lines in the TeX output.
  > autoupdate
  > hard-locale: simplify by removing hard-locale.m4
  > gnulib-tool: limit line length for git send-email
  > ffs: Ensure declaration on mingw.
  > autoupdate
  > autoupdate
  > regex-tests: add dependency
  > autoupdate
  > renameatu: fix ChangeLog typo
  > mkancesdirs: Add extern "C" to header
  > ; autoupdate
  > regex: now in sync with glibc
  > renameatu: rename from renameat2
  > gnulib-tool: minor tweaks for --gnu-make
  > regex: work around conditional-dependencies glitch
  > autoupdate
  > autoupdate
  > wchar: fix bug when checking for ‘inline’
  > getloadavg: don't redefine WINDOWS32
  > bootstrap: s/--option val/--option=val/
  > manywarnings: omit -Wswitch-default
  > regex: revert most trimming
  > regex: trim module dependencies
  > regex: glibc does not use intprops.h
  > import mktemp
  > regex: port to recently proposed glibc regex merge
  > build-aux/config.sub
  > threadlib: Fix LIBMULTITHREAD on platforms where --as-needed is enabled.
  > Continue to use spaces for indentation, not tabs.
  > manywarnings: Don't enable -Wjump-misses-init warnings by default.
  > acl-internal.h: remove _GL_ATTRIBUTE_CONST on void function
  > parse-datetime: accommodate gcc-4.8.5
  > af_alg: Fail in continuable manner on Linux/powerpc64le.
  > af_alg: Fix state of stream after sendfile() succeeds.
  > canon-host: take GCC9's advice rather than ignoring warning
  > parse-datetime.y: avoid spurious GCC 9 warning
  > canon-host.c: avoid spurious GCC 9 warning
  > manywarnings: accommodate GCC 9.0-pre: remove -Wchkp and -Wabi
  > af_alg tests: Add another test.
  > maint: clarify comments about sticky EOF
  > af_alg: Comment and style improvements.
  > Fix order of most recent ChangeLog entries.
  > af_alg: disable kernel hash functions by default
  > af_alg: avoid hangs when reading from streams
  > af_alg: fix error handling when hash not returned
  > libc-config: merge from glibc
  > mbrtowc, wcwidth: Fix MT-safety bug (regression from 2018-06-23).
  > wchar-single: Fix test failure in wcwidth tests.
  > crypto: mention --without-linux-crypto in --with-openssl --help
  > wchar-single: a new module to enable optimizations in wchar replacements
  > libc-config: Fix conflict with FreeBSD include files.
  > random_r: do not crash if state is unaligned
  > random_r: omit unnecessary include
  > random, random_r: merge from glibc
  > README-release: also run any check-very-expensive tests
  > typo
  > pthread_rwlock_rdlock: Add comments regarding glibc behaviour.
  > crypto: use byteswap
  > fix support for legacy --texi2html
  > gettext po infrastructure: Update from current gettext git.
  > getloadavg: Return 0 on Windows without Cygwin.
  > getloadavg: Allow building on Windows without Cygwin
  > Port crypto/af_alg to GCC 4.8.4
  > autoupdate
  > bootstrap: document source fetching in --help
  > bootstrap: allow non-submodule control of gnulib
  > autoupdate
  > autoupdate
  > crypto: omit stream ops Emacs doesn’t need
  > fts: avoid a memory leak edge case
  > wcwidth tests: Fix link error.
  > autoupdate
  > regex: Fix "error: possibly undefined macro: gl_GLIBC21".
  > localcharset: Optimize.
  > localcharset: Map the locale encodings found in newer OSes.
  > localcharset: Move mapping tables into the code.
  > localcharset: Add a manual test.
  > localcharset: Remove support for obsolete platforms.
  > gnupload: adjust comment
  > autoupdate
  > gnupload: Fix "gpg-agent is not available in this session" error.
  > crypto/af_alg: fix --help
  > autoupdate
  > nl_langinfo: Fix compilation error on Android.
  > truncate: Fix compilation error on Android.
  > pthread: Fix compilation error on Android.
  > posix_spawn: Fix compilation error on Android.
  > tsearch: Move from K&R C to ANSI C.
  > tsearch: Fix compilation error on Android.
  > imaxdiv: Fix compilation error on Android.
  > Support selective inclusion mechanism of recent header files.
  > Avoid compilation error due to 'mmap' on Android.
  > Add cross-compilation guesses for Linux systems without glibc.
  > getpagesize: Fix compilation error on Android.
  > tcgetsid: Fix compilation error on Android.
  > getpass: Fix configure test for Android.
  > ffs: Fix compilation error on Android.
  > mkfifo: Fix compilation error on Android.
  > c-strtod: Fix configure test for Android.
  > random: Fix compilation error on Android.
  > grantpt: Fix compilation error on Android.
  > stdioext: Fix compilation errors with newer Android headers.
  > doc: Add info about Android versions 2.0 to 8.1.
  > autoupdate
  > fseeko: On mingw, don't use the hidden function _fseeki64.
  > glob: Choose 'dirent_type' in a way that works better on mingw.
  > execute, spawn-pipe: Avoid warning about redefining 'close'.
  > nanosleep: Avoid test failure on mingw when it has nanosleep.
  > autoupdate
  > lock, cond, thread, tls: Use a different symbol as libpthread witness.
  > cond tests: Fix compilation error on Solaris.
  > doc: Add partial info about Android 4.3.
  > doc: More tweaks for Android 9.0.
  > doc: Add info about Android 9.0.
  > pthread: document Android limits
  > af_alg: fix my typo in afalg_buffer
  > af_alg: recover better from crypto failures
  > af_alg: distiguish I/O errors better
  > af_alg: avoid gotos
  > af_alg: don’t leak file descriptors into children
  > af_alg: coalesce socket creation
  > af_alg: fix file descriptor leak
  > af_alg: Pacify --enable-gcc-warnings on GCC 8
  > af_alg: Pacify --enable-gcc-warnings
  > autoupdate
  > af_alg: Add ability to use Linux kernel crypto API on data in memory.
  > af_alg: Avoid warnings.
  > crypto/{md5,sha1,sha256,sha512} tests: Add benchmarks.
  > af_alg: Fix a resource leak.
  > af_alg: Fix bug with streams that are not at position 0.
  > crypto/{md5,sha1,sha256,sha512} tests: Enhance test.
  > af_alg: Add configure option to enable/disable use of Linux crypto API.
  > Followup to 'af_alg: New module.'.
  > crypto/{md5,sha1,sha256,sha512}: simplify
  > af_alg: Improve comments.
  > af_alg: Improve comments.
  > af_alg: New module.
  > Fix order of most recent ChangeLog entries.
  > crypto tests: pacify GCC
  > af_alg: minor style improvements
  > af_alg: Fix bug on empty files.
  > sys-limits.h: new file for crypto and safe I/O
  > af_alg: Improve function signature.
  > crypto/{md5,sha1,sha256,sha512}: Fix compilation error (S_TYPEISTMO).
  > crypto/{md5,sha1,sha256,sha512}: Fix module description.
  > af_alg: Add documentation.
  > sha512: Add tests.
  > sha256: Add tests.
  > sha1 tests: Add test for sha1_stream.
  > md5 tests: Add test for md5_stream.
  > autoupdate
  > md5sum: use kernel crypto API
  > sha512sum: use kernel crypto API
  > sha256sum: use kernel crypto API
  > sha1sum: use AF_ALG when available
  > all: Replace more http URLs by https URLs.
  > maint: port more modules to GCC 8
  > Simplify code. Drop support for Borland C++ on Windows.
  > autoupdate
  > localename: Fix test failures on mingw.
  > autoupdate
  > bootstrap: Avoid gnulib operations if not needed
  > manywarnings: port to GCC 8.0
  > sys_socket: Make SO_REUSEPORT available across platforms.
  > autoupdate
  > localcharset: short-circuit the search for an alias on a Mac
  > autoupdate
  > fts: add comment
  > fts: fix bug in find across filesystems
  > Fix last ChangeLog entry.
  > unicase/u*-context: Fix link errors with libunistring <= 0.9.9.
  > execute: Update comment.
  > fts: treat CIFS like NFS
  > c-stack: Fix possible build failure on some platforms.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]