| 1 | 2014-09-06  Jim Meyering  <meyering@fb.com>
 | 
|---|
| 2 | 
 | 
|---|
| 3 |         maint: remove all trailing white space
 | 
|---|
| 4 |         First, run this command:
 | 
|---|
| 5 |           git grep -l '  $'|xargs perl -pi -e 's/[ \t]+$//'
 | 
|---|
| 6 |         Then some minor fix-up to make the two newly-failing tests
 | 
|---|
| 7 |         pass once again:
 | 
|---|
| 8 |         * testsuite/mac-mf.sed: Append this, s/ $//,
 | 
|---|
| 9 |         to eliminate trailing spaces in the actual output.
 | 
|---|
| 10 |         * testsuite/y-newline.good: Manually remove a trailing
 | 
|---|
| 11 |         space between two concatenated prompts.
 | 
|---|
| 12 | 
 | 
|---|
| 13 | 2014-09-06  Jim Meyering  <meyering@fb.com>
 | 
|---|
| 14 | 
 | 
|---|
| 15 |         fixup: add the properly-named new test files
 | 
|---|
| 16 |         * testsuite/Makefile.am (EXTRA_DIST): Add y-zero.*,
 | 
|---|
| 17 |         not y-NUL.* here.
 | 
|---|
| 18 | 
 | 
|---|
| 19 |         maint: correct failing "version" test
 | 
|---|
| 20 |         * configure.ac (COPYRIGHT_YEAR): Update to 2014, so
 | 
|---|
| 21 |         the "version" test passes once again.
 | 
|---|
| 22 |         * doc/sed.1: Also commit this auto-generated-yet-VC'd file.
 | 
|---|
| 23 | 
 | 
|---|
| 24 | 2014-09-04  Jim Meyering  <meyering@fb.com>
 | 
|---|
| 25 | 
 | 
|---|
| 26 |         fix "y" to work with NUL in the RHS
 | 
|---|
| 27 |         * sed/execute.c (do_list) [case 'y']: Handle NUL bytes
 | 
|---|
| 28 |         in the RHS of a y/LHS/RHS/ transliteration.
 | 
|---|
| 29 |         * testsuite/y-zero.good: New test-related files.
 | 
|---|
| 30 |         * testsuite/y-zero.inp:
 | 
|---|
| 31 |         * testsuite/y-zero.sed:
 | 
|---|
| 32 |         * testsuite/Makefile.am (SEDTESTS): Add y-zero here.
 | 
|---|
| 33 |         * testsuite/Makefile.tests: And here.
 | 
|---|
| 34 |         * NEWS (Bug fixes): Describe it.
 | 
|---|
| 35 |         The bug was reported by table@inventati.org,
 | 
|---|
| 36 |         with the execute.c change mostly by Paolo Bonzini.
 | 
|---|
| 37 | 
 | 
|---|
| 38 | 2014-07-24  Jose E. Marchesi  <jemarch@gnu.org>
 | 
|---|
| 39 | 
 | 
|---|
| 40 |         * gnulib: Update.
 | 
|---|
| 41 | 
 | 
|---|
| 42 | 2014-03-26  Jose E. Marchesi  <jemarch@gnu.org>
 | 
|---|
| 43 | 
 | 
|---|
| 44 |         * doc/sed.texi (Regular Expressions): avoid a potential
 | 
|---|
| 45 |         misunderstanding in the description of the \| operator.
 | 
|---|
| 46 | 
 | 
|---|
| 47 | 2013-10-16  David A. Wheeler <dwheeler@dwheeler.com>
 | 
|---|
| 48 | 
 | 
|---|
| 49 |         * doc/sed-in.texi: Document "-E" option to use EREs.  GNU sed already
 | 
|---|
| 50 |           supported "-E" as an undocumented synonym for "-r", but "-E" is now
 | 
|---|
| 51 |           in POSIX.  See: http://austingroupbugs.net/view.php?id=528.
 | 
|---|
| 52 |         * doc/sed.1: Likewise.
 | 
|---|
| 53 |         * doc/sed.texi: Likewise.
 | 
|---|
| 54 |         * doc/sed.x: Likewise.
 | 
|---|
| 55 |         * sed/sed.c: Likewise.
 | 
|---|
| 56 | 
 | 
|---|
| 57 | 2013-10-06  Jose E. Marchesi  <jemarch@gnu.org>
 | 
|---|
| 58 | 
 | 
|---|
| 59 |         * basicdefs.h (PATH_MAX): Defined to some constant in case it is
 | 
|---|
| 60 |         not defined by system headers.
 | 
|---|
| 61 |         * sed/utils.c: Do not include pathmax.h anymore.
 | 
|---|
| 62 |         * bootstrap.conf (gnulib_modules): Do not use the gnulib module
 | 
|---|
| 63 |         pathmax.
 | 
|---|
| 64 | 
 | 
|---|
| 65 | 2013-09-30  Jose E. Marchesi  <jemarch@gnu.org>
 | 
|---|
| 66 | 
 | 
|---|
| 67 |         * doc/sed.texi (Regular Expressions): Typo: implicity numbered ->
 | 
|---|
| 68 |         implicitly numbered.
 | 
|---|
| 69 |         Reported by Arthur Budco.
 | 
|---|
| 70 | 
 | 
|---|
| 71 | 2013-07-12  Jose E. Marchesi  <jemarch@gnu.org>
 | 
|---|
| 72 | 
 | 
|---|
| 73 |         * doc/sed-in.texi (Extended regexps): Add an example on using | in
 | 
|---|
| 74 |         extended regular expressions.  Suggested by Nils Barth.
 | 
|---|
| 75 | 
 | 
|---|
| 76 | 2013-02-02  Jose E. Marchesi  <jemarch@gnu.org>
 | 
|---|
| 77 | 
 | 
|---|
| 78 |         * gnulib: Update.
 | 
|---|
| 79 |         * configure.ac (COPYRIGHT_YEAR): Updated to 2013.
 | 
|---|
| 80 | 
 | 
|---|
| 81 | 2012-12-29  Stefano Lattarini  <stefano.lattarini@gnu.org>  (tiny change)
 | 
|---|
| 82 | 
 | 
|---|
| 83 |         testsuite: make test logs more verbose
 | 
|---|
| 84 |         * testsuite/runtest: Adjust and simplify.
 | 
|---|
| 85 | 
 | 
|---|
| 86 | 2012-12-29  Stefano Lattarini  <stefano.lattarini@gnu.org>  (tiny change)
 | 
|---|
| 87 | 
 | 
|---|
| 88 |         maint: enable Automake parallel testsuite harness
 | 
|---|
| 89 |         It is better than the older test driver.  It is also the
 | 
|---|
| 90 |         default now, starting from Automake 1.13; so having it
 | 
|---|
| 91 |         enabled unconditionally will allow GNU sed to be seamlessly
 | 
|---|
| 92 |         bootstrapped by Automake 1.13.
 | 
|---|
| 93 |         * configure.ac (AM_INIT_AUTOMAKE): Add 'parallel-tests' option.
 | 
|---|
| 94 |         Also require Automake 1.11.1, since that is the minimal version
 | 
|---|
| 95 |         to have a sane 'parallel-tests' support.
 | 
|---|
| 96 |         (AC_PREREQ): Bump requirement to 2.62, since that is the
 | 
|---|
| 97 |         minimal version required by Automake 1.11.1.
 | 
|---|
| 98 |         * testsuite/Makefile.am (TESTS_ENVIRONMENT): Remove the
 | 
|---|
| 99 |         invocation for the test runner "$(srcdir)/runtest"; it's
 | 
|---|
| 100 |         correct place is ...
 | 
|---|
| 101 |         (LOG_COMPILER): ... here.
 | 
|---|
| 102 | 
 | 
|---|
| 103 | 2012-12-29  Stefano Lattarini  <stefano.lattarini@gnu.org>  (tiny change)
 | 
|---|
| 104 | 
 | 
|---|
| 105 |         build: avoid bootstrap failure
 | 
|---|
| 106 |         * bootstrap.conf (gnulib_modules): Add 'threadlib'.
 | 
|---|
| 107 | 
 | 
|---|
| 108 | 2012-12-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 109 | 
 | 
|---|
| 110 |         * configure.ac: Bump version number.  Replace COPYRIGHT_YEAR.
 | 
|---|
| 111 |         * Makefile.am (dist-hook): Revert 2010-08-10 change.
 | 
|---|
| 112 | 
 | 
|---|
| 113 | 2012-12-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 114 | 
 | 
|---|
| 115 |         * autoboot: Rename to bootstrap.
 | 
|---|
| 116 |         * autoboot.conf: Rename to bootstrap.conf.
 | 
|---|
| 117 |         * README.boot: Remove.
 | 
|---|
| 118 |         * Makefile.am: Remove README.boot, add bootstrap and bootstrap.conf.
 | 
|---|
| 119 | 
 | 
|---|
| 120 | 2012-12-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 121 | 
 | 
|---|
| 122 |         * gnulib: Update.
 | 
|---|
| 123 |         * testsuite/version.gin: Regenerate.
 | 
|---|
| 124 | 
 | 
|---|
| 125 | 2012-12-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 126 | 
 | 
|---|
| 127 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 128 |         * doc/sed.1: Regenerate.
 | 
|---|
| 129 |         * po/sed.pot: Regenerate.
 | 
|---|
| 130 | 
 | 
|---|
| 131 | 2012-07-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 132 | 
 | 
|---|
| 133 |         * doc/sed-in.texi: Document difference between "e" and "r"
 | 
|---|
| 134 |         commands.
 | 
|---|
| 135 | 
 | 
|---|
| 136 | 2012-04-29  Jim Hill  <gjthill@gmail.com>
 | 
|---|
| 137 | 
 | 
|---|
| 138 |         * Makefile.am (noinst_DATA, dist-hook): build failed after git
 | 
|---|
| 139 |         clean -dfx finish bootstrap.sh removal.
 | 
|---|
| 140 | 
 | 
|---|
| 141 | 2012-04-13  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 142 | 
 | 
|---|
| 143 |         * sed/compile.c (convert_number): Remove default_char argument,
 | 
|---|
| 144 |         expect buf to point to it.  Remove maxdigits argument and compute
 | 
|---|
| 145 |         it on the fly.
 | 
|---|
| 146 |         (normalize_text): Unify calls to convert_number under the convert
 | 
|---|
| 147 |         label.  For TEXT_REPLACEMENT add a backslash to the output if
 | 
|---|
| 148 |         convert_number returns ch == '&'.
 | 
|---|
| 149 | 
 | 
|---|
| 150 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 151 | 
 | 
|---|
| 152 |         * testsuite/version.gin: Regenerate.
 | 
|---|
| 153 | 
 | 
|---|
| 154 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 155 | 
 | 
|---|
| 156 |         * basicdefs.h (P_): Remove.
 | 
|---|
| 157 |         * sed/compile.c: Adjust.
 | 
|---|
| 158 |         * sed/execute.c: Likewise.
 | 
|---|
| 159 |         * sed/fmt.c: Likewise.
 | 
|---|
| 160 |         * sed/sed.c: Likewise.
 | 
|---|
| 161 |         * sed/sed.h: Likewise.
 | 
|---|
| 162 |         * sed/utils.c: Likewise.
 | 
|---|
| 163 |         * sed/utils.h: Likewise.
 | 
|---|
| 164 | 
 | 
|---|
| 165 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 166 | 
 | 
|---|
| 167 |         * basicdefs.h (FREE): Remove.
 | 
|---|
| 168 |         * sed/compile.c: Adjust.
 | 
|---|
| 169 |         * sed/execute.c: Adjust.
 | 
|---|
| 170 |         * sed/regexp.c: Adjust.
 | 
|---|
| 171 |         * sed/utils.c: Adjust, remove ck_free.
 | 
|---|
| 172 |         * sed/utils.h: Adjust, remove ck_free.
 | 
|---|
| 173 | 
 | 
|---|
| 174 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 175 | 
 | 
|---|
| 176 |         * basicdefs.h (CAST, VCAST, VOID, MEMCPY, MEMMOVE): Rip out.
 | 
|---|
| 177 |         * sed/compile.c: Adjust.
 | 
|---|
| 178 |         * sed/execute.c: Adjust.
 | 
|---|
| 179 |         * sed/regexp.c: Adjust.
 | 
|---|
| 180 |         * sed/utils.c: Adjust.
 | 
|---|
| 181 |         * sed/utils.h: Adjust.
 | 
|---|
| 182 | 
 | 
|---|
| 183 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 184 | 
 | 
|---|
| 185 |         * sed/execute.c: Unconditionally compile for MBCS.
 | 
|---|
| 186 |         * sed/mbcs.c: Unconditionally compile for MBCS.
 | 
|---|
| 187 |         * sed/sed.h: Unconditionally compile for MBCS.
 | 
|---|
| 188 | 
 | 
|---|
| 189 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 190 | 
 | 
|---|
| 191 |         * basicdefs.h: Enjoy gnulib's headers.
 | 
|---|
| 192 |         * sed/compile.c: Likewise.
 | 
|---|
| 193 |         * sed/execute.c: Likewise.
 | 
|---|
| 194 |         * sed/regexp.c: Likewise.
 | 
|---|
| 195 |         * sed/sed.c: Likewise.
 | 
|---|
| 196 |         * sed/sed.h: Likewise.
 | 
|---|
| 197 |         * sed/utils.c: Likewise.
 | 
|---|
| 198 | 
 | 
|---|
| 199 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 200 | 
 | 
|---|
| 201 |         * bootstrap.sh.in: Remove.
 | 
|---|
| 202 |         * bootstrap.sh: Remove.
 | 
|---|
| 203 |         * configure.ac: Do not create bootstrap.sh.
 | 
|---|
| 204 |         * basicdefs.h: Remove guards.
 | 
|---|
| 205 |         * sed/execute.c [BOOTSTRAP]: Remove guards.
 | 
|---|
| 206 |         * sed/sed.c [BOOTSTRAP]: Remove guards.
 | 
|---|
| 207 |         * sed/sed.h [BOOTSTRAP]: Remove guards.
 | 
|---|
| 208 | 
 | 
|---|
| 209 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 210 | 
 | 
|---|
| 211 |         * gnulib: Update.
 | 
|---|
| 212 | 
 | 
|---|
| 213 | 2012-03-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 214 | 
 | 
|---|
| 215 |         * doc/sed.x: Document address behavior across input files.
 | 
|---|
| 216 |         * doc/sed.1: Regenerate.
 | 
|---|
| 217 | 
 | 
|---|
| 218 | 2012-02-13  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 219 | 
 | 
|---|
| 220 |         * configure.ac: Test whether fopen("foo", "rt") works.
 | 
|---|
| 221 |         * sed/compile.c: Do not open scripts with "rt" mode if it doesn't.
 | 
|---|
| 222 |         * sed/sed.c: Never open input files with "rt" mode.
 | 
|---|
| 223 | 
 | 
|---|
| 224 | 2012-02-05  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 225 |             Jim Hill  <gjthill@gmail.com>
 | 
|---|
| 226 | 
 | 
|---|
| 227 |         * autoboot.conf: Change getline to getdelim.
 | 
|---|
| 228 |         * doc/sed-in.texi: Document -z/--null-data.
 | 
|---|
| 229 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 230 |         * doc/sed.1: Regenerate.
 | 
|---|
| 231 |         * sed/execute.c: Change '\n' to buffer_delimiter.
 | 
|---|
| 232 |         * sed/sed.c: Add support for -z/--null-data.
 | 
|---|
| 233 |         * sed/sed.h: Add buffer_delimiter.
 | 
|---|
| 234 |         * sed/utils.c: Change ck_getline to ck_getdelim.
 | 
|---|
| 235 |         * sed/utils.h: Change ck_getline to ck_getdelim.
 | 
|---|
| 236 |         * NEWS: Document new option.
 | 
|---|
| 237 | 
 | 
|---|
| 238 | 2011-11-23  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 239 | 
 | 
|---|
| 240 |         * doc/sed-in.texi: Document how multiline mode affects matching
 | 
|---|
| 241 |         newlines against period.  Reported by Dmitry Bolshakov.
 | 
|---|
| 242 | 
 | 
|---|
| 243 | 2011-08-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 244 | 
 | 
|---|
| 245 |         * sed/sed.c (usage): Fix documentation for -i.  Reported by
 | 
|---|
| 246 |         Dennis Bartlett.
 | 
|---|
| 247 | 
 | 
|---|
| 248 | 2011-07-11  Jim Meyering  <meyering@redhat.com>
 | 
|---|
| 249 | 
 | 
|---|
| 250 |         avoid silent data loss when an input line is 2^31 bytes or longer
 | 
|---|
| 251 |         If one line in a file has length (including newline) of 2^31, then
 | 
|---|
| 252 |         applying sed -i to that file truncates it to size 0.  I first
 | 
|---|
| 253 |         noticed it like this: Create a file with line of length 2^31-1
 | 
|---|
| 254 |           $ perl -le 'print "v"x(2**31-1)' > k
 | 
|---|
| 255 |         Then prepend a byte to that line:
 | 
|---|
| 256 |           $ sed -i 's/^/v/' k
 | 
|---|
| 257 |         Surprise!  The file is empty.
 | 
|---|
| 258 |         * sed/utils.c (ck_getline): Declare "result" to be of type ssize_t,
 | 
|---|
| 259 |         rather than int, to match the return type of getline.
 | 
|---|
| 260 | 
 | 
|---|
| 261 | 2011-07-14  Padraig Brady  <p@draigbrady.com>
 | 
|---|
| 262 | 
 | 
|---|
| 263 |         * execute.c (open_next_file): Only reopen stdin on Windows/DOS.
 | 
|---|
| 264 | 
 | 
|---|
| 265 | 2011-05-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 266 | 
 | 
|---|
| 267 |         * doc/sed-in.texi: Explain behavior of \l and \u at the end
 | 
|---|
| 268 |         of the replacement text.
 | 
|---|
| 269 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 270 |         * sed/execute.c (append_replacement, do_subst): Further
 | 
|---|
| 271 |         simplification.
 | 
|---|
| 272 | 
 | 
|---|
| 273 | 2011-05-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 274 | 
 | 
|---|
| 275 |         * doc/sed-in.texi: Fix incorrect comment in the "Increment a
 | 
|---|
| 276 |         number" example.  Reported by Wu Liang and Micah Cowan.
 | 
|---|
| 277 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 278 | 
 | 
|---|
| 279 | 2011-03-11  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 280 | 
 | 
|---|
| 281 |         * sed/compile.c (normalize_text): Clang analyzer cleanup.
 | 
|---|
| 282 |         * sed/execute.c (append_replacement, do_subst): Same.
 | 
|---|
| 283 |         * sed/utils.c (ck_getline): Same.
 | 
|---|
| 284 | 
 | 
|---|
| 285 | 2010-11-13  Jari Aalto  <jari.aalto@cante.net>
 | 
|---|
| 286 | 
 | 
|---|
| 287 |         * doc/sed.x: Order commands alphabetically.
 | 
|---|
| 288 |         * doc/sed.1: Regenerate.
 | 
|---|
| 289 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 290 | 
 | 
|---|
| 291 | 2010-11-10  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 292 | 
 | 
|---|
| 293 |         * doc/sed-in.texi: Fix double negation in comment, escape
 | 
|---|
| 294 |         file names.
 | 
|---|
| 295 | 
 | 
|---|
| 296 | 2010-11-03  Eric Blake  <eblake@redhat.com>
 | 
|---|
| 297 | 
 | 
|---|
| 298 |         * basicdefs.h (ISDIGIT): Avoid compiler warning on cygwin.
 | 
|---|
| 299 |         * sed/compile.c (normalize_text): Avoid undefined behavior.
 | 
|---|
| 300 | 
 | 
|---|
| 301 |         * sed/sed.c (includes): Supply missing header.
 | 
|---|
| 302 | 
 | 
|---|
| 303 | 2010-11-01  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 304 | 
 | 
|---|
| 305 |         * autoboot.conf: Replace gettext with gettext-h.  Suggested by
 | 
|---|
| 306 |         Gerald Pfeifer and Eric Blake.
 | 
|---|
| 307 |         * configure.ac: Downgrade minimum requested version of gettext
 | 
|---|
| 308 |         to 0.17.
 | 
|---|
| 309 | 
 | 
|---|
| 310 | 2010-10-31  Gerald Pfeifer  <gerald@pfeifer.com>
 | 
|---|
| 311 | 
 | 
|---|
| 312 |         * doc/sed-in.texi (Extended regexps): Add '|' to the list of
 | 
|---|
| 313 |         differences.  Note that "\|" is a GNU extension to begin with.
 | 
|---|
| 314 |         * doc/sed.texi: Rebuild.
 | 
|---|
| 315 | 
 | 
|---|
| 316 | 2010-10-20  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 317 | 
 | 
|---|
| 318 |         * autoboot.conf: Add fwriting.
 | 
|---|
| 319 |         * sed/utils.c: Use it.
 | 
|---|
| 320 | 
 | 
|---|
| 321 | 2010-09-20  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 322 | 
 | 
|---|
| 323 |         * doc/configure.ac: Mention bug-sed@gnu.org.
 | 
|---|
| 324 |         * doc/sed.x: Mention bug-sed@gnu.org.
 | 
|---|
| 325 |         * doc/sed-in.texi: Mention bug-sed@gnu.org.
 | 
|---|
| 326 | 
 | 
|---|
| 327 | 2010-08-30  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 328 | 
 | 
|---|
| 329 |         * Makefile.am (dist-hook): Remove COPYRIGHT_YEAR check.
 | 
|---|
| 330 |         * autoboot.conf (gnulib_modules): Add version-etc-fsf.
 | 
|---|
| 331 |         * configure.ac (COPYRIGHT_YEAR): Remove.  Change package name to
 | 
|---|
| 332 |         "GNU sed".
 | 
|---|
| 333 |         * doc/sed.1: Regenerate.
 | 
|---|
| 334 |         * sed/sed.c (AUTHORS): New.
 | 
|---|
| 335 |         (main): Use version_etc.
 | 
|---|
| 336 | 
 | 
|---|
| 337 | 2010-07-18  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 338 | 
 | 
|---|
| 339 |         * sed.c (write_mode): New.
 | 
|---|
| 340 |         (main): Initialize it to "wb" if --binary is passed.
 | 
|---|
| 341 |         * sed.h (write_mode): New.
 | 
|---|
| 342 |         * compile.c (mark_subst_opts, compile_program): Use it instead
 | 
|---|
| 343 |         of "w".
 | 
|---|
| 344 |         * execute.c (open_next_file): Pass write_mode to ck_mkstemp.
 | 
|---|
| 345 |         * utils.c (ck_mkstemp): Accept mode, pass it to fdopen.  Constify.
 | 
|---|
| 346 |         * utils.h (ck_mkstemp): Adjust prototype.
 | 
|---|
| 347 | 
 | 
|---|
| 348 | 2010-08-17  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 349 | 
 | 
|---|
| 350 |         Fix imprecision in the documentation of `D'.
 | 
|---|
| 351 |         * doc/sed-in.texi (D command): Fix documentation of behavior for
 | 
|---|
| 352 |         pattern space ending with \n and with no other newline.
 | 
|---|
| 353 |         Reported by Randall Cotton.
 | 
|---|
| 354 |         * doc/sed.x (D command): Fix documentation of behavior for
 | 
|---|
| 355 |         pattern space ending with \n and with no other newline.
 | 
|---|
| 356 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 357 |         * doc/sed.1: Regenerate.
 | 
|---|
| 358 | 
 | 
|---|
| 359 | 2010-07-19  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 | 
|---|
| 360 | 
 | 
|---|
| 361 |         Let --posix turn off nonportable scripts ending in backslash.
 | 
|---|
| 362 |         * sed/compile.c (errors, INCOMPLETE_CMD): New error string.
 | 
|---|
| 363 |         (compile_program): In strict posix mode, complain about incomplete
 | 
|---|
| 364 |         command.
 | 
|---|
| 365 |         * NEWS: Update.
 | 
|---|
| 366 |         Report by Bruno Haible.
 | 
|---|
| 367 | 
 | 
|---|
| 368 | 2010-07-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 369 | 
 | 
|---|
| 370 |         * autoboot.conf (gnulib_modules): Replace mkstemp with mkostemp.
 | 
|---|
| 371 |         * bootstrap.sh.in: Compile mkostemp.c instead of mkstemp.c.
 | 
|---|
| 372 |         * gnulib: Update.
 | 
|---|
| 373 |         * NEWS: Mention change.
 | 
|---|
| 374 |         * sed/utils.c (ck_mkstemp): Use mkostemp to work around Cygwin
 | 
|---|
| 375 |         oddity.  Reported by Stepan Kasal.
 | 
|---|
| 376 | 
 | 
|---|
| 377 | 2010-05-03  Timothy Baker  <timothypaulbaker@gmail.com> (tiny change)
 | 
|---|
| 378 | 
 | 
|---|
| 379 |         * doc/sed.texi (Regular expressions): Fix typo.
 | 
|---|
| 380 | 
 | 
|---|
| 381 | 2009-11-15  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 | 
|---|
| 382 | 
 | 
|---|
| 383 |         * doc/sed.texi (Extended Commands): Document F command.
 | 
|---|
| 384 |         * doc/sed-in.texi: Regenerate.
 | 
|---|
| 385 |         * sed/compile.c (compile_program): Accept 'F' if not --posix.
 | 
|---|
| 386 |         * sed/execute.c (open_next_file): Always initialize in_file_name.
 | 
|---|
| 387 |         (execute_program): Handle 'F'.
 | 
|---|
| 388 |         * configure.ac: Bump SED_FEATURE_VERSION.
 | 
|---|
| 389 |         * NEWS: Update.
 | 
|---|
| 390 | 
 | 
|---|
| 391 | 2009-12-07  Clint Adams  <schizo@debian.org>  (tiny change)
 | 
|---|
| 392 | 
 | 
|---|
| 393 |         * sed/execute.c (open_next_file): If is_selinux_enabled returns -1,
 | 
|---|
| 394 |         treat it as "disabled".
 | 
|---|
| 395 | 
 | 
|---|
| 396 | 2009-10-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 397 | 
 | 
|---|
| 398 |         * sed/execute.c (closedown): First change owner (while permissions
 | 
|---|
| 399 |         stay 0?00), then mode.
 | 
|---|
| 400 | 
 | 
|---|
| 401 | 2009-10-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 402 |             WANG Yunfeng  <uhuruh@gmail.com>
 | 
|---|
| 403 | 
 | 
|---|
| 404 |         * sed/execute.c (str_append, str_append_modified): Handle incomplete
 | 
|---|
| 405 |         sequences as if they were invalid.
 | 
|---|
| 406 | 
 | 
|---|
| 407 | 2009-10-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 408 | 
 | 
|---|
| 409 |         * po/sed.pot: Update.
 | 
|---|
| 410 | 
 | 
|---|
| 411 | 2009-10-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 412 | 
 | 
|---|
| 413 |         * configure.ac: Use cache variables rather than AC_CHECK_FUNC.
 | 
|---|
| 414 | 
 | 
|---|
| 415 | 2009-10-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 416 | 
 | 
|---|
| 417 |         * configure.ac: Remove obselete configure tests.
 | 
|---|
| 418 |         * sed/fmt.c: Assume limits.h is always present.
 | 
|---|
| 419 |         * sed/utils.c: Assume vfprintf is always present.
 | 
|---|
| 420 | 
 | 
|---|
| 421 | 2009-10-14  Yuri G. Kudryashov  <urkud.urkud@gmail.com> (tiny change)
 | 
|---|
| 422 | 
 | 
|---|
| 423 |         * testsuite/Makefile.tests: Override LC_ALL, not LANG.
 | 
|---|
| 424 | 
 | 
|---|
| 425 | 2009-10-12  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 | 
|---|
| 426 | 
 | 
|---|
| 427 |         * doc/sed-in.texi (Invoking sed): Add index entries for --posix,
 | 
|---|
| 428 |         -s, --separate.
 | 
|---|
| 429 |         (Other Commands): Fix typo.
 | 
|---|
| 430 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 431 | 
 | 
|---|
| 432 | 2009-09-07  Dmitry Chistikov <dd1email@gmail.com> (tiny change)
 | 
|---|
| 433 | 
 | 
|---|
| 434 |         * doc/sed-in.texi: Document how to separate commands.
 | 
|---|
| 435 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 436 | 
 | 
|---|
| 437 | 2009-08-30  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 438 | 
 | 
|---|
| 439 |         * autoboot.conf: Add ssize_t.
 | 
|---|
| 440 |         * configure.ac: Remove useless stuff, bump gettext requirement to 0.17.
 | 
|---|
| 441 | 
 | 
|---|
| 442 | 2009-08-10  Bake Timmons  <b3timmons@speedymail.org> (tiny change)
 | 
|---|
| 443 | 
 | 
|---|
| 444 |         * doc/sed-in.texi: Fix typo.
 | 
|---|
| 445 | 
 | 
|---|
| 446 | 2009-06-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 447 | 
 | 
|---|
| 448 |         * configure.ac: Bump version.
 | 
|---|
| 449 |         * NEWS: Bump version.
 | 
|---|
| 450 |         * gnulib: Update.
 | 
|---|
| 451 |         * doc/sed.1: Regenerate.
 | 
|---|
| 452 | 
 | 
|---|
| 453 | 2009-06-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 454 | 
 | 
|---|
| 455 |         * autoboot.conf: Add selinux-h.
 | 
|---|
| 456 |         * execute.c: Copy over file creation context before creating a new file.
 | 
|---|
| 457 | 
 | 
|---|
| 458 | 2009-06-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 459 | 
 | 
|---|
| 460 |         * execute.c: Do not copy ACLs until the file is copied.
 | 
|---|
| 461 |         * utils.c (ck_mkstemp): Set a restrictive umask on temporary files.
 | 
|---|
| 462 | 
 | 
|---|
| 463 | 2009-06-26  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 464 | 
 | 
|---|
| 465 |         * autoboot: Do not use GIT_CONFIG_LOCAL.
 | 
|---|
| 466 | 
 | 
|---|
| 467 | 2009-06-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 468 | 
 | 
|---|
| 469 |         * autoboot.conf: Add memchr again.
 | 
|---|
| 470 |         * gnulib: Update.
 | 
|---|
| 471 | 
 | 
|---|
| 472 | 2009-06-11  Sergey Farbotka  <z8sergey8z@gmail.com>  (tiny change)
 | 
|---|
| 473 | 
 | 
|---|
| 474 |         * sed/execute.c (open_next_file): Fix off-by-one causing problems
 | 
|---|
| 475 |         under Cygwin.
 | 
|---|
| 476 | 
 | 
|---|
| 477 | 2009-05-11  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 478 | 
 | 
|---|
| 479 |         * sed/compile.c (snarf_char_class): Fix logic bug with [[[ in regular
 | 
|---|
| 480 |         expressions (and a possibly uninitialized use of variable delim stemming
 | 
|---|
| 481 |         from the bug).  Uninitialized variable bug reported by Zhongxing Xu.
 | 
|---|
| 482 |         * testsuite/brackets.good: New.
 | 
|---|
| 483 |         * testsuite/brackets.inp: New.
 | 
|---|
| 484 |         * testsuite/brackets.sed: New.
 | 
|---|
| 485 |         * testsuite/Makefile.am: Add test.
 | 
|---|
| 486 |         * testsuite/Makefile.tests: Add test.
 | 
|---|
| 487 | 
 | 
|---|
| 488 | 2009-05-11  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 489 | 
 | 
|---|
| 490 |         * configure.ac: Define COPYRIGHT_YEAR.
 | 
|---|
| 491 |         * Makefile.am (dist-hook): Test it.
 | 
|---|
| 492 |         * sed/mbcs.c: Fix copyright years.
 | 
|---|
| 493 |         * sed/sed.c: Fix copyright years.  Change COPYRIGHT_NOTICE to
 | 
|---|
| 494 |         COPYRIGHT_YEAR.
 | 
|---|
| 495 |         * sed/utils.c: Fix copyright years.
 | 
|---|
| 496 |         * testsuite/version.gin: Use COPYRIGHT_YEAR.
 | 
|---|
| 497 | 
 | 
|---|
| 498 | 2009-04-30  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 499 | 
 | 
|---|
| 500 |         * sed/compile.c: Declare bool arguments as int instead to please AIX XLC.
 | 
|---|
| 501 |         * sed/execute.c: Declare bool arguments as int instead to please AIX XLC.
 | 
|---|
| 502 |         * sed/utils.c: Declare bool arguments as int instead to please AIX XLC.
 | 
|---|
| 503 |         * sed/utils.h: Declare bool arguments as int instead to please AIX XLC.
 | 
|---|
| 504 | 
 | 
|---|
| 505 | 2009-04-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 506 | 
 | 
|---|
| 507 |         * configure.ac: Bump version number.
 | 
|---|
| 508 |         * configure: Regenerate.
 | 
|---|
| 509 | 
 | 
|---|
| 510 | 2009-04-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 511 | 
 | 
|---|
| 512 |         * configure.ac: Do not create homonymous links from builddir to srcdir.
 | 
|---|
| 513 |         * testsuite/Makefile.tests: Create readin.in2 here.
 | 
|---|
| 514 |         * testsuite/Makefile.am: Do not distribute it.
 | 
|---|
| 515 | 
 | 
|---|
| 516 | 2009-04-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 517 | 
 | 
|---|
| 518 |         * autoboot.conf: Add rename.
 | 
|---|
| 519 |         * gnulib: Update.
 | 
|---|
| 520 | 
 | 
|---|
| 521 | 2009-04-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 522 | 
 | 
|---|
| 523 |         * configure.ac: XFAIL UTF-8 tests where appropriate.
 | 
|---|
| 524 | 
 | 
|---|
| 525 | 2009-04-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 526 | 
 | 
|---|
| 527 |         * testsuite/Makefile.tests: Handle CRLF endings for mingw.
 | 
|---|
| 528 | 
 | 
|---|
| 529 | 2009-04-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 530 | 
 | 
|---|
| 531 |         * configure.ac: Link readin.in2 into builddir.
 | 
|---|
| 532 |         * configure: Regenerate.
 | 
|---|
| 533 |         * doc/Makefile.am: Do not distribute sed.html.  Do not update
 | 
|---|
| 534 |         sed.texi if the output does not change.
 | 
|---|
| 535 |         * sed/Makefile.am: Order libraries according to their dependencies.
 | 
|---|
| 536 |         * sed/compile.c (get_openfile): Declare FAIL as int.
 | 
|---|
| 537 |         * sed/sed.c: Avoid printf ("") if REG_PERL is not defined.
 | 
|---|
| 538 |         * testsuite/eval.in2: Do not include in the repository.
 | 
|---|
| 539 |         * testsuite/Makefile.am: Clean always eval.in2 and never readin.in2.
 | 
|---|
| 540 |         * testsuite/Makefile.tests: Provide a default empty definition of TIME
 | 
|---|
| 541 |         and remove rules for readin.in2.
 | 
|---|
| 542 | 
 | 
|---|
| 543 | 2009-03-31  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 544 | 
 | 
|---|
| 545 |         * bootstrap.sh.in: Add __bool_true_false_are_defined.
 | 
|---|
| 546 |         * bootstrap.sh: Regenerate.
 | 
|---|
| 547 |         * basicdefs.h: Do not provide bool definitions for BOOTSTRAP at all.
 | 
|---|
| 548 | 
 | 
|---|
| 549 | 2009-03-31  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 550 | 
 | 
|---|
| 551 |         * sed/sed.c (contact): New.
 | 
|---|
| 552 |         (usage): From here.
 | 
|---|
| 553 |         (main): Use it for `sed --version' too.
 | 
|---|
| 554 | 
 | 
|---|
| 555 |         * configure.ac: Point to GNU project mailing lists.
 | 
|---|
| 556 |         * sed/sed.c (contact): Use PACKAGE_BUGREPORT.
 | 
|---|
| 557 |         * testsuite/version.gin: Likewise.
 | 
|---|
| 558 |         * testsuite/version.good: Regenerate.
 | 
|---|
| 559 |         * doc/sed.1: Regenerate.
 | 
|---|
| 560 | 
 | 
|---|
| 561 |         * bootstrap.sh.in (PACKAGE_BUGREPORT): New.
 | 
|---|
| 562 |         * bootstrap.sh: Regenerate.
 | 
|---|
| 563 | 
 | 
|---|
| 564 | 2009-03-31  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 565 | 
 | 
|---|
| 566 |         * testsuite/Makefile.am: Distribute utf8-3 and utf8-4 test files.
 | 
|---|
| 567 | 
 | 
|---|
| 568 | 2009-02-17  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 569 | 
 | 
|---|
| 570 |         * testsuite/Makefile.tests: Rewrite rule for utf8-[1234].
 | 
|---|
| 571 |         Reported by Ralf Wildenhues.
 | 
|---|
| 572 | 
 | 
|---|
| 573 | 2009-02-17  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 574 | 
 | 
|---|
| 575 |         * sed/sed.c (usage): Print homepage URL.
 | 
|---|
| 576 |         * testsuite/version.gin: Update.
 | 
|---|
| 577 | 
 | 
|---|
| 578 | 2009-01-28  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 579 | 
 | 
|---|
| 580 |         * sed/sed.c (usage): Only print the bug report address for `sed --help'.
 | 
|---|
| 581 |         (main): Print it for `sed --version' too.
 | 
|---|
| 582 |         * testsuite/version.gin: Adapt.
 | 
|---|
| 583 |         * testsuite/Makefile.tests: Refine help message test.
 | 
|---|
| 584 | 
 | 
|---|
| 585 | 2009-01-23  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 586 |             Hideo AOKI <hideo.aoki.tk@hitachi.com>
 | 
|---|
| 587 | 
 | 
|---|
| 588 |         * sed/compile.c (match_slash): Fix MBCS behavior.
 | 
|---|
| 589 |         * sed/sed.h (MBSINIT): New.
 | 
|---|
| 590 | 
 | 
|---|
| 591 | 2009-01-20  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 592 | 
 | 
|---|
| 593 |         * autoboot.conf, bootstrap.sh.in: Remove memchr, memcmp, memmove
 | 
|---|
| 594 |         compatibility code.
 | 
|---|
| 595 |         * gnulib: Update.
 | 
|---|
| 596 | 
 | 
|---|
| 597 | 2009-01-09  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 598 | 
 | 
|---|
| 599 |         * tests/SPENCER.tests: Add testcases for glibc bugzilla 697.
 | 
|---|
| 600 |         * gnulib: Update.
 | 
|---|
| 601 | 
 | 
|---|
| 602 | 2009-01-05  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 603 | 
 | 
|---|
| 604 |         * execute.c (read_pattern_space): Reset hold space at end-of-file
 | 
|---|
| 605 |         if input->reset_at_next_file.
 | 
|---|
| 606 | 
 | 
|---|
| 607 | 2008-12-31  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 | 
|---|
| 608 | 
 | 
|---|
| 609 |         Let --posix turn off more GNU extensions.
 | 
|---|
| 610 |         * sed/compile.c (mark_subst_opts): Turn off subst options i, I,
 | 
|---|
| 611 |         s, S, x, X, m, and M in --posix mode.
 | 
|---|
| 612 |         (compile_address): Disallow address modifiers, `FIRST~STEP',
 | 
|---|
| 613 |         `ADDR1,+N', and `ADDR1,~N' in --posix mode.
 | 
|---|
| 614 |         (compile_program): In --posix mode, do not accept e or z commands;
 | 
|---|
| 615 |         do not accept text between an a, c, or i command and the following
 | 
|---|
| 616 |         backslash; do not accept an argument to the l command.
 | 
|---|
| 617 | 
 | 
|---|
| 618 | 2008-12-22  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 619 | 
 | 
|---|
| 620 |         * autoboot.conf: Request modules emulating mb functions.
 | 
|---|
| 621 |         * configure.ac: Do not look for mb functions here.
 | 
|---|
| 622 | 
 | 
|---|
| 623 | 2008-10-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 624 |             Jim Meyering  <meyering@redhat.com>
 | 
|---|
| 625 | 
 | 
|---|
| 626 |         * autoboot.conf: Add localcharset.
 | 
|---|
| 627 |         * Makefile.am: Remove intl subdir.  Require Automake 1.10.
 | 
|---|
| 628 |         * configure.ac: Remove useless macros, switch to external gettext.
 | 
|---|
| 629 |         * lib/Makefile.am: Remove intl subdir from CPPFLAGS.
 | 
|---|
| 630 |         * sed/Makefile.am: Remove intl subdir from CPPFLAGS.
 | 
|---|
| 631 | 
 | 
|---|
| 632 | 2008-10-02  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 633 | 
 | 
|---|
| 634 |         * autoboot: Sync with gnulib's build-aux/bootstrap.
 | 
|---|
| 635 | 
 | 
|---|
| 636 | 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 637 | 
 | 
|---|
| 638 |         * autoboot: Sync with gnulib's build-aux/bootstrap.
 | 
|---|
| 639 | 
 | 
|---|
| 640 | 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 641 | 
 | 
|---|
| 642 |         * testsuite/Makefile.am: Add the utf8-{1,2,3,4} tests.
 | 
|---|
| 643 |         * testsuite/Makefile.tests: Add the utf8-{1,2,3,4} tests.
 | 
|---|
| 644 |         * testsuite/runtest: Support skipping tests.
 | 
|---|
| 645 |         * testsuite/utf8-1.good: New.
 | 
|---|
| 646 |         * testsuite/utf8-1.inp: New.
 | 
|---|
| 647 |         * testsuite/utf8-1.sed: New.
 | 
|---|
| 648 |         * testsuite/utf8-2.good: New.
 | 
|---|
| 649 |         * testsuite/utf8-2.inp: New.
 | 
|---|
| 650 |         * testsuite/utf8-2.sed: New.
 | 
|---|
| 651 |         * testsuite/utf8-3.good: New.
 | 
|---|
| 652 |         * testsuite/utf8-3.inp: New.
 | 
|---|
| 653 |         * testsuite/utf8-3.sed: New.
 | 
|---|
| 654 |         * testsuite/utf8-4.good: New.
 | 
|---|
| 655 |         * testsuite/utf8-4.inp: New.
 | 
|---|
| 656 |         * testsuite/utf8-4.sed: New.
 | 
|---|
| 657 | 
 | 
|---|
| 658 | 2008-09-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 659 | 
 | 
|---|
| 660 |         * BUGS: Document s/.*.// behavior with invalid multibyte sequences.
 | 
|---|
| 661 |         * NEWS: Document `z' extension.
 | 
|---|
| 662 |         * doc/sed-in.texi: Document both things.
 | 
|---|
| 663 |         * sed/compile.c (compile_program): Recognize `z'.
 | 
|---|
| 664 |         * sed/execute.c (execute_program): Execute `z'.
 | 
|---|
| 665 |         * testsuite/Makefile.am: Add badenc test.
 | 
|---|
| 666 |         * testsuite/Makefile.tests: Add badenc test.
 | 
|---|
| 667 |         * testsuite/badenc.good: New.
 | 
|---|
| 668 |         * testsuite/badenc.inp: New.
 | 
|---|
| 669 |         * testsuite/badenc.sed: New.
 | 
|---|
| 670 | 
 | 
|---|
| 671 | 2008-09-28  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 672 | 
 | 
|---|
| 673 |         * basicdefs.h: Replace alloca cruft with alloca.h.
 | 
|---|
| 674 |         * bootstrap.sh.in: Update for new gnulib.
 | 
|---|
| 675 |         * bootstrap.sh: Update for new gnulib.
 | 
|---|
| 676 |         * configure.ac: Move gnulib macros earlier.
 | 
|---|
| 677 |         * sed/execute.c: Do not include acl.h when bootstrapping.
 | 
|---|
| 678 | 
 | 
|---|
| 679 | 2008-08-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 680 | 
 | 
|---|
| 681 |         * sed/execute.c (closedown): Close the input file!
 | 
|---|
| 682 | 
 | 
|---|
| 683 | 2008-08-20  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 684 | 
 | 
|---|
| 685 |         * configure.ac: Add gl_DISABLE_THREADS.
 | 
|---|
| 686 | 
 | 
|---|
| 687 | 2008-08-20  Ralf Wildenhues  <ralf.wildenhues@gmx.de
 | 
|---|
| 688 | 
 | 
|---|
| 689 |         * doc/sed-in.texi: Drop leading whitespace where appropriate,
 | 
|---|
| 690 |         do not use TABs.
 | 
|---|
| 691 |         * doc/sed.texi: Regnerate.
 | 
|---|
| 692 | 
 | 
|---|
| 693 | 2008-08-19  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 694 | 
 | 
|---|
| 695 |         * sed/compile.c: Do not include strverscmp.c.
 | 
|---|
| 696 | 
 | 
|---|
| 697 | 2008-07-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 698 | 
 | 
|---|
| 699 |         * doc/sed-in.texi: Remove northpark.edu address for sed FAQ.
 | 
|---|
| 700 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 701 | 
 | 
|---|
| 702 | 2008-07-10  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 703 | 
 | 
|---|
| 704 |         * doc/sed-in.texi: Make the description of ^ and $ more precise.
 | 
|---|
| 705 |         * doc/sed.texi: Regenerate.
 | 
|---|
| 706 | 
 | 
|---|
| 707 | 2008-06-04  Vladimir Marek  <vladimir.marek@sun.com>
 | 
|---|
| 708 | 
 | 
|---|
| 709 |         * basicdefs.h: Don't hardcode usage of prototypes on SunStudio.
 | 
|---|
| 710 | 
 | 
|---|
| 711 | 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 712 | 
 | 
|---|
| 713 |         * autoboot.conf: Update for newer gnulib.
 | 
|---|
| 714 | 
 | 
|---|
| 715 | 2008-05-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 716 | 
 | 
|---|
| 717 |         * bootstrap.sh.in: Define bool, true, false.  Reported by
 | 
|---|
| 718 |         Jason Stover.  Adjust for gnulib changes.
 | 
|---|
| 719 |         * bootstrap.sh: Regenerate.
 | 
|---|
| 720 | 
 | 
|---|
| 721 | 2008-04-24  Paul Eggert  <eggert@twinsun.com>
 | 
|---|
| 722 | 
 | 
|---|
| 723 |         * sed/compile.c (match_slash): Treat 's&foo&\&&' compatibly with
 | 
|---|
| 724 |         traditional 'sed'.
 | 
|---|
| 725 |         * testsuite/bsd.sh: Add test case for this.
 | 
|---|
| 726 |         * testsuite/bsd.good: Add test case output.
 | 
|---|
| 727 | 
 | 
|---|
| 728 | 2008-04-24  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 729 | 
 | 
|---|
| 730 |         * sed/compile.c (setup_replacement): Fix bug with \& in POSIX mode.
 | 
|---|
| 731 | 
 | 
|---|
| 732 | 2008-01-16  Jim Meyering  <meyering@redhat.com>
 | 
|---|
| 733 | 
 | 
|---|
| 734 |         * sed/execute.c (open_next_file, get_backup_file_name): Avoid
 | 
|---|
| 735 |         warnings from gcc.
 | 
|---|
| 736 | 
 | 
|---|
| 737 | 2008-01-16  Jim Meyering  <meyering@redhat.com>
 | 
|---|
| 738 | 
 | 
|---|
| 739 |         * sed/compile.c (snarf_char_class): Reverse order of conjuncts
 | 
|---|
| 740 |         so that "delim" is not used uninitialized.
 | 
|---|
| 741 | 
 | 
|---|
| 742 | 2008-01-16  Jim Meyering  <meyering@redhat.com>
 | 
|---|
| 743 | 
 | 
|---|
| 744 |         * sed/utils.c (panic): Remove declaration of unused local, "fd".
 | 
|---|
| 745 | 
 | 
|---|
| 746 | 2008-01-16  Jim Meyering  <meyering@redhat.com>
 | 
|---|
| 747 | 
 | 
|---|
| 748 |         * sed/execute.c (open_next_file, get_backup_file_name): Avoid
 | 
|---|
| 749 |         warnings from gcc.  Avoid shadowing global "pipe".
 | 
|---|
| 750 | 
 | 
|---|
| 751 | 2008-01-16  Jim Meyering  <meyering@redhat.com>
 | 
|---|
| 752 | 
 | 
|---|
| 753 |         * autoboot.conf (gnulib_modules): Add stat-macros and pathmax.
 | 
|---|
| 754 | 
 | 
|---|
| 755 | 2007-10-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 756 |             Mike Frysinger   <vapier@gentoo.org>
 | 
|---|
| 757 | 
 | 
|---|
| 758 |         * doc/sed.x (q, Q): Document argument.
 | 
|---|
| 759 |         * configure.ac: Remove texi2html checks.
 | 
|---|
| 760 |         * doc/Makefile.am: Remove rules for sed.html, always distribute it.
 | 
|---|
| 761 | 
 | 
|---|
| 762 | 2007-08-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 763 | 
 | 
|---|
| 764 |         * sed/execute.c (open_next_file): Follow symlink here...
 | 
|---|
| 765 |         (closedown): ... not here.
 | 
|---|
| 766 | 
 | 
|---|
| 767 | 2007-06-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 768 | 
 | 
|---|
| 769 |         * sed/mbcs.c: Upgrade to GPLv3.
 | 
|---|
| 770 |         * sed/regexp.c: Upgrade to GPLv3.
 | 
|---|
| 771 |         * sed/sed.c: Upgrade to GPLv3.
 | 
|---|
| 772 |         * sed/sed.h: Upgrade to GPLv3.
 | 
|---|
| 773 |         * sed/utils.c: Upgrade to GPLv3.
 | 
|---|
| 774 |         * sed/utils.h: Upgrade to GPLv3.
 | 
|---|
| 775 |         * sed/compile.c: Upgrade to GPLv3.
 | 
|---|
| 776 |         * sed/execute.c: Upgrade to GPLv3.
 | 
|---|
| 777 |         * sed/fmt.c: Upgrade to GPLv3.
 | 
|---|
| 778 | 
 | 
|---|
| 779 | 2007-03-01  Masatake YAMATO  <jet@gyve.org>  (tiny change)
 | 
|---|
| 780 | 
 | 
|---|
| 781 |         * sed/compile.c (compile_program): Accept 0,/REGEXP/ address
 | 
|---|
| 782 |         specification only if --posix is not specified.
 | 
|---|
| 783 | 
 | 
|---|
| 784 | 2007-02-05  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 785 | 
 | 
|---|
| 786 |         * testsuite/bug-regex27.c, testsuite/bug-regex28.c: New, from
 | 
|---|
| 787 |         glibc (written by Jakub Jelinek).
 | 
|---|
| 788 | 
 | 
|---|
| 789 | 2007-01-26  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 790 | 
 | 
|---|
| 791 |         * sed/compile.c (check_final_program): Don't set text if the
 | 
|---|
| 792 |         pending_text is initialized but empty.
 | 
|---|
| 793 |         * sed/execute.c (output_line): Don't print text if it is NULL.
 | 
|---|
| 794 |         * testsuite/Makefile.am (TESTS): Add insert.
 | 
|---|
| 795 |         * testsuite/Makefile.tests (insert): New.
 | 
|---|
| 796 |         * testsuite/insert.good, testsuite/insert.sed, testsuite/insert.inp: New
 | 
|---|
| 797 |         testcase from Jonas Koelker.
 | 
|---|
| 798 | 
 | 
|---|
| 799 | 2006-12-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 800 | 
 | 
|---|
| 801 |         * sed/compile.c: Fix warnings.
 | 
|---|
| 802 |         * sed/execute.c: Fix warnings.
 | 
|---|
| 803 | 
 | 
|---|
| 804 | 2006-12-22  Bruno Haible  <bruno@clisp.org>
 | 
|---|
| 805 | 
 | 
|---|
| 806 |         * sed/utils.c: Include pathmax.
 | 
|---|
| 807 |         * sed/mbcs.c: Use local_charset.
 | 
|---|
| 808 |         * sed/execute.c: Copy with padding after the mbstate_t member.
 | 
|---|
| 809 | 
 | 
|---|
| 810 | 2006-12-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 811 | 
 | 
|---|
| 812 |         * sed/mbcs.c: Include string.h (reported by Henning Nielsen Lund).
 | 
|---|
| 813 |         * sed/fmt.c: Likewise.
 | 
|---|
| 814 |         * sed/regexp.c: Likewise.
 | 
|---|
| 815 | 
 | 
|---|
| 816 | 2006-12-18  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 817 | 
 | 
|---|
| 818 |         * sed/execute.c (closedown): Remove dead code.
 | 
|---|
| 819 | 
 | 
|---|
| 820 | 2006-12-17  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 821 | 
 | 
|---|
| 822 |         * sed/utils.c: Include limits.h.
 | 
|---|
| 823 | 
 | 
|---|
| 824 | 2006-12-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 825 | 
 | 
|---|
| 826 |         * doc/sed-in.texi: Document --follow-symlinks.
 | 
|---|
| 827 | 
 | 
|---|
| 828 | 2006-12-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 829 | 
 | 
|---|
| 830 |         * sed/regexp.c: Disable all extensions on --posix.
 | 
|---|
| 831 | 
 | 
|---|
| 832 | 2006-09-24  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 833 | 
 | 
|---|
| 834 |         * sed/execute.c: Support ACLs.
 | 
|---|
| 835 |         * lib/utils.c: Move...
 | 
|---|
| 836 |         * sed/utils.c: ... here, and remove xmalloc.
 | 
|---|
| 837 | 
 | 
|---|
| 838 | 2006-08-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 839 | 
 | 
|---|
| 840 |         * sed/regexp.c: Accept NUL bytes for `.'.  Accept 'a\(b' in
 | 
|---|
| 841 |         POSIXLY_CORRECT/POSIXLY_BASIC posixicity.
 | 
|---|
| 842 | 
 | 
|---|
| 843 | 2006-08-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 844 | 
 | 
|---|
| 845 |         Revert this part of the previous change:
 | 
|---|
| 846 | 
 | 
|---|
| 847 |         2006-08-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 848 | 
 | 
|---|
| 849 |         * sed/compile.c (get_openfile): Change second argument to char
 | 
|---|
| 850 |         and turn it into a string within the function.  Adjust callers.
 | 
|---|
| 851 | 
 | 
|---|
| 852 | 2006-08-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 853 |             Corinna Vinschen  <vinschen@redhat.com>
 | 
|---|
| 854 | 
 | 
|---|
| 855 |         * lib/getline.c (getline): Remove Windows special casing.
 | 
|---|
| 856 |         * lib/utils.c (register_open_file, ck_fdopen): New.
 | 
|---|
| 857 |         (ck_fopen, ck_mkstemp): Use register_open_file.
 | 
|---|
| 858 |         * lib/utils.h (ck_fdopen): New.
 | 
|---|
| 859 |         * sed/execute.c (open_next_file): Reopen stdin.
 | 
|---|
| 860 |         * sed/sed.h (read_mode): New.
 | 
|---|
| 861 |         * sed/sed.c (read_mode): New.
 | 
|---|
| 862 |         (main): Set it on --binary.
 | 
|---|
| 863 |         (usage): Document --binary.
 | 
|---|
| 864 |         * sed/compile.c (get_openfile): Change second argument to char
 | 
|---|
| 865 |         and turn it into a string within the function.  Adjust callers.
 | 
|---|
| 866 |         * sed/execute.c (dump_append_queue, open_next_file): Use it
 | 
|---|
| 867 |         as mode for ck_fopen.
 | 
|---|
| 868 | 
 | 
|---|
| 869 | 2006-08-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 870 | 
 | 
|---|
| 871 |         * sed/execute.c (str_append): Use is_utf8 to skip useless work.
 | 
|---|
| 872 |         * sed/mbcs.c (initialize_mbcs): Look for a UTF-8 locale.
 | 
|---|
| 873 |         (is_utf8): New.
 | 
|---|
| 874 |         * sed/sed.h (is_utf8): New.
 | 
|---|
| 875 | 
 | 
|---|
| 876 | 2006-07-13  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 877 | 
 | 
|---|
| 878 |         * bootstrap.sh.in: Add a few autoconfy tests.
 | 
|---|
| 879 |         * Makefile.am: Update distributed bootstrap.sh.
 | 
|---|
| 880 | 
 | 
|---|
| 881 | 2006-05-15  Hans-Bernhard Broeker <broeker@physik.rwth-aachen.de>
 | 
|---|
| 882 | 
 | 
|---|
| 883 |         * sed/basicdefs.h (OB_MALLOC): Turn VCAST into void * cast.
 | 
|---|
| 884 | 
 | 
|---|
| 885 | 2006-02-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 886 | 
 | 
|---|
| 887 |         * sed/compile.c (compile_program) <case 'y'>: Pass false to match_slash.
 | 
|---|
| 888 | 
 | 
|---|
| 889 | 2005-09-07  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 890 | 
 | 
|---|
| 891 |         * lib/regcomp.c: Update from upstream.
 | 
|---|
| 892 |         * lib/regex.c: Update from upstream.
 | 
|---|
| 893 |         * lib/regex_.h: Update from upstream.
 | 
|---|
| 894 |         * lib/regex_internal.c: Update from upstream.
 | 
|---|
| 895 |         * lib/regex_internal.h: Update from upstream.
 | 
|---|
| 896 |         * lib/regexec.c: Update from upstream.
 | 
|---|
| 897 | 
 | 
|---|
| 898 | 2005-08-30  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 899 | 
 | 
|---|
| 900 |         * sed/execute.c (reset_addresses): Never activate ADDR_IS_NUM_MOD
 | 
|---|
| 901 |         addresses.
 | 
|---|
| 902 |         * testsuite/modulo.good, testsuite/modulo.inp, testsuite/modulo.sed:
 | 
|---|
| 903 |         New.
 | 
|---|
| 904 |         * testsuite/Makefile.tests: Add new testcase.
 | 
|---|
| 905 |         * testsuite/Makefile.am: Add new testcase.
 | 
|---|
| 906 |         * testsuite/Makefile.in: Regenerate.
 | 
|---|
| 907 | 
 | 
|---|
| 908 | 2005-05-18  Maciej W. Rozycki  <macro@linux-mips.org>
 | 
|---|
| 909 | 
 | 
|---|
| 910 |         * configure.ac: Use a cache variable for the libcP test.
 | 
|---|
| 911 |         * configure: Regenerate.
 | 
|---|
| 912 | 
 | 
|---|
| 913 | 2005-05-16  Eero Hakkinen  <eero17@bigfoot.com>
 | 
|---|
| 914 | 
 | 
|---|
| 915 |         * sed/compile.c (snarf_char_class): Fix handling of
 | 
|---|
| 916 |         [^]xyz].
 | 
|---|
| 917 | 
 | 
|---|
| 918 | 2005-04-04  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 919 | 
 | 
|---|
| 920 |         * sed/execute.c (process_files): Do not add a default
 | 
|---|
| 921 |         command-line in in-place editing mode.
 | 
|---|
| 922 | 
 | 
|---|
| 923 | 2005-02-10  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 924 | 
 | 
|---|
| 925 |         * testsuite/Makefile.tests: Add new testcase.
 | 
|---|
| 926 |         * testsuite/Makefile.am: Add new testcase.
 | 
|---|
| 927 |         * testsuite/Makefile.in: Regenerate.
 | 
|---|
| 928 |         * testsuite/appquit.good, testsuite/appquit.inp,
 | 
|---|
| 929 |         testsuite/appquit.sed: New testcase.
 | 
|---|
| 930 |         * testsuite/readin.sed: Quit after the last r command.
 | 
|---|
| 931 |         * testsuite/readin.good: Adjust.
 | 
|---|
| 932 |         * sed/execute.c (execute_program): Dump the results of the
 | 
|---|
| 933 |         a/r/R commands just before quitting.
 | 
|---|
| 934 | 
 | 
|---|
| 935 | 2005-02-10  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 936 | 
 | 
|---|
| 937 |         * sed/regexp.c: Fix off-by-one error in the "invalid reference
 | 
|---|
| 938 |         to subexpression" message.  Debian bug 294339.
 | 
|---|
| 939 | 
 | 
|---|
| 940 | 2005-02-08  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 941 | 
 | 
|---|
| 942 |         * lib/obstack.h: include config.h.
 | 
|---|
| 943 | 
 | 
|---|
| 944 | 2005-02-01  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 945 | 
 | 
|---|
| 946 |         * doc/Makefile.am: Don't enable MAKEINFO_HTML and TEXI2HTML_HTML
 | 
|---|
| 947 |         rules unless BUILD_HTML.
 | 
|---|
| 948 | 
 | 
|---|
| 949 | 2005-01-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 950 | 
 | 
|---|
| 951 |         * sed/regexp.c: Fix building on GCC 2.95 and earlier.
 | 
|---|
| 952 | 
 | 
|---|
| 953 | 2004-12-26  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 954 | 
 | 
|---|
| 955 |         Do not use leftmost-longest matching for addresses.
 | 
|---|
| 956 | 
 | 
|---|
| 957 |         * NEWS: Add a note about this.
 | 
|---|
| 958 |         * testsuite/recall2.good, testsuite/recall2.inp,
 | 
|---|
| 959 |         testsuite/recall2.sed: New test.
 | 
|---|
| 960 |         * testsuite/Makefile.am, testsuite/Makefile.tests: Add the
 | 
|---|
| 961 |         recall2 test.
 | 
|---|
| 962 |         * sed/sed.h (struct regex): New.
 | 
|---|
| 963 |         (struct addr, struct subst, compile_regex, match_regex,
 | 
|---|
| 964 |         release_regex): Use it instead of regex_t.
 | 
|---|
| 965 |         * sed/compile.c (compile_program): Update for new meaning of
 | 
|---|
| 966 |         the third parameter of compile_regex.
 | 
|---|
| 967 |         * sed/execute.c (do_subst): Pass less conservative value to
 | 
|---|
| 968 |         the regsize parameter of match_regex.
 | 
|---|
| 969 |         * sed/regexp.c (compile_regex_1): New, extracted out of
 | 
|---|
| 970 |         compile_regex.  The third parameter, needed_sub, now includes
 | 
|---|
| 971 |         \0 (so 10 means that \0 .. \9 are needed).  Pass RE_NO_SUB
 | 
|---|
| 972 |         if needed_sub is zero.
 | 
|---|
| 973 |         (compile_regex): Accept a struct regex instead of a regex_t.
 | 
|---|
| 974 |         Save the regular expression's text.
 | 
|---|
| 975 |         (match_regex): Accept a struct regex instead of a regex_t.
 | 
|---|
| 976 |         Recompile the pattern if it was compiled with RE_NO_SUB.
 | 
|---|
| 977 |         (release_regex): Accept a struct regex instead of a regex_t.
 | 
|---|
| 978 | 
 | 
|---|
| 979 |         * doc/Makefile.am: Generate sed.texi correctly when
 | 
|---|
| 980 |         building outside srcdir.
 | 
|---|
| 981 | 
 | 
|---|
| 982 | 2004-12-26  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 983 | 
 | 
|---|
| 984 |         * BUGS: Add section about [a-z] matching uppercase characters,
 | 
|---|
| 985 |         and other locale issues.
 | 
|---|
| 986 |         * doc/sed-in.texi [!PERL]: Likewise.
 | 
|---|
| 987 | 
 | 
|---|
| 988 | 2004-11-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 989 | 
 | 
|---|
| 990 |         * sed/execute.c (str_append_modified): Copy the first character
 | 
|---|
| 991 |         when using \l or \u in a multi-byte configuration.  Use
 | 
|---|
| 992 |         WCRTOMB instead of wcrtomb.
 | 
|---|
| 993 |         * sed/sed.h (WCRTOMB): New.
 | 
|---|
| 994 | 
 | 
|---|
| 995 | 2004-11-11  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 996 | 
 | 
|---|
| 997 |         * tst-rxspecer.c: Do not mix instructions and
 | 
|---|
| 998 |         declarations.
 | 
|---|
| 999 |         * basicdefs.h: Include locale.h before #defining
 | 
|---|
| 1000 |         gettext, to avoid breakage under Solaris.
 | 
|---|
| 1001 |         * sed/sed.c: do not include locale.h.
 | 
|---|
| 1002 | 
 | 
|---|
| 1003 | 2004-11-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1004 | 
 | 
|---|
| 1005 |         * bug-regex11.c: Improve portability.
 | 
|---|
| 1006 |         * bug-regex12.c: Improve portability.
 | 
|---|
| 1007 |         * bug-regex13.c: Improve portability.
 | 
|---|
| 1008 |         * bug-regex14.c: Improve portability.
 | 
|---|
| 1009 |         * bug-regex21.c: Improve portability.
 | 
|---|
| 1010 |         * bug-regex9.c: Improve portability.
 | 
|---|
| 1011 |         * tst-boost.c: Improve portability.
 | 
|---|
| 1012 |         * tst-pcre.c: Improve portability.
 | 
|---|
| 1013 |         * tst-regex.c: Improve portability.
 | 
|---|
| 1014 |         * tst-rxspencer.c: Improve portability.
 | 
|---|
| 1015 | 
 | 
|---|
| 1016 | 2004-10-08  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1017 | 
 | 
|---|
| 1018 |         * lib/utils.c (utils_id_s): Renamed to open_files.
 | 
|---|
| 1019 |         (struct id): Renamed to struct open_file.
 | 
|---|
| 1020 | 
 | 
|---|
| 1021 | 2004-10-08  Jakub Jelinek  <jakub@redhat.com>
 | 
|---|
| 1022 | 
 | 
|---|
| 1023 |         * testsuite/Makefile.tests (bug-regex*, run-tests,
 | 
|---|
| 1024 |         run-ptests): Use $(SED).
 | 
|---|
| 1025 |         (version): Likewise; prepend $(SED) invocation with $(SEDENV).
 | 
|---|
| 1026 | 
 | 
|---|
| 1027 | 2004-08-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1028 | 
 | 
|---|
| 1029 |         *** Version 4.1.2 released.
 | 
|---|
| 1030 | 
 | 
|---|
| 1031 | 2004-08-06  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1032 | 
 | 
|---|
| 1033 |         * sed/compile.c (bad_command): Fix off-by-one error.
 | 
|---|
| 1034 |         (snarf_char_class): Fix problem with [.....[] (i.e.
 | 
|---|
| 1035 |         last char in class is a bracket.
 | 
|---|
| 1036 | 
 | 
|---|
| 1037 | 2004-06-30  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1038 | 
 | 
|---|
| 1039 |         *** Version 4.1.1 released.
 | 
|---|
| 1040 | 
 | 
|---|
| 1041 | 2004-06-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1042 | 
 | 
|---|
| 1043 |         * sed/compile.c (mark_subst_opts): Return int.
 | 
|---|
| 1044 |         * sed/execute.c (open_next_file): Fix uninitialized
 | 
|---|
| 1045 |         variable.
 | 
|---|
| 1046 | 
 | 
|---|
| 1047 | 2004-06-10  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1048 | 
 | 
|---|
| 1049 |         *** Version 4.1 released.
 | 
|---|
| 1050 | 
 | 
|---|
| 1051 | 2004-03-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1052 | 
 | 
|---|
| 1053 |         * lib/obstack.h: Get current version.
 | 
|---|
| 1054 | 
 | 
|---|
| 1055 | 2004-03-13  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1056 | 
 | 
|---|
| 1057 |         Exit as soon as possible on an I/O error, and with
 | 
|---|
| 1058 |         a better error message.
 | 
|---|
| 1059 | 
 | 
|---|
| 1060 |         * lib/utils.c (ck_mkstemp, ck_rename, ck_getline): New
 | 
|---|
| 1061 |         functions.  Save temporary files into utils_id_s.
 | 
|---|
| 1062 |         (struct id): Add a field named temp.
 | 
|---|
| 1063 |         (ck_fopen): Init the new temp field of struct id.
 | 
|---|
| 1064 |         (panic): Unlink temporary files before exiting.
 | 
|---|
| 1065 |         * sed/execute.c (read_file_line): Use ck_getline.
 | 
|---|
| 1066 |         (closedown): Use ck_rename.
 | 
|---|
| 1067 |         (open_next_file): Use ck_mkstemp.
 | 
|---|
| 1068 | 
 | 
|---|
| 1069 | 2004-01-17  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1070 | 
 | 
|---|
| 1071 |         * sed/sed.h: Do not include wchar.h and wctype.h, and do
 | 
|---|
| 1072 |         not include the alloca stuff.
 | 
|---|
| 1073 |         * basicdefs.h: Move all that here.
 | 
|---|
| 1074 | 
 | 
|---|
| 1075 | 2004-01-20  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1076 | 
 | 
|---|
| 1077 |         * sed/sed.h (enum addr_state): New definition.
 | 
|---|
| 1078 |         (enum addr_type): Remove ADDR_IS_NUM2.
 | 
|---|
| 1079 |         (struct sed_cmd): Replace a1_matched with range_state.
 | 
|---|
| 1080 |         * sed/compile.c (next_cmd_entry): Use range_state.
 | 
|---|
| 1081 |         (compile_program): Death to ADDR_IS_NUM2.  Compile
 | 
|---|
| 1082 |         N,Mp as Np if N>=M.
 | 
|---|
| 1083 |         * sed/execute.c (match_address_p): Rewritten.  Handle
 | 
|---|
| 1084 |         ADDR_IS_NUM here.
 | 
|---|
| 1085 |         (match_an_address_p): Suit to new match_address_p.
 | 
|---|
| 1086 |         (execute_program): Adjust to use range_state in `c'.
 | 
|---|
| 1087 |         Handle addr_bang here.
 | 
|---|
| 1088 |         (reset_addresses): Use range_state.
 | 
|---|
| 1089 | 
 | 
|---|
| 1090 |         (struct input): New field "reset_at_next_file".
 | 
|---|
| 1091 |         (read_pattern_space): Use it instead of "separate_files".
 | 
|---|
| 1092 |         (process_files): Initialize it.
 | 
|---|
| 1093 | 
 | 
|---|
| 1094 | 2004-01-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1095 | 
 | 
|---|
| 1096 |         * sed/regexp.c [REG_PERL]: Use REG_STARTEND instead of regexec2.
 | 
|---|
| 1097 | 
 | 
|---|
| 1098 | 2004-01-09  Paul Eggert  <eggert@twinsun.com>
 | 
|---|
| 1099 |             Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1100 | 
 | 
|---|
| 1101 |         * sed/sed.h (posixicity): New variable, replaces POSIXLY_CORRECT.
 | 
|---|
| 1102 |         * sed/sed.c (main): Set it.
 | 
|---|
| 1103 |         * sed/compile.c: Use it instead of POSIXLY_CORRECT.
 | 
|---|
| 1104 |         * sed/execute.c: Use it instead of POSIXLY_CORRECT.
 | 
|---|
| 1105 |         * doc/sed-in.texi: Document it and --posix.
 | 
|---|
| 1106 | 
 | 
|---|
| 1107 | 2004-01-05  Paul Eggert  <eggert@twinsun.com>
 | 
|---|
| 1108 |             Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1109 | 
 | 
|---|
| 1110 |         * NEWS: Fix [\n] to match either backslash or n in POSIXLY_CORRECT mode.
 | 
|---|
| 1111 |         * doc/sed-in.texi: Document this.  Also, document regular expressions
 | 
|---|
| 1112 |         a bit better overall, using terminology that's more similar to POSIX.
 | 
|---|
| 1113 |         * sed/sed.h (enum text_types): New definition.
 | 
|---|
| 1114 |         * sed/compile.c (normalize_text): Replace final parameter with one of
 | 
|---|
| 1115 |         type normalize_text.  If TEXT_REGEX and in POSIXLY_CORRECT mode,
 | 
|---|
| 1116 |         grok character classes without replacing \n inside them.
 | 
|---|
| 1117 | 
 | 
|---|
| 1118 | 2004-01-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1119 | 
 | 
|---|
| 1120 |         * sed/execute.c (execute_program): print final line
 | 
|---|
| 1121 |         after executing N, if not POSIXLY_CORRECT.
 | 
|---|
| 1122 | 
 | 
|---|
| 1123 | 2003-12-28  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1124 | 
 | 
|---|
| 1125 |         * sed/compile.c: fix "\\\n" in RHS of s command.
 | 
|---|
| 1126 |         Reported by Mike Castle.
 | 
|---|
| 1127 |         * testsuite/bkslashes.inp, testsuite/bkslashes.good,
 | 
|---|
| 1128 |         testsuite/bkslashes.sed: New files.
 | 
|---|
| 1129 |         * testsuite/Makefile.am, testsuite/Makefile.tests: Add
 | 
|---|
| 1130 |         the bkslashes test.
 | 
|---|
| 1131 | 
 | 
|---|
| 1132 | 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1133 | 
 | 
|---|
| 1134 |         *** Version 4.0b released.
 | 
|---|
| 1135 | 
 | 
|---|
| 1136 |         * sed/mbcs.c: New file.
 | 
|---|
| 1137 |         * sed/sed.h: Declare macros for mbcs.c.
 | 
|---|
| 1138 |         * sed/compile.c: Use them.
 | 
|---|
| 1139 |         (brlen): Moved to mbcs.c.
 | 
|---|
| 1140 |         * sed/execute.c: Use them.
 | 
|---|
| 1141 |         * sed/sed.c: call initialize_mbcs ().
 | 
|---|
| 1142 | 
 | 
|---|
| 1143 | 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1144 | 
 | 
|---|
| 1145 |         * sed/regex.c (match_regex): fix memory leak.
 | 
|---|
| 1146 | 
 | 
|---|
| 1147 | 2003-11-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1148 | 
 | 
|---|
| 1149 |         * sed/execute.c (reset_addresses): leave addresses 0
 | 
|---|
| 1150 |         and 0~STEP enabled.
 | 
|---|
| 1151 | 
 | 
|---|
| 1152 | 2003-11-15  Jakub Jelinek  <jakub@redhat.com>
 | 
|---|
| 1153 | 
 | 
|---|
| 1154 |         * sed/regex.c: Use fastmap.
 | 
|---|
| 1155 | 
 | 
|---|
| 1156 | 2003-09-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1157 | 
 | 
|---|
| 1158 |         *** Version 4.0a released.
 | 
|---|
| 1159 | 
 | 
|---|
| 1160 |         * sed/execute.c (struct line): Add mbstate field.
 | 
|---|
| 1161 |         (str_append): Keep mbstate up to date.
 | 
|---|
| 1162 |         (str_append_modified): Likewise, and use towupper/towlower.
 | 
|---|
| 1163 |         (line_init): Initialize mbstate.
 | 
|---|
| 1164 |         (line_copy): Copy mbstate.
 | 
|---|
| 1165 |         (line_append): Copy mbstate.
 | 
|---|
| 1166 | 
 | 
|---|
| 1167 | 2003-07-15  Stepan Kasal  <kasal@ucw.cz>
 | 
|---|
| 1168 |             Paolo Bonzini  <bonzini@fnu.org>
 | 
|---|
| 1169 | 
 | 
|---|
| 1170 |         Change the way we treat lines which are not terminated by a newline.
 | 
|---|
| 1171 |         Such lines are printed without the terminating newline (as before)
 | 
|---|
| 1172 |         but as soon as more text is sent to the same output stream, the
 | 
|---|
| 1173 |         missing newline is printed, so that the two lines don't concatenate.
 | 
|---|
| 1174 | 
 | 
|---|
| 1175 |         * sed/execute.c (output_file): Is now struct output; users adjusted
 | 
|---|
| 1176 |         to access the fp field, call output_missing_newline before, and
 | 
|---|
| 1177 |         call flush_output afterwards.
 | 
|---|
| 1178 |         (read_file_line): Set line.chomped FALSE each time we encounter a
 | 
|---|
| 1179 |         line without the newline terminator, no matter whether this is the
 | 
|---|
| 1180 |         last input file or not, and no matter whether we are in
 | 
|---|
| 1181 |         POSIXLY_CORRECT mode or not.
 | 
|---|
| 1182 |         (output_missing_newline): New function which prints the suppressed
 | 
|---|
| 1183 |         newline, if necessary.
 | 
|---|
| 1184 |         (flush_output): New function for a common pattern.
 | 
|---|
| 1185 |         (output_line): Use struct output, set its flag accordingly.
 | 
|---|
| 1186 |         (dump_append_queue): Use `ck_fwrite' instead of output_line.
 | 
|---|
| 1187 |         (do_list): Flush the output stream at the end.
 | 
|---|
| 1188 |         (closedown): The code ``if(separate_files) rewind_read_files();''
 | 
|---|
| 1189 |         (read_pattern_space): ... has been moved here.
 | 
|---|
| 1190 |         (process_files): Don't do the default `p' at the end, ...
 | 
|---|
| 1191 |         (execute_program): ... as this function is now responsible for it;
 | 
|---|
| 1192 |         add the code to the end of the function and to the command `q';
 | 
|---|
| 1193 |         the commands `d', `D' and `Q' thus no longer have to forge an empty
 | 
|---|
| 1194 |         line.
 | 
|---|
| 1195 |         (execute_program): Commands `c' and `i' no longer call the
 | 
|---|
| 1196 |         function output_line with chomped==FALSE; instead, they chomp
 | 
|---|
| 1197 |         the text and call the function with chomped==TRUE.
 | 
|---|
| 1198 |         (execute_program): Command `e' no longer uses output_line; it
 | 
|---|
| 1199 |         calls ck_fwrite directly.  Commands `e', `L' and `=' flush
 | 
|---|
| 1200 |         the output stream at the end.
 | 
|---|
| 1201 |         * sed/compile.c (special_files): Use `struct output' instead of the
 | 
|---|
| 1202 |         file name.
 | 
|---|
| 1203 |         (get_openfile): ... special files are no longer copied to file_read
 | 
|---|
| 1204 |         or file_write.
 | 
|---|
| 1205 |         (fp_list): Move to sed.h (users adjusted) and rename as...
 | 
|---|
| 1206 |         * sed/sed.h (struct output): ...this.  New flag missing_newline
 | 
|---|
| 1207 |         associated to the output stream.
 | 
|---|
| 1208 |         (struct sed_cmd, struct subst): Use `struct output *' instead of mere
 | 
|---|
| 1209 |         `FILE *'; adjust compile.c and execute.c.
 | 
|---|
| 1210 |         * testsuite/noeolw.sed, testsuite/noeolw.good, testsuite/noeolw.1good,
 | 
|---|
| 1211 |         testsuite/noeolw.2good: New tests
 | 
|---|
| 1212 | 
 | 
|---|
| 1213 | 2003-07-15  Stepan Kasal  <kasal@ucw.cz>
 | 
|---|
| 1214 | 
 | 
|---|
| 1215 |         * lib/utils.h, sed/sed.h: #include "basicdefs.h",
 | 
|---|
| 1216 |         don't include it from various *.c files.
 | 
|---|
| 1217 |         * sed/regex.c: Don't include regex.h as it's included via sed.h.
 | 
|---|
| 1218 | 
 | 
|---|
| 1219 | 2003-06-11  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1220 | 
 | 
|---|
| 1221 |         * lib/getline.c: Don't realloc with first param = NULL.
 | 
|---|
| 1222 | 
 | 
|---|
| 1223 | 2003-05-07  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1224 | 
 | 
|---|
| 1225 |         * sed/execute.c: Make treatment of ADDR_IS_NUM_MOD
 | 
|---|
| 1226 |         simpler, and fix bugs in 0~5,+1
 | 
|---|
| 1227 |         * sed/compile.c: Complain about addresses like 0
 | 
|---|
| 1228 |         and 0,3 which are sources of misunderstandings.
 | 
|---|
| 1229 |         Reported by Akim Demaille <akim@epita.fr>
 | 
|---|
| 1230 | 
 | 
|---|
| 1231 | 2003-03-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1232 | 
 | 
|---|
| 1233 |         *** Version 4.0.7 released
 | 
|---|
| 1234 | 
 | 
|---|
| 1235 |         * sed/execute.c (append_replacement): Extract from
 | 
|---|
| 1236 |         do_subst
 | 
|---|
| 1237 |         (do_subst): Don't update count when a match was
 | 
|---|
| 1238 |         skipped.
 | 
|---|
| 1239 |         * testsuite/xbxcx3.good, testsuite/xbxcx3.sed,
 | 
|---|
| 1240 |         testsuite/xbxcx3.inp: Regression tests
 | 
|---|
| 1241 | 
 | 
|---|
| 1242 | 2003-03-23  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1243 | 
 | 
|---|
| 1244 |         * sed/execute.c (do_subst): Fix several bugs with
 | 
|---|
| 1245 |         numbered matches
 | 
|---|
| 1246 |         * testsuite/numsub2.good, testsuite/numsub2.inp,
 | 
|---|
| 1247 |         testsuite/numsub2.sed, testsuite/numsub3.good,
 | 
|---|
| 1248 |         testsuite/numsub3.inp, testsuite/numsub3.sed,
 | 
|---|
| 1249 |         testsuite/numsub4.good, testsuite/numsub4.inp,
 | 
|---|
| 1250 |         testsuite/numsub4.sed, testsuite/numsub5.good,
 | 
|---|
| 1251 |         testsuite/numsub5.inp, testsuite/numsub5.sed:
 | 
|---|
| 1252 |         regression tests for the bugs
 | 
|---|
| 1253 | 
 | 
|---|
| 1254 | 2003-03-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1255 | 
 | 
|---|
| 1256 |         *** Version 4.0.6 released
 | 
|---|
| 1257 | 
 | 
|---|
| 1258 |         * lib/mkstemp.c: Include sys/file.h if available for the
 | 
|---|
| 1259 |         benefit of Ultrix
 | 
|---|
| 1260 | 
 | 
|---|
| 1261 | 2003-03-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1262 | 
 | 
|---|
| 1263 |         * sed/compile.c: Replace flagT with bool
 | 
|---|
| 1264 |         * sed/execute.c: Replace flagT with bool
 | 
|---|
| 1265 |         * sed/fmt.c: Replace flagT with bool
 | 
|---|
| 1266 |         * sed/sed.c: Replace flagT with bool
 | 
|---|
| 1267 |         * sed/regex.c: Replace flagT with bool
 | 
|---|
| 1268 | 
 | 
|---|
| 1269 | 2003-03-13  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1270 | 
 | 
|---|
| 1271 |         * sed/compile.c (compile_program): Understand parameter
 | 
|---|
| 1272 |         of `v'.
 | 
|---|
| 1273 | 
 | 
|---|
| 1274 |         * sed/sed.c (usage): Split help message into multiple
 | 
|---|
| 1275 |         strings
 | 
|---|
| 1276 |         (main): Don't understand -h and -V
 | 
|---|
| 1277 | 
 | 
|---|
| 1278 | 2003-03-12  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1279 | 
 | 
|---|
| 1280 |         * sed/compile.c (match_slash, snarf_char_class):  More
 | 
|---|
| 1281 |         multibyte character support
 | 
|---|
| 1282 |         (brlen): New function
 | 
|---|
| 1283 |         * testsuite/classes.good, testsuite/classes.inp,
 | 
|---|
| 1284 |         testsuite/classes.sed: New files
 | 
|---|
| 1285 | 
 | 
|---|
| 1286 | 2003-03-10  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1287 | 
 | 
|---|
| 1288 |         * sed/compile.c (match_slash): Strip the \ in front of
 | 
|---|
| 1289 |         slashes (so that the matcher sees x/ for s/x\///).  Don't
 | 
|---|
| 1290 |         match / and [ unless at the start of a character.
 | 
|---|
| 1291 | 
 | 
|---|
| 1292 | 2003-02-18  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1293 | 
 | 
|---|
| 1294 |         * sed/regex.c (compile_regex): // matches the last regular
 | 
|---|
| 1295 |         expression even in POSIXLY_CORRECT mode.
 | 
|---|
| 1296 |         * sed/compile.c (normalize_text): Treat multibyte character
 | 
|---|
| 1297 |         sets correctly
 | 
|---|
| 1298 |         (read_text): Don't swallow backslash sequences, run text
 | 
|---|
| 1299 |         through normalize_text
 | 
|---|
| 1300 |         (compile_program): Ditto for y command
 | 
|---|
| 1301 | 
 | 
|---|
| 1302 |         * sed/compile.c (normalize_text): Add parameter that says
 | 
|---|
| 1303 |         whether the text will be processed further to remove more
 | 
|---|
| 1304 |         backslash escapes.  Callers adjusted
 | 
|---|
| 1305 |         (match_slash): Remove same parameter from here.  Callers adjusted.
 | 
|---|
| 1306 | 
 | 
|---|
| 1307 | 2003-02-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1308 | 
 | 
|---|
| 1309 |         * sed/sed.h: Fix prototype for match_regex, declare re_registers
 | 
|---|
| 1310 |         if REG_PERL
 | 
|---|
| 1311 |         * sed/execute.c (do_subst): Use re_registers
 | 
|---|
| 1312 |         * sed/regex.c (copy_regs): New function
 | 
|---|
| 1313 |         [REG_PERL]: Use re_registers
 | 
|---|
| 1314 |         [!REG_PERL]: Avoid using internal entry points, support pre-glibc
 | 
|---|
| 1315 |         2.3 regex for the sake of --without-included-regex.
 | 
|---|
| 1316 | 
 | 
|---|
| 1317 | 2003-01-04  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1318 | 
 | 
|---|
| 1319 |         * sed/sed.h: Move some stuff from here...
 | 
|---|
| 1320 |         * sed/basicdefs.h: ...to here
 | 
|---|
| 1321 |         * lib/utils.c (ck_fopen): Add FAIL parameter
 | 
|---|
| 1322 |         * lib/utils.h: Adjust parameter
 | 
|---|
| 1323 |         * sed/compile.c, sed/execute.c, sed/sed.c: Adjust callers
 | 
|---|
| 1324 | 
 | 
|---|
| 1325 |         * sed/basicdefs.h: Add TRUE/FALSE
 | 
|---|
| 1326 |         * sed/compile.c, sed/execute.c, sed/sed.c: Use them
 | 
|---|
| 1327 |         * sed/fmt.c: Do not redefine them
 | 
|---|
| 1328 | 
 | 
|---|
| 1329 | 2003-01-02  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1330 | 
 | 
|---|
| 1331 |         * sed/sed.c: Bump copyright year
 | 
|---|
| 1332 | 
 | 
|---|
| 1333 | 2002-12-24  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1334 | 
 | 
|---|
| 1335 |         * sed/sed.c: Use bindtextdomain
 | 
|---|
| 1336 |         * sed/basicdefs.h [__EMX__]: Define initialize_main
 | 
|---|
| 1337 |         * lib/getline.c [__EMX__]: Strip trailing CR
 | 
|---|
| 1338 | 
 | 
|---|
| 1339 |         * sed/regex.c: Don't use N_ on the lines that define
 | 
|---|
| 1340 |         error messages, some compilers complain.
 | 
|---|
| 1341 | 
 | 
|---|
| 1342 | 2002-12-18  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1343 | 
 | 
|---|
| 1344 |         *** Version 4.0.5 released
 | 
|---|
| 1345 | 
 | 
|---|
| 1346 |         * sed/compile.c: Don't use N_ on the lines that define
 | 
|---|
| 1347 |         error messages, some compilers complain.
 | 
|---|
| 1348 | 
 | 
|---|
| 1349 | 2002-12-16  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1350 | 
 | 
|---|
| 1351 |         * sed/compile.c: Improvements to some error messages;
 | 
|---|
| 1352 |         `a', `i', `l', `L', `r' accept two addresses except in
 | 
|---|
| 1353 |         POSIXLY_CORRECT mode.
 | 
|---|
| 1354 | 
 | 
|---|
| 1355 | 2002-12-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1356 | 
 | 
|---|
| 1357 |         * lib/regex_internal.c: Fix problem on non-glibc
 | 
|---|
| 1358 |         systems, from Jakub Jelinek
 | 
|---|
| 1359 |         * lib/regex.c (RE_ENABLE_I18N): Conditionalize on
 | 
|---|
| 1360 |         HAVE_MBRTOWC and HAVE_WCRTOMB.
 | 
|---|
| 1361 |         * lib/getline.c: Fix compilation on non-glibc system
 | 
|---|
| 1362 |         * lib/snprintf.c: Fix compilation on non-glibc system
 | 
|---|
| 1363 |         * lib/basicdefs.h [P_]: Make more portable
 | 
|---|
| 1364 | 
 | 
|---|
| 1365 | 2002-12-12  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1366 | 
 | 
|---|
| 1367 |         *** Version 4.0.4 released
 | 
|---|
| 1368 | 
 | 
|---|
| 1369 | 2002-11-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1370 | 
 | 
|---|
| 1371 |         *** Version 4.0.3 released
 | 
|---|
| 1372 | 
 | 
|---|
| 1373 | 2002-11-19  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1374 | 
 | 
|---|
| 1375 |         *** Version 4.0.2 released
 | 
|---|
| 1376 | 
 | 
|---|
| 1377 | 2002-11-05  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1378 | 
 | 
|---|
| 1379 |         *** Version 4.0.1 released
 | 
|---|
| 1380 | 
 | 
|---|
| 1381 | 2002-10-23  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1382 | 
 | 
|---|
| 1383 |         *** Version 4.0 released
 | 
|---|
| 1384 | 
 | 
|---|
| 1385 | 2002-10-28  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1386 | 
 | 
|---|
| 1387 |         * lib/utils.c: Don't fail for EBADF in fflush
 | 
|---|
| 1388 |         * src/sed.c: the_program is now a global
 | 
|---|
| 1389 | 
 | 
|---|
| 1390 | 2002-10-19  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1391 | 
 | 
|---|
| 1392 |         * src/sed.c: Print GNU sed in --version for GNU sed,
 | 
|---|
| 1393 |         and super-sed for super-sed (thanks to Bruno Haible)
 | 
|---|
| 1394 | 
 | 
|---|
| 1395 | 2002-10-17  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1396 | 
 | 
|---|
| 1397 |         *** Version 3.96 released
 | 
|---|
| 1398 | 
 | 
|---|
| 1399 | 2002-10-16  Isamu Hasegawa  <isamu@yamato.ibm.com>
 | 
|---|
| 1400 | 
 | 
|---|
| 1401 |         * src/execute.c (execute_program): Multibyte 'y'
 | 
|---|
| 1402 |         * src/compile.c (compile_program): Likewise
 | 
|---|
| 1403 |         * src/sed.h: Likewise
 | 
|---|
| 1404 | 
 | 
|---|
| 1405 | 2002-10-08  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1406 | 
 | 
|---|
| 1407 |         *** Version 3.95 released
 | 
|---|
| 1408 | 
 | 
|---|
| 1409 | 2002-07-15  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1410 | 
 | 
|---|
| 1411 |         * src/sed.h: rfile --> fname, wfile --> fp
 | 
|---|
| 1412 |         * src/compile.c (compile_command): Parse 'R' like 'w', use
 | 
|---|
| 1413 |         separate lists for file read and file write
 | 
|---|
| 1414 |         * src/compile.c (get_openfile): New name of get_writefile
 | 
|---|
| 1415 |         * src/compile.c (rewind_read_files): New function
 | 
|---|
| 1416 |         * src/sed.h: Declared here
 | 
|---|
| 1417 |         * src/execute.c (closedown): And called here
 | 
|---|
| 1418 |         * src/execute.c (append_queue): Added 'free' field
 | 
|---|
| 1419 |         * src/execute.c (execute_program): Implement 'R'
 | 
|---|
| 1420 | 
 | 
|---|
| 1421 | 2002-06-09  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1422 | 
 | 
|---|
| 1423 |         * src/execute.c (do_subst): Replaced flag was set on every
 | 
|---|
| 1424 |         regexp match, while the first matches should not set it
 | 
|---|
| 1425 |         for s///N.
 | 
|---|
| 1426 | 
 | 
|---|
| 1427 | 2002-06-08  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1428 | 
 | 
|---|
| 1429 |         * src/compile.c (compile_file): Open the script in text mode
 | 
|---|
| 1430 |         * lib/utils.c (utils_fp_name): Shorten the output
 | 
|---|
| 1431 |         * lib/utils.c (ck_fread, ck_fwrite, ck_fflush): Clearerr
 | 
|---|
| 1432 |         after printing an error.
 | 
|---|
| 1433 |         * lib/utils.c (ck_fclose): Work on stdout as well if stream == NULL
 | 
|---|
| 1434 |         and flush before closing to check for errors
 | 
|---|
| 1435 | 
 | 
|---|
| 1436 | 2002-05-30  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1437 | 
 | 
|---|
| 1438 |         * src/compile.c (compile_program): Implement W
 | 
|---|
| 1439 |         * src/execute.c (execute_program): Likewise
 | 
|---|
| 1440 | 
 | 
|---|
| 1441 | 2002-02-14  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1442 | 
 | 
|---|
| 1443 |         * src/execute.c (str_append_modified): Fixed a stupid
 | 
|---|
| 1444 |         bug (stop condition was *start == *end, meant to be
 | 
|---|
| 1445 |         start == end)
 | 
|---|
| 1446 | 
 | 
|---|
| 1447 | 2002-02-28  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1448 | 
 | 
|---|
| 1449 |         * src/sed.h (struct sed_cmd): exit_status -> int_arg
 | 
|---|
| 1450 |         * src/compile.c: Likewise
 | 
|---|
| 1451 |         * src/execute.c: Likewise
 | 
|---|
| 1452 | 
 | 
|---|
| 1453 |         * src/compile.c (compile_command): Parse `l' like
 | 
|---|
| 1454 |         `q' and `Q'; default for int_arg is -1
 | 
|---|
| 1455 |         * src/execute.c (do_list): New argument, used instead
 | 
|---|
| 1456 |         of lcmd_out_line_len
 | 
|---|
| 1457 |         (execute_program): Interpret int_arg for the `l' command;
 | 
|---|
| 1458 |         return 0 for `q' and `Q' if int_arg is -1
 | 
|---|
| 1459 | 
 | 
|---|
| 1460 |         * src/fmt.c: New file, looted from GNU textutils
 | 
|---|
| 1461 |         * src/compile.c: Parse `L'
 | 
|---|
| 1462 |         * src/execute.c: Execute `L'
 | 
|---|
| 1463 | 
 | 
|---|
| 1464 | 2002-04-23  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1465 | 
 | 
|---|
| 1466 |         * src/sed.c (usage, main): Parse -s
 | 
|---|
| 1467 |         * src/sed.h (separate_files): New variable
 | 
|---|
| 1468 |         * src/execute.c (separate_files): New variable
 | 
|---|
| 1469 |         * src/execute.c (reset_addresses): New function to make range
 | 
|---|
| 1470 |         addresses work separately on each file when using in-place
 | 
|---|
| 1471 |         editing
 | 
|---|
| 1472 |         * src/execute.c (execute_program): The `n' and `N' use test_eof
 | 
|---|
| 1473 |         so that the script restarts at end of file, not at end of input
 | 
|---|
| 1474 |         * src/execute.c (test_dollar_EOF): Make $ work separately
 | 
|---|
| 1475 |         on each file when using -s; renamed to test_eof
 | 
|---|
| 1476 | 
 | 
|---|
| 1477 | 2002-02-05  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1478 | 
 | 
|---|
| 1479 |         * lib/utils.c: Added directory parameter to
 | 
|---|
| 1480 |         temp_file_template
 | 
|---|
| 1481 |         * lib/utils.h: Adjusted
 | 
|---|
| 1482 |         * src/execute.c: Adjusted
 | 
|---|
| 1483 | 
 | 
|---|
| 1484 | 2002-01-29  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1485 | 
 | 
|---|
| 1486 |         * src/compile.c (mark_subst_opts): Signal an error if
 | 
|---|
| 1487 |         there are multiple g or p options
 | 
|---|
| 1488 |         * src/compile.c (compile_program): Raise appropriate
 | 
|---|
| 1489 |         error if second string in y command is longer than
 | 
|---|
| 1490 |         first (used to be "excess junk after command")
 | 
|---|
| 1491 | 
 | 
|---|
| 1492 | 2001-12-31  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1493 | 
 | 
|---|
| 1494 |         * lib/getline.c: Strip the terminating \r under Windows
 | 
|---|
| 1495 |         or MS-DOS.
 | 
|---|
| 1496 | 
 | 
|---|
| 1497 |         * testsuite/xemacs.sed, testsuite/xemacs.inp,
 | 
|---|
| 1498 |         testsuite/xemacs.good: Submitted by John Fremlin
 | 
|---|
| 1499 |         (john@fremlin.de)
 | 
|---|
| 1500 | 
 | 
|---|
| 1501 | 2001-12-27  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1502 | 
 | 
|---|
| 1503 |         * sed/execute.c (do_subst): Flags in optimized s/^xx/
 | 
|---|
| 1504 |         commands were discarded (see the change below)
 | 
|---|
| 1505 | 
 | 
|---|
| 1506 | 2001-12-19  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1507 | 
 | 
|---|
| 1508 |         * sed/execute.c (resize_line): Limit inactive space to two
 | 
|---|
| 1509 |         thirds of a buffer
 | 
|---|
| 1510 |         * sed/execute.c (line_init): Initialize buf->active
 | 
|---|
| 1511 |         * sed/execute.c (str_append, str_append_modified, line_copy,
 | 
|---|
| 1512 |         do_list, do_subst, execute_program, process_files): Operate
 | 
|---|
| 1513 |         on active space
 | 
|---|
| 1514 | 
 | 
|---|
| 1515 |         * sed/execute.c (do_subst): Optimize s/^xx// by making a part
 | 
|---|
| 1516 |         of the buffer inactive and s/xx$// by truncating it.
 | 
|---|
| 1517 |         * sed/execute.c (execute_program): Optimize D by making a part
 | 
|---|
| 1518 |         of the buffer inactive
 | 
|---|
| 1519 | 
 | 
|---|
| 1520 |         * testsuite/uniq.sed, testsuite/uniq.inp, testsuite/uniq.good:
 | 
|---|
| 1521 |         added to test P and D commands.
 | 
|---|
| 1522 |         * testsuite/fasts.sed, testsuite/fasts.inp, testsuite/fasts.good:
 | 
|---|
| 1523 |         added to test the new optimization done on the `s' command.
 | 
|---|
| 1524 | 
 | 
|---|
| 1525 | 2001-12-17  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1526 | 
 | 
|---|
| 1527 |         * testsuite/dc.inp: Also compute Easter of 2002 :-)
 | 
|---|
| 1528 | 
 | 
|---|
| 1529 |         * sed/execute.c [!HAVE_FCHMOD]: Don't chmod the output file
 | 
|---|
| 1530 |         if working in-place
 | 
|---|
| 1531 | 
 | 
|---|
| 1532 | 2001-11-12  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1533 | 
 | 
|---|
| 1534 |         * sed/sed.h (struct sed_cmd): a1 is a pointer too
 | 
|---|
| 1535 |         * sed/compile.c: Likewise
 | 
|---|
| 1536 |         * sed/execute.c: Likewise
 | 
|---|
| 1537 | 
 | 
|---|
| 1538 |         * sed/compile.c: Use obstacks
 | 
|---|
| 1539 |         * sed/execute.c: Likewise
 | 
|---|
| 1540 | 
 | 
|---|
| 1541 | 2001-11-09  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1542 | 
 | 
|---|
| 1543 |         * sed/compile.c (mark_subst_opts): Parse option `e',
 | 
|---|
| 1544 |         preserve two occurrences of the `e' and `p' options.
 | 
|---|
| 1545 |         * sed/execute.c (do_subst) [HAVE_POPEN]: Interpret option
 | 
|---|
| 1546 |         `e' (evaluate, like Perl's but uses Bourne shell).
 | 
|---|
| 1547 |         * sed/sed.h (struct subst): Add an `eval' flag.
 | 
|---|
| 1548 | 
 | 
|---|
| 1549 |         * sed/compile.c (compile_program): Compile command `e'
 | 
|---|
| 1550 |         like `c'.
 | 
|---|
| 1551 |         * sed/execute.c (execute_program): Execute command `e'.
 | 
|---|
| 1552 | 
 | 
|---|
| 1553 | 2001-09-25  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1554 | 
 | 
|---|
| 1555 |         * sed/compile.c (get_writefile) [!POSIXLY_CORRECT]:
 | 
|---|
| 1556 |         support /dev/stdout
 | 
|---|
| 1557 |         * sed/execute.c (open_next_file, closedown): Support
 | 
|---|
| 1558 |         in-place editing
 | 
|---|
| 1559 |         * sed/execute.c (backup_file_name): New function to
 | 
|---|
| 1560 |         support in-place editing
 | 
|---|
| 1561 |         * sed/main.c (usage, main): Parse -i.
 | 
|---|
| 1562 |         * sed/utils.c: Moved to lib directory
 | 
|---|
| 1563 | 
 | 
|---|
| 1564 |         * lib/utils.c (temp_file_template): New function.
 | 
|---|
| 1565 |         * sed/utils.h: Declared temp_file_template.
 | 
|---|
| 1566 | 
 | 
|---|
| 1567 | 2001-09-05  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1568 | 
 | 
|---|
| 1569 |         * sed/execute.c (do_subst): `baaac', if passed through
 | 
|---|
| 1570 |         s/a*/x/g, gave `xbxxcx' rather than `xbxcx' (because an
 | 
|---|
| 1571 |         empty string matched before the `c'.  Fixed.
 | 
|---|
| 1572 | 
 | 
|---|
| 1573 |         * sed/execute.c: Removed mmap support, I/O is done using
 | 
|---|
| 1574 |         getline (slower but more bug-proof).
 | 
|---|
| 1575 |         * sed/utils.c: Likewise.
 | 
|---|
| 1576 |         * lib/getline.c: New file
 | 
|---|
| 1577 | 
 | 
|---|
| 1578 | 2001-03-22  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1579 | 
 | 
|---|
| 1580 |         * sed/compile.c (normalize_text) [POSIXLY_CORRECT]: Enable
 | 
|---|
| 1581 |         escapes in modes other than BRE.
 | 
|---|
| 1582 | 
 | 
|---|
| 1583 | 2001-03-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1584 | 
 | 
|---|
| 1585 |         * sed/compile.c (normalize_text): Support \XXX in Perl mode,
 | 
|---|
| 1586 |         \oXXX in non-Perl mode.
 | 
|---|
| 1587 | 
 | 
|---|
| 1588 | 2001-03-18  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1589 | 
 | 
|---|
| 1590 |         * sed/compile.c (compile_program): Fixed missing break when
 | 
|---|
| 1591 |         compiling 'q' and 'Q'.
 | 
|---|
| 1592 | 
 | 
|---|
| 1593 |         * sed/compile.c (check_final_program): Removed now spurious
 | 
|---|
| 1594 |         call to compile_regex
 | 
|---|
| 1595 |         * sed/regex.c (compile_regex): Don't track the last compiled
 | 
|---|
| 1596 |         regex
 | 
|---|
| 1597 |         * sed/regex.c (execute_regex): Track here the last compiled
 | 
|---|
| 1598 |         regex
 | 
|---|
| 1599 | 
 | 
|---|
| 1600 | 2001-03-02  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1601 | 
 | 
|---|
| 1602 |         * sed/compile.c (setup_replacement): Support \[lLuUE] like
 | 
|---|
| 1603 |         Perl and vi.
 | 
|---|
| 1604 |         * sed/compile.c (new_replacement): Accept new parameter
 | 
|---|
| 1605 |         to support \[lLUuE].
 | 
|---|
| 1606 |         * sed/sed.h (enum replacement_types): New declaration
 | 
|---|
| 1607 |         * sed/execute.c (do_subst): Use new function str_append_modified
 | 
|---|
| 1608 |         to apply the changes required via \[lLUuE].
 | 
|---|
| 1609 |         * sed/execute.c (str_append_modified): New function
 | 
|---|
| 1610 | 
 | 
|---|
| 1611 | 2001-03-02  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1612 | 
 | 
|---|
| 1613 |         * sed/compile.c (setup_replacement): Count the number of backreferences
 | 
|---|
| 1614 |         that the RHS needs
 | 
|---|
| 1615 |         * sed/regex.c (compile_regex): Check if there is a sufficient number
 | 
|---|
| 1616 |         of backreferences (new argument needed_sub replaces nosub)
 | 
|---|
| 1617 |         * sed/compile.c (compile_address, compile_program,
 | 
|---|
| 1618 |         check_final_program): Callers adjusted
 | 
|---|
| 1619 | 
 | 
|---|
| 1620 | 2001-01-03  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1621 | 
 | 
|---|
| 1622 |         * sed/compile.c(snarf_char_class) [REG_PERL]: Don't parse
 | 
|---|
| 1623 |         `\n' specially
 | 
|---|
| 1624 |         * sed/compile.c(match_slash) [REG_PERL]: Ditto
 | 
|---|
| 1625 | 
 | 
|---|
| 1626 |         * sed/compile.c(read_text) [REG_PERL]: Support [xX] modifiers
 | 
|---|
| 1627 |         * sed/compile.c(mark_subst_opts) [REG_PERL]: Ditto
 | 
|---|
| 1628 | 
 | 
|---|
| 1629 | 2001-01-04  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1630 | 
 | 
|---|
| 1631 |         * testsuite/Makefile.am: Use automake's implementation
 | 
|---|
| 1632 |         of `make check'.  Removed the test targets
 | 
|---|
| 1633 |         * testsuite/Makefile.tests: Moved the test targets here
 | 
|---|
| 1634 |         (new file).
 | 
|---|
| 1635 |         * testsuite/runtest: New file
 | 
|---|
| 1636 | 
 | 
|---|
| 1637 |         * testsuite/Makefile.tests: `khadafy' test uses EREs.
 | 
|---|
| 1638 | 
 | 
|---|
| 1639 |         * testsuite/spencer.inp: Removed the ^* test
 | 
|---|
| 1640 | 
 | 
|---|
| 1641 |         * testsuite/spencer.sh: Don't rely on awk; more comments too
 | 
|---|
| 1642 | 
 | 
|---|
| 1643 | 2001-01-07  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1644 | 
 | 
|---|
| 1645 |         * sed/compile.c (compile_program): Added `T' (branch if failed)
 | 
|---|
| 1646 |         * sed/execute.c (shrink_program, execute_program): Ditto
 | 
|---|
| 1647 | 
 | 
|---|
| 1648 | 2001-02-08  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1649 | 
 | 
|---|
| 1650 |         * sed/compile.c (compile_program): Added `Q' (quit without output)
 | 
|---|
| 1651 |         * sed/execute.c (execute_program): Ditto
 | 
|---|
| 1652 | 
 | 
|---|
| 1653 |         * sed/compile.c (compile_program): Fill in exit_status for `q' and `Q'
 | 
|---|
| 1654 |         * sed/execute.c (execute_program): Return -1 for `go on', 0..255
 | 
|---|
| 1655 |         to set the exit status
 | 
|---|
| 1656 |         * sed/execute.c (process_files): Interpret new convention for
 | 
|---|
| 1657 |         execute_program, return sed's exit code
 | 
|---|
| 1658 |         * sed/sed.c (main): Return process_files's exit code
 | 
|---|
| 1659 |         * sed/sed.h (struct sed_cmd): Declare exit_status
 | 
|---|
| 1660 | 
 | 
|---|
| 1661 | 2000-12-21  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1662 | 
 | 
|---|
| 1663 |         * lib/snprintf.c [BOOTSTRAP]: Don't include stdio.h
 | 
|---|
| 1664 |         * lib/strerror.c [BOOTSTRAP]: Don't include stdio.h
 | 
|---|
| 1665 |         * sed/execute.c [!HAVE_ISATTY]: Don't buffer stdin
 | 
|---|
| 1666 | 
 | 
|---|
| 1667 | 2000-12-11  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1668 | 
 | 
|---|
| 1669 |         * sed/compile.c(mark_subst_opts): Support [mMsS] flags
 | 
|---|
| 1670 |         * sed/compile.c(read_text): Support [MS] flags for
 | 
|---|
| 1671 |         addresses
 | 
|---|
| 1672 |         * sed/regex.c(compile_regex): Support arbitrary flags for
 | 
|---|
| 1673 |         regncomp.
 | 
|---|
| 1674 | 
 | 
|---|
| 1675 |         * sed/regex.c(compile_regex) [REG_PERL]: Don't call
 | 
|---|
| 1676 |         normalize_text.
 | 
|---|
| 1677 | 
 | 
|---|
| 1678 | 2000-12-08  Paolo Bonzini  <bonzini@gnu.org>
 | 
|---|
| 1679 | 
 | 
|---|
| 1680 |         * basicdefs.h: Moved here from the `sed' subdirectory.
 | 
|---|
| 1681 | 
 | 
|---|
| 1682 |         * configure.in: Removed crap to pick a regex engine.
 | 
|---|
| 1683 |         Added snprintf to the AC_REPLACE_FUNCS call.
 | 
|---|
| 1684 | 
 | 
|---|
| 1685 |         * lib/snprintf.c: New file.
 | 
|---|
| 1686 | 
 | 
|---|
| 1687 |         * sed/regex.c(compile_regex): Use regncomp
 | 
|---|
| 1688 |         * sed/regex.c(match_regex): Use regexec2
 | 
|---|
| 1689 | 
 | 
|---|
| 1690 |         * sed/compile.c(compile_program): Implemented the `v' command.
 | 
|---|
| 1691 | 
 | 
|---|
| 1692 |         * sed/sed.c(main): Implemented the `r' and `R' options
 | 
|---|
| 1693 | 
 | 
|---|
| 1694 |         * sed/sed.h: Replaced use_extended_syntax_t with
 | 
|---|
| 1695 |         extended_regexp_flags to support Perl regular expressions.
 | 
|---|
| 1696 | 
 | 
|---|
| 1697 |         * sed/execute.c(open_next_file): Don't mmap stdin (because
 | 
|---|
| 1698 |         we cannot seek into it, so a redirected stdin's contents
 | 
|---|
| 1699 |         would not be "eaten" by sed)
 | 
|---|
| 1700 | 
 | 
|---|
| 1701 | Mon Aug 30 23:40:08 PDT 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1702 | 
 | 
|---|
| 1703 |         *** Version 3.02.80 released
 | 
|---|
| 1704 | 
 | 
|---|
| 1705 |         * sed/execute.c(do_subst): lib/regex.c(re_search_2) seems to
 | 
|---|
| 1706 |         want one extra backreference register; humor it.
 | 
|---|
| 1707 | 
 | 
|---|
| 1708 |         * sed/regex.c(compile_regex): work around some odd assumptions
 | 
|---|
| 1709 |         that lib/regex.c(re_compile_pattern) makes about our desired
 | 
|---|
| 1710 |         RE syntax.
 | 
|---|
| 1711 | 
 | 
|---|
| 1712 |         * configure.in: tweaked version to 3.02.80; added new entries
 | 
|---|
| 1713 |         to the ALL_LINGUAS definition.
 | 
|---|
| 1714 | 
 | 
|---|
| 1715 |         * doc/sed.1, doc/sed.texi, BUGS: explicitly request the output
 | 
|---|
| 1716 |         of sed --version in bug-reporting instructions.
 | 
|---|
| 1717 | 
 | 
|---|
| 1718 |         * doc/sed.texi: the old "informal seders list" is dead; document
 | 
|---|
| 1719 |         the new sed-users mailing list instead (under Other Resources).
 | 
|---|
| 1720 | 
 | 
|---|
| 1721 | 
 | 
|---|
| 1722 | Thu Aug 19 23:27:54 PDT 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1723 | 
 | 
|---|
| 1724 |         * sed/sed.h: Add explicit #include of "regex-sed.h" (rather
 | 
|---|
| 1725 |          than relying on parent file doing so); change the "cmd_regex"
 | 
|---|
| 1726 |          member of sed_cmd: make it a pointer (instead of a struct),
 | 
|---|
| 1727 |          and change its name to cmd_subst; add prototypes for newly
 | 
|---|
| 1728 |          exported functions bad_prog(), normalize_text(), compile_regex(),
 | 
|---|
| 1729 |          match_regex(), and release_regex(); drop rx_testing variable.
 | 
|---|
| 1730 | 
 | 
|---|
| 1731 |         * sed/compile.c: move the compile_regex() function to regex.c;
 | 
|---|
| 1732 |         export bad_prog() and normalize_text() functions; eliminate the
 | 
|---|
| 1733 |         rx_testing debris; rename the NOLEAKS symbol to more descriptive
 | 
|---|
| 1734 |         DEBUG_LEAKS; make cmd_regex to cmd_subst fixes (see above);
 | 
|---|
| 1735 |         make use of newly abstracted release_regex() function.
 | 
|---|
| 1736 | 
 | 
|---|
| 1737 |         * sed/execute.c: abstract out the regex matching to
 | 
|---|
| 1738 |         regex.c:match_regex(); NOLEAKS to DEBUG_LEAKS change;
 | 
|---|
| 1739 |         cmd_regex to cmd_subst structure member name change.
 | 
|---|
| 1740 | 
 | 
|---|
| 1741 |         * sed/execute.c(do_subst): use re_registers/regoff_t instead of
 | 
|---|
| 1742 |         regmatch_t to hold the backreference registers, make "offset"
 | 
|---|
| 1743 |         always be relative to the beginning of the string (rather than
 | 
|---|
| 1744 |         a delta from "start"), defer some matching bookkeeping (e.g.,
 | 
|---|
| 1745 |         not_bol_p) to match_regex().
 | 
|---|
| 1746 | 
 | 
|---|
| 1747 |         * sed/sed.c(main): loose rx_testing variable; NOLEAKS
 | 
|---|
| 1748 |         (aka DEBUG_LEAKS) code attempting to release
 | 
|---|
| 1749 |         _nl_current_default_domain is problematic, so omit it.
 | 
|---|
| 1750 | 
 | 
|---|
| 1751 |         * sed/regex.c: new file --- abstracts out the interface to the
 | 
|---|
| 1752 |         regex engine so that less conditional code is required in
 | 
|---|
| 1753 |         compile.c and execute.c, and so as to make a change of engine
 | 
|---|
| 1754 |         easier; implements compile_regex() (which looks an awful lot
 | 
|---|
| 1755 |         like the one that used to live in compile.c), match_regex(),
 | 
|---|
| 1756 |         and (if DEBUG_LEAKS is set) release_regex().
 | 
|---|
| 1757 | 
 | 
|---|
| 1758 | Sun Apr 18 04:40:46 PDT 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1759 | 
 | 
|---|
| 1760 |         * sed/sed.c(main): conditionalize calls to setlocale() and
 | 
|---|
| 1761 |         textdomain() to only occur if their support is needed/wanted.
 | 
|---|
| 1762 | 
 | 
|---|
| 1763 | Sun Apr 18 03:01:46 PDT 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1764 | 
 | 
|---|
| 1765 |         * bootstrap.sh: "foo || bar && baz" was not grouping like I
 | 
|---|
| 1766 |         expected ("foo || (bar && baz)") under at least one shell,
 | 
|---|
| 1767 |         so change the test for a pre-existing config.h file to an
 | 
|---|
| 1768 |         if statement.
 | 
|---|
| 1769 | 
 | 
|---|
| 1770 |         * bootstrap.sh: added -DUSE_REGEX_GNU_H option to the
 | 
|---|
| 1771 |         compiler invocation, to ensure that we get a usable
 | 
|---|
| 1772 |         regex library included.
 | 
|---|
| 1773 | 
 | 
|---|
| 1774 | Sun Apr 18 02:59:42 PDT 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1775 | 
 | 
|---|
| 1776 |         * sed/sed.h, sed/utils.c: conditionalized inclusion of <libintl.h>
 | 
|---|
| 1777 |         to occur only if ENABLE_NLS is defined.
 | 
|---|
| 1778 | 
 | 
|---|
| 1779 | Sun Apr 18 01:48:45 PDT 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1780 | 
 | 
|---|
| 1781 |         * sed/compile.c(xofa,normalize_text,convert_number): change
 | 
|---|
| 1782 |         name of xofa() function to convert_number(); change semantics
 | 
|---|
| 1783 |         to do all of the work of the text->number conversion.
 | 
|---|
| 1784 | 
 | 
|---|
| 1785 |         * sed/compile.c(normalize_text): add new \dDDD decimal
 | 
|---|
| 1786 |         and \oOOO octal escapes.
 | 
|---|
| 1787 | 
 | 
|---|
| 1788 | Sun Mar 28 21:05:07 PST 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1789 | 
 | 
|---|
| 1790 |         * sed/sed.c(main): if NOLEAKS is set, free up a word that
 | 
|---|
| 1791 |         the call to textdomain() allocated.
 | 
|---|
| 1792 | 
 | 
|---|
| 1793 |         * sed/execute.c(read_file_line): plug up (minor) memory leak:
 | 
|---|
| 1794 |         if buffer.alloc==0 we may have malloc()'d 1 byte anyway,
 | 
|---|
| 1795 |         so be sure to FREE(buffer.text) before calling line_init();
 | 
|---|
| 1796 | 
 | 
|---|
| 1797 | Fri Mar 26 16:52:10 PST 1999  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1798 | 
 | 
|---|
| 1799 |         * sed/compile.c(match_slash): somewhere between 3.02
 | 
|---|
| 1800 |         and 3.02a we lost the ability to use a newline as
 | 
|---|
| 1801 |         the s/// delimiter; restore this ability.
 | 
|---|
| 1802 | 
 | 
|---|
| 1803 |         * sed/compile.c(compile_regex): forget about trying
 | 
|---|
| 1804 |         to cache the compiled form of the last RE --- it
 | 
|---|
| 1805 |         causes more problems than its worth.  We now only
 | 
|---|
| 1806 |         cache the source form.
 | 
|---|
| 1807 | 
 | 
|---|
| 1808 |         * testsuite/help.good: update to reflect output containing
 | 
|---|
| 1809 |         new options.
 | 
|---|
| 1810 | 
 | 
|---|
| 1811 | Sun Dec  6 00:51:23 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1812 | 
 | 
|---|
| 1813 |         * sed/utils.c(ck_fwrite): fix i18n bug of using a printf
 | 
|---|
| 1814 |         fragment of "item%s" to handle plural text.
 | 
|---|
| 1815 | 
 | 
|---|
| 1816 | Mon Nov 23 11:03:40 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1817 | 
 | 
|---|
| 1818 |         * doc/sed.1, doc/sed.texi: ran ispell over these
 | 
|---|
| 1819 |         files to catch the more obvious typos...
 | 
|---|
| 1820 | 
 | 
|---|
| 1821 | Sun Nov  1 00:09:07 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1822 | 
 | 
|---|
| 1823 |         * sed/execute.c(do_list): make a `lcmd_out_line_len'
 | 
|---|
| 1824 |         (--line-length) of zero mean "infinite length",
 | 
|---|
| 1825 |         i.e., "never wrap".
 | 
|---|
| 1826 | 
 | 
|---|
| 1827 | Sat Oct 31 23:06:50 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1828 | 
 | 
|---|
| 1829 |         * execute.c(match_an_address_p,process_files),
 | 
|---|
| 1830 |         compile.c(compile_program): back out the "zero-address"
 | 
|---|
| 1831 |         changes of 1998-09-27.  It was a neat idea, but there are
 | 
|---|
| 1832 |         too many dark corners which don't work well.  The
 | 
|---|
| 1833 |         special code for handling line ranges starting at
 | 
|---|
| 1834 |         address zero (from 1998-08-31) are still there though:
 | 
|---|
| 1835 |         this seems to work fine with no surprises.
 | 
|---|
| 1836 | 
 | 
|---|
| 1837 | Sat Oct 31 22:18:59 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1838 | 
 | 
|---|
| 1839 |         * sed/sed.c, sed/sed.h, sed/execute.c: added new
 | 
|---|
| 1840 |         `lcmd_out_line_len' variable.  (Idea suggested by
 | 
|---|
| 1841 |         Carlos J. G. Duarte <l38076@alfa.ist.utl.pt>.)
 | 
|---|
| 1842 |         Also added ATOI macro (which uses strtoul() if available,
 | 
|---|
| 1843 |         with fall-back to atoi()).
 | 
|---|
| 1844 |         * sed/sed.c(main): attempt to use COLS environment variable
 | 
|---|
| 1845 |         to set a reasonable `lcmd_out_line_len'; added -l/--line-length
 | 
|---|
| 1846 |         command-line options to set the new `lcmd_out_line_len' flag.
 | 
|---|
| 1847 |         * sed/sed.c(usage): documented new -l/--line-length options.
 | 
|---|
| 1848 |         * sed/execute.c(do_list): use `lcmd_out_line_len' variable
 | 
|---|
| 1849 |         instead of `LCMD_OUT_LINE_LEN'.
 | 
|---|
| 1850 |         * sed/execute.c: deleted now obsolete LCMD_OUT_LINE_LEN define.
 | 
|---|
| 1851 |         * configure.in: added strtoul to the AC_CHECK_FUNCS call.
 | 
|---|
| 1852 | 
 | 
|---|
| 1853 | Sat Oct 31 21:37:17 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1854 | 
 | 
|---|
| 1855 |         * sed/sed.c, sed/sed.h, sed/execute.c: added new `force_unbuffered'
 | 
|---|
| 1856 |         flag.  (Idea suggested by Frank Strauss <strauss@escape.de>.)
 | 
|---|
| 1857 |         * sed/sed.c(main): added -u/--unbuffered command-line options
 | 
|---|
| 1858 |         to set the new `force_unbuffered' flag.
 | 
|---|
| 1859 |         * sed/sed.c(usage): documented new -u/--unbuffered options.
 | 
|---|
| 1860 |         * sed/execute.c: changed the name of the `is_tty' flag in struct
 | 
|---|
| 1861 |         input to a more generic `no_buffering'; also removed HAVE_ISATTY
 | 
|---|
| 1862 |         conditional on this member.
 | 
|---|
| 1863 |         * sed/execute.c(slow_getline): removed HAVE_ISATTY conditonal
 | 
|---|
| 1864 |         compilation of this function.
 | 
|---|
| 1865 |         * sed/execute.c(output_line): if force_unbuffered is set,
 | 
|---|
| 1866 |         then force a fflush() even if writing to stdout.
 | 
|---|
| 1867 |         * sed/execute.c(open_next_file): added handling of the
 | 
|---|
| 1868 |         new `force_unbuffered' flag so that slow_getline()
 | 
|---|
| 1869 |         will always be used for input.
 | 
|---|
| 1870 |         * sed/execute.c(read_file_line): changed the (conditionally
 | 
|---|
| 1871 |         compiled) test of `input->is_tty' to (unconditionally)
 | 
|---|
| 1872 |         use the new spelling `input->no_buffering'.
 | 
|---|
| 1873 | 
 | 
|---|
| 1874 | Thu Oct 15 12:08:09 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1875 | 
 | 
|---|
| 1876 |         * configure.in: deleted AC_ARG_PROGRAM call; this is already
 | 
|---|
| 1877 |         done for us by AM_INIT_AUTOMAKE, and we were winding up
 | 
|---|
| 1878 |         with a doubled-transform.
 | 
|---|
| 1879 | 
 | 
|---|
| 1880 | Sun Sep 27 01:42:42 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1881 | 
 | 
|---|
| 1882 |         * compile.c(compile_program): remove special-case code for matching
 | 
|---|
| 1883 |         address range with a `0' beginning.
 | 
|---|
| 1884 | 
 | 
|---|
| 1885 |         * compile.c(compile_address): change default addr_number to
 | 
|---|
| 1886 |         be a pragmatically impossible countT value, instead of zero.
 | 
|---|
| 1887 | 
 | 
|---|
| 1888 |         * execute.c: spell macro REGNEXEC() unconditionally instead of
 | 
|---|
| 1889 |         playing with conditional definition of regnexec() macro.
 | 
|---|
| 1890 | 
 | 
|---|
| 1891 |         * execute.c(match_an_address_p): added third argument (and changed
 | 
|---|
| 1892 |         callers in match_address_p).  Added special code to ignore
 | 
|---|
| 1893 |         non-numeric matches when processing "line zero".
 | 
|---|
| 1894 | 
 | 
|---|
| 1895 |         * execute.c(process_files): added a "line zero" pass through the
 | 
|---|
| 1896 |         commands script.
 | 
|---|
| 1897 | 
 | 
|---|
| 1898 | Sun Sep 27 00:20:53 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1899 | 
 | 
|---|
| 1900 |         * compile.c(xofa,normalize_text): new functions.
 | 
|---|
| 1901 |         * compile.c(compile_regex): cache last_compiled_re (with its
 | 
|---|
| 1902 |         associated flags); add POSIXLY_CORRECT behavior for empty RE.
 | 
|---|
| 1903 |         Make use of the new normalize_text() function.
 | 
|---|
| 1904 |         * compile.c(setup_replacement): Make use of the new normalize_text()
 | 
|---|
| 1905 |         function.
 | 
|---|
| 1906 | 
 | 
|---|
| 1907 | Sat Sep 26 22:59:13 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1908 | 
 | 
|---|
| 1909 |         * lib/regex-gnu.h: added missing prototype for regncomp().
 | 
|---|
| 1910 | 
 | 
|---|
| 1911 | Mon Sep 14 20:47:23 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1912 | 
 | 
|---|
| 1913 |         * sed/sed.c(main): use EXIT_SUCCESS instead of 0, in case
 | 
|---|
| 1914 |         we are built on a system (such as VMS) where EXIT_SUCCESS
 | 
|---|
| 1915 |         is distinct from 0.
 | 
|---|
| 1916 | 
 | 
|---|
| 1917 | Wed Sep  9 22:17:28 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1918 | 
 | 
|---|
| 1919 |         * sed/Makefile.am: added -I../intl the INCLUDES line; if we are
 | 
|---|
| 1920 |         building in a directory outside the source tree and the system
 | 
|---|
| 1921 |         we are building on does not have a <libintl.h> header, then
 | 
|---|
| 1922 |         the build was failing, because libintl.h is a build-time
 | 
|---|
| 1923 |         constructed source file.
 | 
|---|
| 1924 | 
 | 
|---|
| 1925 |         * configure.in: tweaked version to be 3.02b.
 | 
|---|
| 1926 | 
 | 
|---|
| 1927 | Wed Sep  9 19:28:14 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1928 | 
 | 
|---|
| 1929 |         *** Version 3.02a released
 | 
|---|
| 1930 | 
 | 
|---|
| 1931 |         * sed/compile.c(mark_subst_opts,read_label,compile_program):
 | 
|---|
| 1932 |         wherever we accept a ; as a command terminator, also allow a } or
 | 
|---|
| 1933 |         a # to appear.  (This allows for less cluttered-looking scripts,
 | 
|---|
| 1934 |         such as: sed '/foo/{x;G}' (instead of: sed '/foo/{x;G;}').)
 | 
|---|
| 1935 | 
 | 
|---|
| 1936 | Wed Sep  9 18:17:07 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1937 | 
 | 
|---|
| 1938 |         * sed/compile.c(compile_regex): use regncomp() instead
 | 
|---|
| 1939 |         of regcomp(), so that a script with NULs in its REs
 | 
|---|
| 1940 |         will work in the expected manner.
 | 
|---|
| 1941 | 
 | 
|---|
| 1942 |         * sed/compile.c(ADDNUL,REGNCOMP): added support macros
 | 
|---|
| 1943 |         for above.
 | 
|---|
| 1944 | 
 | 
|---|
| 1945 |         * lib/regex.c(regncomp,regcomp): added regncomp() and
 | 
|---|
| 1946 |         made regcomp() a simple wrapper function.
 | 
|---|
| 1947 | 
 | 
|---|
| 1948 | Mon Aug 31 21:48:30 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1949 | 
 | 
|---|
| 1950 |         * sed/sed.c(compile_program): if the first address of
 | 
|---|
| 1951 |         a range is the number 0 (or a 0~N sequence), start
 | 
|---|
| 1952 |         out in the "a1_matched" state.  This allows one
 | 
|---|
| 1953 |         to match an initial chunk of a file without undue
 | 
|---|
| 1954 |         convolutions for handling the case where the match
 | 
|---|
| 1955 |         for the end of the sequence happens to be the first
 | 
|---|
| 1956 |         line.
 | 
|---|
| 1957 | 
 | 
|---|
| 1958 | Sun Aug 16 03:34:25 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1959 | 
 | 
|---|
| 1960 |         * sed/compile.c(snarf_char_class,match_slash): simplify
 | 
|---|
| 1961 |         handling of "premature newline" error. Also, get the
 | 
|---|
| 1962 |         line number right in the error message if we encounter
 | 
|---|
| 1963 |         a "premature newline" during char-class snarfing.
 | 
|---|
| 1964 | 
 | 
|---|
| 1965 | Sun Aug 16 02:59:20 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1966 | 
 | 
|---|
| 1967 |         * sed/compile.c: added N_() markers and corresponding gettext()
 | 
|---|
| 1968 |         (er, _()) calls.
 | 
|---|
| 1969 | 
 | 
|---|
| 1970 |         * Merged in i18n contribution from Erick Branderhorst
 | 
|---|
| 1971 |         <Erick.Branderhorst@asml.nl>.  His ChangeLog entry
 | 
|---|
| 1972 |         for the changes I've incorporated so far:
 | 
|---|
| 1973 | 
 | 
|---|
| 1974 | 1998-07-24  Erick Branderhorst  <Erick.Branderhorst@asml.nl>
 | 
|---|
| 1975 |         * configure.in (ALL_LINGUAS, AM_GNU_GETTEXT): nl
 | 
|---|
| 1976 |         * sed/{sed.h,utils.c}: #include <libintl.h> #define _(String)
 | 
|---|
| 1977 |         gettext (String)
 | 
|---|
| 1978 |         * sed/sed.c: #include <locale.h>
 | 
|---|
| 1979 |         * po/POTFILES.in: sed/{compile,execute,sed,utils}.c
 | 
|---|
| 1980 |         * run gettextize -f
 | 
|---|
| 1981 |         * acconfig.h: #undef LOCALEDIR ENABLE_NLS HAVE_CATGETS
 | 
|---|
| 1982 |         HAVE_GETTEXT HAVE_LC_MESSAGES HAVE_STPCPY
 | 
|---|
| 1983 | 
 | 
|---|
| 1984 | Fri Aug 14 13:52:57 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1985 | 
 | 
|---|
| 1986 |         * Merged code from 3.02 with a branched development
 | 
|---|
| 1987 |         tree from late May; the following (out-of-order)
 | 
|---|
| 1988 |         changelog entry is from the branched tree.
 | 
|---|
| 1989 | 
 | 
|---|
| 1990 | Sat May 30 12:23:16 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 1991 | 
 | 
|---|
| 1992 |         * sed/compile.c, sed/execute.c: added (conditional on NOLEAKS macro)
 | 
|---|
| 1993 |         code to free all dynamically allocated memory.
 | 
|---|
| 1994 | 
 | 
|---|
| 1995 |         * sed/sed.c, sed/compile.c, sed/execute.c: much shuffling
 | 
|---|
| 1996 |         of code --- ordered functions such that no forward
 | 
|---|
| 1997 |         declarations are necessary, and placed all static prototypes
 | 
|---|
| 1998 |         immediately before the actual function definition.
 | 
|---|
| 1999 |         This accomplished two things: first, I find the new ordering
 | 
|---|
| 2000 |         a more natural way to read the code than the previous
 | 
|---|
| 2001 |         ordering, and second, the new ordering give the compiler
 | 
|---|
| 2002 |         a better opportunity to discover inlining possibilities.
 | 
|---|
| 2003 |         (The odd "prototype declaration+old-style definition"
 | 
|---|
| 2004 |         style is used because I feel it is the least ugly way
 | 
|---|
| 2005 |         of supporting K&R1 C while still getting the benefit of
 | 
|---|
| 2006 |         prototypes when they are available.)
 | 
|---|
| 2007 | 
 | 
|---|
| 2008 |         * sed/basicdefs.h: added MEMCPY() macro to hide the VCAST()s
 | 
|---|
| 2009 |         that ought to be used with memcpy().
 | 
|---|
| 2010 | 
 | 
|---|
| 2011 |         * sed/execute.c: Change calls to memcpy() to go through the
 | 
|---|
| 2012 |         new MEMCPY() macro.  Various prototypes: elide variable name
 | 
|---|
| 2013 |         if it does not add any human-useful documentary information
 | 
|---|
| 2014 |         to the bare type.
 | 
|---|
| 2015 | 
 | 
|---|
| 2016 |         * sed/sed.c(main): Updated calls to compile_string() to add third
 | 
|---|
| 2017 |         (length) argument.  Changed call to obsolete close_all_files()
 | 
|---|
| 2018 |         to a call to the new finish_program().
 | 
|---|
| 2019 | 
 | 
|---|
| 2020 |         * sed/sed.c(map_file): Attempt to clean-up how "size" gets
 | 
|---|
| 2021 |         cast and tested; remove spurious S_ISREG test (just let
 | 
|---|
| 2022 |         mmap() fail if it doesn't support the underlying file type).
 | 
|---|
| 2023 | 
 | 
|---|
| 2024 |         * sed/sed.c: Deleted old RX library stub declarations.
 | 
|---|
| 2025 | 
 | 
|---|
| 2026 |         * sed/sed.c(map_file,unmap_file): added VCAST()s to the
 | 
|---|
| 2027 |         mmap()/munmap() calls.
 | 
|---|
| 2028 | 
 | 
|---|
| 2029 |         * sed/utils.c(ck_fclose): added support for ANSI C
 | 
|---|
| 2030 |         functionality where passing a NULL argument means
 | 
|---|
| 2031 |         to fclose() _all_ open streams.  (Well, almost.
 | 
|---|
| 2032 |         Only closes streams which were previously ck_fopen()ed,
 | 
|---|
| 2033 |         as I don't care to figure out how to autoconf-detect
 | 
|---|
| 2034 |         whether fclose(NULL) is properly supported on a given
 | 
|---|
| 2035 |         platform.)
 | 
|---|
| 2036 | 
 | 
|---|
| 2037 |         * sed/sed.h: Renamed `struct text_buf' member `text_len'
 | 
|---|
| 2038 |         to `text_length'.  Abstracted out `enum addr_types'
 | 
|---|
| 2039 |         from `struct addr'; added new enum types num2,step,step_mod;
 | 
|---|
| 2040 |         renamed mod to num_mod.  De-unionized the regex,number,
 | 
|---|
| 2041 |         {modulo-offset/step} components of `struct addr', in
 | 
|---|
| 2042 |         anticipation of new features.  Changed type of `a2' member
 | 
|---|
| 2043 |         of `struct sed_cmd': now a pointer to save space.
 | 
|---|
| 2044 |         Abstracted out `struct replacement' from `struct subst'.
 | 
|---|
| 2045 |         Cleaned up declaration of `x' union of `struct addr'.
 | 
|---|
| 2046 |         Fixed prototype for compile_string().  Replaced prototype
 | 
|---|
| 2047 |         for old close_all_files() with one for new finish_program().
 | 
|---|
| 2048 | 
 | 
|---|
| 2049 |         * sed/sed.h, sed/compile.c, sed/execute.c: changed to
 | 
|---|
| 2050 |         simplify the data structures used for branches and
 | 
|---|
| 2051 |         command blocks: simplified `struct vector'; made
 | 
|---|
| 2052 |         `struct label' local to compile.c; `struct sed_cmd'
 | 
|---|
| 2053 |         was modified to support a simpler design for branches
 | 
|---|
| 2054 |         and blocks.
 | 
|---|
| 2055 | 
 | 
|---|
| 2056 |         * sed/execute.c: Conditionally added ADDNUL() macro so that
 | 
|---|
| 2057 |         the function call overhead is only incurred if nul_append()
 | 
|---|
| 2058 |         _must_ be called.  Made some commentary edits, including
 | 
|---|
| 2059 |         typo fixes.
 | 
|---|
| 2060 |         * sed/execute.c(resize_line): changed semantics of "len" argument
 | 
|---|
| 2061 |         from "additional length" to "target length"; made
 | 
|---|
| 2062 |         INITIAL_BUFFER_SIZE a minimum allocation length.
 | 
|---|
| 2063 |         * sed/execute.c(str_append): adjusted to new resize_line()
 | 
|---|
| 2064 |         semantics.
 | 
|---|
| 2065 |         * sed/execute.c(line_copy): use FREE()+MALLOC() instead of
 | 
|---|
| 2066 |         REALLOC() to avoid unnecessary copying of old text; add the
 | 
|---|
| 2067 |         "try doubling first" allocation heuristic (just like
 | 
|---|
| 2068 |         resize_line() does).
 | 
|---|
| 2069 |         * sed/execute.c(line_exchange): new function.
 | 
|---|
| 2070 |         * sed/execute.c(nul_append): make whole function (not just its
 | 
|---|
| 2071 |         body) conditional on HAVE_REGNEXEC macro; adjust to new
 | 
|---|
| 2072 |         resize_line() semantics.
 | 
|---|
| 2073 |         * sed/execute.c(read_mem_line): use str_append() instead if
 | 
|---|
| 2074 |         custom in-line code; compensate for new default of
 | 
|---|
| 2075 |         "line.chomped = 0" in read_pattern_space() by setting
 | 
|---|
| 2076 |         "line.chomped = 1" where appropriate.
 | 
|---|
| 2077 |         * sed/execute.c(read_file_line): use different trigger to
 | 
|---|
| 2078 |         determine that "buffer" is uninitialized, and do a full
 | 
|---|
| 2079 |         initialization if required; use str_append() instead of custom
 | 
|---|
| 2080 |         in-line code in two places; compensate for new default of
 | 
|---|
| 2081 |         "line.chomped = 0" in read_pattern_space() by setting
 | 
|---|
| 2082 |         "line.chomped = 1" where appropriate.
 | 
|---|
| 2083 |         * sed/execute.c(output_line): don't bother calling ck_fwrite()
 | 
|---|
| 2084 |         if length==0.
 | 
|---|
| 2085 |         * sed/execute.c(release_append_queue): new function.
 | 
|---|
| 2086 |         * sed/execute.c(dump_append_queue): use release_append_queue()
 | 
|---|
| 2087 |         instead of in-line equivalent.
 | 
|---|
| 2088 |         * sed/execute.c(read_pattern_space): conditionalize call to
 | 
|---|
| 2089 |         dump_append_queue() for alleged performance reasons; changed
 | 
|---|
| 2090 |         default "line.chomped" value to more common "1", and added an
 | 
|---|
| 2091 |         assignment of "0" where this made a difference.
 | 
|---|
| 2092 |         * sed/execute.c(match_an_address_p): deleted "is_addr2_p"
 | 
|---|
| 2093 |         argument; reorder cases to match order in enum declaration; add
 | 
|---|
| 2094 |         cases for new "addr_is_num2", "addr_is_step", and
 | 
|---|
| 2095 |         "addr_is_step_mod" address types; alter nul_append() call to be
 | 
|---|
| 2096 |         through ADDNUL() macro; fix to new struct member and enum
 | 
|---|
| 2097 |         spellings in (formerly addr_is_mod); addr_is_num_mod case.
 | 
|---|
| 2098 |         * sed/execute.c(match_address_p): remove oblsolete third argument
 | 
|---|
| 2099 |         to calls to match_address_p(); alter references to sed_cmd
 | 
|---|
| 2100 |         member a2 to reflect new pointer status; add new support for
 | 
|---|
| 2101 |         a2->addr_type addr_is_step and addr_is_step_mod cases.
 | 
|---|
| 2102 |         * sed/execute.c(do_subst): add NOLEAKS support logic; use
 | 
|---|
| 2103 |         ADDNUL() wrapper to nul_append(); simplify replacement
 | 
|---|
| 2104 |         expansion by using the new "struct replacement" data structure;
 | 
|---|
| 2105 |         use line_exchange() function instead of custom in-line code.
 | 
|---|
| 2106 |         * sed/execute.c(process_files): added NOLEAKS code.
 | 
|---|
| 2107 |         * sed/execute.c(execute_program): updated implementations
 | 
|---|
| 2108 |         of the `{', `}', `:', `b', and `t' commands; modified
 | 
|---|
| 2109 |         `c' command gratuituosly; fixed potential memory
 | 
|---|
| 2110 |         overrun in `D' command.  Simplified how nonstandard
 | 
|---|
| 2111 |         `loop increments' work.  Use line_exchange() instead of
 | 
|---|
| 2112 |         custom in-line code in 'x' case.
 | 
|---|
| 2113 |         * sed/execute.c[EXPERIMENTAL_DASH_N_OPTIMIZATION conditional
 | 
|---|
| 2114 |         code]: various modifications intended to keep this
 | 
|---|
| 2115 |         code in sync with the new changes, but the code still
 | 
|---|
| 2116 |         retains its previous bugs.
 | 
|---|
| 2117 | 
 | 
|---|
| 2118 |         * sed/compile.c: use "exit(EXIT_FAILURE) instead of "exit(1)",
 | 
|---|
| 2119 |         just in case we get compiled under VMS.
 | 
|---|
| 2120 |         * sed/compile.c: Change type of prog_info.base to decrease needs
 | 
|---|
| 2121 |         for casting; then elimiated the casts in question ;-).
 | 
|---|
| 2122 |         * sed/compile.c: Added struct sed_label (moved from sed.h, then
 | 
|---|
| 2123 |         modified).
 | 
|---|
| 2124 |         * sed/compile.c: Removed "readit_p" flag from struct fp_list.
 | 
|---|
| 2125 |         * sed/compile.c: Added module-global "blocks" variable.
 | 
|---|
| 2126 |         * sed/compile.c: Extracted more error-message constant strings
 | 
|---|
| 2127 |         to named variables.
 | 
|---|
| 2128 |         * sed/compile.c(check_final_program): updated to
 | 
|---|
| 2129 |         reflect new data structures and use new fucntions.
 | 
|---|
| 2130 |         Added call to compile_regex() to release unneeded
 | 
|---|
| 2131 |         memory.
 | 
|---|
| 2132 |         * sed/compile.c: deleted obsolete new_vector() function;
 | 
|---|
| 2133 |         abstracted new read_label() function; abstracted new
 | 
|---|
| 2134 |         release_label() function; added new `blocks' module-static
 | 
|---|
| 2135 |         variable.
 | 
|---|
| 2136 |         * sed/compile.c(compile_program): updated implementations
 | 
|---|
| 2137 |         of the `{', `}', `:', `b', and `t' commands; modified
 | 
|---|
| 2138 |         initialization from NULL vector.
 | 
|---|
| 2139 |         * sed/compile.c(compile_regex): added mechanism to
 | 
|---|
| 2140 |         release memory consumed by the cached `last' RE.
 | 
|---|
| 2141 |         * sed/compile.c(setup_jump,setup_label): updated
 | 
|---|
| 2142 |         name (from setup_jump to setup_label) and prototype;
 | 
|---|
| 2143 |         changed body to reflect data structure changes.
 | 
|---|
| 2144 |         * sed/compile.c: Add OPEN_BRACE and CLOSE_BRACE macros for better
 | 
|---|
| 2145 |         "vi" editing behavior.
 | 
|---|
| 2146 |         * sed/compile.c(compile_filename,read_filename,get_writefile):
 | 
|---|
| 2147 |         Replaced function compile_filename() with more orthogonal functions
 | 
|---|
| 2148 |         read_filename(), get_writefile().
 | 
|---|
| 2149 |         * sed/compile.c(compile_regex): Added ability to free the remembered
 | 
|---|
| 2150 |         "last RE" in compile_regex (for benifit of "NOLEAKS" code).
 | 
|---|
| 2151 |         * Made adjustments dictated by the change to struct sed_cmd which made
 | 
|---|
| 2152 |         the a2 member a pointer-to-addr instead of an addr.
 | 
|---|
| 2153 |         * sed/compile.c(setup_jump,read_label,setup_label,release_label):
 | 
|---|
| 2154 |         Added functions read_label(), setup_label(), release_label(); deleted
 | 
|---|
| 2155 |         function setup_jump().
 | 
|---|
| 2156 |         * sed/compile.c(new_replacement,setup_replacement,release_replacement):
 | 
|---|
| 2157 |         new functions.
 | 
|---|
| 2158 |         * sed/compile.c: Adjusted to new spelling of text_buf member
 | 
|---|
| 2159 |         ("text_length" instead of "text_len").
 | 
|---|
| 2160 |         * sed/compile.c(new_vector): deleted function.  (Due to new handling
 | 
|---|
| 2161 |         of blocks, only one instance remained, and that one was just as
 | 
|---|
| 2162 |         clear in-lined.)
 | 
|---|
| 2163 |         * sed/compile.c(compile_string): Added third argument; it now
 | 
|---|
| 2164 |         takes a counted string instead of a NUL-terminated string.
 | 
|---|
| 2165 |         * sed/compile.c(compile_file): added variable "map_base" to
 | 
|---|
| 2166 |         compensate for new type of prog_info.base.
 | 
|---|
| 2167 |         * sed/compile.c(check_final_program): reflect new style of
 | 
|---|
| 2168 |         handling blocks and struct sed_label.
 | 
|---|
| 2169 |         * sed/compile.c(close_all_files,finish_program): replaced function
 | 
|---|
| 2170 |         close_all_files() with more generic finish_program().
 | 
|---|
| 2171 |         * sed/compile.c(read_text): added new feature: if first non-blank
 | 
|---|
| 2172 |         character after the {a,i,c} command character is not "\", then
 | 
|---|
| 2173 |         use the trailing text on that line as the (first) line of text.
 | 
|---|
| 2174 |         Also added code conditional on NO_INPUT_INDENT to support the
 | 
|---|
| 2175 |         "feature" of stripping leading blanks from each input line; I
 | 
|---|
| 2176 |         do not read POSIX as permitting this behavior, nor do I think
 | 
|---|
| 2177 |         it is a good idea, so it is disabled by default, but some have
 | 
|---|
| 2178 |         argued that this blank-stripping is the "correct" behavior, so
 | 
|---|
| 2179 |         I offer them the option of building their sed that way.
 | 
|---|
| 2180 |         * sed/compile.c(compile_address): added xxx,+n and xxx,~n addressing;
 | 
|---|
| 2181 |         simplified code.
 | 
|---|
| 2182 |         * sed/compile.c(compile_program): added BAD_PLUS error detection;
 | 
|---|
| 2183 |         adjusted to new cur_cmd->a2 pointer status; added addr_is_num2
 | 
|---|
| 2184 |         detection; deleted pointless "a2->addr_number < a1.addr_number"
 | 
|---|
| 2185 |         check (addr_is_num2 semantics handle this just fine); updated
 | 
|---|
| 2186 |         code for '{', '}', ':', 'b', and 't' to reflect new design
 | 
|---|
| 2187 |         of branch handling, including making use of new functions
 | 
|---|
| 2188 |         related to the new design); added support for feature already
 | 
|---|
| 2189 |         mentioned in read_text() where {a,i,c} commands are able to have
 | 
|---|
| 2190 |         their text start on the same line as the command; changed some
 | 
|---|
| 2191 |         error messages (hopefully for the better); localized variables
 | 
|---|
| 2192 |         specific to individual commands (particularly 's' and 'y');
 | 
|---|
| 2193 |         made use of new setup_replacement() function in 's' command.
 | 
|---|
| 2194 | 
 | 
|---|
| 2195 | Mon Aug 10 19:58:49 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2196 | 
 | 
|---|
| 2197 |         * doc/sed.texi, doc/sed.1: sedtut10.txt is apparently dead.
 | 
|---|
| 2198 |         Deleted references to it and added a pointer to
 | 
|---|
| 2199 |         http://seders.icheme.org/tutorials/.  (Pointed out by
 | 
|---|
| 2200 |         Joerg Heitkoetter <joerg@de.uu.net>.)
 | 
|---|
| 2201 | 
 | 
|---|
| 2202 | Sat Aug  8 18:11:57 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2203 | 
 | 
|---|
| 2204 |         * djgpp/config.btm: per request by Michel de Ruiter
 | 
|---|
| 2205 |          <mdruiter@cs.vu.nl>, added "%1" to "%9" parameters.
 | 
|---|
| 2206 | 
 | 
|---|
| 2207 | Mon Aug  3 11:44:55 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2208 | 
 | 
|---|
| 2209 |         * doc/sed.texi: fix a couple of typos.  (Submitted by
 | 
|---|
| 2210 |         Alan Modra <alan@spri.levels.unisa.edu.au>.)
 | 
|---|
| 2211 | 
 | 
|---|
| 2212 | Sat Aug 01 17:49:06 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2213 | 
 | 
|---|
| 2214 |         *** Version 3.02 released
 | 
|---|
| 2215 | 
 | 
|---|
| 2216 |         * configure.in: Because of code change in 3.01a, bump the
 | 
|---|
| 2217 |         minor revision number for the release (now 3.02).
 | 
|---|
| 2218 | 
 | 
|---|
| 2219 | Sun Jul 26 16:07:55 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2220 | 
 | 
|---|
| 2221 |         *** Version 3.01a released
 | 
|---|
| 2222 | 
 | 
|---|
| 2223 |         * sed/compile.c(snarf_char_class):  the POSIX char-class
 | 
|---|
| 2224 |         recognition loop forgot to update its concept of "prev"
 | 
|---|
| 2225 |         as the loop progressed.
 | 
|---|
| 2226 | 
 | 
|---|
| 2227 |         * testsuite/Makefile.am: The dependency of version.good
 | 
|---|
| 2228 |         on [testsuite/]Makefile introduced in the previous
 | 
|---|
| 2229 |         release was botched -- it referred to "Makefile"
 | 
|---|
| 2230 |         as "$(srcdir)/Makefile, which of course doesn't work
 | 
|---|
| 2231 |         if you aren't building in the source tree.
 | 
|---|
| 2232 | 
 | 
|---|
| 2233 |         * djgpp/Makefile.am: add forgotten "config.btm" EXTRA_DIST
 | 
|---|
| 2234 |         member.
 | 
|---|
| 2235 | 
 | 
|---|
| 2236 |         * configure.in: update version.
 | 
|---|
| 2237 | 
 | 
|---|
| 2238 | Tue Jul 21 06:04:42 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2239 | 
 | 
|---|
| 2240 |         *** Version 3.01 released
 | 
|---|
| 2241 | 
 | 
|---|
| 2242 |         * configure.in: mark as release version!
 | 
|---|
| 2243 | 
 | 
|---|
| 2244 |         * Makefile.am: add BUGS and THANKS to the EXTRA_DIST target.
 | 
|---|
| 2245 | 
 | 
|---|
| 2246 |         * testsuite/Makefile.am: add dependency of version.good
 | 
|---|
| 2247 |         on [testsuite/]Makefile.
 | 
|---|
| 2248 | 
 | 
|---|
| 2249 | Mon Jul 20 12:38:10 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2250 | 
 | 
|---|
| 2251 |         * djgpp/config.btm: New file to support the 4DOS alternative
 | 
|---|
| 2252 |         to command.com.  (Sumitted by Eli Zaretskii on behalf of
 | 
|---|
| 2253 |         an anonymous 4DOS user.)
 | 
|---|
| 2254 | 
 | 
|---|
| 2255 | Fri Jul 17 00:36:34 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2256 | 
 | 
|---|
| 2257 |         *** Version 3.01-beta18 released
 | 
|---|
| 2258 | 
 | 
|---|
| 2259 |         * djgpp/config.sed: my "tweak" in beta17 was too
 | 
|---|
| 2260 |         hastily considered.  Back it out.
 | 
|---|
| 2261 | 
 | 
|---|
| 2262 |         * configure.in: update to beta18.
 | 
|---|
| 2263 | 
 | 
|---|
| 2264 | Wed Jul 15 01:02:15 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2265 | 
 | 
|---|
| 2266 |         *** Version 3.01-beta17 released
 | 
|---|
| 2267 | 
 | 
|---|
| 2268 |         * djgpp/config.sed: tweak/simplify s,,, commands at end.
 | 
|---|
| 2269 | 
 | 
|---|
| 2270 |         * configure.in: update to beta17.
 | 
|---|
| 2271 | 
 | 
|---|
| 2272 | 1998-07-14  Eli Zaretskii  <eliz@is.elta.co.il>
 | 
|---|
| 2273 | 
 | 
|---|
| 2274 |         * djgpp/config.sed: Edit all the occurences of = in the context of
 | 
|---|
| 2275 |         --option=value, including in the help messages, into
 | 
|---|
| 2276 |         --option:value, but leave DOS-style d:/foo/bar file names intact.
 | 
|---|
| 2277 | 
 | 
|---|
| 2278 |         * djgpp/config.bat: Use --srcdir:foo instead of --srcdir=foo.
 | 
|---|
| 2279 | 
 | 
|---|
| 2280 |         * testsuite/Makefile.am (help, version): Remove temporary files
 | 
|---|
| 2281 |         explicitly, don't use shell wildcards, so it works under DOS 8+3
 | 
|---|
| 2282 |         limits.
 | 
|---|
| 2283 | 
 | 
|---|
| 2284 | Thu Jul  9 13:06:00 PDT 1998 16:51:43 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2285 | 
 | 
|---|
| 2286 |         *** Version 3.01-beta16 released
 | 
|---|
| 2287 | 
 | 
|---|
| 2288 |         * djgpp/config.sed: tweak the configure script to use :
 | 
|---|
| 2289 |         instead of = for --with-foo=bar option parsing, to
 | 
|---|
| 2290 |         work around problems with how command.com handles =s.
 | 
|---|
| 2291 | 
 | 
|---|
| 2292 | Wed Jul  8 16:51:43 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2293 | 
 | 
|---|
| 2294 |         * djgpp/config.bat: correct inappropriate behavior that I
 | 
|---|
| 2295 |         introduced in the beta13 changes (if first argument is
 | 
|---|
| 2296 |         a directory, it needs to be handled as the --srcdir).
 | 
|---|
| 2297 | 
 | 
|---|
| 2298 |         * testsuite/version.gin, testsuite/version.good, testsuite/Makefile.am:
 | 
|---|
| 2299 |         Add target to automake to automatically update version.good
 | 
|---|
| 2300 |         from (new file) version.gin, instead of hand-editing the version
 | 
|---|
| 2301 |         number each release.
 | 
|---|
| 2302 | 
 | 
|---|
| 2303 |         * testsuite/Makefile.am: miscellaneous gratuitious tweakage --
 | 
|---|
| 2304 |         mainly adding $(RM) commands just because I didn't like
 | 
|---|
| 2305 |         leaving the tmp* files from successful runs laying about.
 | 
|---|
| 2306 |         Also some editorial comments.
 | 
|---|
| 2307 | 
 | 
|---|
| 2308 |         * configure.in: update to beta16.  Added and commented out
 | 
|---|
| 2309 |         experiment with AC_OUTPUT() for testsuite/version.good.
 | 
|---|
| 2310 |         Added code to properly handle bare (without =xxx)
 | 
|---|
| 2311 |         "--with-regex" option.
 | 
|---|
| 2312 | 
 | 
|---|
| 2313 | Sun Jul  5 21:02:16 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2314 | 
 | 
|---|
| 2315 |         *** Version 3.01-beta15 released
 | 
|---|
| 2316 | 
 | 
|---|
| 2317 |         * sed/utils.c(ck_fflush), sed/utils.h, sed/execute.c(output_line):
 | 
|---|
| 2318 |         add and use new ck_fflush() function.
 | 
|---|
| 2319 | 
 | 
|---|
| 2320 | Sun Jul  5 15:23:47 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2321 | 
 | 
|---|
| 2322 |         * sed/compile.c(bad_prog): add more detail to error
 | 
|---|
| 2323 |         messages about -e strings.
 | 
|---|
| 2324 | 
 | 
|---|
| 2325 | Sun Jul  5 14:29:45 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2326 | 
 | 
|---|
| 2327 |         * sed/compile.c(mark_subst_opts), sed/execute.c(do_subst):
 | 
|---|
| 2328 |         Define better semantics for interaction of the `g' flag
 | 
|---|
| 2329 |         with a numeric flag to the s/// command.  It used to
 | 
|---|
| 2330 |         be that the `g' command siezed control; now the first
 | 
|---|
| 2331 |         (number-1) matches are skipped and then `g' gets control
 | 
|---|
| 2332 |         after that.  (It is not clear whether this is a feature
 | 
|---|
| 2333 |         sneaking in during late beta, or a bug fix; the changes
 | 
|---|
| 2334 |         involved were trivial, so I decided to treat it as a bug
 | 
|---|
| 2335 |         fix.)
 | 
|---|
| 2336 | 
 | 
|---|
| 2337 |         * configure.in, testsuite/version.good: update to beta15.
 | 
|---|
| 2338 | 
 | 
|---|
| 2339 | Sat Jul  4 09:54:45 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2340 | 
 | 
|---|
| 2341 |         *** Version 3.01-beta14 released
 | 
|---|
| 2342 | 
 | 
|---|
| 2343 |         * sed/basicdefs.h, sed/compile.c, sed/execute.c:
 | 
|---|
| 2344 |         per report by "Kaveh R. Ghazi" <ghazi@caip.rutgers.edu>,
 | 
|---|
| 2345 |         copied the ISXXX macros from lib/regex.c so that
 | 
|---|
| 2346 |         silly machines which require isascii() to be true
 | 
|---|
| 2347 |         before the other isXXX() macros are valid will
 | 
|---|
| 2348 |         still work.
 | 
|---|
| 2349 | 
 | 
|---|
| 2350 |         * configure.in, testsuite/version.good: update to beta14.
 | 
|---|
| 2351 | 
 | 
|---|
| 2352 | Thu Jul  2 23:46:13 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2353 | 
 | 
|---|
| 2354 |         *** Version 3.01-beta13 released
 | 
|---|
| 2355 | 
 | 
|---|
| 2356 |         * configure.in, acconfig.h: set USE_REGEX_GNU_H symbol if we
 | 
|---|
| 2357 |         are going to be using lib/regex.c.
 | 
|---|
| 2358 | 
 | 
|---|
| 2359 |         * lib/Makefile.am, lib/regex.h, lib/regex-gnu.h, lib/regex.c:
 | 
|---|
| 2360 |         rename lib/regex.h to lib/regex-gnu.h, so that those who
 | 
|---|
| 2361 |         choose to use a different regex implementation will not
 | 
|---|
| 2362 |         pick-up lib/regex.h when doing "#include <regex.h>".
 | 
|---|
| 2363 | 
 | 
|---|
| 2364 |         * sed/regex-sed.h, sed/Makefile.am, sed/compile.c, sed/execute.c,
 | 
|---|
| 2365 |         sed/sed.c: create sed/regex-sed.h which acts as a switch
 | 
|---|
| 2366 |         to choose either lib/regex.h or the user-supplied <regex.h>,
 | 
|---|
| 2367 |         depending on the value passed to configure's --with-regex=
 | 
|---|
| 2368 |         option.
 | 
|---|
| 2369 | 
 | 
|---|
| 2370 | Thu Jul  2 17:22:31 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2371 | 
 | 
|---|
| 2372 |         * configure.in: if an alternative --with-regex= is given,
 | 
|---|
| 2373 |         do an AC_CHECK_FUNCS(regnexec regexec) to ensure that
 | 
|---|
| 2374 |         at least one of these functions is available.  Also,
 | 
|---|
| 2375 |         parallel changes for the default case.
 | 
|---|
| 2376 | 
 | 
|---|
| 2377 |         * sed/execute.c, acconfig.h: retire use of the WITH_REGNEXEC
 | 
|---|
| 2378 |         test macro in favor of HAVE_REGNEXEC test macro created
 | 
|---|
| 2379 |         by above change.
 | 
|---|
| 2380 | 
 | 
|---|
| 2381 |         * djgpp/config.bat: Play games to handle "install-sh",
 | 
|---|
| 2382 |         DOS filename restrictions, GNU makefile default rules,
 | 
|---|
| 2383 |         and getting a correct run of "configure" (contributed
 | 
|---|
| 2384 |         by Eli Zaretskii <eliz@is.elta.co.il>).
 | 
|---|
| 2385 | 
 | 
|---|
| 2386 |         * djgpp/Makefile.am, testsuite/Makefile.am, testsuite/Makefile.in,
 | 
|---|
| 2387 |         Makefile.am, configure.in: Various automake targets
 | 
|---|
| 2388 |         (such as distcheck) failed with old configuration.
 | 
|---|
| 2389 |         The simplest solution was to just add these .am
 | 
|---|
| 2390 |         files.  (The testsuite/Makefile.in was just renamed to
 | 
|---|
| 2391 |         testsuite/Makefile.am, then various redundant defines and
 | 
|---|
| 2392 |         targets were deleted.)  (Reported by Erick Branderhorst
 | 
|---|
| 2393 |         <Erick.Branderhorst@asml.nl>.)
 | 
|---|
| 2394 | 
 | 
|---|
| 2395 |         * testsuite/dc.good, testsuite/dc.inp: per suggestion from
 | 
|---|
| 2396 |         Greg Ubben <gsu@romulus.ncsc.mil>, use base 16 output to
 | 
|---|
| 2397 |         exercise even more of the dc.sed script.
 | 
|---|
| 2398 | 
 | 
|---|
| 2399 |         * configure.in, testsuite/version.good: update to beta13.
 | 
|---|
| 2400 | 
 | 
|---|
| 2401 | Sun Jun 28 16:21:02 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2402 | 
 | 
|---|
| 2403 |         *** Version 3.01-beta12 released
 | 
|---|
| 2404 | 
 | 
|---|
| 2405 |         * doc/sed.texi: Avoid mixing @code and @samp markups together:
 | 
|---|
| 2406 |         they look ugly in Info.  Use @url and @email instead of @example.
 | 
|---|
| 2407 |         Add indexes.  (Basis of changes contributed by Eli Zaretskii.)
 | 
|---|
| 2408 | 
 | 
|---|
| 2409 |         * djgpp/*, Makefile.am: add support for the DJGPP compiler,
 | 
|---|
| 2410 |         contributed by Eli Zaretskii <eliz@is.elta.co.il>.
 | 
|---|
| 2411 | 
 | 
|---|
| 2412 |         * dc.sed, testsuite/Makefile.in, testsuite/dc.inp, testsuite/dc.good:
 | 
|---|
| 2413 |         added this remarkable script, written and contributed
 | 
|---|
| 2414 |         by Greg Ubben <gsu@romulus.ncsc.mil>, both as a work of
 | 
|---|
| 2415 |         art for general admiration, and also for use in regression
 | 
|---|
| 2416 |         testing.
 | 
|---|
| 2417 | 
 | 
|---|
| 2418 |         * configure.in, lib/Makefile.am: add --with-regex=regexlib
 | 
|---|
| 2419 |         option, which overrides the use of lib/regex.c.
 | 
|---|
| 2420 | 
 | 
|---|
| 2421 |         * configure.in, testsuite/version.good: update to beta12.
 | 
|---|
| 2422 | 
 | 
|---|
| 2423 | Fri Jun 12 16:41:48 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2424 | 
 | 
|---|
| 2425 |         *** Version 3.01-beta11 released
 | 
|---|
| 2426 | 
 | 
|---|
| 2427 |         * sed/compile.c: add module-static variables first_script
 | 
|---|
| 2428 |         (for #n change below) and pending_text (for a/c/i change
 | 
|---|
| 2429 |         below).
 | 
|---|
| 2430 | 
 | 
|---|
| 2431 |         * sed/compile.c(compile_file), sed/compile.c(compile_program):
 | 
|---|
| 2432 |         Instead of having #n trigger the -n option in *any file*,
 | 
|---|
| 2433 |         have #n trigger the -n option only if they are the first
 | 
|---|
| 2434 |         two bytes of the first script or script-file.
 | 
|---|
| 2435 | 
 | 
|---|
| 2436 |         * sed/compile.c(compile_string), sed/compile.c(compile_file):
 | 
|---|
| 2437 |         clear the first_script variable at end of these functions.
 | 
|---|
| 2438 | 
 | 
|---|
| 2439 |         * sed/sed.h: tease out the struct text_buf declaration from
 | 
|---|
| 2440 |         struct sed_cmd, so that a pointer to such can be passed
 | 
|---|
| 2441 |         to new sed/compile.c(read_text) function.
 | 
|---|
| 2442 | 
 | 
|---|
| 2443 |         * sed/compile.c(compile_program), sed/compile.c(read_text):
 | 
|---|
| 2444 |         Tease out handling of text to a/c/i commands to new
 | 
|---|
| 2445 |         read_text() function.  Handle (via aid of pending_text
 | 
|---|
| 2446 |         variable) texts which span more than one script/script-file
 | 
|---|
| 2447 |         option.  In particular, restore the ability to have this
 | 
|---|
| 2448 |         work:  sed -e '1i\' -e 'foo'
 | 
|---|
| 2449 | 
 | 
|---|
| 2450 |         * sed/compile.c(check_final_program): close off any dangling
 | 
|---|
| 2451 |         pending_text allocation.
 | 
|---|
| 2452 | 
 | 
|---|
| 2453 | Thu Jun 11 11:17:46 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2454 | 
 | 
|---|
| 2455 |         * sed/execute.c(do_subst): fixed two bugs: s/ */X/g was failing
 | 
|---|
| 2456 |         to match the final empty string after the end of the pattern
 | 
|---|
| 2457 |         space; and /^foo$/s/o/x/3p was printing, despite the failure
 | 
|---|
| 2458 |         to do a substition.
 | 
|---|
| 2459 | 
 | 
|---|
| 2460 | Fri Jun  5 04:40:24 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2461 | 
 | 
|---|
| 2462 |         * configure.in: change the AC_ARG_WITH(regnexec, ...)
 | 
|---|
| 2463 |         to be the more appropriate AC_ARG_ENABLE(regnexec, ...).
 | 
|---|
| 2464 | 
 | 
|---|
| 2465 |         * configure.in, testsuite/version.good: update to beta11.
 | 
|---|
| 2466 | 
 | 
|---|
| 2467 | Fri Jun  5 00:54:25 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2468 | 
 | 
|---|
| 2469 |         *** Version 3.01-beta10 released
 | 
|---|
| 2470 | 
 | 
|---|
| 2471 |         * sed/execute.c: forgot to P_() the prototype and
 | 
|---|
| 2472 |         old-style the declaration for bootstrap_memchr()!
 | 
|---|
| 2473 | 
 | 
|---|
| 2474 | Thu Jun  4 18:42:30 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2475 | 
 | 
|---|
| 2476 |         * sed/compile.c(snarf_char_class): added code to
 | 
|---|
| 2477 |         recognize \n or \<newline> sequence within a
 | 
|---|
| 2478 |         char-class as the newline character.
 | 
|---|
| 2479 | 
 | 
|---|
| 2480 | Tue Jun  2 11:56:02 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2481 | 
 | 
|---|
| 2482 |         * configure.in: added check for <sys/types.h> and
 | 
|---|
| 2483 |         a AC_ARG_WITH(regnexec,...) check, to simplify use
 | 
|---|
| 2484 |         of other regex libraries which have regexec() but
 | 
|---|
| 2485 |         not regnexec(), with the corresponding loss of
 | 
|---|
| 2486 |         functionality (regexps will not work right against
 | 
|---|
| 2487 |         input lines which contain NULs).
 | 
|---|
| 2488 | 
 | 
|---|
| 2489 |         * sed/execute.c: add nul_append() function, a #define
 | 
|---|
| 2490 |         for a regnexec() -> regexec() macro (conditional on
 | 
|---|
| 2491 |         the lack of the WITH_REGNEXEC symbol), and a couple
 | 
|---|
| 2492 |         of calls to nul_append() (in match_an_address_p()
 | 
|---|
| 2493 |         and do_subst()) to permit the use of the POSIX standard
 | 
|---|
| 2494 |         regexec() function call instead of the suggested
 | 
|---|
| 2495 |         regnexec() call.
 | 
|---|
| 2496 | 
 | 
|---|
| 2497 |         * sed/compile.c, sed/execute.c, sed/sed.c: check for
 | 
|---|
| 2498 |         <sys/types.h> and include it (before "regex.h") if
 | 
|---|
| 2499 |         available.  This makes it simpler to use the system's
 | 
|---|
| 2500 |         regex library instead of the one in lib/regex.c, should
 | 
|---|
| 2501 |         that be desired.
 | 
|---|
| 2502 | 
 | 
|---|
| 2503 | Tue Jun  2 08:41:05 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2504 | 
 | 
|---|
| 2505 |         * sed/basicdefs.h: define VCAST macros to allow sed to
 | 
|---|
| 2506 |         compile on systems which predate the definition
 | 
|---|
| 2507 |         of "void *", and yet still get feedback about
 | 
|---|
| 2508 |         stupid programming errors from systems which *do*
 | 
|---|
| 2509 |         know about "void *"s.  Also define MALLOC, REALLOC,
 | 
|---|
| 2510 |         MEMDUP, and FREE macros to keep under control the
 | 
|---|
| 2511 |         degree of code ugliness which would otherwise be
 | 
|---|
| 2512 |         introduced in making use of the VCAST macro.
 | 
|---|
| 2513 | 
 | 
|---|
| 2514 |         * sed/compile.c, sed/execute.c, sed/sed.c, sed/utils.c:
 | 
|---|
| 2515 |         pervasively use the new VCAST, MALLOC, REALLOC, MEMDUP,
 | 
|---|
| 2516 |         and FREE macros wherever appropriate.
 | 
|---|
| 2517 | 
 | 
|---|
| 2518 |         * sed/utils.c, sed/utils.h: correct type of first arguments
 | 
|---|
| 2519 |         to ck_fread() and ck_fwrite() to be [const] VOID *.
 | 
|---|
| 2520 | 
 | 
|---|
| 2521 |         * sed/basicdefs.h, sed/execute.c: protect against
 | 
|---|
| 2522 |         the rumored systems which stupidly #define __STDC__ 0.
 | 
|---|
| 2523 | 
 | 
|---|
| 2524 |         * testsuite/help.good, testsuite/Makefile.in: make
 | 
|---|
| 2525 |         the ``help'' test insensitive to the spelling of
 | 
|---|
| 2526 |         the executable's name.  Also, enhanced `make clean'
 | 
|---|
| 2527 |         target.
 | 
|---|
| 2528 | 
 | 
|---|
| 2529 |         * doc/sed.texi, doc/sed.1: correct documentation of `q'
 | 
|---|
| 2530 |         command; fix typos.
 | 
|---|
| 2531 | 
 | 
|---|
| 2532 |         * configure, testsuite/version.good: update to beta10.
 | 
|---|
| 2533 | 
 | 
|---|
| 2534 | Sat May 30 17:28:00 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2535 | 
 | 
|---|
| 2536 |         *** Version 3.01-beta9 released
 | 
|---|
| 2537 | 
 | 
|---|
| 2538 |         * Makefile.am: make testsuite a normal SUBDIR.
 | 
|---|
| 2539 | 
 | 
|---|
| 2540 |         * configure.in: discontinue using AC_ISC_POSIX --
 | 
|---|
| 2541 |         check for -lcposix library instead; added
 | 
|---|
| 2542 |         testsuite/Makefile to AC_OUTPUT list.
 | 
|---|
| 2543 | 
 | 
|---|
| 2544 |         * lib/memmove.c(memmove): fixed wrong sense used
 | 
|---|
| 2545 |         for HAVE_BCOPY test.
 | 
|---|
| 2546 | 
 | 
|---|
| 2547 |         * sed/execute.c: checked more specifically for a version
 | 
|---|
| 2548 |         of gcc which supports __attribute__ (i.e., >= 2.7).
 | 
|---|
| 2549 | 
 | 
|---|
| 2550 |         * testsuite/*: renamed files to fit 14 char limit.
 | 
|---|
| 2551 | 
 | 
|---|
| 2552 |         * testsuite/Makefile, testsuite/Makefile.in: Makefile
 | 
|---|
| 2553 |         renamed to Makefile.in and then modified so that
 | 
|---|
| 2554 |         "make -j check" from top directory will work.
 | 
|---|
| 2555 | 
 | 
|---|
| 2556 |         * testsuite/subwrite.sed, testsuite/writeout.sed: changed
 | 
|---|
| 2557 |         file name of the "w" command to be consistent with the
 | 
|---|
| 2558 |         new naming used in testsuite/Makefile.in.
 | 
|---|
| 2559 | 
 | 
|---|
| 2560 |         * doc/sed.1, doc/sed.texi: fixed some typos, formatting
 | 
|---|
| 2561 |         glitches, and poor wordings.
 | 
|---|
| 2562 | 
 | 
|---|
| 2563 | Sat May 30 04:02:29 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2564 | 
 | 
|---|
| 2565 |         * configure.in: specify that config.h is to be derived
 | 
|---|
| 2566 |         from config_h.in in order to avoid the braindead
 | 
|---|
| 2567 |         DOS file system limitations.
 | 
|---|
| 2568 | 
 | 
|---|
| 2569 | Fri May 29 21:56:30 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2570 | 
 | 
|---|
| 2571 |         * sed/compile.c(compile_address), doc/sed.texi: gave
 | 
|---|
| 2572 |         a better definition to the meaning of N~0 address
 | 
|---|
| 2573 |         forms -- N~M addresses now mean that lines match
 | 
|---|
| 2574 |         when there exists a non-negative x such that
 | 
|---|
| 2575 |         lineno == N+x*M.
 | 
|---|
| 2576 | 
 | 
|---|
| 2577 | Fri May 29 12:07:38 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2578 | 
 | 
|---|
| 2579 |         * sed/compile.c(compile_address),
 | 
|---|
| 2580 |         sed/execute.c(match_an_address_p): update semantics of
 | 
|---|
| 2581 |         N~M address form: now N is the first line which will
 | 
|---|
| 2582 |         match and M is the step between succeeding matches.
 | 
|---|
| 2583 |         If N<M this works out to the same as before, but the
 | 
|---|
| 2584 |         new behavior for N>=M seems more useful.
 | 
|---|
| 2585 | 
 | 
|---|
| 2586 |         * doc/sed.1, doc/sed.texi: update documentation of N~M
 | 
|---|
| 2587 |         address form; added "Other Resources" node to sed.texi;
 | 
|---|
| 2588 |         minor formatting changes to some items in sed.1 with
 | 
|---|
| 2589 |         an eye to improving clarity.
 | 
|---|
| 2590 | 
 | 
|---|
| 2591 |         * configure.in, testsuite/version.good: update to beta9.
 | 
|---|
| 2592 | 
 | 
|---|
| 2593 | Sat May 23 20:04:31 HST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2594 | 
 | 
|---|
| 2595 |         *** Version 3.01-beta8 released
 | 
|---|
| 2596 | 
 | 
|---|
| 2597 |         * sed/compile.c(compile_regex): forgot to make last_re be
 | 
|---|
| 2598 |         a *copy* of the buffered text in today's earlier fix.
 | 
|---|
| 2599 | 
 | 
|---|
| 2600 |         * sed/execute.c(read_file_line): EOF check was wrong --
 | 
|---|
| 2601 |         it forgot to allow for the possibility that we were
 | 
|---|
| 2602 |         appending to the end of the ``line'' (instead of merely
 | 
|---|
| 2603 |         reading a fresh line).
 | 
|---|
| 2604 | 
 | 
|---|
| 2605 | Sat May 23 18:07:18 HST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2606 | 
 | 
|---|
| 2607 |         * sed/compile.c(compile_regex): don't track compiled version
 | 
|---|
| 2608 |         of regex -- the modifiers may change.  Track the regex
 | 
|---|
| 2609 |         source instead.  (For "last regex" (aka //) notation.)
 | 
|---|
| 2610 | 
 | 
|---|
| 2611 |         * configure.in, testsuite/version.good: update to beta8.
 | 
|---|
| 2612 | 
 | 
|---|
| 2613 | Sat May 23 16:07:09 HST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2614 | 
 | 
|---|
| 2615 |         *** Version 3.01-beta7 released
 | 
|---|
| 2616 | 
 | 
|---|
| 2617 |         * sed/execute.c: #undef'd EXPERIMENTAL_DASH_N_OPTIMIZATION
 | 
|---|
| 2618 |         because its code is buggy.
 | 
|---|
| 2619 | 
 | 
|---|
| 2620 | Tue May 19 17:03:52 HST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2621 | 
 | 
|---|
| 2622 |         * sed/sed.c: label rx library code as such with #ifdefs
 | 
|---|
| 2623 |         (instead of just #if 0).
 | 
|---|
| 2624 | 
 | 
|---|
| 2625 |         * sed/compile.c(compile_program): make incremental
 | 
|---|
| 2626 |         improvement to the "Unknown command" error message.
 | 
|---|
| 2627 | 
 | 
|---|
| 2628 | Sat May 16 23:16:26 HST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2629 | 
 | 
|---|
| 2630 |         * testsuite/Makefile: simplify: get rid of automatic run
 | 
|---|
| 2631 |         against system's sed; don't time by default; allow for
 | 
|---|
| 2632 |         alternative comparison command.
 | 
|---|
| 2633 | 
 | 
|---|
| 2634 |         * configure.in, testsuite/version.good: update to beta7.
 | 
|---|
| 2635 | 
 | 
|---|
| 2636 | Wed May 13 21:44:28 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2637 | 
 | 
|---|
| 2638 |         *** Version 3.01-beta6 released
 | 
|---|
| 2639 | 
 | 
|---|
| 2640 |         * lib/Makefile.am: fix spelling of libsed_a_LIBADD in
 | 
|---|
| 2641 |         libsed_a_DEPENDENCIES.
 | 
|---|
| 2642 | 
 | 
|---|
| 2643 |         * configure.in, testsuite/version.good: update to beta6.
 | 
|---|
| 2644 | 
 | 
|---|
| 2645 | Wed May 13 14:38:08 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2646 | 
 | 
|---|
| 2647 |         *** Version 3.01-beta5 released
 | 
|---|
| 2648 | 
 | 
|---|
| 2649 |         * sed/execute.c(do_subst): added not_bol_p variable to track when
 | 
|---|
| 2650 |         we have iterated past the beginning of the pattern.
 | 
|---|
| 2651 |         [Thanks to Jim Meyering <meyering@ascend.com> for the bug report.]
 | 
|---|
| 2652 | 
 | 
|---|
| 2653 | Wed May 13 13:54:04 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2654 | 
 | 
|---|
| 2655 |         * sed/execute.c(bootstrap_memchr): new function.  When
 | 
|---|
| 2656 |         bootstrapping we don't know if we are on a 64-bit machine,
 | 
|---|
| 2657 |         so lib/memchr.c breaks.  Supply this (slow) implementation
 | 
|---|
| 2658 |         just to get us bootstrapped.
 | 
|---|
| 2659 | 
 | 
|---|
| 2660 |         * bootstrap.sh: add a #define BOOTSTRAP symbol; add -I.
 | 
|---|
| 2661 |         for emphasis for the compiles in sed/; be explicit
 | 
|---|
| 2662 |         about what files we're bothering to compile.
 | 
|---|
| 2663 | 
 | 
|---|
| 2664 |         * configure.in, testsuite/version.good: update version
 | 
|---|
| 2665 |         to beta5.
 | 
|---|
| 2666 | 
 | 
|---|
| 2667 | Wed May 13 06:39:06 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2668 | 
 | 
|---|
| 2669 |         *** Version 3.01-beta4 released
 | 
|---|
| 2670 | 
 | 
|---|
| 2671 |         * rename writeout.good? to wrtout?.good and subwrite.good? to
 | 
|---|
| 2672 |         subwrt?.good to comply with DOS 8+3 file name restrictions.
 | 
|---|
| 2673 |         [Eli Zaretskii <eliz@is.elta.co.il> suggested this to
 | 
|---|
| 2674 |         simplify DJGPP ports, and it was easy.]
 | 
|---|
| 2675 | 
 | 
|---|
| 2676 |         * testsuite/Makefile: reflect above name changes.
 | 
|---|
| 2677 | 
 | 
|---|
| 2678 | Wed May 12 21:09:32 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2679 | 
 | 
|---|
| 2680 |         * sed/sed.c(usage): fix non-portable omission of \n\ at end of
 | 
|---|
| 2681 |         lines within long string.
 | 
|---|
| 2682 | 
 | 
|---|
| 2683 |         * sed/sed.c(main): remove spurious argument to fprintf() in the
 | 
|---|
| 2684 |         'V'ersion output.
 | 
|---|
| 2685 | 
 | 
|---|
| 2686 |         * sed/execute.c(line_append): embed newline between the two
 | 
|---|
| 2687 |         text fragments unconditionally.
 | 
|---|
| 2688 | 
 | 
|---|
| 2689 |         * sed/execute.c(do_subst): change structure assignment to memcpy()
 | 
|---|
| 2690 |         (for portability reasons).
 | 
|---|
| 2691 | 
 | 
|---|
| 2692 |         * README.bootstrap: suggest using -w option.
 | 
|---|
| 2693 | 
 | 
|---|
| 2694 | Tue May 12 10:02:37 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2695 | 
 | 
|---|
| 2696 |         * configure.in: use AC_REPLACE_FUNCS where appropriate.
 | 
|---|
| 2697 | 
 | 
|---|
| 2698 |         * lib/Makefile.am: updated to reflect AC_REPLACE_FUNCS change in
 | 
|---|
| 2699 |         configure.in.
 | 
|---|
| 2700 | 
 | 
|---|
| 2701 |         * lib/memchr.c lib/memcmp.c: revert to standard GNU versions.
 | 
|---|
| 2702 | 
 | 
|---|
| 2703 |         * lib/alloca.c: added this missing file.
 | 
|---|
| 2704 | 
 | 
|---|
| 2705 |         * testsuite/version.good: updated for new version identifier.
 | 
|---|
| 2706 | 
 | 
|---|
| 2707 | Mon May 11 18:50:56 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2708 | 
 | 
|---|
| 2709 |         *** Version 3.01-beta3 released
 | 
|---|
| 2710 | 
 | 
|---|
| 2711 |         * sed/Makefile.am: fix INCLUDES to work right with VPATH.
 | 
|---|
| 2712 |         [Thanks to Jim Meyering <meyering@ascend.com> for the bug report.]
 | 
|---|
| 2713 | 
 | 
|---|
| 2714 |         * sed/sed.c(usage): make --help output more user-friendly?
 | 
|---|
| 2715 | 
 | 
|---|
| 2716 |         * sed/execute.c(execute_program): fix bug in 'x' command introduced
 | 
|---|
| 2717 |         in the alleged portability fix of May 9.
 | 
|---|
| 2718 | 
 | 
|---|
| 2719 |         * configure.in: update version to 3.01-beta3.
 | 
|---|
| 2720 | 
 | 
|---|
| 2721 |         * testsuite/version.good, testsuite/help.good: freshen with
 | 
|---|
| 2722 |         latest output.
 | 
|---|
| 2723 | 
 | 
|---|
| 2724 | Sat May  9 22:35:45 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2725 | 
 | 
|---|
| 2726 |         *** Version 3.01-beta2 released
 | 
|---|
| 2727 | 
 | 
|---|
| 2728 |         * sed/sed.c: add #include <sys/types.h> in HAVE_MMAP
 | 
|---|
| 2729 |         block (needed on some machines).
 | 
|---|
| 2730 | 
 | 
|---|
| 2731 |         * lib/memmove.c: #include <memory.h>, if HAVE_MEMORY_H.
 | 
|---|
| 2732 | 
 | 
|---|
| 2733 | Sat May  9 21:29:00 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2734 | 
 | 
|---|
| 2735 |         * configure.in: remove dangling references to rx library;
 | 
|---|
| 2736 |         added HEADER and FUNC checks for items used by source in
 | 
|---|
| 2737 |         lib/.
 | 
|---|
| 2738 | 
 | 
|---|
| 2739 |         * lib/ansidecl.h, lib/memcopy.h, lib/pagecopy.h, lib/string.h
 | 
|---|
| 2740 |         lib/memcpy.c, lib/memmove.c: deletes these files.  There
 | 
|---|
| 2741 |         are still pieces of glibc missing to support these, and
 | 
|---|
| 2742 |         it isn't worth the headache right now.
 | 
|---|
| 2743 | 
 | 
|---|
| 2744 |         * lib/memmove.c: de novo, simpler version.  Uses bcopy()
 | 
|---|
| 2745 |         if available, and slow-but-simple code if not.
 | 
|---|
| 2746 | 
 | 
|---|
| 2747 |         * lib/Makefile.am: remove references to deleted files.
 | 
|---|
| 2748 |         Added forgotten reference to memcpy.c.  Re-ordered
 | 
|---|
| 2749 |         SOURCE entries to reflect dependencies for systems
 | 
|---|
| 2750 |         which lack ranlib.
 | 
|---|
| 2751 | 
 | 
|---|
| 2752 |         * sed/basicdefs.h: updated to reflect above changes to lib/,
 | 
|---|
| 2753 |         and experience with non-STDC compilers.
 | 
|---|
| 2754 | 
 | 
|---|
| 2755 |         * lib/regex.c: made regerror() function publicly visible.
 | 
|---|
| 2756 | 
 | 
|---|
| 2757 |         * lib/strerror.c: use old-style function declaration.
 | 
|---|
| 2758 | 
 | 
|---|
| 2759 |         * sed/compile.c, sed/execute.c, sed/sed.c, sed/utils.c,
 | 
|---|
| 2760 |         sed/sed.h, sed/utils.h: ensure that private definitions of
 | 
|---|
| 2761 |         some symbols do not cause problems when #include'ing system
 | 
|---|
| 2762 |         headers (mainly by re-ordering the #include directives).
 | 
|---|
| 2763 |         (This is particularly an issue for bootstrap.sh runs.)
 | 
|---|
| 2764 | 
 | 
|---|
| 2765 |         * sed/execute.c (execute_program): use memcpy() instead of
 | 
|---|
| 2766 |         structure assingment ('x' command), for portablility to
 | 
|---|
| 2767 |         old compilers.
 | 
|---|
| 2768 | 
 | 
|---|
| 2769 |         * sed/execute.c (slow_getline): use old-style function
 | 
|---|
| 2770 |         declaration, with a P_ prototype.
 | 
|---|
| 2771 | 
 | 
|---|
| 2772 |         * sed/sed.c: change the type of the fallback MAP_FAILED
 | 
|---|
| 2773 |         definition to work on archaic systems.  (Modern systems
 | 
|---|
| 2774 |         should be defining it themselves, so the change from
 | 
|---|
| 2775 |         void * shouldn't be a problem.)
 | 
|---|
| 2776 | 
 | 
|---|
| 2777 |         * bootstrap.sh, README.bootstrap: actual testing of bootstrap
 | 
|---|
| 2778 |         code revealed that I was too optimistic.  Redesigned and
 | 
|---|
| 2779 |         replaced implementation.
 | 
|---|
| 2780 | 
 | 
|---|
| 2781 |         * testsuite/Makefile: ignore errors from reference-implementation
 | 
|---|
| 2782 |         seds that aren't up to snuff.
 | 
|---|
| 2783 | 
 | 
|---|
| 2784 |         * testsuite/help.good, testsuite/version.good: update to
 | 
|---|
| 2785 |         current version's output.
 | 
|---|
| 2786 | 
 | 
|---|
| 2787 | Fri May  8 15:08:28 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2788 | 
 | 
|---|
| 2789 |         *** Version 3.01-beta1 released
 | 
|---|
| 2790 | 
 | 
|---|
| 2791 |         * sed/sed.c (main, usage): once again tweak the --help and
 | 
|---|
| 2792 |         --version output to bettery comply with GNU coding standards.
 | 
|---|
| 2793 | 
 | 
|---|
| 2794 |         * testsuite/help.good, testsuite/version.good: update to
 | 
|---|
| 2795 |         reflect above change.
 | 
|---|
| 2796 | 
 | 
|---|
| 2797 |         * doc/sed.texi: fix "Invoking" node's spelling to comply
 | 
|---|
| 2798 |         with GNU standards.
 | 
|---|
| 2799 | 
 | 
|---|
| 2800 | Fri May  8 11:43:10 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2801 | 
 | 
|---|
| 2802 |         * doc/sed.1, doc/Makefile.am: wrote (very basic) man page.
 | 
|---|
| 2803 | 
 | 
|---|
| 2804 | Thu May  7 20:40:21 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2805 | 
 | 
|---|
| 2806 |         * lib/Makefile.am, lib/memmove.c, lib/memchr.c, lib/regex.c,
 | 
|---|
| 2807 |         lib/memcpy.c, lib/regex.h, lib/memcopy.h, lib/string.h,
 | 
|---|
| 2808 |         lib/pagecopy.h, lib/ansidecl.h: grab yet-another-version
 | 
|---|
| 2809 |         from gnu.org for baseline and/or edit copyright boilerplate
 | 
|---|
| 2810 |         using official lgpl2gpl.sed script.  Take care not to
 | 
|---|
| 2811 |         loose regnexec() interface or special conditional-compilation
 | 
|---|
| 2812 |         code.
 | 
|---|
| 2813 | 
 | 
|---|
| 2814 | Wed May  6 23:35:12 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2815 | 
 | 
|---|
| 2816 |         * lib/regex.c, lib/regex.h: take from grep-2.1 distribution,
 | 
|---|
| 2817 |         then trivially added the regnexec() interface.
 | 
|---|
| 2818 | 
 | 
|---|
| 2819 |         * sed/sed.c, sed/compile.c, sed/execute.c: made modifications
 | 
|---|
| 2820 |         to work with regex instead of rx.
 | 
|---|
| 2821 | 
 | 
|---|
| 2822 |         * rx/*: deleted directory; the code is just too slow.
 | 
|---|
| 2823 |         I think it will be easier to extend regex to fully
 | 
|---|
| 2824 |         support POSIX.2 than to tune rx to be reasonable.
 | 
|---|
| 2825 |         Even if this supposition is wrong, I'd rather make
 | 
|---|
| 2826 |         the 3.01 release with the slightly deficient regex.
 | 
|---|
| 2827 | 
 | 
|---|
| 2828 |         * Makefile.am lib/Makefile.am, sed/Makefile.am: made changes
 | 
|---|
| 2829 |         related to the substitution of regex for rx.
 | 
|---|
| 2830 | 
 | 
|---|
| 2831 |         * lib/Makefile.am, sed/Makefile.am: since regex is not a
 | 
|---|
| 2832 |         ``compatability'' module, changed name of library to
 | 
|---|
| 2833 |         ``libsed.a''.
 | 
|---|
| 2834 | 
 | 
|---|
| 2835 |         * lib/memchr.c, lib/memcpy.c, lib/memmove.c: add conditional
 | 
|---|
| 2836 |         compilation code to leave zero-sized .o file if system
 | 
|---|
| 2837 |         already supports the implemented function.
 | 
|---|
| 2838 | 
 | 
|---|
| 2839 |         * testsuite/help.good, testsuite/version.good: brought
 | 
|---|
| 2840 |         up-to-date (once again).
 | 
|---|
| 2841 | 
 | 
|---|
| 2842 |         * NEWS, ANNOUNCE: changes to reflect this batch of changes.
 | 
|---|
| 2843 | 
 | 
|---|
| 2844 | Wed May  6 18:40:47 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2845 | 
 | 
|---|
| 2846 |         * sed/execute.c: discovered awful bug in '}' handling:
 | 
|---|
| 2847 |         it could read past the end of vec (because `n' was
 | 
|---|
| 2848 |         being decremented below zero)!  Needed to "continue"
 | 
|---|
| 2849 |         instead of "break".
 | 
|---|
| 2850 | 
 | 
|---|
| 2851 | Tue May  5 14:34:38 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2852 | 
 | 
|---|
| 2853 |         * doc/sed.texi, doc/version.texi: wrote some rudimentary
 | 
|---|
| 2854 |         texinfo documentation.
 | 
|---|
| 2855 | 
 | 
|---|
| 2856 |         * ANNOUNCE, NEWS, README, README.rx, Makefile.am:
 | 
|---|
| 2857 |         more updates for the upcoming beta-release.
 | 
|---|
| 2858 | 
 | 
|---|
| 2859 |         * sed/compile.c, sed/execute.c, sed/sed.c, sed/utils.c,
 | 
|---|
| 2860 |         sed/sed.h, lib/strerror.c: update copyright notice text.
 | 
|---|
| 2861 | 
 | 
|---|
| 2862 | Fri May  1 15:41:37 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2863 | 
 | 
|---|
| 2864 |         * sed/execute.c (match_an_address_p, match_address_p): if
 | 
|---|
| 2865 |         the second element of an address range is a line number,
 | 
|---|
| 2866 |         and that line number is *less than* (or equal to) the
 | 
|---|
| 2867 |         current line number, we only match the one line (per
 | 
|---|
| 2868 |         POSIX.2, section 4.55.7.1).  [Bug discovered as reported
 | 
|---|
| 2869 |         in the seders mailing list FAQ.]
 | 
|---|
| 2870 | 
 | 
|---|
| 2871 |         * AUTHORS, NEWS, acconfig.h, configure.in, doc/Makefile.am,
 | 
|---|
| 2872 |         lib/Makefile.am, sed/Makefile.am, lib/README,
 | 
|---|
| 2873 |         testsuite/help.good, testsuite/version.good:
 | 
|---|
| 2874 |         Updated in anticipation of the 3.01-beta1 release.
 | 
|---|
| 2875 |         Reorganized development source tree to make creation
 | 
|---|
| 2876 |         of a distribution simpler.  Most notable changes were
 | 
|---|
| 2877 |         to the various Makefile.am files and configure.in, but
 | 
|---|
| 2878 |         some minor edits (such as deleting or changing #include
 | 
|---|
| 2879 |         directives) have been made in many other source files.
 | 
|---|
| 2880 | 
 | 
|---|
| 2881 |         * bootstrap.sh, README.bootstrap: created a mechanism for
 | 
|---|
| 2882 |         creating sed on a system which lacks a working sed.
 | 
|---|
| 2883 | 
 | 
|---|
| 2884 | Thu Apr 16 23:52:11 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2885 | 
 | 
|---|
| 2886 |         * sed.h, sed.c, execute.c, compile.c: did a spell-check on
 | 
|---|
| 2887 |         the comments; fixed several typos.
 | 
|---|
| 2888 | 
 | 
|---|
| 2889 | Thu Apr 16 13:43:01 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2890 | 
 | 
|---|
| 2891 |         * execute.c (do_subst): fixed bug where the "replaced" flag
 | 
|---|
| 2892 |         was being set to one inappropriately when at least one
 | 
|---|
| 2893 |         but fewer than sub->numb matches of the regexp were found.
 | 
|---|
| 2894 |         (Thanks to Simon Taylor <staylor@hermes.iaccess.com.au>
 | 
|---|
| 2895 |         for the bug report.)
 | 
|---|
| 2896 | 
 | 
|---|
| 2897 | Wed Apr 15 11:35:31 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2898 | 
 | 
|---|
| 2899 |         * sed.h, sed.c, compile.c, execute.c: having a concern that
 | 
|---|
| 2900 |         a cast was being done inappropriately, and realizing that
 | 
|---|
| 2901 |         there is no quick way to locate all casts in a program, I
 | 
|---|
| 2902 |         went through and marked all casts with a simple macro.
 | 
|---|
| 2903 |         Now it is a simple matter to locate the casts, and it is
 | 
|---|
| 2904 |         also a simple matter to turn of casts for a lint session
 | 
|---|
| 2905 |         (if it should be desired).
 | 
|---|
| 2906 | 
 | 
|---|
| 2907 | Wed Apr 15 10:29:21 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2908 | 
 | 
|---|
| 2909 |         * compile.c, sed.c: redo compile phase so that brace
 | 
|---|
| 2910 |         expressions can be spread across multiple files.
 | 
|---|
| 2911 |         For example:
 | 
|---|
| 2912 |           printf '{' >a; printf 'l;d' >b; printf '}' >c
 | 
|---|
| 2913 |           sed -f a -f b -f c foo
 | 
|---|
| 2914 |         will now compile (and work), instead of complaining
 | 
|---|
| 2915 |         about an unmatched '{'.  The mess created in compile.c
 | 
|---|
| 2916 |         allowed a little simplification to the command-line
 | 
|---|
| 2917 |         processing of "-e" options in sed.c.
 | 
|---|
| 2918 | 
 | 
|---|
| 2919 |         sed.h: added (opaque) err_info member to struct vector;
 | 
|---|
| 2920 |         added comments to the members of struct vector.
 | 
|---|
| 2921 | 
 | 
|---|
| 2922 | Wed Apr 14 23:50:50 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2923 | 
 | 
|---|
| 2924 |         * sed.h, sed.c, compile.c, execute.c: added types countT and
 | 
|---|
| 2925 |         flagT in order to clarify what various "int"s were doing.
 | 
|---|
| 2926 |         Also makes it easy to change the type used for counts
 | 
|---|
| 2927 |         (for example, to "unsigned long long") if desired, although
 | 
|---|
| 2928 |         there are still some gotchas (such as the printf() format
 | 
|---|
| 2929 |         for the '=' command).
 | 
|---|
| 2930 | 
 | 
|---|
| 2931 | Tue Apr 14 17:34:54 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2932 | 
 | 
|---|
| 2933 |         * execute.c (execute_program, process_files, count_branches,
 | 
|---|
| 2934 |         shrink_program): Added a first attempt at program optimization.
 | 
|---|
| 2935 |         We now can quit early if we are running with the "-n"
 | 
|---|
| 2936 |         and all of the commands are known to be valid only for
 | 
|---|
| 2937 |         lines less than the current line.  Thus the "sed" in
 | 
|---|
| 2938 |         "foo | sed -n 1,2p" will print read three lines, printint
 | 
|---|
| 2939 |         the first two, and then quit, regardless of how much longer
 | 
|---|
| 2940 |         "foo" might run or output.  This optimization does not buy
 | 
|---|
| 2941 |         much in most cases (it sometimes even costs a little),
 | 
|---|
| 2942 |         but when it does help it can help big.  The code is
 | 
|---|
| 2943 |         all conditionally compiled based on the
 | 
|---|
| 2944 |         EXPERIMENTAL_DASH_N_OPTIMIZATION symbol being #defined,
 | 
|---|
| 2945 |         so it can be easily omitted if it causes problems.
 | 
|---|
| 2946 | 
 | 
|---|
| 2947 | Tue Apr 14 12:25:06 PDT 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2948 | 
 | 
|---|
| 2949 |         * execute.c (test_dollar_EOF, last_file_with_data_p):
 | 
|---|
| 2950 |         test_dollar_EOF() was incorrectly returning a false (0)
 | 
|---|
| 2951 |         when there were unprocessed files, none of which had any
 | 
|---|
| 2952 |         data (either unopenable or zero-length).  Created
 | 
|---|
| 2953 |         last_file_with_data_p() to detect this situation, and
 | 
|---|
| 2954 |         modified test_dollar_EOF() to make use of it.
 | 
|---|
| 2955 | 
 | 
|---|
| 2956 | Thu Apr  2 23:02:18 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2957 | 
 | 
|---|
| 2958 |         * compile.c (match_slash): match_slash() did not handle
 | 
|---|
| 2959 |         [.coll.], [=equiv=], and [:class:] sequences within a
 | 
|---|
| 2960 |         character class.  Added snarf_char_class() [which is a
 | 
|---|
| 2961 |         remote derivative of parse_char_class() from GNU ed-0.2]
 | 
|---|
| 2962 |         to deal with the details, and altered match_slash()
 | 
|---|
| 2963 |         to make use of it.  Also created the trivial
 | 
|---|
| 2964 |         add_then_next() to avoid clutter in snarf_char_class().
 | 
|---|
| 2965 | 
 | 
|---|
| 2966 | Thu Apr  2 20:34:42 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2967 | 
 | 
|---|
| 2968 |         * execute.c, sed.c, sed.h: There was a severe bug in
 | 
|---|
| 2969 |         how the code handled "sed 5n a b" when "a" consists
 | 
|---|
| 2970 |         of exactly five lines -- it behaved like "sed 5q a b"!
 | 
|---|
| 2971 | 
 | 
|---|
| 2972 |         Rearranged where files get opened -- large scale
 | 
|---|
| 2973 |         changes primarily involving main(), process_files(),
 | 
|---|
| 2974 |         and read_pattern_space(), but also touching on several
 | 
|---|
| 2975 |         other parts of execute.c.  The read_pattern_space()
 | 
|---|
| 2976 |         function became unwieldly and parts were split into
 | 
|---|
| 2977 |         open_next_file(), closedown(), read_always_fail(),
 | 
|---|
| 2978 |         read_mem_line(), and read_file_line().  The
 | 
|---|
| 2979 |         at_end_of_file_p() function became obsolete and was
 | 
|---|
| 2980 |         eliminated; test_dollar_EOF_p() was updated.  A few
 | 
|---|
| 2981 |         global and module-static variables were elminated, and
 | 
|---|
| 2982 |         "struct line" was extended; comments were added to the
 | 
|---|
| 2983 |         "struct line" declartation to document some important
 | 
|---|
| 2984 |         dependencies in it.
 | 
|---|
| 2985 | 
 | 
|---|
| 2986 |         I undertook the reorganization with dread, but I
 | 
|---|
| 2987 |         feel that the new organization is an improvement
 | 
|---|
| 2988 |         well beyond just fixing the bug that inspired it.
 | 
|---|
| 2989 | 
 | 
|---|
| 2990 | Thu Apr  2 01:16:25 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 2991 | 
 | 
|---|
| 2992 |         * execute.c (read_file_line, slow_getline): the fread()
 | 
|---|
| 2993 |         buffering code gives insufficient feedback to a user
 | 
|---|
| 2994 |         running sed with a tty input device, so I created
 | 
|---|
| 2995 |         slow_getline() for reading from a tty device.
 | 
|---|
| 2996 |         Additionally, EOF detection has been made a little more
 | 
|---|
| 2997 |         sensitive to avoid requiring multiple EOFs to be entered
 | 
|---|
| 2998 |         from a tty.
 | 
|---|
| 2999 | 
 | 
|---|
| 3000 |         * configure.in: added isatty() check.
 | 
|---|
| 3001 | 
 | 
|---|
| 3002 | Wed Apr  1 11:04:30 PST 1998  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3003 | 
 | 
|---|
| 3004 |         * configure.in (CPPFLAGS, LDFLAGS, LIBS):
 | 
|---|
| 3005 |         Set to appropriate values if large file support needs
 | 
|---|
| 3006 |         explicit enabling.  Code fragment taken from a 1997-10-25
 | 
|---|
| 3007 |         patch to gawk by Paul Eggert <eggert@twinsun.com>
 | 
|---|
| 3008 | 
 | 
|---|
| 3009 | Thu Aug 14 17:43:27 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3010 | 
 | 
|---|
| 3011 |         * utils.c (ck_fclose): modified to ignore NULL parameter.
 | 
|---|
| 3012 | 
 | 
|---|
| 3013 | Thu Aug 14 12:08:45 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3014 | 
 | 
|---|
| 3015 |         * execute.c: tweaked execute_program() to eliminate
 | 
|---|
| 3016 |         gratuitous "goto" usage.
 | 
|---|
| 3017 | 
 | 
|---|
| 3018 | Thu Aug 14 11:30:04 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3019 | 
 | 
|---|
| 3020 |         * compile.c: added case-insensitive modifier ('I') to
 | 
|---|
| 3021 |         address and s/// regexps.  The s/// case also accepts
 | 
|---|
| 3022 |         the more popular 'i' modifier.  (The address regexp
 | 
|---|
| 3023 |         cannot use 'i' as a modifier, as that conflicts with
 | 
|---|
| 3024 |         the use of the 'i'nsert command.)
 | 
|---|
| 3025 | 
 | 
|---|
| 3026 | Thu Aug 14 09:29:06 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3027 | 
 | 
|---|
| 3028 |         * compile.c: abstracted out match_slash() from the s///, y///,
 | 
|---|
| 3029 |         and address-regexp special-case codes.
 | 
|---|
| 3030 | 
 | 
|---|
| 3031 |         * execute.c: made dump_append_queue() use ck_fread() instead
 | 
|---|
| 3032 |         of hand-rolled error checking.
 | 
|---|
| 3033 | 
 | 
|---|
| 3034 | Mon Jul 28 10:50:41 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3035 | 
 | 
|---|
| 3036 |         * sed.c, sed.h, execute.c: POSIX.2, section 4.55.7, says that
 | 
|---|
| 3037 |         a newline must end *every* output line.  But I think that
 | 
|---|
| 3038 |         it is useful (when seding a binary file) to omit a trailing
 | 
|---|
| 3039 |         newline if the input lacks one.  Thus the addition of
 | 
|---|
| 3040 |         POSIXLY_CORRECT behavior.
 | 
|---|
| 3041 | 
 | 
|---|
| 3042 |         * execute.c: however, when seding multiple files my feeling
 | 
|---|
| 3043 |         is that it makes sense to have each file but the last
 | 
|---|
| 3044 |         behave as-if it ended in a newline.  Modified read_pattern_space()
 | 
|---|
| 3045 |         accordingly.
 | 
|---|
| 3046 | 
 | 
|---|
| 3047 |         * utils.c: realized that add1_buffer(), for performance reasons,
 | 
|---|
| 3048 |         shouldn't be calling memcpy() (indirectly via add_buffer()),
 | 
|---|
| 3049 |         so rewrote it.
 | 
|---|
| 3050 | 
 | 
|---|
| 3051 | Sat Jul 26 23:08:28 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3052 | 
 | 
|---|
| 3053 |         * execute.c: attempted to make read_pattern_space more
 | 
|---|
| 3054 |         efficient for the the non-mmap() case.
 | 
|---|
| 3055 | 
 | 
|---|
| 3056 |         * utils.c, utils.h, execute.c: new function ck_fread()
 | 
|---|
| 3057 |         created and used.
 | 
|---|
| 3058 | 
 | 
|---|
| 3059 | Sat Jul 26 20:22:14 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3060 | 
 | 
|---|
| 3061 |         * execute.c, compile.c, sed.c: abstracted the mmap()
 | 
|---|
| 3062 |         interface into map_file()/unmap_file() [sed.c], and
 | 
|---|
| 3063 |         changed the ad-hoc code in compile_file() [compile.c]
 | 
|---|
| 3064 |         and process_file() [execute.c] to make use of the new
 | 
|---|
| 3065 |         interface.
 | 
|---|
| 3066 | 
 | 
|---|
| 3067 | Sat Jul 26 19:45:46 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3068 | 
 | 
|---|
| 3069 |         * execute.c, compile.c, configure.in: Check to see if mmap()
 | 
|---|
| 3070 |         is available; if so make use of it on regular files.
 | 
|---|
| 3071 | 
 | 
|---|
| 3072 |         * compile.c: compile_file() now closes the input file
 | 
|---|
| 3073 |         when it is through!
 | 
|---|
| 3074 | 
 | 
|---|
| 3075 | Sun Jul 20 23:57:02 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3076 | 
 | 
|---|
| 3077 |         * compile.c: modified parsing to permit whitespace in more
 | 
|---|
| 3078 |         places where it makes sense;
 | 
|---|
| 3079 |         added backslash escaping to the y/// command, per POSIX.
 | 
|---|
| 3080 | 
 | 
|---|
| 3081 |         * execute.c: Merged append_pattern_space() into read_pattern_space();
 | 
|---|
| 3082 |         moved body of 's' command to new function do_subst();
 | 
|---|
| 3083 |         moved body of 'l' command to new function do_list();
 | 
|---|
| 3084 |         changed output of 'l' command to conform to POSIX.2;
 | 
|---|
| 3085 |         made line handling conform to POSIX; added output_line() function;
 | 
|---|
| 3086 |         redesigned append-space algorithm; added append_queue structure and
 | 
|---|
| 3087 |         the next_append_slot() and dump_append_queue() functions.
 | 
|---|
| 3088 | 
 | 
|---|
| 3089 |         * sed.h: moved the definition of what is now struct subst
 | 
|---|
| 3090 |         outside of the definition of struct sed_cmd.
 | 
|---|
| 3091 | 
 | 
|---|
| 3092 | Sat Jul 19 16:29:09 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3093 | 
 | 
|---|
| 3094 |         * sed.c, execute.c, sed.h, Makefile.am: Separated out the
 | 
|---|
| 3095 |         pieces dealing with executing the program from the top-level
 | 
|---|
| 3096 |         parameter parsing and control.
 | 
|---|
| 3097 | 
 | 
|---|
| 3098 | Sat Jul 19 01:16:35 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3099 | 
 | 
|---|
| 3100 |         * sed.c, compile.c, sed.h, Makefile.am: separate out the
 | 
|---|
| 3101 |         pieces dealing with compiling the program from the pieces
 | 
|---|
| 3102 |         dealing with interpreting the result.
 | 
|---|
| 3103 | 
 | 
|---|
| 3104 |         * compile.c: add functions in_nonblank() and in_integer(),
 | 
|---|
| 3105 |         and change interface to compile_address() with an eye
 | 
|---|
| 3106 |         to making code clearer.
 | 
|---|
| 3107 | 
 | 
|---|
| 3108 | Fri Jul 18 13:35:50 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3109 | 
 | 
|---|
| 3110 |         * utils.c: attempt at a quasi-unification of the
 | 
|---|
| 3111 |         STDC and traditional C approaches to panic().
 | 
|---|
| 3112 | 
 | 
|---|
| 3113 |         * sed.c: eliminate some gratuitous bit twiddling.
 | 
|---|
| 3114 |         (Using flag bits can be a useful technique, but
 | 
|---|
| 3115 |         this code is cleaner without them.)
 | 
|---|
| 3116 | 
 | 
|---|
| 3117 |         * sed.c: place mutually exclusive members of struct addr
 | 
|---|
| 3118 |         within a union, mainly to document the exclusivity;
 | 
|---|
| 3119 |         eliminate unused structure members from struct fp_list;
 | 
|---|
| 3120 |         eliminate unnecessary module-global variables;
 | 
|---|
| 3121 |         remove some #if 0 code that is too odd to keep;
 | 
|---|
| 3122 |         allegedly simplified the 'l' case of execute_program();
 | 
|---|
| 3123 |         allegedly simplified inchar();
 | 
|---|
| 3124 |         localized some static variables;
 | 
|---|
| 3125 |         renamed some variables to better document their purpose;
 | 
|---|
| 3126 |         removed some goto-s rendered obsolete by other changes.
 | 
|---|
| 3127 | 
 | 
|---|
| 3128 | Thu Jul 17 15:30:44 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3129 | 
 | 
|---|
| 3130 |         * utils.c, utils.h, sed.c: added and made use of
 | 
|---|
| 3131 |         ck_free() function.
 | 
|---|
| 3132 | 
 | 
|---|
| 3133 |         * utils.c, utils.h, sed.c: changed all the *_buffer()
 | 
|---|
| 3134 |         functions to take/return an incomplete type
 | 
|---|
| 3135 |         "struct buffer *" instead of using VOID *.
 | 
|---|
| 3136 | 
 | 
|---|
| 3137 |         * utils.c, utils.h, sed.c: renamed "finish_buffer()"
 | 
|---|
| 3138 |         to "free_buffer()", on the premise that the new
 | 
|---|
| 3139 |         name better describes the function's purpose.
 | 
|---|
| 3140 | 
 | 
|---|
| 3141 | Wed Jul 16 13:52:14 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3142 | 
 | 
|---|
| 3143 |         * utils.c, utils.h, sed.c: added and made use of
 | 
|---|
| 3144 |         ck_memdup() function.
 | 
|---|
| 3145 | 
 | 
|---|
| 3146 |         * sed.c: protected a call to add1_buffer() in
 | 
|---|
| 3147 |         compile_program() which could have tried to
 | 
|---|
| 3148 |         push an EOF if a a/i/c command ended with
 | 
|---|
| 3149 |         a '\', EOF sequence.
 | 
|---|
| 3150 | 
 | 
|---|
| 3151 |         * utils.c: added sanity check to add1_buffer() so that
 | 
|---|
| 3152 |         EOF will not be added to the buffer.
 | 
|---|
| 3153 | 
 | 
|---|
| 3154 | Wed Jul 16 03:56:26 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3155 | 
 | 
|---|
| 3156 |         * configure.in, compat.h, compat.c: added memchr.
 | 
|---|
| 3157 | 
 | 
|---|
| 3158 |         * sed.c: got rid of arbitrary NUM_FPS limit;
 | 
|---|
| 3159 |         made global functions and variables "static" where appropriate;
 | 
|---|
| 3160 |         make various cosmetic changes, hopefully improving readability;
 | 
|---|
| 3161 |         simplified some redundant predicates;
 | 
|---|
| 3162 |         simplified some code, but nothing fundamental (yet?).
 | 
|---|
| 3163 | 
 | 
|---|
| 3164 | Wed Jul 16 00:24:54 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3165 | 
 | 
|---|
| 3166 |         * alloca.c, getopt.c, getopt.h, getopt1.c: updated from
 | 
|---|
| 3167 |         versions in textutils-1.22.
 | 
|---|
| 3168 | 
 | 
|---|
| 3169 |         * Makefile.in, Makefile.am, configure.in: put in automake support.
 | 
|---|
| 3170 | 
 | 
|---|
| 3171 |         * basicdefs.h, compat.h, compat.c [, sed.c, utils.c]: took out
 | 
|---|
| 3172 |         some very ugly compatibility #ifdefs and packaged into one
 | 
|---|
| 3173 |         place.
 | 
|---|
| 3174 | 
 | 
|---|
| 3175 |         * sed.c, utils.c: some gratuitous formatting changes.
 | 
|---|
| 3176 | 
 | 
|---|
| 3177 |         * utils.c: changed datatype of utils_id_s in order to
 | 
|---|
| 3178 |         eliminate arbitrary array size.
 | 
|---|
| 3179 | 
 | 
|---|
| 3180 | Sun Jul 13 17:00:26 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3181 | 
 | 
|---|
| 3182 |         * sed.c, utils.c, utils.h: de-linting oriented cleanup.
 | 
|---|
| 3183 | 
 | 
|---|
| 3184 | Sun Jul 13 00:46:48 PDT 1997  Ken Pizzini <ken@gnu.org>
 | 
|---|
| 3185 | 
 | 
|---|
| 3186 |         * sed.c: fixed bug which caused SEGV for files missing a
 | 
|---|
| 3187 |         final newline.  Corrected calls to regnexec to pass the
 | 
|---|
| 3188 |         proper parameters, in the proper order.
 | 
|---|
| 3189 | 
 | 
|---|
| 3190 | Sat Dec 30 20:16:59 1995  Tom Lord  <lord@beehive>
 | 
|---|
| 3191 | 
 | 
|---|
| 3192 |         *** Version 3.00 released
 | 
|---|
| 3193 | 
 | 
|---|
| 3194 |         * sed.c: Use posix entry points to regexp functions.
 | 
|---|
| 3195 |         Fix enough bugs to pass the test-suite.
 | 
|---|
| 3196 | 
 | 
|---|
| 3197 | ....... Jason Molenda  <crash@cygnus.com>
 | 
|---|
| 3198 | 
 | 
|---|
| 3199 |         * testsuite/: trippy test suite.
 | 
|---|
| 3200 | 
 | 
|---|
| 3201 | 
 | 
|---|
| 3202 | Wed May 11 07:46:24 1994  Chip Salzenberg  (chip@fin.uucp)
 | 
|---|
| 3203 | 
 | 
|---|
| 3204 |         *** Version 2.05 released
 | 
|---|
| 3205 | 
 | 
|---|
| 3206 |         * sed.c (compile_address): Recognize numeric addresses.
 | 
|---|
| 3207 |         Fixes typo made during installation of "~" feature.
 | 
|---|
| 3208 | 
 | 
|---|
| 3209 | Sat Apr 30 17:17:38 1994  Tom Lord  (lord@x1.cygnus.com)
 | 
|---|
| 3210 | 
 | 
|---|
| 3211 |         *** Version 2.04 released
 | 
|---|
| 3212 | 
 | 
|---|
| 3213 |         * sed.c: applied a patch from
 | 
|---|
| 3214 |          From: kap1@tao.cpe.uchicago.edu (Dietrich Kappe)
 | 
|---|
| 3215 | 
 | 
|---|
| 3216 |          Dietrich writes:
 | 
|---|
| 3217 | 
 | 
|---|
| 3218 |          As my contribution to the creeping feature creature in sed,
 | 
|---|
| 3219 |          here is a new type of address. The address has form n~m,
 | 
|---|
| 3220 |          which means "the line number is equal to n modulo m." The
 | 
|---|
| 3221 |          modifications to sed are trivial, and the general
 | 
|---|
| 3222 |          usefulness of this address should be obvious. If m is 0 or
 | 
|---|
| 3223 |          missing, 1 is used in its place (could be a bug or a
 | 
|---|
| 3224 |          feature :-).
 | 
|---|
| 3225 | 
 | 
|---|
| 3226 | Sat Apr 30 17:17:38 1994  Tom Lord  (lord@x1.cygnus.com)
 | 
|---|
| 3227 | 
 | 
|---|
| 3228 |         * rx.c (solve_destination): protect `solution' more carefully.
 | 
|---|
| 3229 |         This is a cleanup of a patch from Kevin Buettner
 | 
|---|
| 3230 |          (kev@cujo.geg.mot.com).
 | 
|---|
| 3231 | 
 | 
|---|
| 3232 | Sat Apr 30 17:17:38 1994  Tom Lord  (lord@x1.cygnus.com)
 | 
|---|
| 3233 | 
 | 
|---|
| 3234 |         * rx.c: make translation tables unsigned chars
 | 
|---|
| 3235 | 
 | 
|---|
| 3236 |         * sed.c (main): Compile accumulated -e commands as
 | 
|---|
| 3237 |         soon as a -f command comes along.  This ensures that
 | 
|---|
| 3238 |         the commands are executed in the right order.
 | 
|---|
| 3239 | 
 | 
|---|
| 3240 | Mon Oct 25 14:41:47 1993  Tom Lord  (lord@rtl.cygnus.com)
 | 
|---|
| 3241 | 
 | 
|---|
| 3242 |         * sed.c (execute_program): 'w' flushes the buffer after it
 | 
|---|
| 3243 |         writes -- diagnosed by doug@research.att.com.  'r' and 'w' to
 | 
|---|
| 3244 |         the same file is now supported -- hopefully even in a way that
 | 
|---|
| 3245 |         satisfies Posix (it now behaves differently from some
 | 
|---|
| 3246 |         /bin/sed's and the spec is hard to read so i'm not sure).
 | 
|---|
| 3247 | 
 | 
|---|
| 3248 |         Also, 'r' of a non-existent file is now permitted.
 | 
|---|
| 3249 | 
 | 
|---|
| 3250 | Mon Oct 11 21:06:10 1993  Tom Lord  (lord@cygnus.com)
 | 
|---|
| 3251 | 
 | 
|---|
| 3252 |         * sed.c (execute_program): remember that 'b' and 't' are more
 | 
|---|
| 3253 |         like longjmp than goto.  Patch from tom@basil.icce.rug.nl (Tom
 | 
|---|
| 3254 |         R.Hageman)
 | 
|---|
| 3255 | 
 | 
|---|
| 3256 |         * rx.c: patch from From: fin!chip@rutgers.edu (Chip
 | 
|---|
| 3257 |         Salzenberg) to get rid of compiler warnings.
 | 
|---|
| 3258 | 
 | 
|---|
| 3259 | 
 | 
|---|
| 3260 | Sat Aug  7 01:04:59 1993  Tom Lord  (lord@unix7.andrew.cmu.edu)
 | 
|---|
| 3261 | 
 | 
|---|
| 3262 |         *** Version 2.03 released
 | 
|---|
| 3263 | 
 | 
|---|
| 3264 |         * sed.c (compile_regex): report error messages for bogus
 | 
|---|
| 3265 |         regexps.
 | 
|---|
| 3266 | 
 | 
|---|
| 3267 |         SEE ALSO:  ChangeLog.rx
 | 
|---|
| 3268 | 
 | 
|---|
| 3269 |  | 
|---|
| 3270 | 
 | 
|---|
| 3271 | Wed Jul 21 00:28:03 1993  Tom Lord  (lord@unix8.andrew.cmu.edu)
 | 
|---|
| 3272 | 
 | 
|---|
| 3273 |         * alloca.c: upgraded to a more recent version
 | 
|---|
| 3274 | 
 | 
|---|
| 3275 |         * rx.c (re_search_2): prefer matches with longer
 | 
|---|
| 3276 |         subexpressions to those with shorter ones, giving precedence
 | 
|---|
| 3277 |         to low numbered subexpressions.
 | 
|---|
| 3278 | 
 | 
|---|
| 3279 |         * rx.c (re_compile): don't free `params' if its null.
 | 
|---|
| 3280 | 
 | 
|---|
| 3281 | Fri Jul 16 01:12:08 1993  Tom Lord  (lord@unix8.andrew.cmu.edu)
 | 
|---|
| 3282 | 
 | 
|---|
| 3283 |         * rx.[ch], sed.c: rx replaces regex.
 | 
|---|
| 3284 | 
 | 
|---|
| 3285 | 
 | 
|---|
| 3286 | 
 | 
|---|
| 3287 | Thu May 27 11:13:03 1993  Tom Lord  (lord@unix3.andrew.cmu.edu)
 | 
|---|
| 3288 | 
 | 
|---|
| 3289 |         * sed.c (execute_program, match_addr): caught more cases
 | 
|---|
| 3290 |         that need to be sensitive to a missing \n at EOF.
 | 
|---|
| 3291 | 
 | 
|---|
| 3292 | Fri May 21 00:39:22 1993  Tom Lord  (lord@unix8.andrew.cmu.edu)
 | 
|---|
| 3293 | 
 | 
|---|
| 3294 |         * sed.c (execute_program): apply gaumondp's patch
 | 
|---|
| 3295 |         to fix '\xabcxs/foo/bar/'.
 | 
|---|
| 3296 | 
 | 
|---|
| 3297 |         * sed.c (execute_program):
 | 
|---|
| 3298 |         If a second address is a regexp, never match it on the
 | 
|---|
| 3299 |         same line as the first address.
 | 
|---|
| 3300 | 
 | 
|---|
| 3301 |         * sed.c (compile_regexp):
 | 
|---|
| 3302 |         Numeric ranges  x,y s.t. y < x are now treated as x,x.
 | 
|---|
| 3303 |         There was a bug in that they were being handled like x,x+1.
 | 
|---|
| 3304 | 
 | 
|---|
| 3305 |         * sed.c (execute_program, read_pattern_space,
 | 
|---|
| 3306 |         append_pattern_space) don't add newlines to lines
 | 
|---|
| 3307 |         that don't have them.
 | 
|---|
| 3308 | 
 | 
|---|
| 3309 | Wed May 19 13:34:45 1993  Tom Lord  (lord@unix9.andrew.cmu.edu)
 | 
|---|
| 3310 | 
 | 
|---|
| 3311 |         * sed.c (compile_program): grok \\n in comments.
 | 
|---|
| 3312 | 
 | 
|---|
| 3313 | Mon May 17 16:34:50 1993  Tom Lord  (lord@unix9.andrew.cmu.edu)
 | 
|---|
| 3314 | 
 | 
|---|
| 3315 |         * alloca.c: new (standard) file
 | 
|---|
| 3316 | 
 | 
|---|
| 3317 |         * configure.in: AC_CONSTified
 | 
|---|
| 3318 | 
 | 
|---|
| 3319 |         * sed.c (compile_program): properly diagnose the error of
 | 
|---|
| 3320 |         a missing command (e.g. sed /x/). (thanks gaumondp)
 | 
|---|
| 3321 | 
 | 
|---|
| 3322 |         * sed.c (compile_regexp): handle character classes correctly.
 | 
|---|
| 3323 |         Thanks gaumondp@ERE.UMontreal.CA
 | 
|---|
| 3324 |         and  schwab@issan.informatik.uni-dortmund.de.
 | 
|---|
| 3325 | 
 | 
|---|
| 3326 | Thu May  6 12:37:18 1993  Tom Lord  (lord@unix10.andrew.cmu.edu)
 | 
|---|
| 3327 | 
 | 
|---|
| 3328 |         * sed.c (compile_filename, execute_program): don't use
 | 
|---|
| 3329 |         `access' or `/dev/null'.
 | 
|---|
| 3330 | 
 | 
|---|
| 3331 |         * sed.c (execute_program): 'N' at EOF should delete the pat buf.
 | 
|---|
| 3332 | 
 | 
|---|
| 3333 |         * sed.c (compile_filename): truncate, don't append files
 | 
|---|
| 3334 |         being openned for `w' or `s///w'
 | 
|---|
| 3335 | 
 | 
|---|
| 3336 |         * sed.c (execute_program): -n switch shouldn't effect `i' or `c'.
 | 
|---|
| 3337 | 
 | 
|---|
| 3338 |         * sed.c (compile_program): don't compile unescaped newlines
 | 
|---|
| 3339 |         into the substitution string of an `s' command (they are an error).
 | 
|---|
| 3340 | 
 | 
|---|
| 3341 |         * sed.c (compile_regex): correctly skip over character
 | 
|---|
| 3342 |         sets that contain `]'.
 | 
|---|
| 3343 | 
 | 
|---|
| 3344 |         * sed.c (execute_program): patch from gaumondp
 | 
|---|
| 3345 |         Correctly handle empty-string matches in the case of an `s'
 | 
|---|
| 3346 |         command with a repeat count.
 | 
|---|
| 3347 | 
 | 
|---|
| 3348 |         * sed.c (compile_program): patch from gaumondp@ere.UMontreal.ca.
 | 
|---|
| 3349 |         Don't consume characters after the label of a `b', `t' or `:' command.
 | 
|---|
| 3350 | 
 | 
|---|
| 3351 |         * sed.c (compile_program): unmatched open braces are an error.
 | 
|---|
| 3352 | 
 | 
|---|
| 3353 |         * sed.c (compile_file): when consuming an initial comment,
 | 
|---|
| 3354 |         count lines correctly.
 | 
|---|
| 3355 | 
 | 
|---|
| 3356 | Wed Nov 18 02:10:58 1992  Tom Lord  (lord@unix2.andrew.cmu.edu)
 | 
|---|
| 3357 | 
 | 
|---|
| 3358 |         * sed.c (execute_program): Made s///p print even if -n was
 | 
|---|
| 3359 |         specified.
 | 
|---|
| 3360 | 
 | 
|---|
| 3361 |         * sed.c (compile_string): Changed the type of this function to
 | 
|---|
| 3362 |         fix a compile warning.
 | 
|---|
| 3363 | 
 | 
|---|
| 3364 | Wed Nov  4 17:15:34 1992  Tom Lord  (lord@unix7.andrew.cmu.edu)
 | 
|---|
| 3365 | 
 | 
|---|
| 3366 |         * sed.c (main): Initialize the hold area to contain "\n"
 | 
|---|
| 3367 |         instead of "".  In execute_program, all lines are expected
 | 
|---|
| 3368 |         to be newline terminated.  Also, if H is the first command
 | 
|---|
| 3369 |         in the script, the result is a pattern buffer that begins
 | 
|---|
| 3370 |         with a blank line.  Thanks to pinard@iro.umontreal.ca
 | 
|---|
| 3371 |         (Francois Pinard) for pointing out this and many other bugs.
 | 
|---|
| 3372 | 
 | 
|---|
| 3373 |         * sed.c (execute_program): Fixed a case of `D' command.
 | 
|---|
| 3374 |         Thanks Chris Weber <weber@bucknell.edu>
 | 
|---|
| 3375 | 
 | 
|---|
| 3376 |         * sed.c: added new tests of no_default_output to make -n work.
 | 
|---|
| 3377 |         Thanks Andrew Herbert <andrew@werple.apana.org.au>
 | 
|---|
| 3378 | 
 | 
|---|
| 3379 |         * sed.c, configure.in,Makefile.in: autoconfed bcopy and const.
 | 
|---|
| 3380 |         Thanks "J.T. Conklin" <jtc@gain.com>
 | 
|---|
| 3381 | 
 | 
|---|
| 3382 |         * sed.c: made prog_cur, prog_start, and prog_end unsigned so
 | 
|---|
| 3383 |         that users could write  `sed -e s/ÿ/foo/g'.
 | 
|---|
| 3384 | 
 | 
|---|
| 3385 | Tue Oct 13 00:04:05 1992  Tom Lord  (lord@unix3.andrew.cmu.edu)
 | 
|---|
| 3386 | 
 | 
|---|
| 3387 |         * sed.c (execute_program): fixed the cycling behavior of 'D'
 | 
|---|
| 3388 | 
 | 
|---|
| 3389 |         * sed.c: integrated patch that closes files
 | 
|---|
| 3390 | 
 | 
|---|
| 3391 |         * sed.c: changed regexp syntax
 | 
|---|
| 3392 | 
 | 
|---|
| 3393 | Fri May 22 15:11:12 1992  Tom Lord  (lord at moriarty.bh.andrew.cmu.edu)
 | 
|---|
| 3394 | 
 | 
|---|
| 3395 |         * regex.c:  this is not my change, but a pointer to the fact
 | 
|---|
| 3396 |         that karl@gnu fixed some regexp bugs that were plaguing sed.
 | 
|---|
| 3397 | 
 | 
|---|
| 3398 | Thu Apr 30 13:02:21 1992  Tom Lord  (lord at unix3.andrew.cmu.edu)
 | 
|---|
| 3399 | 
 | 
|---|
| 3400 |         * sed.c (compile_program, execute_program)
 | 
|---|
| 3401 |         subprograms are now compiled with an explicit continuation ;)
 | 
|---|
| 3402 |         return_v and return_i in struct vector.  execute_program
 | 
|---|
| 3403 |         no longer recurses to execute subprograms (case '{') and now
 | 
|---|
| 3404 |         understands a return instruction (case '{').
 | 
|---|
| 3405 | 
 | 
|---|
| 3406 | Tue Apr 28 17:13:04 1992  Tom Lord  (lord at unix7.andrew.cmu.edu)
 | 
|---|
| 3407 | 
 | 
|---|
| 3408 |         * sed.c (compile_address) added \?regexp? syntax for addresses.
 | 
|---|
| 3409 | 
 | 
|---|
| 3410 |         * sed.c (main) added {} intervals to the obscure regexp
 | 
|---|
| 3411 |         syntax.
 | 
|---|
| 3412 | 
 | 
|---|
| 3413 |         * sed.c (compile_program)  after calling compile_address,
 | 
|---|
| 3414 |         normalize numeric addresses (make a2.addr_number > a1.addr_number).
 | 
|---|
| 3415 |         This is necessary because line numbers must match exactly,
 | 
|---|
| 3416 |         but sed does not try to match a2 until after a1 has matched,
 | 
|---|
| 3417 |         yet a1,a2 where a2 <= a1 is defined to be equivelent to
 | 
|---|
| 3418 |         a1,a1+1
 | 
|---|
| 3419 | 
 | 
|---|
| 3420 | Sat Feb 29 10:55:54 1992  David J. MacKenzie  (djm@nutrimat)
 | 
|---|
| 3421 | 
 | 
|---|
| 3422 |         * sed.c (usage): Document long options as starting with `--'.
 | 
|---|
| 3423 | 
 | 
|---|
| 3424 | Mon Dec  9 23:56:40 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
 | 
|---|
| 3425 | 
 | 
|---|
| 3426 |         * sed.c: Include sys/types.h, for new regex.h.
 | 
|---|
| 3427 | 
 | 
|---|
| 3428 | Tue Nov  5 02:16:01 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
 | 
|---|
| 3429 | 
 | 
|---|
| 3430 |         * utils.c: Change NO_VFPRINTF to VPRINTF_MISSING, for
 | 
|---|
| 3431 |         compatibility with autoconf.
 | 
|---|
| 3432 | 
 | 
|---|
| 3433 | Mon Sep  2 22:02:40 1991  David J. MacKenzie  (djm at apple-gunkies)
 | 
|---|
| 3434 | 
 | 
|---|
| 3435 |         * sed.c (compile_regex): Treat \ as a normal character when in
 | 
|---|
| 3436 |         a char class.
 | 
|---|
| 3437 | 
 | 
|---|
| 3438 | Thu Aug  8 00:15:33 1991  David J. MacKenzie  (djm at bleen)
 | 
|---|
| 3439 | 
 | 
|---|
| 3440 |         * Version 1.08.
 | 
|---|
| 3441 | 
 | 
|---|
| 3442 |         * sed.c (compile_filename): If reading a file fails, read
 | 
|---|
| 3443 |         /dev/null instead.  It's what Unix and POSIX do, effectively.
 | 
|---|
| 3444 | 
 | 
|---|
| 3445 |         * sed.c (compile_regex): The 'slash' character doesn't
 | 
|---|
| 3446 |         terminate the regex if it's in a character class.
 | 
|---|
| 3447 | 
 | 
|---|
| 3448 |         * sed.c (main): If given no args, or bad option, print usage
 | 
|---|
| 3449 |         message.
 | 
|---|
| 3450 |         (usage): New function.
 | 
|---|
| 3451 | 
 | 
|---|
| 3452 |         * sed.c (execute_program): Amount written for 'P' command was
 | 
|---|
| 3453 |         wrong.  From stephend@ksr.com (Stephen Davis).
 | 
|---|
| 3454 | 
 | 
|---|
| 3455 | Wed Aug  7 16:51:14 1991  David J. MacKenzie  (djm at apple-gunkies)
 | 
|---|
| 3456 | 
 | 
|---|
| 3457 |         * sed.c (append_pattern_space): Check for buffer full before
 | 
|---|
| 3458 |         instead of after writing to buffer.  Don't need to test for
 | 
|---|
| 3459 |         EOF initially anymore, due to the next change.
 | 
|---|
| 3460 |         (execute_program): For 'n' and 'N' commands, if eof is reached
 | 
|---|
| 3461 |         in input, quit the script like Unix sed does.
 | 
|---|
| 3462 |         Fix memory allocation problems for 'a' and 'r' commands.
 | 
|---|
| 3463 |         (compile_program): Fix off by one error in processing comments.
 | 
|---|
| 3464 |         All of the above are from Tapani Tarvainen, tarvaine@tukki.jyu.fi.
 | 
|---|
| 3465 | 
 | 
|---|
| 3466 |         * sed.c (setup_jump): Use isblank instead of testing for ' '
 | 
|---|
| 3467 |         or '\t', for POSIX locales.
 | 
|---|
| 3468 | 
 | 
|---|
| 3469 |         * utils.c (ck_strdup): Renamed from strdup.
 | 
|---|
| 3470 |         * sed.c: Change callers.
 | 
|---|
| 3471 | 
 | 
|---|
| 3472 |         * sed.c, utils.c: Clean up declarations and includes to get
 | 
|---|
| 3473 |         rid of compiler warnings.
 | 
|---|
| 3474 | 
 | 
|---|
| 3475 |         * sed.c (main): Add long-named options.  Don't complain if -n
 | 
|---|
| 3476 |         is given twice.
 | 
|---|
| 3477 | 
 | 
|---|
| 3478 | Fri Aug  2 12:33:16 1991  David J. MacKenzie  (djm at apple-gunkies)
 | 
|---|
| 3479 | 
 | 
|---|
| 3480 |         * configure: Support +srcdir arg.  Create config.status and
 | 
|---|
| 3481 |         remove it and Makefile if interrupted while creating them.
 | 
|---|
| 3482 |         * Makefile.in: Change DESTDIR to prefix.
 | 
|---|
| 3483 | 
 | 
|---|
| 3484 | Mon Jul 15 13:07:39 1991  David J. MacKenzie  (djm at wookumz.gnu.ai.mit.edu)
 | 
|---|
| 3485 | 
 | 
|---|
| 3486 |         * sed.c (main): Add -V option to print version number.
 | 
|---|
| 3487 |         (USAGE): Mention -V.
 | 
|---|
| 3488 | 
 | 
|---|
| 3489 | Mon Jul  8 01:42:22 1991  David J. MacKenzie  (djm at geech.gnu.ai.mit.edu)
 | 
|---|
| 3490 | 
 | 
|---|
| 3491 |         * sed.c: Define bcopy in terms of memcpy if STDC_HEADERS as
 | 
|---|
| 3492 |         well as if USG.
 | 
|---|
| 3493 |         (compile_filename): Don't glob filename (for 'r' and 'w'
 | 
|---|
| 3494 |         commands).  Unix sed doesn't do it and it's not very useful,
 | 
|---|
| 3495 |         since it can only match 0 or 1 files.
 | 
|---|
| 3496 |         (execute_program): Change '\a' to 007 since some compilers
 | 
|---|
| 3497 |         don't recognize \a.
 | 
|---|
| 3498 |         * utils.c: New file; code moved from sed.c.
 | 
|---|
| 3499 |         * Replace Makefile with Makefile.in and configure.
 | 
|---|
| 3500 |         Update README.
 | 
|---|
| 3501 | 
 | 
|---|
| 3502 | Tue Mar 26 13:00:48 EST 1991    Jay Fenlason (hack@gnu.ai.mit.edu)
 | 
|---|
| 3503 | 
 | 
|---|
| 3504 |         * sed.c (match_address)  Added a trivial cast for portability.
 | 
|---|
| 3505 | 
 | 
|---|
| 3506 | Mon Feb 25 13:23:29 EST 1991    Jay Fenlason (hack@ai.mit.edu)
 | 
|---|
| 3507 | 
 | 
|---|
| 3508 |         * sed.c  Changed 's' command to work with latest version of regex()
 | 
|---|
| 3509 |         routines, which mysteriously changed somewhere in there. . .
 | 
|---|
| 3510 |         A one-line patch from David Eckelkamp (eckelkamp@mcc.com).
 | 
|---|
| 3511 | 
 | 
|---|
| 3512 |         Initialize the fastmap in the hopes that it'll make sed faster.
 | 
|---|
| 3513 | 
 | 
|---|
| 3514 | Thu Feb 21 13:42:27 EST 1991    Jay Fenlason (hack@ai.mti.edu)
 | 
|---|
| 3515 | 
 | 
|---|
| 3516 |         * sed.c Change panic to compile with other __STDC__ compilers.
 | 
|---|
| 3517 | 
 | 
|---|
| 3518 | Wed Jan 30 10:46:38 EST 1991    Jay Fenlason (hack@ai.mit.edu)
 | 
|---|
| 3519 | 
 | 
|---|
| 3520 |         * sed.c  Changed version number.  Made new release.
 | 
|---|
| 3521 | 
 | 
|---|
| 3522 | Tue Nov 27 15:34:51 EST 1990    Jay Fenlason (hack@ai.mit.edu)
 | 
|---|
| 3523 | 
 | 
|---|
| 3524 |         * sed.c (setup_jump)  Don't blow chunks if there isn't a label
 | 
|---|
| 3525 |         after a b or t command.
 | 
|---|
| 3526 | 
 | 
|---|
| 3527 |                 (main) Don't panic if it a branch command doesn't have
 | 
|---|
| 3528 |         a label to branch to.
 | 
|---|
| 3529 | 
 | 
|---|
| 3530 |                 (main)  Collect all the -e arguments together and parse them
 | 
|---|
| 3531 |         all at once.  This way, -e { -e mumble -e } will work.
 | 
|---|
| 3532 | 
 | 
|---|
| 3533 |         All these small patches from David Schmidt (davids@isc-br.isc-br.com)
 | 
|---|
| 3534 | 
 | 
|---|
| 3535 | Tue Sep 11 12:51:37 EDT 1990    Jay Fenlason (hack@ai.mit.edu)
 | 
|---|
| 3536 | 
 | 
|---|
| 3537 |         * sed.c Changed some function forward declarations to use VOID *
 | 
|---|
| 3538 |         instead of char *
 | 
|---|
| 3539 | 
 | 
|---|
| 3540 | Mon Jul 16 11:12:54 EDT 1990 Jay Fenlason (hack@ai.mit.edu)
 | 
|---|
| 3541 | 
 | 
|---|
| 3542 |         * sed.c (ck_malloc)  Use malloc(1) instead of malloc(0) if given
 | 
|---|
| 3543 |         a request for zero bytes.
 | 
|---|
| 3544 | 
 | 
|---|
| 3545 | Tue Jun  5 02:05:37 1990  David J. MacKenzie  (djm at albert.ai.mit.edu)
 | 
|---|
| 3546 | 
 | 
|---|
| 3547 |         * sed.c: Remove excess newlines from calls to panic.
 | 
|---|
| 3548 |         Reformat some comments to fit in 79 columns.
 | 
|---|
| 3549 |         Base whether to use void * on __STDC__, not __GNU__.
 | 
|---|
| 3550 |         (main): Add missing arg when printing usage message.
 | 
|---|
| 3551 |         Print usage if given invalid arg.
 | 
|---|
| 3552 |         (panic) [__STDC__]: Add missing ", ...".
 | 
|---|
| 3553 |         (compile_filename): Print correct error message if glob_filename
 | 
|---|
| 3554 |         returns NULL.
 | 
|---|
| 3555 | 
 | 
|---|
| 3556 | Thu Apr  5 21:41:12 1990  Jim Kingdon  (kingdon at pogo.ai.mit.edu)
 | 
|---|
| 3557 | 
 | 
|---|
| 3558 |         * sed.c (execute_program, case 'r'): When need to realloc append.text,
 | 
|---|
| 3559 |         multiply append.alloc by 2 instead of adding
 | 
|---|
| 3560 |         cur_cmd->x.cmd_txt.text_len.
 | 
|---|
| 3561 | 
 | 
|---|
| 3562 | Tue Mar  6 15:55:35 EST 1990 Jay Fenlason (hack@ai.mit.edu)
 | 
|---|
| 3563 | 
 | 
|---|
| 3564 |         * sed.c (compile_regex)  Allocate 10 bytes extra space needed by
 | 
|---|
| 3565 |         re_compile_pattern.
 | 
|---|
| 3566 | 
 | 
|---|
| 3567 | Sun Feb 25 16:32:10 1990  Jim Kingdon  (kingdon at pogo.ai.mit.edu)
 | 
|---|
| 3568 | 
 | 
|---|
| 3569 |         * sed.c (execute_program, case 'l'): Print \00 instead of \0.
 | 
|---|
| 3570 |         Print backslash as \\ not \.
 | 
|---|
| 3571 |         Print \xx instead of /xx.
 | 
|---|
| 3572 | 
 | 
|---|
| 3573 | Thu Feb  1 14:02:28 EST 1990            hack@wookumz
 | 
|---|
| 3574 | 
 | 
|---|
| 3575 |         * sed.c (memchr)  Use () inside inner loop so it will work correctly.
 | 
|---|
| 3576 |         A two character patch from Robert A Bruce (rab@allspice.berkeley.edu)
 | 
|---|
| 3577 | 
 | 
|---|
| 3578 | Wed Sep 27 18:47:39 EDT 1989            hack@ai.mit.edu
 | 
|---|
| 3579 | 
 | 
|---|
| 3580 |         * sed.c (compile_regex)  New function.  When compiling regex,
 | 
|---|
| 3581 |         turn ^ into \` and $ into \' so that they won't match on embedded
 | 
|---|
| 3582 |         newlines.  UN*X pattern matching is a crock.
 | 
|---|
| 3583 |         (compile_program, compile_address) call compile_regex.
 | 
|---|
| 3584 | 
 | 
|---|
| 3585 | Mon Sep 18 10:15:32 EDT 1989            hack@ai.mit.edu
 | 
|---|
| 3586 | 
 | 
|---|
| 3587 |         * sed.c (compile_program):  define translate as unsigned char * so
 | 
|---|
| 3588 |         that y command will work on non-ascii characters.
 | 
|---|
| 3589 | 
 | 
|---|
| 3590 |         Changed version number to 1.06.
 | 
|---|
| 3591 | 
 | 
|---|
| 3592 | Thu Sep 14 15:57:08 EDT 1989            hack@ai.mit.edu
 | 
|---|
| 3593 | 
 | 
|---|
| 3594 |         * sed.c  (compile_program)  Let programs use ; to terminate } as
 | 
|---|
| 3595 |         well as newline.
 | 
|---|
| 3596 | 
 | 
|---|
| 3597 |         (read_file) Print an error msg to stderr if it can't open an
 | 
|---|
| 3598 |         input file.
 | 
|---|
| 3599 | 
 | 
|---|
| 3600 | Thu Mar 23 18:04:46 1989  Randall Smith  (randy at apple-gunkies.ai.mit.edu)
 | 
|---|
| 3601 | 
 | 
|---|
| 3602 |         * Makefile, sed.c: Added new copyright notice.
 | 
|---|
| 3603 | 
 | 
|---|
| 3604 |         * Makefile: Make distributions which follow the symlinks.
 | 
|---|
| 3605 | 
 | 
|---|
| 3606 | hack@ai.mit.edu
 | 
|---|
| 3607 | 
 | 
|---|
| 3608 |         1.05    Fixed error in 'r' (now does things in the right order)
 | 
|---|
| 3609 | 
 | 
|---|
| 3610 |         1.04    Fixed s/re/rep/[number]
 | 
|---|
| 3611 | 
 | 
|---|
| 3612 |         1.03    Fixes from Mike Haertel for regexps that match the
 | 
|---|
| 3613 |                 empty string, and for Ritchie stdio (non-sticky EOF)
 | 
|---|
| 3614 | 
 | 
|---|
| 3615 |         1.02    Fixed 't', 'b', ':' to trim leading spaces and tabs
 | 
|---|
| 3616 |                 Fixed \\ in replacement of 's' command
 | 
|---|
| 3617 |                 Added comments
 | 
|---|
| 3618 | 
 | 
|---|
| 3619 |         1.01    Added s/re/rep/[digits]
 | 
|---|
| 3620 |                 added #n as first line of script
 | 
|---|
| 3621 |                 added filename globbing
 | 
|---|
| 3622 |                 added 'l' command
 | 
|---|
| 3623 |                 All in the name of POSIX
 | 
|---|
| 3624 | 
 | 
|---|
| 3625 |         1.00    Began (thinking about) distributing this file
 | 
|---|
| 3626 |  | 
|---|
| 3627 | 
 | 
|---|
| 3628 | Local Variables:
 | 
|---|
| 3629 | mode: indented-text
 | 
|---|
| 3630 | left-margin: 8
 | 
|---|
| 3631 | version-control: never
 | 
|---|
| 3632 | End:
 | 
|---|