]>
Commit | Line | Data |
---|---|---|
726f6388 JA |
1 | 6/2 |
2 | --- | |
3 | lib/readline/readline.c | |
4 | - fixed an off-by-one error in the kill ring reallocation code | |
5 | in rl_kill_text | |
6 | ||
7 | Makefile | |
8 | - replaced instances of /bin/sh with $(SHELL) | |
9 | ||
10 | Makefile, cpp-Makefile, documentation/Makefile | |
11 | - added a working `uninstall' target | |
12 | ||
13 | [1.14.0 FCS release made available for FTP] | |
14 | ||
15 | 6/3 | |
16 | --- | |
17 | README | |
18 | - added note about building with gcc, same as in Makefile | |
19 | ||
20 | documentation/Makefile | |
21 | - some versions of make don't understand `$*' in a regular recipe; | |
22 | replace with features.dvi in the recipe for features.ps | |
23 | ||
24 | 6/4 | |
25 | --- | |
26 | subst.c | |
27 | - fix up the calls to string_extract_double_quoted and | |
28 | string_extract_single_quoted in char_is_quoted so the initial | |
29 | value of the index is *after* the opening quote character | |
30 | - make sure we only return 1 from char_is_quoted if the index | |
31 | into the string after a call to string_extract_double_quoted or | |
32 | string_extract_single_quoted is *greater than* `eindex' | |
33 | ||
34 | lib/readline/complete.c | |
35 | - change the order and sense of the quoting tests in | |
36 | rl_complete_internal so that the expensive char_is_quoted | |
37 | is only called if `scan' actually is a word break character | |
38 | ||
39 | shell.c | |
40 | - fixed a typo in the test for a restricted shell | |
41 | ||
42 | builtins/exec.def | |
43 | - need to include flags.h | |
44 | ||
45 | 6/6 | |
46 | --- | |
47 | make_cmd.c | |
48 | - make sure that we don't try to walk down a null command tree | |
49 | in connect_async_list (tickled by `(command &) &') | |
50 | - if a command has the CMD_WANT_SUBSHELL bit set in its flags, | |
51 | don't even try to walk the command tree and move the `&'; | |
52 | just connect the command with a null command using `&' | |
53 | ||
54 | execute_cmd.c | |
55 | - make sure we don't try to reference a command struct without | |
56 | first checking it (case '&') | |
57 | ||
58 | 6/7 | |
59 | --- | |
60 | machines.h | |
61 | - fix a typo in the NeXT/i386 description; change the NeXT description | |
62 | to #define HAVE_RESOURCE if not already defined rather than putting | |
63 | -DHAVE_RESOURCE into the SYSDEP_CFLAGS | |
64 | ||
65 | 6/9 | |
66 | --- | |
67 | Makefile | |
68 | - make sure all of the rules that reinvoke `make' have the | |
69 | `-f bash-Makefile' before the assignment statements; some | |
70 | versions of make like it that way | |
71 | ||
72 | variables.c | |
73 | - make sure that `interactive' is set to 0 before evaluating the | |
74 | string containing an exported function obtained from the | |
75 | environment, so that it does not try to execute PROMPT_COMMAND | |
76 | (this may not be the best fix) | |
77 | ||
78 | 6/13 | |
79 | ---- | |
80 | documentation/Makefile | |
81 | - make sure all of the directories exist before trying to install | |
82 | doc files into them | |
83 | ||
84 | lib/readline/history.c | |
85 | - add a missing O_TRUNC to the open call for writing in | |
86 | history_truncate_file | |
87 | ||
88 | trap.c | |
89 | - run_interrupt_trap should only try to run the trap command if | |
90 | the value is not IMPOSSIBLE_TRAP_HANDLER | |
91 | ||
92 | Makefile | |
93 | - add `realclean' | |
94 | ||
95 | lib/readline/complete.c | |
96 | - do the same kind of double-quoting a replacement string if the | |
97 | user supplies the opening double quote as we would if we were | |
98 | adding both quotes ourselves | |
99 | ||
100 | variables.c | |
101 | - fixed the variable initialization so that history_control/HISTCONTROL | |
102 | can be inherited from a parent shell | |
103 | ||
104 | INSTALL, README, cpp-Makefile, documentation/bash.1, documentation/readline.3 | |
105 | - ai.mit.edu -> prep.ai.mit.edu | |
106 | ||
107 | shell.c | |
108 | - fixed a problem with setting no_line_editing to the result of the | |
109 | check for running inside emacs, thereby losing any value | |
110 | initialized by the `-nolineediting' flag | |
111 | ||
112 | cpp-Makefile | |
113 | - `make distclean' will now remove the `installed-bash' link | |
114 | ||
115 | print_cmd.c | |
116 | - fixed a problem with undefined variables when HAVE_VARARGS_H is | |
117 | not defined | |
118 | ||
119 | 6/14 | |
120 | ---- | |
121 | lib/readline/history.c | |
122 | - fixed an error in the csh history expansion code so that the | |
123 | `-y' word designator now expands to `0-y' rather than `1-y' | |
124 | ||
125 | lib/readline/isearch.c | |
126 | - changed an absolute check for a character falling within the | |
127 | ASCII 32-126 range (printable chars) with checks for CTRL_P | |
128 | and META_CHAR and a check against the value RUBOUT | |
129 | - changed a `break' to a `continue' so that the first non-matching | |
130 | character in the search string does not cause the search to | |
131 | end abruptly | |
132 | - initialize prev_line_found to 0 at the top of rl_search_history | |
133 | to avoid duplicate history lines being saved across searches | |
134 | ||
135 | lib/readline/rltty.c | |
136 | - consolidated repeated code for setting special characters into | |
137 | `SET_SPECIAL' defines | |
138 | ||
139 | lib/readline/readline.c | |
140 | - include <sys/ioctl.h> if VSTATUS is defined | |
141 | - add bindable command rl_tty_status (unbound by default) | |
142 | ||
143 | lib/readline/funmap.c | |
144 | - assign bindable command name `tty-status' to rl_tty_status | |
145 | ||
146 | INSTALL | |
147 | - add note about compiling with gcc, same text as README | |
148 | ||
149 | lib/readline/display.c | |
150 | - many changes and tweaks to make redisplay work better when the | |
151 | prompt has invisible characters. These changes are non-optimal | |
152 | in that the prompt is redrawn more than it needs to be, but | |
153 | things are a hell of a lot better than they were | |
154 | ||
155 | 6/15 | |
156 | ---- | |
157 | documentation/Makefile | |
158 | - make a variable NROFF that people can set to `groff -Tascii' if | |
159 | they don't have real nroff | |
160 | - changed the suffix rules to use $< | |
161 | ||
162 | support/bashbug.sh | |
163 | - if rmail doesn't exist or fails, save the bug report in | |
164 | ~/dead.bashbug | |
165 | ||
166 | execute_cmd.c | |
167 | - in setup_async_signals, only ignore SIGINT and SIGQUIT if job | |
168 | control is not active. If it is active and the job is restarted, | |
169 | SIGINT remains ignored, and the now-foregrounded job is not | |
170 | interruptible | |
171 | ||
172 | subst.c | |
173 | - fixed up a problem with char_is_quoted that caused backslash- | |
174 | escaped characters to cause incorrect results | |
175 | ||
176 | tests/run-dollars, tests/dollar-at.sh, tests/dollar-star.sh | |
177 | - since the error messages produced by `cat' vary, changed `cat' | |
178 | to `recho' and updated the correct answers file | |
179 | ||
180 | machines.h | |
181 | - fixes to CRAY_STACKSEG_END definitions for different versions of | |
182 | Unicos on the YMP (from Bill Jones) | |
183 | - Motorola SVR4 machines have getcwd() and should not undef | |
184 | HAVE_GETCWD | |
185 | - on hpux 9.x, don't try to link with -lPW if compiling with gcc | |
186 | (for alloca) | |
187 | ||
188 | parse.y | |
189 | - an ugly fix for a compiler problem with structure assignment on | |
190 | the cray | |
191 | ||
192 | 6/16 | |
193 | ---- | |
194 | builtins/wait.def | |
195 | - replaced a call to sscanf with a validity check using all_digits() | |
196 | and a call to atoi, since a pid_t is not necessarily an int, and | |
197 | the sscanf clobbered the stack frame on systems where it is shorter | |
198 | than an int (e.g., SCO) | |
199 | ||
200 | lib/readline/display.c | |
201 | - since META_CHAR and the other macros only work with unsigned | |
202 | chars, make rl_character_len convert its argument to an unsigned | |
203 | char before testing it | |
204 | ||
205 | documentation/Makefile | |
206 | - use $(INSTALL_DATA) instead of $(CP) to install the man pages and | |
207 | info files | |
208 | ||
209 | cpp-Makefile | |
210 | - use INSTALL_PROGRAM and INSTALL_DATA to install binaries and | |
211 | documentation; pass both values to installs in subdirectories | |
212 | ||
213 | 6/18 | |
214 | ---- | |
215 | builtins/ulimit.def | |
216 | - compensate for systems which define RLIMIT_OFILE instead of | |
217 | RLIMIT_NOFILE, or don't provide such a compatibility define | |
218 | themselves | |
219 | ||
220 | shell.c | |
221 | - make maybe_execute_file check for directories and print an | |
222 | appropriate error message, since it's doing an fstat anyway | |
223 | ||
224 | support/mksysdefs | |
225 | - added support for a `-s srcdir' option so it can find | |
226 | cpp-Makefile if ansi-Makefile is to be created | |
227 | ||
228 | Makefile | |
229 | - call mksysdefs with -s $(srcdir) | |
230 | ||
231 | jobs.c | |
232 | - add the magic #undef lines to avoid redefinition warnings on | |
233 | SunOS 4 only | |
234 | ||
235 | 6/20 | |
236 | ---- | |
237 | cpp-Makefile | |
238 | - install `bashbug' with `make install' | |
239 | ||
240 | trap.c | |
241 | - make sure that `interactive' is set to 0 when running trap | |
242 | commands | |
243 | ||
244 | builtins/umask.c | |
245 | - fixed typo in usage error message | |
246 | ||
247 | subst.c | |
248 | - fix process_substitute to set subshell_environment | |
249 | ||
250 | jobs.c, nojobs.c | |
251 | - only mess with the terminal settings for an interactive shell | |
252 | that is not in a subshell environment | |
253 | ||
254 | 6/21 | |
255 | ---- | |
256 | lib/readline/history.h | |
257 | - add extern declaration of history_get | |
258 | ||
259 | builtins/fc.def | |
260 | - make history replacement when using `r' or `fc -s' obey the | |
261 | setting of HISTCONTROL | |
262 | ||
263 | general.c | |
264 | - in canonicalize_pathname, preserve a double // at the start | |
265 | of an absolute pathname, since that means something special | |
266 | for the network directory system | |
267 | ||
268 | README, INSTALL | |
269 | - updated information about submitting bug reports | |
270 | ||
271 | lib/readline/vi_mode.c, lib/readline/isearch.c | |
272 | - make sure unistd.h is included before rldefs.h, if | |
273 | HAVE_UNISTD_H is defined | |
274 | ||
275 | 6/24 | |
276 | ---- | |
277 | lib/readline/complete.c | |
278 | - add `#' to the list of characters which cause a completed filename | |
279 | to be quoted | |
280 | ||
281 | execute_cmd.c | |
282 | - be more careful about closing pipe file descriptors in do_piping; | |
283 | don't want to have `dup2(i, i); close(i);' problem | |
284 | ||
285 | lib/readline/{keymaps,readline}.h | |
286 | - include local copies of include files if READLINE_LIBRARY is | |
287 | defined, otherwise include the `official, installed' versions | |
288 | using #include <readline/xxx.h> | |
289 | ||
290 | lib/readline/*.c | |
291 | - define READLINE_LIBRARY before including any files | |
292 | - include only `local' copies of include files using #include "xxx.h" | |
293 | rather than #include <readline/xxx.h> | |
294 | ||
295 | 6/26 | |
296 | ---- | |
297 | execute_cmd.c | |
298 | - check for clobbering the bash input stream before closing a file | |
299 | descriptor due to an r_close_this redirection | |
300 | ||
301 | lib/readline/history.c | |
302 | - made history_expand inhibit history expansion if the history | |
303 | expansion char is set to 0 | |
304 | ||
305 | lib/readline/chardefs.h | |
306 | - moved savestring() definition to rldefs.h | |
307 | - changed lowercase_p, uppercase_p, to_lower, to_upper defines to | |
308 | use <ctype.h> macros rather than assume ASCII | |
309 | ||
310 | lib/readline/bind.c, general.c, general.h | |
311 | - use strcasecmp, strncasecmp instead of str[n]icmp if | |
312 | HAVE_STRCASECMP is defined | |
313 | ||
314 | cpp-Makefile | |
315 | - pass -DHAVE_STRCASECMP to builds in the libraries, primarily | |
316 | readline | |
317 | ||
318 | machines.h | |
319 | - add HAVE_STRCASECMP to the entries for BSD/386, NetBSD, FreeBSD, | |
320 | and 4.4 BSD | |
321 | ||
322 | builtins/hash.def | |
323 | - add a fourth parameter to remember_filename, the initial value | |
324 | of times_found (0 if we're just looking it up for `hash', 1 | |
325 | for the command execution code) | |
326 | ||
327 | execute_cmd.c | |
328 | - call remember_filename with an initial value of 1 for times_found | |
329 | ||
330 | builtins/wait.def | |
331 | - handle a null argument with an error message | |
332 | ||
333 | builtins/common.c | |
334 | - parse_and_execute now takes a third parameter: the value for | |
335 | `interactive' while it is executing commands | |
336 | ||
337 | bashline.c, jobs.c, parse.y, shell.c, subst.c, trap.c, variables.c | |
338 | - set the new third argument to parse_and_execute appropriately | |
339 | ||
340 | builtins/eval.def, builtins/fc.def, builtins/source.def | |
341 | - set the new third argument to parse_and_execute appropriately | |
342 | ||
343 | builtins/help.def | |
344 | - changed a call to strnicmp to strncmp when trying to find what | |
345 | to give help on; it seems more correct | |
346 | ||
347 | 6/27 | |
348 | ---- | |
349 | machines.h | |
350 | - cleaned up the SunOS section so it no longer relies on | |
351 | HAVE_SHARED_LIBS being defined; it uses SunOS4 and SunOS5 | |
352 | instead | |
353 | ||
354 | support/mksysdefs | |
355 | - define SYSDEF to be SunOS4 or SunOS5 depending on the output | |
356 | of uname rather than looking for ld.so | |
357 | ||
358 | 6/29 | |
359 | ---- | |
360 | machines.h | |
361 | - minor change to the ardent titan machine description | |
362 | - move the ardent and stardent descriptions before the | |
363 | mips riscos description | |
364 | ||
365 | print_cmd.c | |
366 | - ardent machines also need the extern declaration for printf | |
367 | ||
368 | make_cmd.c | |
369 | - connect_async_list should do its work only if the lists to be | |
370 | backgrounded are connected with `;'. This makes `;' bind tighter | |
371 | than `&', so only the last job in the list is backgrounded. All | |
372 | other lists should have the entire thing put in the background | |
373 | ||
374 | parse.y | |
375 | - added a function `print_prompt' to take care of displaying the | |
376 | prompt string if readline is not being used. This fixes problems | |
377 | with the prompt being displayed before the status of completed | |
378 | jobs is printed | |
379 | ||
380 | 6/30 | |
381 | ---- | |
382 | builtins/fg_bg.def | |
383 | - `fg' and `bg' now print error messages if invoked when job control | |
384 | is disabled | |
385 | ||
386 | lib/readline/rltty.c | |
387 | - if not compiled into the shell, make get_tty_settings get and set | |
388 | the window size. This noop stops the process if it is started in | |
389 | the background | |
390 | ||
391 | lib/readline/readline.c | |
392 | - provide a function version of savestring, if not being compiled | |
393 | into the shell, since the macro has been removed from the | |
394 | `public' header files | |
395 | ||
396 | lib/readline/readline.h | |
397 | - provide all extern function declarations without checking whether | |
398 | VI_MODE or PAREN_MATCHING are defined. It does not hurt to define | |
399 | them if they are not used and not in the library, and other | |
400 | applications using readline can't tell whether or not VI_MODE was | |
401 | defined when the library was compiled anyway | |
402 | ||
403 | 7/1 | |
404 | --- | |
405 | machines.h | |
406 | - add #undef HAVE_DIRENT_H to the ardent titan description | |
407 | ||
408 | 7/2 | |
409 | --- | |
410 | lib/readline/chardefs.h | |
411 | - removed META_P define, renamed CTRL_P to CTRL_CHAR | |
412 | ||
413 | lib/readline/bind.c, lib/readline/isearch.c | |
414 | - changed instances of CTRL_P to CTRL_CHAR | |
415 | ||
416 | lib/readline/search.c | |
417 | - include <unistd.h> before rldefs.h, if HAVE_UNISTD_H is defined | |
418 | ||
419 | lib/readline/readline.c | |
420 | - declare PC, UP, and BC as extern rather than `local' to the | |
421 | readline library | |
422 | ||
423 | 7/5 | |
424 | --- | |
425 | bashline.c | |
426 | - implement command word completion inside of command substitution | |
427 | with a new function: `command_subst_completion_function' | |
428 | ||
429 | subst.c | |
430 | - new function to help with command subst completion: unclosed_pair | |
431 | ||
432 | lib/readline/complete.c | |
433 | - new variable rl_filename_quoting_desired, which can be set to 0 | |
434 | to inhibit the quoting of filenames after completion | |
435 | ||
436 | lib/readline/readline.h | |
437 | - declare rl_filename_completion_desired and | |
438 | rl_filename_quoting_desired | |
439 | ||
440 | builtins/bind.def | |
441 | - don't save the old value of rl_outstream before initializing | |
442 | readline -- it saves garbage values and screws up readline | |
443 | ||
444 | parse.y | |
445 | - don't have private state telling whether or not readline has | |
446 | been initialized -- use bash_readline_initialized like other | |
447 | functions in bashline.c | |
448 | ||
449 | lib/readline/readline.c | |
450 | - make the default 8-bit behavior be based on whether LC_CTYPE is | |
451 | defined and its value (accept iso-8859-1 or iso_8859_1) | |
452 | ||
453 | 7/6 | |
454 | --- | |
455 | variables.c | |
456 | - fix up the declaration of getenv() for convex machines | |
457 | ||
458 | 7/7 | |
459 | --- | |
460 | lib/readline/readline.c | |
461 | - fixed up typos in the declaration of `savestring' | |
462 | ||
463 | lib/readline/history.c | |
464 | - fixed an off-by-one error in the ADD_CHAR macro which caused one | |
465 | extra character to be overwritten, causing the gnu malloc to abort | |
466 | when that one character was at the end of an allocated block | |
467 | - changed the ADD_STRING macro to avoid some unnecessary xreallocs | |
468 | ||
469 | lib/readline/display.c | |
470 | - fixed a problem with move_cursor_relative -- function now returns | |
471 | immediately if it has nothing to do | |
472 | - fixed another problem with displaying prompts with invisible chars | |
473 | ||
474 | lib/readline/chardefs.h | |
475 | - fixed the CTRL macro to be right (agree with the BSD kernel, for | |
476 | example) | |
477 | ||
478 | cpp-Makefile | |
479 | - fixed typo in the `install' recipe | |
480 | ||
481 | 7/8 | |
482 | --- | |
483 | support/srcdir | |
484 | - fixed to handle srcdir when it begins with ./ or ../ to handle | |
485 | $(srcdir) being a relative path better | |
486 | ||
487 | cpp-Makefile | |
488 | - changed some include paths to $(BUILTIN_ABSSRC) when building in | |
489 | `builtins' to handle $(srcdir) being a relative path | |
490 | - change the `chmod' on bashbug to turn on read and execute for all | |
491 | - added a couple of definitions to make it easier for a later | |
492 | `configure' program | |
493 | ||
494 | support/mksysdefs | |
495 | - added a -i option to specify an alternate set of directories to | |
496 | search for include files | |
497 | ||
498 | lib/readline/bind.c | |
499 | - in rl_read_init_file, when skipping whitespace at the start of | |
500 | the line, decrement `i' so that we don't jump past the start | |
501 | of the next line | |
502 | ||
503 | machines.h | |
504 | - SCOv4 has a `robust' opendir that checks that you're actually | |
505 | opening a directory | |
506 | ||
507 | 7/11 | |
508 | ---- | |
509 | lib/readline/complete.c | |
510 | - make sure a word break character is unquoted before using it to | |
511 | separate out the current word for completing | |
512 | ||
513 | machines.h | |
514 | - new machine description: NetBSD on motorola m68k machines like | |
515 | the hp300 | |
516 | - undef HAVE_GETWD in the generic svr4 machine description, like | |
517 | other svr4 descriptions | |
518 | ||
519 | lib/readline/rltty.c | |
520 | - make sure to fflush (rl_outstream) after toggling the setting | |
521 | of the keypad and meta key | |
522 | ||
523 | portbash/libc.sh | |
524 | - add a test for OPENDIR_NOT_ROBUST | |
525 | ||
526 | support/getcppsyms.c | |
527 | - output __svr4__ if we find __uxps__ (this makes the Fujitsu port of | |
528 | SVR4 to the sparc build OK) | |
529 | ||
530 | 7/12 | |
531 | ---- | |
532 | lib/readline/display.c | |
533 | - more display-related fixes when the prompt has invisible chars; | |
534 | this time for screen updates when moving between screen lines | |
535 | ||
536 | lib/readline/readline.c, lib/readline/display.c | |
537 | - changes to make readline work with terminals that have auto-wrap | |
538 | from Per Bothner (new function _rl_update_final, term_xn changes, | |
539 | some efficiency speedups, new function space_to_eol) | |
540 | ||
541 | 7/13 | |
542 | ---- | |
543 | lib/readline/display.c | |
544 | - after moving up screen lines using term_up in _rl_move_vert, if | |
545 | the new screen line is 0, _rl_last_c_pos needs to be adjusted | |
546 | to take invisible characters into account. This was the source | |
547 | of many bugs | |
548 | ||
549 | ||
550 | 7/14 | |
551 | ---- | |
552 | documentation/Makefile | |
553 | - change instances of `groff' to `${GROFF}', GROFF is set to | |
554 | `groff' by default | |
555 | ||
556 | general.c, variables.c | |
557 | - moved `qsort_string_compare' from variables.c to general.c | |
558 | ||
559 | general.h, variables.h | |
560 | - moved declaration of `qsort_string_compare' from variables.h | |
561 | to general.h | |
562 | ||
563 | alias.c, lib/readline/funmap.c | |
564 | - moved qsort auxiliary functions after their use and added | |
565 | forward declarations to avoid warnings from ANSI C compilers | |
566 | ||
567 | memalloc.h | |
568 | - hpux_9 needs alloca declared as `extern void *' if __STDC__ | |
569 | is defined | |
570 | ||
571 | support/mksysdefs | |
572 | - removed HAVE_SHARED_LIBS entirely | |
573 | - make a call to /bin/uname -X for SCO machines to avoid running | |
574 | a different uname from the $PATH | |
575 | ||
576 | machines.h | |
577 | - new descriptions: Intel i860 running SVR4, Tahoe running 4.3 BSD | |
578 | - changed descriptions: Mips/RiscOS, DG AViiON, unknown machine | |
579 | ||
580 | jobs.c | |
581 | - changes to how the shell handles foreground jobs dying of SIGINT: | |
582 | an interactive shell using job control will no longer | |
583 | act as if it received a SIGINT if the foreground job | |
584 | dies from a SIGINT | |
585 | ||
586 | a non-interactive shell or shell without job control tries | |
587 | to differentiate between SIGINTs it has seen (in | |
588 | wait_sigint_handler) and a foreground job dying of a SIGINT | |
589 | not sent from the keyboard, and runs the normal SIGINT code | |
590 | only in the former case | |
591 | ||
592 | 7/15 | |
593 | ---- | |
594 | support/mksysdefs | |
595 | - check for ${UNAME}${RELEASE} expanding to `SunOS4*' or `SunOS5*' | |
596 | to set SYSDEF to SunOS4 or SunOS5, respectively. Apparently | |
597 | this does not work for Solbourne | |
598 | ||
599 | 7/18 | |
600 | ---- | |
601 | ||
602 | lib/readline/rltty.c | |
603 | - if output is being flushed on termios systems, loop until the | |
604 | FLUSHO bit is no longer set in the termios struct | |
605 | ||
606 | support/mksysdefs | |
607 | - added a -A flag to force creation of ansi-Makefile | |
608 | ||
609 | machines.h | |
610 | - new entry for Tandem machines running SVR3 | |
611 | ||
612 | 7/19 | |
613 | ---- | |
614 | lib/readline/rldefs.h | |
615 | - include <termcap.h> if HAVE_TERMCAP_H is defined | |
616 | - use <termio.h> stuff if HAVE_TERMIO_H is defined and _POSIX_VERSION | |
617 | is not defined | |
618 | ||
619 | lib/readline/rldefs.h, lib/readline/history.c | |
620 | - include "config.h" if HAVE_CONFIG_H is defined | |
621 | ||
622 | lib/readline/{rldefs.h,signals.c,readline.c} | |
623 | - WINSIZE_IN_IOCTL_H -> GWINSZ_IN_SYS_IOCTL for compatibility with | |
624 | other GNU programs | |
625 | ||
626 | lib/readline/doc/Makefile | |
627 | - fixed up to create the readline and history manuals in dvi and | |
628 | ps format | |
629 | ||
630 | lib/readline/Makefile | |
631 | - changes inspired by the standalone readline-2.0 distribution | |
632 | ||
633 | 7/20 | |
634 | ---- | |
635 | lib/readline/history.c | |
636 | - new function, history_is_stifled (), returns history_stifled | |
637 | - set history_state flags member in the history state functions | |
638 | ||
639 | lib/readline/history.h | |
640 | - reorganized the function declarations, added missing declarations | |
641 | - history_stifled is no longer exported by the library | |
642 | - added a `flags' member to the HISTORY_STATE structure | |
643 | ||
644 | bashline.c | |
645 | - use history_is_stifled () instead of history_stifled | |
646 | ||
647 | lib/readline/readline.c, lib/readline/vi_mode.c | |
648 | - filled in correct argument declarations for functions called via | |
649 | keymaps (count, key) | |
650 | ||
651 | lib/readline/complete.c | |
652 | - efficiency improvement for compare_strings | |
653 | ||
654 | 7/21 | |
655 | ---- | |
656 | examples/dirfuncs | |
657 | - new directory functions from ksh book, contributed by | |
658 | Ken Konecki (kenk@wfg.com) | |
659 | ||
660 | machines.h | |
661 | - hpux_8 and hpux_9 should both #undef HAVE_ALLOCA unless gcc is | |
662 | being used | |
663 | ||
664 | 7/22 | |
665 | ---- | |
666 | bashline.c | |
667 | - fixed up command_word_completion_function so that filenames with | |
668 | leading tildes are completed correctly | |
669 | ||
670 | 7/26 | |
671 | ---- | |
672 | builtins/read.def | |
673 | - if -r not given, make sure CTLESC is removed from input string | |
674 | when reading \<newline> | |
675 | ||
676 | lib/readline/readline.c | |
677 | - new function bind_arrow_keys, which binds vt100/ansi arrow key | |
678 | escape sequences after reading the termcap definition and the | |
679 | inputrc file | |
680 | - new function rl_yank_last_arg, which does what insert-last-arg | |
681 | does in bash | |
682 | ||
683 | lib/readline/emacs_keymap.c | |
684 | - remove default bindings to rl_arrow_keys for M-[ and M-O | |
685 | - rl_yank_last_arg is now bound to `M-.' and `M-_' in | |
686 | emacs_meta_keymap | |
687 | ||
688 | subst.c | |
689 | - when performing process substitution on systems with /dev/fd, | |
690 | make sure the child clears the slot in dev_fd_list it gets | |
691 | from its parent so the file descriptor does not get closed | |
692 | inappropriately if reallocated by, e.g., pipe(2) | |
693 | ||
694 | bashline.c | |
695 | - removed insert_last_arg and the calls to bind in to `M-.' and `M-_'. | |
696 | `insert-last-argument' is now bound to rl_yank_last_arg for | |
697 | backwards compatibility | |
698 | ||
699 | lib/readline/funmap.c | |
700 | - `yank-last-arg' is now a named command for rl_yank_last_arg | |
701 | ||
702 | ||
703 | documentation/bash.1, documentation/readline.3 | |
704 | - add description of yank-last-arg as one of the readline user | |
705 | commands | |
706 | ||
707 | lib/readline/doc/rluser.texinfo | |
708 | - added description of yank-last-arg | |
709 | ||
710 | builtins/getopts.def | |
711 | - fixed a typo in the int-to-string code computing the value to set | |
712 | OPTIND to: had '\0' instead of '0' | |
713 | - made getopts handle the case where there are more than 9 dollar | |
714 | variables (where rest_of_args is non-null) correctly | |
715 | ||
716 | 7/28 | |
717 | ---- | |
718 | lib/readline/display.c | |
719 | - fixes to the display code for single-line-display in the presence | |
720 | of prompts containing invisible characters | |
721 | ||
722 | lib/readline/readline.c | |
723 | - if we are using horizontal scrolling and we have term_xn, decrement | |
724 | the screenwidth by 1, since we won't be doing any line wrapping | |
725 | ||
726 | 7/31 | |
727 | ---- | |
728 | jobs.c | |
729 | - new variable `freeze_jobs_list' to set when changes to the jobs | |
730 | list or status of jobs in the list (other than calling something | |
731 | like `jobs -n') are undesirable. This is set when execuing traps | |
732 | on SIGCHLD | |
733 | ||
734 | 8/1 | |
735 | --- | |
736 | subst.c | |
737 | - check that `~' is unquoted before performing tilde expansion in | |
738 | an assignment statement | |
739 | ||
740 | 8/3 | |
741 | --- | |
742 | bracecomp.c | |
743 | - keep brace completion from dumping core if there is only one | |
744 | match | |
745 | ||
746 | lib/readline/chardefs.h | |
747 | - add a define for digit_p, which returns the value of isdigit() | |
748 | ||
749 | lib/readline/readline.c | |
750 | - added function equivalents for uppercase_p, lowercase_p, to_upper, | |
751 | to_lower, pure_alphabetic, digit_p, and digit_value | |
752 | - replaced calls to numeric () with calls to digit_p, removed | |
753 | definition of numeric () | |
754 | ||
755 | lib/readline/history.c | |
756 | - digit -> digit_p | |
757 | ||
758 | lib/readline/vi_mode.c | |
759 | - replaced uses of the `isletter' define to use pure_alphabetic | |
760 | from chartypes.h | |
761 | - replaced uses of `numeric' with calls to digit_p | |
762 | - added do...while(0) to `exchange' define | |
763 | ||
764 | ||
765 | 8/4 | |
766 | --- | |
767 | execute_cmd.c | |
768 | - make sure execute_function saves and restores the current loop | |
769 | count with unwind_protect_int | |
770 | ||
771 | documentation/features.texi | |
772 | - change the `Shell Command Line Options' section to `Invoking | |
773 | Bash' to be closer to the GNU coding standards | |
774 | ||
775 | 8/5 | |
776 | --- | |
777 | builtins/read.def | |
778 | - fixed up a memory leak and made behavior correct when no | |
779 | variables given and backslash escaped at least one input char | |
780 | - if we added CTLESC anywhere while reading the input string, | |
781 | make sure we call dequote_string on each word of the input | |
782 | before calling bind_variable with that string | |
783 | ||
ccc6cda3 JA |
784 | 8/6 |
785 | --- | |
786 | lib/readline/readline.h | |
787 | - removed definition of rl_show_star -- the variable no longer | |
788 | exists | |
789 | ||
790 | lib/readline/readline.h, lib/readline/history.h | |
791 | - reorganized to follow texinfo manual structure | |
792 | ||
793 | lib/readline/bind.c | |
794 | - rl_function_dumper is now static | |
795 | - rl_list_funmap names does not take any arguments | |
796 | ||
797 | builtins/bind.def | |
798 | - rl_list_funmap names does not take any arguments | |
799 | ||
800 | lib/readline/readline.c, lib/readline/signals.c | |
801 | - rl_init_argument ->_rl_init_argument | |
802 | ||
803 | lib/readline/rltty.c | |
804 | - remove declaration and references to output_was_flushed | |
805 | ||
806 | support/getcppsyms.c | |
807 | - if __uxps__ is defined, define __uxps__ and __svr4__ | |
808 | ||
809 | 8/9 | |
810 | --- | |
811 | support/mkdist | |
812 | - added a -r option to set the `root name' of the distribution | |
813 | (e.g., `bash' or `readline') | |
814 | ||
815 | 8/10 | |
816 | ---- | |
817 | input.c | |
818 | - if check_bash_input sees that default_buffered_input is about | |
819 | to be the target of a redirection, but the buffered input stream | |
820 | is not the current input stream (e.g. as the result of an | |
821 | `eval' while in a script, change default_buffered_input to a | |
822 | new fd and use a new variable `bash_input_fd_changed' to note | |
823 | the change | |
824 | ||
825 | parse.y | |
826 | - if pop_stream sees that default_buffered_input has changed while | |
827 | a buffered stream was on the save stack (because | |
828 | bash_input_fd_changed is non-zero), then make the popped stream | |
829 | and the corresponding buffer use the new fd | |
830 | ||
831 | test.c | |
832 | - fixed an off-by-one error in test_stat when testing /dev/fd/n. | |
833 | ||
834 | cpp-Makefile | |
835 | - add -I$(incdir) to CPPFLAGS | |
836 | - add `incdir = $(prefix)/include' assignment | |
837 | ||
838 | 8/11 | |
839 | ---- | |
840 | lib/readline/signals.c | |
841 | - changed some calls to signal () to call rl_set_sighandler() | |
842 | - call _rl_redisplay_after_sigwinch from the sigwinch handler | |
843 | to do better redisplay of wrapped command lines and multi-line | |
844 | prompts | |
845 | ||
846 | builtins/suspend.def | |
847 | - changed some calls to signal () to call set_signal_handler() | |
848 | ||
849 | lib/readline/*.c | |
850 | - include config.h before anything else if HAVE_CONFIG_H is defined | |
851 | ||
852 | lib/readline/readline.c | |
853 | - renamed rl_set_mark to _rl_set_mark_at_pos | |
854 | - call _rl_vi_initialize_line from rl_initialize if the current | |
855 | editing mode is vi mode | |
856 | - only output a term_cr in crlf if term_cr is non-null | |
857 | ||
858 | lib/readline/readline.h | |
859 | - added declarations for rl_vi_set_mark and rl_vi_goto_mark | |
860 | ||
861 | lib/readline/readline.c, lib/readline/readline.h | |
862 | - added a new bindable command to set the mark, rl_set_mark | |
863 | ||
864 | lib/readline/funmap.c | |
865 | - new bindable function with name `set-mark', bound to rl_set_mark | |
866 | - new bindable vi-mode functions with names `vi-set-mark' and | |
867 | `vi-goto-mark' | |
868 | ||
869 | documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo | |
870 | - added documentation for `set-mark' (unbound) | |
871 | ||
872 | lib/readline/vi_mode.c | |
873 | - new vi-command mode commands to save marks (the vi `m' command) | |
874 | and go to saved marks (the ``' command) | |
875 | - new function _rl_vi_initialize_line called from rl_initialize | |
876 | to set up the line state in vi mode. Right now this just resets | |
877 | all the marks | |
878 | ||
879 | lib/readline/vi_keymap.c | |
880 | - new vi command-mode bindings to set the mark (`m') and to go to | |
881 | a saved mark (``') | |
882 | ||
883 | documentation/readline.3 | |
884 | - added vi-set-mark and vi-goto-mark to list of key bindings for | |
885 | vi command mode | |
886 | ||
887 | lib/readline/{readline.c,display.c} | |
888 | - renamed term_xn to _rl_term_autowrap | |
889 | ||
890 | lib/readline/display.c | |
891 | - new function _rl_redisplay_after_sigwinch to encapsulate the | |
892 | necessary redisplay code after a SIGWINCH is received | |
893 | ||
894 | variables.c | |
895 | - only call find_user_command on the shell name in shell_initialize | |
896 | if shell_name is not an absolute program name | |
897 | - call canonicalize_pathname on the full shell pathname after | |
898 | calling make_absolute on it if the shell name starts with a `.' | |
899 | ||
900 | siglist.h | |
901 | - FreeBSD does not need a definition of sys_siglist[] | |
902 | ||
903 | 8/12 | |
904 | ---- | |
905 | lib/readline/rltty.c | |
906 | - don't try to use FLUSHO unless FLUSHO is defined | |
907 | ||
908 | cpp-Makefile | |
909 | - make sure to pass $(CC) to the make in the lib/malloc subdirectory | |
910 | ||
911 | lib/readline/readline.c | |
912 | - don't declare PC, UP, and BC as extern; it causes too many problems | |
913 | ||
914 | 8/13 | |
915 | ---- | |
916 | machines.h | |
917 | - add -DNO_SBRK_DECL to SYSDEP_CFLAGS for SVR4.2 on i386 | |
918 | ||
919 | support/mksysdefs | |
920 | - new variable UNAME_S for the output of `uname -s' | |
921 | - if uname -s does not output the same thing as uname, and uname -s | |
922 | outputs UNIX_SV, then set UNAME to UNIX_SV. Some versions of i386 | |
923 | SVR4.2 make `uname' equivalent to `uname -n' | |
924 | ||
925 | lib/readline/memalloc.h | |
926 | - removed from the library; not needed since readline does not use | |
927 | alloca | |
928 | ||
929 | lib/readline/{history.c,isearch.c,search.c,rldefs.h}, lib/tilde/tilde.c | |
930 | - no longer include memalloc.h | |
931 | ||
932 | lib/readline/Makefile | |
933 | - remove dependencies on memalloc.h | |
934 | ||
935 | lib/readline/signals.c | |
936 | - overhauled signal handling based on ideas from Bruno Haible | |
937 | (haible@ma2s2.mathematik.uni-karlsruhe.de) so that readline | |
938 | saves and restores the signal mask and flags on Posix systems | |
939 | - don't include fcntl.h, sys/file.h, errno.h, or stdlib.h | |
940 | - ignore SIGALRM during rl_signal_handler like SIGINT until the | |
941 | old handler is installed, on non-Posix or non-BSD systems | |
942 | - new define SIGHANDLER_RETURN, dependent on the value of | |
943 | VOID_SIGHANDLER | |
944 | - use RETSIGTYPE instead of `sighandler' as the signal handler | |
945 | return type; it's the name autoconf uses. If not defined, | |
946 | set up from VOID_SIGHANDLER | |
947 | ||
948 | lib/readline/rltty.c | |
949 | - call control_meta_key and control_keypad from rl_deprep_terminal | |
950 | before putting the terminal back into ICANON mode to avoid | |
951 | messing up the tty driver | |
952 | ||
953 | 8/15 | |
954 | ---- | |
955 | cpp-Makefile | |
956 | - changes so that fewer -Idir arguments are passed to the make | |
957 | in ./builtins | |
958 | ||
959 | 8/16 | |
960 | ---- | |
961 | lib/readline/bind.c | |
962 | - use KEYMAP_SIZE instead of 128 in rl_invoking_keyseqs_in_map | |
963 | ||
964 | lib/readline/complete.c | |
965 | - qsort the array of matches omitting matches[0], which must stay | |
966 | in place no matter what, even if strcmp doesn't compare unsigned | |
967 | chars correctly | |
968 | - some fixes to the loop that prints the list of completions | |
969 | ||
970 | lib/readline/keymaps.c | |
971 | - run the loop up to 127 when creating a new keymap in rl_make_keymap | |
972 | ||
973 | input.h, general.h, lib/readline/keymaps.h, lib/readline/tilde.h | |
974 | - use _FUNCTION_DEF instead of __FUNCTION_DEF | |
975 | ||
976 | lib/readline/parens.c | |
977 | - include "config.h" if HAVE_CONFIG_H is defined | |
978 | - include <sys/select.h> if HAVE_SYS_SELECT_H is defined | |
979 | - use HAVE_SELECT instead of FD_SET as the `configuring define'; | |
980 | define HAVE_SELECT if it is not already defined but FD_SET is | |
981 | ||
982 | lib/readline/readline.c, lib/readline/rltty.c | |
983 | - the __GO32__ include file is <pc.h> | |
984 | ||
985 | lib/tilde/tilde.c | |
986 | - rewrote tilde_expand_word, eliminated static u_name array in | |
987 | favor of using xmalloc | |
988 | ||
989 | lib/tilde/tilde.h | |
990 | - use single leading underscore for file inclusion guard | |
991 | ||
992 | lib/readline/vi_mode.c | |
993 | - use KEYMAP_SIZE rather than a literal 127 as the loop limit when | |
994 | creating the overstrike keymap | |
995 | ||
996 | support/install.sh | |
997 | - new file, from the make-3.71 distribution | |
998 | ||
999 | 8/17 | |
1000 | ---- | |
1001 | lib/readline/complete.c, lib/readline/readline.h | |
1002 | - new variable, rl_basic_quote_characters, used to see | |
1003 | if a word break character was a quoting character, so we can | |
1004 | do appropriate quoting after the completion | |
1005 | ||
1006 | lib/readline/parens.c | |
1007 | - use rl_basic_quote_characters when trying to find a matching | |
1008 | open paren | |
1009 | ||
1010 | lib/readline/doc/rltech.texinfo | |
1011 | - description of rl_basic_quote_characters | |
1012 | ||
1013 | 8/18 | |
1014 | ---- | |
1015 | newversion.c | |
1016 | - renamed to support/mkversion.c, which builds to mkversion | |
1017 | ||
1018 | cpp-Makefile | |
1019 | - changed to use support/mkversion | |
1020 | - removed instances of $< except in suffix rules -- some makes don't | |
1021 | handle those right | |
1022 | ||
1023 | lib/readline/rldefs.h | |
1024 | - make sure to #undef HAVE_DIRENT_H on NeXT machines | |
1025 | ||
1026 | ||
1027 | 8/19 | |
1028 | ---- | |
1029 | lib/readline/readline.h | |
1030 | - removed some duplicate function declarations | |
1031 | ||
1032 | trap.h | |
1033 | - define DEBUG_TRAP as NSIG for the last slot in trap_list | |
1034 | - define EXIT_TRAP as 0 | |
1035 | - declare trap_list as array of unknown size, since this is just a | |
1036 | header file | |
1037 | ||
1038 | trap.c | |
1039 | - extend trap_list and sigmodes to NSIG+1 | |
1040 | - initialize DEBUG_TRAP to do nothing; changes to functions to handle | |
1041 | DEBUG_TRAP | |
1042 | - let decode_signal return OK if NSIG is given, even though this will | |
1043 | vary between systems, for DEBUG_TRAP | |
1044 | - make reset_signal_handlers and restore_original_signals loop from | |
1045 | 1 to NSIG, not 0 to NSIG | |
1046 | - change GET_ORIGINAL_SIGNAL to try to get the original signal handler | |
1047 | only if `sig' is less than NSIG | |
1048 | - restore_default_signal just frees the trap string for both EXIT_TRAP | |
1049 | and DEBUG_TRAP | |
1050 | - run_debug_trap: new function to run traps on DEBUG | |
1051 | - free_trap_command: new function to free a trap string if it is | |
1052 | really a command and not one of the special trap values | |
1053 | - if a SIGINT trap resets the SIGINT trap string, free the old string | |
1054 | - new function: set_debug_trap(char *), which will reset the DEBUG | |
1055 | trap string, suitable for calling from an unwind-protect handler | |
1056 | ||
1057 | signames.c | |
1058 | - arrange things so that signal_names[NSIG] == "DEBUG" | |
1059 | ||
1060 | builtins/trap.def | |
1061 | - make sure traps on DEBUG are printed | |
1062 | ||
1063 | execute_cmd.c | |
1064 | - call run_debug_trap at the end of the `cm_simple' case in | |
1065 | execute_command_internal | |
1066 | - change execute_function so that traps on DEBUG do not propagate | |
1067 | into the function | |
1068 | ||
1069 | documentation/bash.1, documentation/features.texi | |
1070 | - documented the new DEBUG trap | |
1071 | ||
1072 | 8/20 | |
1073 | ---- | |
1074 | shell.c, config.h | |
1075 | - made the name of the restricted shell configurable in config.h; | |
1076 | the option is RESTRICTED_SHELL_NAME | |
1077 | ||
1078 | shell.c | |
1079 | - if the shell is invoked as `sh', enter Posix.2 mode after running | |
1080 | /etc/profile and ~/.profile | |
1081 | ||
1082 | builtins/read.def | |
1083 | - added a -p option for a prompt string, which is displayed before | |
1084 | trying to read anything | |
1085 | ||
1086 | documentation/bash.1 | |
1087 | - description of `read -p' | |
1088 | - description of new -r and -s options to `jobs' | |
1089 | ||
1090 | documentation/features.texi | |
1091 | - description of new -r and -s options to `jobs' | |
1092 | ||
1093 | jobs.c | |
1094 | - new functions: list_running_jobs, list_stopped_jobs | |
1095 | - list_jobs -> list_all_jobs | |
1096 | - new function `print_job' to do the work for all of the list*jobs | |
1097 | functions | |
1098 | - list_one_job type now void, calls print_job to do the work | |
1099 | ||
1100 | jobs.h | |
1101 | - new declarations for list_running_jobs, list_stopped_jobs | |
1102 | - list_one_job now void | |
1103 | - list_jobs -> list_all_jobs | |
1104 | ||
1105 | builtins/jobs.def | |
1106 | - new options: -r to print only running jobs, -s to print only | |
1107 | stopped jobs | |
1108 | ||
1109 | 8/22 | |
1110 | ---- | |
1111 | lib/readline/readline.c | |
1112 | - don't try to expand a null prompt string | |
1113 | ||
1114 | subst.c | |
1115 | - remove special handling of hostname_completion_file and | |
1116 | history_control; HOSTFILE and HISTCONTROL are the acceptable | |
1117 | names | |
1118 | - new function sv_histignore; call if HISTIGNORE variable is | |
1119 | assigned to | |
1120 | ||
1121 | bashhist.c | |
1122 | - new functions and declarations for handling HISTIGNORE variable | |
1123 | and its specifications for command lines to ignore | |
1124 | - change maybe_add_history to call history_should_ignore if the | |
1125 | HISTCONTROL tests are passed | |
1126 | ||
1127 | documentation/bash.1, documentation/features.texi | |
1128 | - removed mention of history_control and hostname_completion_file | |
1129 | - added description of HISTIGNORE | |
1130 | ||
1131 | 8/23 | |
1132 | ---- | |
1133 | array.c, array.h | |
1134 | - promoted to the shell mainline code; the `array' subdir is now | |
1135 | gone | |
1136 | ||
1137 | variables.h | |
1138 | - include `array.h' for the ARRAY typedef | |
1139 | ||
1140 | variables.c | |
1141 | - changes to assignment() to handle array assignments a[x]=b | |
1142 | - split off the creation of new variables into a new function: | |
1143 | make_new_variable | |
1144 | - split off the construction of variable values for assignments and | |
1145 | bindings into a new function: make_variable_value | |
1146 | - new function: bind_array_variable, to handle the addition of | |
1147 | new array variables and indices | |
1148 | ||
1149 | subst.c | |
1150 | - changes to do_assignment_internal to handle a[x]=b: | |
1151 | parse the subscript out of the name and call evalexp() on it | |
1152 | call bind_array_variable to do the value assignment | |
1153 | - change the printing of assignment statements when -x is in effect | |
1154 | to before the variable binding is attempted, so any error messages | |
1155 | look better | |
1156 | - new functions for referencing indexed arrays and to find the length | |
1157 | of arrays or array indices | |
1158 | ||
1159 | 8/24 | |
1160 | ---- | |
1161 | expr.c | |
1162 | - fixed up error reporting to use get_name_for_error if not executing | |
1163 | a builtin | |
1164 | ||
1165 | subst.c | |
1166 | - everywhere evalexp() is called, use maybe_expand_string to expand | |
1167 | the expression (calls expand_string if necessary) | |
1168 | ||
1169 | subst.h | |
1170 | - extern declarations for array convenience functions exported to the | |
1171 | rest of the shell | |
1172 | ||
1173 | variables.c | |
1174 | - more new convenience array functions: make_new_array_variable and | |
1175 | convert_var_to_array | |
1176 | ||
1177 | builtins/declare.def | |
1178 | - additions to declare_internal to add a -a flag which makes array | |
1179 | variables, and the requisite semantics (declare +a does not work, | |
1180 | declare -a name=value does not work, etc.) | |
1181 | - code to support the ksh-like declare a[] syntax to make array | |
1182 | variables | |
1183 | ||
1184 | builtins/setattr.def | |
1185 | - made set_or_show_attributes understand array variables and `-a' | |
1186 | ||
1187 | builtins/set.def | |
1188 | - changes to make `unset name' work, where name is an array variable | |
1189 | - changes to make `unset name[xxx]' work | |
1190 | ||
1191 | 8/25 | |
1192 | ---- | |
1193 | ||
1194 | lib/readline/readline.c | |
1195 | - make sure meta characters are added to a keyboard macro as | |
1196 | ESC-char if we are converting meta chars to ascii | |
1197 | - change rl_unix_word_rubout to handle repeat counts | |
1198 | - move the check of LC_CTYPE from rl_initialize to | |
1199 | readline_initialize_everything, where it should have been | |
1200 | all along | |
1201 | ||
1202 | error.c | |
1203 | - make sure <sys/types.h> is included before <fcntl.h> | |
1204 | ||
1205 | machines.h | |
1206 | - new entry for Bull DPX2 | |
1207 | ||
1208 | lib/tilde/tilde.c | |
1209 | - include <sys/types.h> before <pwd.h> | |
1210 | ||
1211 | variables.c | |
1212 | - PS1 and PS2 are no longer non-unsettable | |
1213 | ||
1214 | 8/26 | |
1215 | ---- | |
1216 | variables.c | |
1217 | - PPID, UID, and EUID, since they are read-only, need not appear on | |
1218 | the `non-unsettable' list | |
1219 | - PATH and IFS now have the `nounset' attribute set rather than use | |
1220 | a separate `non-unsettable' list | |
1221 | - the non-unsettable list and non_unsettable() are gone | |
1222 | ||
1223 | variables.h | |
1224 | - new define `non_unsettable_p' to test nounset attribute | |
1225 | ||
1226 | builtins/set.def | |
1227 | - `unset' now uses non_unsettable_p to tell whether a variable can | |
1228 | be unset even if it's not readonly | |
1229 | ||
1230 | builtins/read.def | |
1231 | - read -a arrayname will read a list of values from stdin and assign | |
1232 | them to the array `arrayname', splitting on " \t\n" (honoring | |
1233 | backslash quoting if -r is not supplied) | |
1234 | ||
1235 | builtins/declare.def | |
1236 | - print values of arrays when `display -a' is invoked | |
1237 | ||
1238 | builtins/exit.def | |
1239 | - remove references to `bye' | |
1240 | ||
1241 | 8/28 | |
1242 | ---- | |
1243 | lib/readline/rltty.c | |
1244 | - removed calls to control_keypad; they cause problems on some | |
1245 | machines and should not really be performed by an application | |
1246 | ||
1247 | cpp-Makefile | |
1248 | - support for optionally linking array.o into the shell | |
1249 | ||
1250 | lib/glob/glob.c | |
1251 | - when returning an error after glob_filename on the directory name | |
1252 | returns an error result, make sure to free `result'. This fixes | |
1253 | a memory leak for names passed to glob_filename which contain | |
1254 | globbing characters before the first `/' but do not match any | |
1255 | existing files | |
1256 | ||
1257 | 8/29 | |
1258 | ---- | |
1259 | execute_cmd.c | |
1260 | - the `for' and `select' commands should expand their word lists | |
1261 | using expand_words_no_vars | |
1262 | ||
1263 | command.h, execute_cmd.c, general.c, make_cmd.c, print_cmd.c, subst.c,parse.y | |
1264 | - changed the `dollar_present', `quoted', and `assignment' members | |
1265 | of WORD_DESC to a single flags word | |
1266 | ||
1267 | 8/30 | |
1268 | ---- | |
1269 | variables.c | |
1270 | - make get_string_value return array[0] if called with a variable | |
1271 | that is an array | |
1272 | ||
1273 | 8/31 | |
1274 | ---- | |
1275 | lib/readline/display.c | |
1276 | - don't take the value of _rl_term_autowrap into account when | |
1277 | computing which screen line the cursor should be on; it screws | |
1278 | up wrapping on terminals without the `xn' capability | |
1279 | ||
1280 | lib/readline/examples/rltest.c | |
1281 | - new file, test code moved here from readline.c | |
1282 | ||
1283 | documentation/features.texi, lib/readline/doc/hsuser.texinfo | |
1284 | - fixed up printing of some of the shell options and the history | |
1285 | commands and modifiers | |
1286 | ||
1287 | subst.c | |
1288 | - make sure $name, where `name' is an array variable, returns | |
1289 | ${name[0]} | |
1290 | ||
1291 | variables.c | |
1292 | - convert a variable to an array even if index 0 is being assigned to, | |
1293 | instead of leaving it a `normal' variable | |
1294 | ||
1295 | 9/1 | |
1296 | --- | |
1297 | ||
1298 | builtins/setattr.def | |
1299 | - make sure that array variables printed by `declare' single-quote | |
1300 | the value after the `=' so the statement can be reused as input | |
1301 | ||
1302 | variables.c | |
1303 | - make sure array variables can be exported (name=(assignments)), and | |
1304 | that the export code works. The code is commented out because of | |
1305 | the possible confusion between an array and a regular string that | |
1306 | looks like an array assignment string. | |
1307 | ||
1308 | 9/2 | |
1309 | --- | |
1310 | variables.c | |
1311 | - make sure there is an executable file with the same name as | |
1312 | `shell' name in the current directory before assigning it to | |
1313 | $BASH at startup. If there is not, just make $BASH the login | |
1314 | shell name | |
1315 | ||
1316 | 9/3 | |
1317 | --- | |
1318 | parse.y | |
1319 | - removed a reduction from the `list0' production that could cause | |
1320 | statements which require semicolons to be allowed without error | |
1321 | (like before a `}' in a group command) | |
1322 | ||
1323 | lib/readline/display.c | |
1324 | - new functions: _rl_save_prompt and _rl_restore_prompt to save and | |
1325 | restore prompt invisible character info | |
1326 | - if the redisplay code encounters a line shorter than the old one | |
1327 | and containing invisible characters, make sure that the cursor is | |
1328 | at the end of the new text before calling clear_to_eol | |
1329 | - new variable last_invisible containing the index in the prompt | |
1330 | string of the last invisible character. We only have to redraw | |
1331 | the prompt string of _rl_last_c_pos is < last_invisible | |
1332 | - new function _rl_make_prompt_for_search to take care of setting | |
1333 | up the prompt string for a non-incremental search when the prompt | |
1334 | contains invisible characters | |
1335 | - fix so that a prompt string with invisible characters is not | |
1336 | redrawn each time through update_line (don't tputs term_cr unless | |
1337 | the cursor is before the last invisible character in the prompt | |
1338 | and will be moving past the last invisible char of the prompt | |
1339 | ||
1340 | lib/readline/isearch.c | |
1341 | - call _rl_save_prompt and _rl_restore_prompt when changing the prompt | |
1342 | to do i-search | |
1343 | ||
1344 | 9/4 | |
1345 | --- | |
1346 | lib/readline/readline.c | |
1347 | - doing_an_undo -> _rl_doing_an_undo for use by the vi-mode code | |
1348 | - rewrote rl_do_undo to reformat and eliminate a clumsy goto | |
1349 | - new split the add-to-kill-ring code off into a separate function, | |
1350 | _rl_copy_to_kill_ring | |
1351 | - added a new bindable function rl_copy_region_as_kill | |
1352 | - added a new bindable function rl_kill_region | |
1353 | - moved _rl_char_search_internal to here from vi_mode.c | |
1354 | - new bindable function rl_char_search | |
1355 | ||
1356 | lib/readline/vi_mode.c | |
1357 | - made `.' work for the `cw' and `[Ss]' commands, which implicitly | |
1358 | put the editor into insertion mode after they run | |
1359 | - split rl_vi_char_search code that actually searches for a character | |
1360 | into a new function, _rl_char_search_internal | |
1361 | ||
1362 | lib/readline/emacs_keymap.c | |
1363 | - bind M-= to possible-completions for ksh compatibility | |
1364 | - bind M-* to insert-completions | |
1365 | - bind C-x C-x to exchange-point-and-mark | |
1366 | - bind C-] to character-search | |
1367 | - bind C-@ to set-mark | |
1368 | ||
1369 | lib/readline/funmap.c | |
1370 | - new bindable function names: exchange-point-and-mark, kill-region, | |
1371 | copy-region-as-kill, character-search | |
1372 | ||
1373 | lib/readline/readline.h | |
1374 | - declare rl_exchange_point_and_mark, rl_copy_region_to_kill, | |
1375 | rl_kill_region, and rl_char_search externally | |
1376 | ||
1377 | documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo | |
1378 | - document new exchange-point-and-mark bindable command | |
1379 | - documented M-* default emacs-mode binding to insert-completions | |
1380 | - documented new copy-region-as-kill and kill-region commands | |
1381 | - documented new character search emacs-mode command | |
1382 | - documented new binding for set-mark | |
1383 | ||
1384 | lib/readline/rldefs.h | |
1385 | - moved values for `dir' when searching for characters in the line | |
1386 | from vi_mode.c to here | |
1387 | ||
1388 | 9/6 | |
1389 | --- | |
1390 | general.c | |
1391 | - new function ansicstr, which decodes ANSI-C backslash-escaped | |
1392 | characters (with the addition of \e and \E to mean escape) and | |
1393 | returns a new string | |
1394 | ||
1395 | subst.c | |
1396 | - new expansion $'...' which translates ANSI-C backslash escapes | |
1397 | in `...' and expands to the result | |
1398 | ||
1399 | builtins/echo.def | |
1400 | - ifdefs for ANSI-C for \a and \v rather than just expanding to | |
1401 | literal ASCII values | |
1402 | ||
1403 | documentation/bash.1 | |
1404 | - documented new $'...' expansion | |
1405 | ||
1406 | 9/7 | |
1407 | --- | |
1408 | builtins/enable.def | |
1409 | - fixed up the help text | |
1410 | - added a -s flag to restrict operation to Posix.2 `special' builtins | |
1411 | - removed -all option; -a is the way to do it now | |
1412 | - converted to use the builtin getopt | |
1413 | ||
1414 | builtins/common.c | |
1415 | - changed builtin_address_internal to return a pointer to a | |
1416 | struct builtin, which makes it much more useful. Changed | |
1417 | find_shell_builtin and builtin_address accordingly | |
1418 | - new function find_special_builtin, which returns special builtins | |
1419 | ((flags & SPECIAL_BUILTIN) != 0) | |
1420 | ||
1421 | execute_cmd.c | |
1422 | - in Posix.2 mode, find special builtins before shell functions | |
1423 | when performing command lookup | |
1424 | - in find_user_command_internal, return NULL if there is no $PATH | |
1425 | - in Posix.2 mode, failure of a special builtin causes a non- | |
1426 | interactive shell to exit | |
1427 | ||
1428 | variables.c | |
1429 | - allow $PATH to be unset | |
1430 | ||
1431 | 9/8 | |
1432 | --- | |
1433 | input.h | |
1434 | - added a new `input type': st_stdin, for use when using readline, | |
1435 | since readline is not properly a string | |
1436 | ||
1437 | parse.y | |
1438 | - surgery on the grammar: | |
1439 | o added new `compound_list' production: a list that can end | |
1440 | without a newline, `;' or `&' (used in subshell commands | |
1441 | and case clause commands) | |
1442 | o removed shell_command_1, folded rules into command | |
1443 | o eliminated pattern_list_1; changed case_clause_sequence to | |
1444 | directly incorporate the SEMI_SEMI token (a pattern_list_1 | |
1445 | was just a pattern_list with a trailing SEMI_SEMI) | |
1446 | o new `for_command' and `case_command' productions | |
1447 | o redirections -> redirection_list | |
1448 | o newlines -> newline_list | |
1449 | o redid the code that attaches redirections to the function | |
1450 | command rather than the function definition and eliminated | |
1451 | all of the shift/reduce conflicts | |
1452 | - changed with_input_from_stdin in the readline case to set | |
1453 | bash_input.type to st_stdin | |
1454 | ||
1455 | print_cmd.c | |
1456 | - a couple of changes to the way functions are printed | |
1457 | ||
1458 | shell.c | |
1459 | - only execute the PROMPT_COMMAND if input is not coming from a | |
1460 | string (bash_input.type != st_string). This fixes the problem | |
1461 | of PROMPT_COMMAND being executed by `eval' commands in an | |
1462 | interactive shell | |
1463 | ||
1464 | 9/12 | |
1465 | ---- | |
1466 | shell.c | |
1467 | - all interactive shells SIGHUP running jobs when exiting due to | |
1468 | a SIGHUP, not just login shells | |
1469 | ||
1470 | 9/13 | |
1471 | ---- | |
1472 | config.h, config.h.mini | |
1473 | - changed the default primary prompt (PPROMPT) to "\s\$ " | |
1474 | - removed the INTERACTIVE_COMMENTS define | |
1475 | ||
1476 | flags.c | |
1477 | - interactive comments are now enabled by default, regardless of the | |
1478 | INTERACTIVE_COMMENTS define | |
1479 | ||
1480 | input.h | |
1481 | - a new enum: stream_type, used in the BASH_INPUT struct | |
1482 | ||
1483 | parse.y | |
1484 | - bash_input.type is now initialized to st_none | |
1485 | ||
1486 | bashhist.c | |
1487 | - command_oriented_history is now the default | |
1488 | ||
1489 | documentation/bash.1 | |
1490 | - removed description of `nolinks' variable, updated set -P | |
1491 | description | |
1492 | - removed description of `notify' variable, updated set -b | |
1493 | description | |
1494 | - removed description of `noclobber' variable, updated set -C | |
1495 | description | |
1496 | ||
1497 | variables.c | |
1498 | - IFS may now be unset | |
1499 | ||
1500 | builtins/read.def | |
1501 | - now does the right thing if IFS is unset (acts as if it is | |
1502 | set to " \t\n") | |
1503 | ||
1504 | builtins/cd.def | |
1505 | - added a new parameter to change_to_directory () which says | |
1506 | whether or not to follow symlinks, instead of using the | |
1507 | global no_symbolic_links | |
1508 | - changed cd_builtin to accept a -P option to disable symlink | |
1509 | following temporarily | |
1510 | ||
1511 | builtins/ulimit.def | |
1512 | - instead of using a hardcoded `long' for the return type of the | |
1513 | rlimit functions, use RLIMTYPE, which defaults to long | |
1514 | - new defines string_to_rlimtype -> string_to_long and | |
1515 | print_rlimtype for systems which do not need `RLIMTYPE' defined | |
1516 | to something other than long | |
1517 | ||
1518 | general.c | |
1519 | - function replacements for string_to_rlimtype and print_rlimtype | |
1520 | for machines which have RLIMTYPE defined in the machine description | |
1521 | ||
1522 | general.h | |
1523 | - extern declarations for string_to_rlimtype and print_rlimtype | |
1524 | ||
1525 | shell.c | |
1526 | - don't source file named by $ENV at script startup if act_like_sh | |
1527 | is turned on | |
1528 | ||
1529 | machines.h | |
1530 | - new entry for amiga/netbsd | |
1531 | - change all the netbsd entries to add -DRLIMTYPE=quad_t to | |
1532 | SYSDEP_CFLAGS | |
1533 | ||
1534 | siglist.h | |
1535 | - define sys_siglist as _sys_siglist on the amiga only if USGr4 is | |
1536 | defined | |
1537 | ||
1538 | print_cmd.c | |
1539 | - change so that printf is not prototyped on LynxOS with gcc | |
1540 | ||
1541 | lib/readline/Makefile | |
1542 | - changed the `installdirs' target to not fail if the directories | |
1543 | do not need creating | |
1544 | ||
1545 | lib/readline/history.c | |
1546 | - fixed a bug in history_arg_extract which manifested itself when | |
1547 | !* was used after a command without arguments (e.g., pwd ; echo !*) | |
1548 | ||
1549 | 9/15 | |
1550 | ---- | |
1551 | subst.c | |
1552 | - expand_word_internal should preserve the flags (other than | |
1553 | W_QUOTED) from the word passed as a parameter on the word it returns | |
1554 | - expand_words_internal renamed to expand_word_list_internal | |
1555 | - expand_word_list_internal does not perform word splitting or | |
1556 | globbing on words with the W_ASSIGNMENT bit set | |
1557 | - removed special treatment of `notify', `command_oriented_history', | |
1558 | `history_control', and `nolinks' | |
1559 | - rewrote some of the sv_* functions to remove or avoid calls to | |
1560 | sscanf, one of the most expensive C library functions | |
1561 | ||
1562 | variables.c | |
1563 | - don't look for $command_oriented_history at startup, since it now | |
1564 | defaults to `on' | |
1565 | ||
1566 | general.h, general.c | |
1567 | - new function posix_initialize to do whatever is necessary to enable | |
1568 | `Posix mode' | |
1569 | ||
1570 | shell.c, subst.c | |
1571 | - call posix_initialize | |
1572 | ||
1573 | general.c | |
1574 | - rewrote replacements for strchr, strrchr to make them faster | |
1575 | ||
1576 | builtins/enable.def | |
1577 | - new -f option and necessary support to load builtins from a shared | |
1578 | object file on systems supporting both dlopen() and dlsym(). New | |
1579 | builtins loaded this way can replace existing shell builtins or | |
1580 | add completely new functionality | |
1581 | ||
1582 | builtins.h | |
1583 | - mkbuiltins.c creates `static_shell_builtins', which is a fixed | |
1584 | array, `shell_builtins' points to this array initially | |
1585 | - extern declaration for current_builtin | |
1586 | ||
1587 | builtins/mkbuiltins.c | |
1588 | - change to creat static_shell_builtins[] and declare shell_builtins | |
1589 | as a pointer to it | |
1590 | - change to declare `current_builtin' in created builtins.c | |
1591 | ||
1592 | builtins/source.def | |
1593 | - print an error message and return failure if no filename argument | |
1594 | is supplied | |
1595 | ||
1596 | builtins/common.c | |
1597 | - current_builtin is set by find_shell_builtin, find_special_builtin, | |
1598 | and builtin_address_internal | |
1599 | - new function builtin_usage, which prints the contents of | |
1600 | current_builtin->short_doc | |
1601 | ||
1602 | builtins/{bind,declare,enable,fc,getopts,hash,history,jobs,kill,read,set, | |
1603 | setattr,trap,ulimit,umask}.def | |
1604 | - changed the builtins in these files to use builtin_usage() to | |
1605 | print usage messages | |
1606 | ||
1607 | cpp-Makefile | |
1608 | - support for the HAVE_DLOPEN and HAVE_DLSYM defines | |
1609 | ||
1610 | machines.h | |
1611 | - added -ldl and -Bdynamic to the SunOS4 entry | |
1612 | ||
1613 | documentation/{bash.1,features.texi} | |
1614 | - documented new enable -f option to dynamically load builtins | |
1615 | ||
1616 | 9/16 | |
1617 | ---- | |
1618 | test.c | |
1619 | - added `==' as a synonym for `=' | |
1620 | ||
1621 | 9/18 | |
1622 | ---- | |
1623 | bashline.c | |
1624 | - include readline/rlconf.h so that VI_MODE is defined if | |
1625 | appropriate | |
1626 | ||
1627 | shell.c | |
1628 | - removed `-nobraceexpansion' option | |
1629 | ||
1630 | flags.c, flags.h | |
1631 | - added new -B flag; enabled if brace expansion is turned on | |
1632 | ||
1633 | subst.c | |
1634 | - use brace_expand instead of !no_brace_expand | |
1635 | ||
1636 | builtins/set.def | |
1637 | - change set -o braceexpand to be equivalent to set -B | |
1638 | ||
1639 | parse.y | |
1640 | - in with_input_from_stdin, do nothing if bash_input.type already | |
1641 | is st_stdin or if there is already a stream with type st_stdin | |
1642 | on the saved stream stack | |
1643 | - new function stream_on_stack to find out if there is a saved | |
1644 | stream of a specified type | |
1645 | ||
1646 | documentation/bash.1, documentation/features.texi | |
1647 | - doeumented new set -B option | |
1648 | - removed -nobraceexpansion shell startup option | |
1649 | ||
1650 | 9/19 | |
1651 | ---- | |
1652 | builtins/reserved.def | |
1653 | - made `help select' work | |
1654 | ||
1655 | cpp-Makefile | |
1656 | - removed references to the nonexistant `load.def' | |
1657 | - removed conditionals based on GETOPTS_BUILTIN | |
1658 | ||
1659 | builtins/getopts.def | |
1660 | - no longer $DEPENDS_ON GETOPTS_BUILTIN | |
1661 | ||
1662 | config.h, config.h.mini, builtins/help.def | |
1663 | - made the `help' builtin dependent on the HELP_BUILTIN define | |
1664 | - removed GETOPTS_BUILTIN | |
1665 | ||
1666 | builtins/mkbuiltins.c | |
1667 | - made the `$DEPENDS_ON' clause work for reserved words and | |
1668 | shell control structures in reserved.def by writing out | |
1669 | dependencies to builtext.h even if there is no `function' | |
1670 | - made the long_doc for each builtin and reserved word get | |
1671 | written out to builtins.c with #ifdef HELP_BUILTIN surrounding | |
1672 | the doc strings -- this makes the minimal shell much smaller | |
1673 | ||
1674 | shell.c, documentation/bash.1 | |
1675 | - removed `-quiet' long option | |
1676 | ||
1677 | parse.y | |
1678 | - make sure that word splitting is not performed on the prompt | |
1679 | string after expanding in prompt_string_decode by calling | |
1680 | expand_string_unsplit instead of expand_string | |
1681 | ||
1682 | lib/readline/bind.c | |
1683 | - new readline variable `mark-directories': if set, completed | |
1684 | directory names have a slash appended | |
1685 | ||
1686 | lib/readline/complete.c | |
1687 | - support for `mark-directories' | |
1688 | ||
1689 | documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo | |
1690 | - documented the new `mark-directories' variable | |
1691 | ||
1692 | builtins/bind.def | |
1693 | - new option `-r' to remove a binding for a specified key sequence | |
1694 | - make sure that a failure return from bind resets the keymap | |
1695 | correctly if a -m option was supplied | |
1696 | ||
1697 | documentation/{bash.1,features.texi} | |
1698 | - documented new bind -r option | |
1699 | ||
1700 | 9/20 | |
1701 | ---- | |
1702 | builtins/jobs.def | |
1703 | - new `disown' builtin | |
1704 | ||
1705 | documentation/{bash.1,features.texi} | |
1706 | - documented new `disown' builtin | |
1707 | ||
1708 | cpp-Makefile | |
1709 | - removed support for `MAKE_SHELL' cpp variable | |
1710 | - renamed endian.aux to mkendian, look for endian.c in support dir | |
1711 | - link in array.o, alias.o, braces.o, bracecomp.o | |
1712 | unconditionally, rely on cpp defines in the files to exclude code | |
1713 | - pass -DHAVE_SYS_SIGLIST if sys_siglist is defined | |
1714 | - pass -DHAVE_GETCWD if HAVE_GETCWD is defined in machines.h | |
1715 | - pass -DHAVE_VFPRINTF_EMUALTION through from machines.h to | |
1716 | compilation | |
1717 | ||
1718 | array.c | |
1719 | - don't compile in body of file unless ARRAY_VARS is defined | |
1720 | ||
1721 | braces.c | |
1722 | - don't compile in body of file unless BRACE_EXPANSION is defined | |
1723 | ||
1724 | alias.c | |
1725 | - don't compile in body of file unless ALIAS is defined | |
1726 | ||
1727 | bracecomp.c | |
1728 | - don't compile in body of file unless BRACE_EXPANSION and READLINE | |
1729 | are defined | |
1730 | ||
1731 | bashline.c | |
1732 | - don't compile in body of file unless READLINE is defined | |
1733 | ||
1734 | bashhist.c | |
1735 | - don't compile in body of file unless HISTORY is defined | |
1736 | ||
1737 | siglist.c | |
1738 | - don't compile in body of file unless HAVE_SYS_SIGLIST is not | |
1739 | defined | |
1740 | ||
1741 | getcwd.c | |
1742 | - don't compile in body of file unless HAVE_GETCWD is not defined | |
1743 | ||
1744 | vprint.c | |
1745 | - don't compile in body of file unless USE_VFPRINTF_EMULATION | |
1746 | is defined | |
1747 | ||
1748 | support/mksysdefs | |
1749 | - for SCO machines, define SYSDEF as SCO or SCOv4 | |
1750 | ||
1751 | lib/readline/readline.[ch] | |
1752 | - new function rl_push_macro_input (s), which makes s the current | |
1753 | macro input string | |
1754 | ||
1755 | endian.c | |
1756 | - renamed to support/endian.c | |
1757 | ||
1758 | 9/21 | |
1759 | ---- | |
1760 | lib/readline/complete.c | |
1761 | - more file types for the VISIBLE_STATS code: | |
1762 | | FIFOs | |
1763 | % character special devices | |
1764 | # block special devices | |
1765 | ||
1766 | lib/readline/isearch.c | |
1767 | - made RETURN an alternate search string terminator | |
1768 | ||
1769 | builtins/read.def | |
1770 | - removed use of stdio -- unbuffered stdio on a dup of fd 0 is | |
1771 | a big loss | |
1772 | ||
1773 | builtins/set.def | |
1774 | - new function: minus_o_option_value, returns 1, 0, or -1 given | |
1775 | a -o option name (-1 means a bad name) | |
1776 | - reorganized list_minus_o_options to be more efficient | |
1777 | ||
1778 | execute_cmd.c | |
1779 | - when expanding a here document, use maybe_expand_string rather | |
1780 | than a simple expand_string to try a speed things up a bit | |
1781 | ||
1782 | input.c | |
1783 | - don't compile in the body of the file unless BUFFERED_INPUT | |
1784 | is defined in config.h | |
1785 | ||
1786 | 9/22 | |
1787 | ---- | |
1788 | jobs.h, siglist.h | |
1789 | - replaced instances of Solaris with SunOS5 | |
1790 | ||
1791 | shell.c | |
1792 | - changed long option parsing code so that --arg is equivalent | |
1793 | to -arg, when `arg' is one of the recognized multichar options | |
1794 | ||
1795 | builtins/history.def | |
1796 | - rewrote to regularize the option parsing and use internal_getopt | |
1797 | - now allows only one of -awrn to be specified | |
1798 | - added a new -p option that adds each of its arguments to the | |
1799 | end of the history list, and deletes the `history -p' history | |
1800 | entry | |
1801 | ||
1802 | builtins/trap.def | |
1803 | - added new -p option to display specified trap values, or all | |
1804 | trap values if no other arguments supplied | |
1805 | ||
1806 | documentation/{bash.1,features.texi} | |
1807 | - documented new history -p option | |
1808 | - documented new trap -p option | |
1809 | ||
1810 | 9/25 | |
1811 | ---- | |
1812 | lib/readline/display.c | |
1813 | - fixed up the calcluation of the correct cursor line number (a `+' | |
1814 | and `-' were transposed in the calculation of `nleft') | |
1815 | ||
1816 | 9/26 | |
1817 | ---- | |
1818 | general.c | |
1819 | - moved isint() here from test.c, renamed to legal_number | |
1820 | ||
1821 | general.h | |
1822 | - extern declaration of legal_number | |
1823 | ||
1824 | test.c | |
1825 | - only compile isint() if SHELL is not defined, define it as | |
1826 | legal_number otherwise | |
1827 | ||
1828 | trap.c | |
1829 | - use legal_number in decode_signal instead of sscanf() | |
1830 | ||
1831 | builtins/common.c | |
1832 | - moved list_sigs to here from trap.def, renamed to | |
1833 | display_signal_list | |
1834 | - changed get_numeric_arg to use legal_number instead of doing | |
1835 | the parsing and calculation itself | |
1836 | ||
1837 | builtins/common.h | |
1838 | - extern declaration for display_signal_list | |
1839 | ||
1840 | builtins/{trap.def | |
1841 | - changed to use display_signal_list for trap -l | |
1842 | ||
1843 | builtins/kill.def | |
1844 | - changed to use display_signal_list for kill -l | |
1845 | - added new kill -n signum option | |
1846 | ||
1847 | documentation/bash.1 | |
1848 | - added description of new kill -l signame functionality | |
1849 | - added description of new kill -n signum feature | |
1850 | - added description of new enable -d option | |
1851 | ||
1852 | builtins.h | |
1853 | - added a char *handle member to `struct builtin' for later use | |
1854 | - new flags value: BUILTIN_DELETED | |
1855 | ||
1856 | builtins/mkbuiltins.c | |
1857 | - added code to inintialize the `handle' member to null in the | |
1858 | static builtin array definition | |
1859 | ||
1860 | builtins/common.c | |
1861 | - don't `find' a builtin if the BUILTIN_DELETED flag is set in the | |
1862 | flags word of the struct builtins array | |
1863 | ||
1864 | builtins/enable.def | |
1865 | - new option -d to remove a builtin loaded with -f, depends on | |
1866 | HAVE_DLCLOSE | |
1867 | ||
1868 | cpp-Makefile | |
1869 | - pass -DHAVE_DLCLOSE through from machines.h to compilation | |
1870 | ||
1871 | machines.h | |
1872 | - change SunOS4 machine description to define HAVE_DLCLOSE | |
1873 | ||
1874 | 9/27 | |
1875 | ---- | |
1876 | shell.c | |
1877 | - split shell exit code off into a separate function: exit_shell(status) | |
1878 | ||
1879 | builtins/exec.def | |
1880 | - rewrote for clarity and speed and to use the builtin getopt() | |
1881 | - added new -a, -c, and -l options | |
1882 | - now calls exit_shell if shell_execve fails and the shell is not | |
1883 | interactive | |
1884 | ||
1885 | documentation/bash.1 | |
1886 | - documented the new options to `exec' | |
1887 | ||
1888 | 9/28 | |
1889 | ---- | |
1890 | builtins/exec.def | |
1891 | - if the execve fails and the shell is not going to exit, reinitialize | |
1892 | traps and signals | |
1893 | - only call end_job_control if subshell_environment != 0 | |
1894 | - exec should exit unconditionally if the execve fails and | |
1895 | subshell_environment != 0 | |
1896 | ||
1897 | subst.c | |
1898 | - if valid_brace_expansion_word fails, make sure `temp' is set to | |
1899 | NULL before trying to free it after the `goto bad_substitution' | |
1900 | ||
1901 | cpp-Makefile | |
1902 | - add $(CPPFLAGS) to the compilation flags when making `mksignames' | |
1903 | ||
1904 | documentation/features.texi | |
1905 | - fixed a typo in the tilde expansion section | |
1906 | ||
1907 | 9/29 | |
1908 | ---- | |
1909 | machines.h | |
1910 | - DEC OSF/1 has the dlopen/dlsym/dlclose set of library functions | |
1911 | ||
1912 | shell.c | |
1913 | - don't execute /etc/profile if -noprofile given | |
1914 | ||
1915 | builtins/pushd.def | |
1916 | - new file, pushd/popd/dirs split off from cd.def | |
1917 | - replaced calls to sscanf with calls to legal_number | |
1918 | ||
1919 | builtins/Makefile, cpp-Makefile | |
1920 | - changes for pushd.def | |
1921 | ||
1922 | config.h, config.h.mini | |
1923 | - ALLOW_RIGID_POSIX_COMPLIANCE is no longer used | |
1924 | ||
1925 | subst.c, variables.c | |
1926 | - GETOPTS_BUILTIN is no longer used | |
1927 | ||
1928 | variables.c | |
1929 | - if the first character of argv[0] is not a `/', search the path | |
1930 | and canonicalize the result to find out how to set $BASH | |
1931 | ||
1932 | 10/2 | |
1933 | ---- | |
1934 | builtins/enable.def | |
1935 | - changed enable_shell_builtin to use builtin_address_internal to find | |
1936 | the builtin rather than searching the list itself | |
1937 | - list_some_builtins skips a builtin if flags & BUILTIN_DISABLED != 0 | |
1938 | - rewrote dyn_load_builtin to take a list of names to load from a | |
1939 | single filename | |
1940 | - don't dlclose the shared object in dyn_unload_builtin unless its | |
1941 | reference count drops to 0 | |
1942 | ||
1943 | builtins/test.def | |
1944 | - don't bother making new copies of everything in the argument list | |
1945 | when constructing the argc and argv for test_command; just make | |
1946 | sure not to free anything but ARGV | |
1947 | ||
1948 | 10/3 | |
1949 | ---- | |
1950 | bashline.c | |
1951 | - remove C-e binding in vi movement mode which switches into emacs | |
1952 | mode | |
1953 | ||
1954 | general.c | |
1955 | - make xfree only try to call free on non-null strings | |
1956 | ||
1957 | 10/4 | |
1958 | ---- | |
1959 | builtins/read.def | |
1960 | - new `-e' option that uses readline to read the line | |
1961 | - if one of the arguments is not a legal variable name, print an | |
1962 | error message and return failure | |
1963 | ||
1964 | builtins/reserved.def | |
1965 | - changed the `Variables' to `variables' so `help variables' works | |
1966 | ||
1967 | subst.c | |
1968 | - set startup_state to 2 in child of command substitution to try to | |
1969 | avoid some unneeded forks | |
1970 | ||
1971 | trap.c | |
1972 | - removed call to reset_terminating_signals in restore_original | |
1973 | signals; callers are now required to take care of that themselves, | |
1974 | if necessary | |
1975 | ||
1976 | execute_cmd.c, subst.c | |
1977 | - added necessary calls to reset_terminating_signals before calls | |
1978 | to restore_original_signals | |
1979 | ||
1980 | execute_cmd.c | |
1981 | - when executing a null command in a subshell, don't bother passing | |
1982 | a string to make_child; just pass NULL | |
1983 | - in execute_builtin_or_function, don't add so many unwind-protects | |
1984 | if `subshell' == 1 | |
1985 | - in command_substitute, call cleanup_the_pipeline to discard the | |
1986 | old pipeline, so pipeline_pgrp does not get set to 0 in | |
1987 | start_pipeline, which is called by make_child via making_children | |
1988 | ||
1989 | jobs.c, nojobs.c | |
1990 | - new function, ignore_tty_job_signals, to set SIGTTIN, SIGTTOU, and | |
1991 | SIGTSTP to SIG_IGN | |
1992 | - new function, default_tty_job_signals, to set those signals | |
1993 | to SIG_DFL | |
1994 | - new function, cleanup_the_pipeline to free up the_pipeline and | |
1995 | set it to NULL | |
1996 | ||
1997 | 10/5 | |
1998 | ---- | |
1999 | builtins/history.def | |
2000 | - the history -p option is now -s (to sort of parallel the ksh | |
2001 | print -s option) | |
2002 | - the -s option now combines all of its arguments into a single | |
2003 | string and appends the string to the history list | |
2004 | - new history -p option to history expand each argument and print | |
2005 | the result without modifying the history list | |
2006 | ||
2007 | documentation/bash.1, documentation/features.texi | |
2008 | - documented the new -e option to read | |
2009 | - documented the new history -s and -p options | |
2010 | - documented the new cd and pwd -L options | |
2011 | ||
2012 | builtins/cd.def | |
2013 | - changed cd and pwd to use internal_getopt | |
2014 | - added the -L option to cd and pwd to follow symlinks (like if | |
2015 | set +P were issued) | |
2016 | ||
2017 | builtins/pushd.def | |
2018 | - added text for dirs +N and dirs -N to the dirs builtin long doc | |
2019 | - added -v option to dirs to print dirstack one dir per line with | |
2020 | stack index prepended | |
2021 | ||
2022 | 10/6 | |
2023 | ---- | |
2024 | execute_cmd.c | |
2025 | - split the command searching code into a new function: | |
2026 | search_for_command | |
2027 | - removed a bunch of dead code from shell_execve | |
2028 | - removed call to reset_terminating_signals when executing a function | |
2029 | or builtin in a subshell (either via (xxx) or xxx &) | |
2030 | - don't add unwind protects at all in execute_function if subshell == 1 | |
2031 | ||
2032 | lib/readline/chardefs.h | |
2033 | - new macro ALPHABETIC(c), returns 1 if c is a letter or digit | |
2034 | ||
2035 | lib/readline/readline.c | |
2036 | - don't call abort() in rl_change_case(); it's impolite in a | |
2037 | library function | |
2038 | - new macro, SWAP, used to swap values of two integers | |
2039 | - changed alphabetic to use ALPHABETIC, made it slightly faster | |
2040 | - modified rl_change_case() so that word capitalization is the | |
2041 | same as GNU Emacs | |
2042 | ||
2043 | lib/readline/search.c | |
2044 | - in noninc_dosearch, don't reset the history positition to what | |
2045 | it was if we're currently in vi editing mode (as per Posix.2 | |
2046 | `/' and `?' vi-mode editing commands) | |
2047 | ||
2048 | 10/7 | |
2049 | ---- | |
2050 | builtins/common.c | |
2051 | - changed single_quote and double_quote to use char pointers | |
2052 | rather than string indexing | |
2053 | - new function backslash_quote(string), which quotes special | |
2054 | characters in STRING using backslashes | |
2055 | ||
2056 | 10/8 | |
2057 | ---- | |
2058 | alias.h | |
2059 | - added an extern declaration for alias_expand_word | |
2060 | ||
2061 | parse.y | |
2062 | - broke the alias expansion code off into a function | |
2063 | alias_expand_token; its return value says whether to re-read | |
2064 | a token or go on | |
2065 | - changed the alias expansion code to handle aliases that expand | |
2066 | to nothing better | |
2067 | - broke the code that does special-case token recognition off into | |
2068 | a function: special_case_tokens | |
2069 | - used the new functions to make sure that the special-case tokens | |
2070 | can be the expansion of an alias | |
2071 | - made sure that if in `posix mode' that reserved words cannot be | |
2072 | aliased and that all reserved words can be the values of aliases | |
2073 | and be recognized after expansion | |
2074 | ||
2075 | 10/10 | |
2076 | ----- | |
2077 | lib/readline/complete.c | |
2078 | - replaced #ifdef SHELL code with two new exported readline interfaces: | |
2079 | rl_filename_quoting_function and rl_filename_dequoting_function. | |
2080 | Both return a pointer to char. | |
2081 | - new extern variable rl_filename_quote_characters, containing a list | |
2082 | of characters that cause a word to be quoted by the completer if | |
2083 | they appear in a file name | |
2084 | ||
2085 | bashline.c | |
2086 | - new functions for rl_filename_quoting_function and | |
2087 | rl_filename_dequoting_function. | |
2088 | - initialize rl_filename_quoting_function and rl_filename_dequoting_function | |
2089 | in initialize_readline | |
2090 | - initialize rl_filename_quote_characters | |
2091 | ||
2092 | lib/readline/readline.h | |
2093 | - extern declarations for new public interfaces | |
2094 | rl_filename_quoting_function and rl_filename_dequoting_function | |
2095 | - added declarations for NO_MATCH, SINGLE_MATCH, and MULT_MATCH for | |
2096 | use by the filename quoting functions | |
2097 | - new extern declaration for rl_filename_quote_characters | |
2098 | ||
2099 | lib/readline/history.c | |
2100 | - made a version of single_quote be compiled in if SHELL is not | |
2101 | defined | |
2102 | - the `q' and `x' modifiers are now compiled in by default, not | |
2103 | just if SHELL is defined | |
2104 | ||
2105 | 10/11 | |
2106 | ----- | |
2107 | subst.c | |
2108 | - string_quote_removal was being a little overzealous in stripping | |
2109 | things within embedded quoted strings when `quoted' was == 1. | |
2110 | Only remove one level of quotes each time through the function | |
2111 | This fixes the problem of quotes being stripped incorrectly in | |
2112 | var="The text \"hello\" should show up inside double quotes." | |
2113 | ||
2114 | lib/readline/history.c | |
2115 | - made the behavior of single quotes inhibiting history expansion | |
2116 | configurable with a variable: history_quotes_inhibit_expansion, | |
2117 | not just shell-specific | |
2118 | - added a new variable: history_search_delimiter_chars, which is a | |
2119 | list of characters that can also delimit a history search string | |
2120 | ||
2121 | lib/readline/history.h | |
2122 | - extern declaration of history_quotes_inhibit_expansion | |
2123 | - extern declaration of history_search_delimiter_chars | |
2124 | ||
2125 | bashhist.c | |
2126 | - set history_quotes_inhibit_expansion to 1 in bash_initialize_history | |
2127 | - initialize history_search_delimiter_chars to ";&()|<>" | |
2128 | ||
2129 | lib/readline/doc/{rltech,hstech}.texinfo | |
2130 | - documented new readline and history library interfaces | |
2131 | ||
2132 | parse.y | |
2133 | - split the part of read_token that reads a single word off into | |
2134 | a new function: read_token_word | |
2135 | ||
2136 | lib/readline/chardefs.h | |
2137 | - include <string.h> by default; only check HAVE_STRING_H if | |
2138 | HAVE_CONFIG_H is defined | |
2139 | ||
2140 | 10/12 | |
2141 | ----- | |
2142 | parse.y | |
2143 | - moved the `RESET' code out of read_token into reset_parser | |
2144 | - rewrote some of decode_prompt_string to make it more efficient | |
2145 | - rewrote more of read_token_word to make it more efficient | |
2146 | - make shell_getc cast its result to `unsigned char' before | |
2147 | returning it. This fixes the problem of \255 appearing in a | |
2148 | line | |
2149 | ||
2150 | machines.h | |
2151 | - new entry for m68k machines running Linux | |
2152 | ||
2153 | 10/13 | |
2154 | ----- | |
2155 | builtins/exec.def | |
2156 | - use search_for_command rather than find_user_command to look up | |
2157 | the path to exec, so the hash table and temp environment are used | |
2158 | ||
2159 | variables.c | |
2160 | - don't rebuild the export environment after binding a shell | |
2161 | function unless that function is exported | |
2162 | - make sure that copy_variable copies arrays correctly, using | |
2163 | dup_array() | |
2164 | - in assign_in_env, only call tilde_expand if a `~' appears somewhere | |
2165 | in the value | |
2166 | ||
2167 | execute_cmd.c | |
2168 | - if we found $PATH in the temp environment in search_for_command, | |
2169 | call find_user_command_in_path instead of find_user_command, so | |
2170 | we don't try to search the temporary env again. Call | |
2171 | find_user_command as normal if PATH is not in the temp environment | |
2172 | ||
2173 | subst.c | |
2174 | - char_is_quoted should not be compiled in if READLINE is not | |
2175 | defined | |
2176 | ||
2177 | lib/readline/complete.c | |
2178 | - add a new external interface: Function *rl_char_is_quoted_p, | |
2179 | which is called to find out whether a word break character is | |
2180 | quoted and should be skipped over when breaking words for | |
2181 | the completer | |
2182 | ||
2183 | lib/readline/readline.h | |
2184 | - extern declaration for rl_char_is_quoted_p | |
2185 | ||
2186 | bashline.c | |
2187 | - initialize rl_char_is_quoted_p to char_is_quoted | |
2188 | ||
2189 | lib/readline/doc/rltech.texinfo | |
2190 | - documented rl_char_is_quoted_p | |
2191 | ||
2192 | lib/readline/readline.c | |
2193 | - extend the undo records so that a `start' or `end' value of -1 | |
2194 | means rl_point and a value of -2 means rl_end. This is a start | |
2195 | to better support for undoing vi-mode commands like `C' | |
2196 | ||
2197 | lib/readline/vi_mode.c | |
2198 | - don't save what's entered in insert mode after a `C' command | |
2199 | for later insertion when doing a `redo' | |
2200 | ||
2201 | 10/16 | |
2202 | ----- | |
2203 | test.c | |
2204 | - rewrote unop() to use a switch statement instead of a call to | |
2205 | strchr | |
2206 | - remove #ifdef SHELL blocks by defining getuid, geteuid, getgid | |
2207 | and getegid as references to current_user.{uid,euid,gid,egid} | |
2208 | respectively | |
2209 | - change group_member to only fetch the group list once and to use | |
2210 | NGROUPS_MAX or NGROUPS to find the maximum number of groups | |
2211 | ||
2212 | documentation/bash.1 | |
2213 | - fixed description of ${#@} expansion | |
2214 | ||
2215 | 10/17 | |
2216 | ----- | |
2217 | support/bashbug.sh | |
2218 | - add a `From:' line to the mail message handed to rmail | |
2219 | ||
2220 | 10/18 | |
2221 | ----- | |
2222 | test.c | |
2223 | - rewrote binary_operator for speed and clarity | |
2224 | - removed age_of, added arithcomp(), filecomp() to support new | |
2225 | binary_operator | |
2226 | - removed support for `-l string' | |
2227 | ||
2228 | documentation/bash.1 | |
2229 | - removed mention of `-l string' from `test' description | |
2230 | ||
2231 | 10/19 | |
2232 | ----- | |
2233 | cpp-Makefile | |
2234 | - pass PROGRAM as the double-quoted shell name to compilation of | |
2235 | shell.c and error.c | |
2236 | ||
2237 | 10/20 | |
2238 | ----- | |
2239 | support/bashbug.sh | |
2240 | - don't try to use ${word:-expansion}; ultrix sh doesn't understand it | |
2241 | ||
2242 | hash.c | |
2243 | - new function: flush_hash_table (table, free_data) to delete the | |
2244 | contents of a given hash table. *free_data is called to free | |
2245 | each item's data, if free() is inappropriate | |
2246 | ||
2247 | builtins/hash.def | |
2248 | - new functions free_hashed_filenames and free_filename_data to | |
2249 | flush the table of hashed filenames | |
2250 | ||
2251 | subst.c | |
2252 | - change sv_path to call flush_hashed_filenames directly | |
2253 | ||
2254 | variables.c | |
2255 | - only sort arrays of variables or functions for the environment or | |
2256 | `set' output if `posixly_correct' is set. sh does it; ksh does | |
2257 | not, and there's no real requirement to do so | |
2258 | - rewrote delete_all_variables so it looks like flush_hash_table | |
2259 | ||
2260 | trap.c | |
2261 | - two new flag values for the `sigmodes' array: SIG_INPROGRESS, | |
2262 | which is set for sigmodes[sig] while a trap handler for sig | |
2263 | is executing, and SIG_CHANGED, which is set if a new trap | |
2264 | value is set when SIG_INPROGRESS is set. This should obviate | |
2265 | the need to set the trap value to IMPOSSIBLE_TRAP_HANDLER while | |
2266 | the trap handler is executing | |
2267 | ||
2268 | alias.c | |
2269 | - rewrote delete_all_aliases so it looks like flush_hash_table | |
2270 | ||
2271 | 10/21 | |
2272 | ----- | |
2273 | alias.c | |
2274 | - changed delete_all_aliases to call flush_hash_table directly | |
2275 | and use free_alias_data as the `free function' argument | |
2276 | ||
2277 | variables.c | |
2278 | - changed delete_all_variables to call flush_hash_table directly | |
2279 | ||
2280 | tests/run-test, tests/test-tests | |
2281 | - new scripts to run tests of the `test' builtin as part of the | |
2282 | regression test | |
2283 | ||
2284 | 10/24 | |
2285 | ----- | |
2286 | bashline.c | |
2287 | - initialize_hostname_list needs to look for HOSTFILE first | |
2288 | - hostname list is no longer sorted | |
2289 | - replaced binary search in hostnames_matching with a simple | |
2290 | linear search | |
2291 | - made the code that reads hostnames skip over the first word on | |
2292 | a line only if its first character is a digit, assuming it's | |
2293 | an Internet address | |
2294 | ||
2295 | copy_cmd.c | |
2296 | - removed copy_select_command; overload copy_for_command, since the | |
2297 | select and for command structs are exactly the same | |
2298 | ||
2299 | make_cmd.c | |
2300 | - combined make_for_command and make_select_command into a new | |
2301 | function, make_for_or_select | |
2302 | - rewrote make_here_document to remove the unneeded `switch' statement | |
2303 | ||
2304 | builtins/common.c, builtins/hash.def | |
2305 | - moved remove_hashed_filename from common.c to hash.def | |
2306 | ||
2307 | builtins/common.c | |
2308 | - remove the \r from error message printed by get_working_directory | |
2309 | - change parse_and_execute to call dispose_fd_bitmap directly then | |
2310 | discard the `pe_dispose' unwind-protect frame rather than running | |
2311 | the frame | |
2312 | ||
2313 | builtins/set.def | |
2314 | - changed how set -o options are set and retrieved, using set and get | |
2315 | functions to avoid all that special-case inline code | |
2316 | ||
2317 | 10/26 | |
2318 | ----- | |
2319 | test.c | |
2320 | - added unary operator `-o', which returns true of the shell option | |
2321 | name given as an argument is set | |
2322 | ||
2323 | lib/readline/readline.c | |
2324 | - added a definition of set_lines_and_columns to be called if the | |
2325 | library is not compiled -DSHELL | |
2326 | ||
2327 | shell.c | |
2328 | - added a --verbose startup long option | |
2329 | - renamed `--nolineediting' to `--noediting' | |
2330 | ||
2331 | 10/27 | |
2332 | ----- | |
2333 | lib/readline/util.c | |
2334 | - new file, for readline utility functions | |
2335 | ||
2336 | lib/readline/readline.c | |
2337 | - moved a bunch of functions to util.c | |
2338 | ||
2339 | subst.c | |
2340 | - make sure set_sigint_handler is called only by the subshells doing | |
2341 | command and process substitution | |
2342 | ||
2343 | builtins/read.def | |
2344 | - make sure that rlbuf is initialized to null | |
2345 | ||
2346 | trap.c | |
2347 | - new flag for sigmodes[] members: SIG_IGNORED, set when signal is | |
2348 | ignored, even if it's special or untrappable | |
2349 | - new function: signal_is_ignored (sig), which returns 1 if SIG | |
2350 | has been ignored with trap '' | |
2351 | ||
2352 | builtins/trap.def | |
2353 | - changed to use the builtin getopt | |
2354 | ||
2355 | shell.c | |
2356 | - added a check to sigint_sighandler for whether or not SIGINT has | |
2357 | been ignored with trap '' in an interactive shell. This fixes | |
2358 | the problem with `read' being interruptible in an interactive | |
2359 | shell even if SIGINT is being ignored | |
2360 | ||
2361 | 11/8 | |
2362 | ---- | |
2363 | lib/readline/Makefile | |
2364 | - added definition of INSTALLED_HEADERS, just in case | |
2365 | ||
2366 | 11/11 | |
2367 | ----- | |
2368 | variables.c | |
2369 | - change assign_in_env so that it doesn't use savestring ("") to | |
2370 | set `value' to a dummy value; don't call strcpy if there's | |
2371 | nothing to copy | |
2372 | ||
2373 | 11/15 | |
2374 | ----- | |
2375 | general.h | |
2376 | - new defines, legal_variable_starter and legal_variable_char | |
2377 | - new define SIGRETURN(n) which encapsulates the VOID_SIGHANDLER | |
2378 | differences when returning from a signal handler | |
2379 | ||
2380 | general.c, variables.c, subst.c, expr.c | |
2381 | - use legal_variable_starter and legal_variable_char | |
2382 | ||
2383 | shell.c, nojobs.c, trap.c, jobs.c, builtins/suspend.def | |
2384 | - change to use SIGRETURN macro | |
2385 | ||
2386 | subst.c | |
2387 | - massive changes to clean up the code and remove unused code and | |
2388 | variables | |
2389 | - expanded the ${#param} code so that all of the shell special | |
2390 | variables may have their length taken | |
2391 | ||
2392 | tests/run-tilde | |
2393 | - new test for tilde expansion | |
2394 | ||
2395 | bashline.c | |
2396 | - fix a bug in command_subst_completion_matches: make sure that | |
2397 | `matches' is static | |
2398 | ||
2399 | parse.y | |
2400 | - don't print a prompt when not using readline if the current | |
2401 | input type is st_string | |
2402 | ||
2403 | machines.h | |
2404 | - add -DINT_GROUPS_ARRAY to SYSDEP_CFLAGS on ultrix | |
2405 | - fixes to the cray machine description from Bill Jones | |
2406 | ||
2407 | braces.c | |
2408 | - fixed a bug in brace_gobbler that prevented a backslash from | |
2409 | escaping an open brace | |
2410 | ||
2411 | 11/16 | |
2412 | ----- | |
2413 | tests/braces-tests, tests/run-braces | |
2414 | - new regression tests for brace expansion | |
2415 | ||
2416 | builtins/pushd.def | |
2417 | - new -p option for `dirs' that prints dirstack on per line | |
2418 | without numbers | |
2419 | ||
2420 | 11/17 | |
2421 | ----- | |
2422 | command.h | |
2423 | - move redirection error values here from execute_cmd.c | |
2424 | - new defines INPUT_REDIRECT and OUTPUT_REDIRECT | |
2425 | ||
2426 | shell.c | |
2427 | - make the default MAINTAINER `bash-maintainers@prep.ai.mit.edu' | |
2428 | ||
2429 | execute_cmd.c | |
2430 | - many changes to clean up the code and remove unused variables and | |
2431 | functions | |
2432 | - new functions: redirection_error, find_in_path_element, | |
2433 | find_absolute_program | |
2434 | - fixes to redirection error reporting, so things like exec 4<&y* | |
2435 | and exec 4<&$FOO are displayed correctly | |
2436 | - removed the `lexical_scoping' code | |
2437 | ||
2438 | flags.c, flags.h | |
2439 | - removed the lexical_scoping code and variable | |
2440 | ||
2441 | documentation/{bash.1,features.texi} | |
2442 | - removed the description of the `-l' option to `set' | |
2443 | ||
2444 | jobs.c | |
2445 | - don't try to open /dev/tty to get the controlling tty, use | |
2446 | fd 2 like other job control shells | |
2447 | ||
2448 | lib/readline/vi_mode.c | |
2449 | - when using `d%', make sure the matching character found by | |
2450 | the `%' is deleted by the `d'. Ditto for `c%'. | |
2451 | - stub function for vi undo: rl_vi_undo. Right now it just | |
2452 | calls rl_undo_command | |
2453 | ||
2454 | lib/readline/vi_keymap.c | |
2455 | - change to call rl_vi_undo instead of rl_undo_command | |
2456 | ||
2457 | lib/readline/readline.h | |
2458 | - extern declaration for rl_vi_undo | |
2459 | ||
2460 | 11/21 | |
2461 | ----- | |
2462 | execute_cmd.c | |
2463 | - fix to print_select_list to avoid a possible divide-by-zero error | |
2464 | and subsequent core dump | |
2465 | - fix to execute_select_command to just return 0 if there is no | |
2466 | select list | |
2467 | ||
2468 | parse.y | |
2469 | - remove `in' from the list of tokens that cannot take trailing | |
2470 | semicolons | |
2471 | ||
2472 | builtins/read.def | |
2473 | - make sure that leading IFS whitespace is removed before calling | |
2474 | get_word_from_string the first time. This matters when IFS is | |
2475 | not " \t\n" but non-null | |
2476 | - make sure the array code uses IFS to split the input string | |
2477 | before assigning it to the array | |
2478 | ||
2479 | 11/22 | |
2480 | ----- | |
2481 | parse.y | |
2482 | - make sure that if \nnn expands to CTLESC or CTLNUL, the char | |
2483 | is protected by a CTLESC | |
2484 | - new variable `promptvars', which, if non-zero, causes all the | |
2485 | variable expansions to be performed in decode_prompt_string. | |
2486 | If zero, only quote removal is performed. | |
2487 | ||
2488 | builtins/source.def | |
2489 | - new variable: `source_uses_path', set to 1 by default. If | |
2490 | non-zero, the `.' builtin uses $PATH to find the script to | |
2491 | source | |
2492 | ||
2493 | builtins/getopt.h | |
2494 | - cut out everything not needed by bash | |
2495 | ||
2496 | builtins/getopt.c | |
2497 | - cut out everything not needed by bash | |
2498 | ||
2499 | builtins/getopts.def | |
2500 | - removed the call to getopt_set_posix_option_order, which is no | |
2501 | longer necessary | |
2502 | ||
2503 | execute_cmd.c | |
2504 | - split the code that writes out here documents to files out into | |
2505 | a separate function | |
2506 | ||
2507 | 11/23 | |
2508 | ----- | |
2509 | builtins/getopt.c, builtins/getopt.h, builtins/getopts.def, subst.c | |
2510 | - prefix all of the getopt variables and functions with `sh_' | |
2511 | (that is, optind becomes sh_optind and getopt becomes sh_getopt) | |
2512 | to avoid confusion with a system's getopt(3) implementation | |
2513 | ||
2514 | subst.c | |
2515 | - new functions: parameter_brace_substring and verify_substring_values | |
2516 | and changes to expand_word_internal to support the ksh-93 | |
2517 | ${var:exp1:exp2} substring syntax | |
2518 | ||
2519 | documentation/bash.1 | |
2520 | - documented the new ${var:exp1[:exp2]} syntax | |
2521 | ||
2522 | 11/25 | |
2523 | ----- | |
2524 | builtins/setattr.def | |
2525 | - don't allow readonly -n at all | |
2526 | ||
2527 | array.c | |
2528 | - split array_to_string into two parts; a new function | |
2529 | array_to_string_internal does the real work | |
2530 | - new function array_subrange () to return a subset of the elements | |
2531 | in an array | |
2532 | ||
2533 | subst.c | |
2534 | - augmented the substring code to handle the positional parameters | |
2535 | and array variables | |
2536 | - made quote_list and dequote_list return their WORD_LIST * | |
2537 | arguments so they can be used like | |
2538 | ||
2539 | z = string_list ((quoted ? quote_list (l) : l), xxx); | |
2540 | ||
2541 | - augmented the ${xxx} expansion code to do indirect variable | |
2542 | references if the first character of the variable name is `!' | |
2543 | ||
2544 | tests/new-exp.tests | |
2545 | - added regression tests for substring expansion | |
2546 | - added regression tests for indirect variable references | |
2547 | ||
2548 | 11/28 | |
2549 | ----- | |
2550 | builtins/set.def | |
2551 | - added set -o hashfunc and set -o onecmd, synonyms for set -h | |
2552 | and set -t, respectively | |
2553 | ||
2554 | builtins/shift.def | |
2555 | - changed shift so that the positional parameters are not changed | |
2556 | if the argument is > $# (this is ksh and Posix.2, unlike sh) | |
2557 | ||
2558 | documentation/bash.1 | |
2559 | - documented true behavior of `shift' | |
2560 | ||
2561 | lib/readline/kill.c | |
2562 | - split the kill ring management code and the kill commands out | |
2563 | from readline.c into this file | |
2564 | ||
2565 | lib/readline/undo.c | |
2566 | - split the code that does undoing out of readline.c into this file | |
2567 | ||
2568 | shell.c | |
2569 | - force the shell to exit with status 127 if a longjmp back to | |
2570 | run_one_command occurs with bash -c | |
2571 | - force the last command exit status to 1 if a | |
2572 | longjmp (top_level, DISCARD) is performed | |
2573 | ||
2574 | builtins/read.def | |
2575 | - don't throw away partial lines after reading EOF | |
2576 | ||
2577 | subst.c | |
2578 | - command substitution should not inherit the -e flag | |
2579 | ||
2580 | builtins/source.def | |
2581 | - make sure to set the exit status correctly when in posix mode | |
2582 | and the filename argument to `.' does not exist | |
2583 | ||
2584 | 11/29 | |
2585 | ----- | |
2586 | lib/readline/input.c | |
2587 | - split the input buffering and character input code out of | |
2588 | readline.c to here | |
2589 | ||
2590 | lib/readline/macro.c | |
2591 | - moved the keyboard macro management code to here from readline.c | |
2592 | ||
2593 | lib/readline/readline.c | |
2594 | - removed the STATIC_MALLOC code | |
2595 | ||
2596 | lib/readline/rltty.c | |
2597 | - return -1 in POSIX get_tty_settings if tcgetattr returns -1 and | |
2598 | errno != EINTR, even if output is being flushed | |
2599 | ||
2600 | 12/1 | |
2601 | ---- | |
2602 | machines.h | |
2603 | - fixes to the hpux_8 and hpux_9 machine descriptions | |
2604 | ||
2605 | trap.c | |
2606 | - make run_exit_trap return the right exit status | |
2607 | (last_command_exit_value) | |
2608 | - run_exit_trap no longer preserves the value of last_command_exit_value | |
2609 | around the execution of the trap commands | |
2610 | - run_exit_trap now turns off SIG_TRAPPED and sets SIG_INPROGRESS | |
2611 | and will not try to run anything if SIG_INPROGRESS is set | |
2612 | ||
2613 | trap.h | |
2614 | - change definition for run_exit_trap | |
2615 | ||
2616 | shell.c | |
2617 | - call run_exit_trap only if trap[0] is set and not ignored | |
2618 | ||
2619 | builtins/exit.def | |
2620 | - make sure we only source the .bash_logout file once, even if it | |
2621 | contains a call to `exit' | |
2622 | ||
2623 | execute_cmd.c | |
2624 | - if we run an exit trap in a (...) user subshell, allow it to | |
2625 | override the exit status of the subshell | |
2626 | ||
2627 | lib/readline/readline.c | |
2628 | - made rl_delete_text bounds check its `to' argument, and limit | |
2629 | it at rl_end | |
2630 | ||
2631 | lib/readline/vi_mode.c | |
2632 | - make rl_vi_subst call `rl_delete_text' directly for the `s' | |
2633 | command | |
2634 | ||
2635 | support/mksysdefs | |
2636 | - define a new variable for the sysdefs.h file for ISC machines: | |
2637 | ISC_release, which can be ISC_2, ISC_3, or ISC_4 | |
2638 | ||
2639 | machines.h | |
2640 | - don't `#undef' HAVE_GETCWD on ISC 4.x machines | |
2641 | - `#undef' HAVE_RESOURCE on ISC 4.x machines | |
2642 | ||
2643 | support/mkversion.c | |
2644 | - include "posixstat.h" rather than <sys/stat.h> for the benefit | |
2645 | of ISC machines | |
2646 | ||
2647 | 12/5 | |
2648 | ---- | |
2649 | lib/readline/complete.c | |
2650 | - changed username_completion_function so that a null username | |
2651 | generates a list of all users as possible completions | |
2652 | ||
2653 | lib/readline/readline.h | |
2654 | - added definitions for STREQ, STREQN | |
2655 | ||
2656 | lib/readline/{search.c,isearch.c,kill.c} | |
2657 | - removed private definitions of STREQ, STREQN | |
2658 | ||
2659 | execute_cmd.c | |
2660 | - in find_user_command_internal, just return a copy of the pathname | |
2661 | passed as an argument if there is no PATH | |
2662 | ||
2663 | 12/6 | |
2664 | ---- | |
2665 | siglist.h | |
2666 | - NetBSD 1.0 does not need a define for strsignal() | |
2667 | ||
2668 | 12/8 | |
2669 | ---- | |
2670 | subst.c | |
2671 | - removed assignment_name, word_list_quote_removal, word_quote_removal, | |
2672 | and sub_append_number -- unused functions | |
2673 | - removed some unexecuted code from expand_word_internal | |
2674 | ||
2675 | 12/9 | |
2676 | ---- | |
2677 | execute_cmd.c | |
2678 | - if PATH is set to the empty string, find executables in the | |
2679 | current directory | |
2680 | ||
2681 | shell.c, parse.y, trap.c | |
2682 | - before setting the SIGINT sighandler unconditionally to one of | |
2683 | sigint_sighandler or termination_unwind_protect, check that it | |
2684 | is not ignored. Now trap '' 2 really sets the SIGINT signal | |
2685 | handler to SIG_IGN. [In 1.14.3] | |
2686 | ||
2687 | trap.c | |
2688 | - rewrote set_sigint_handler to use SIG_IGNORED rather than checking | |
2689 | against IGNORE_SIG | |
2690 | - changed ignore_signal, run_exit_trap, maybe_call_trap_handler, and | |
2691 | run_trap_internal to check SIG_IGNORED | |
2692 | ||
2693 | shell.c | |
2694 | - removed the check for signal_is_ignored(SIGINT) in sigint_sighandler | |
2695 | ||
2696 | 12/11 | |
2697 | ----- | |
2698 | sig.c, sig.h | |
2699 | - new files, moved signal-related definitions and code here from | |
2700 | shell.c, general.h, general.c, jobs.c, jobs.h, externs.h | |
2701 | ||
2702 | unwind_prot.c, shell.h, nojobs.c | |
2703 | - include sig.h | |
2704 | ||
2705 | 12/12 | |
2706 | ----- | |
2707 | jobs.c | |
2708 | - only break out of loops if SIGTSTP was used to stop a job in the | |
2709 | loop, the shell is currently interactive, and job control is on. | |
2710 | SIGSTOP does not break loops. [In 1.14.3] | |
2711 | ||
2712 | 12/13 | |
2713 | ----- | |
2714 | expr.c | |
2715 | - bases < 2 or > 36 are now accepted without silently being reset | |
2716 | to 10 | |
2717 | ||
2718 | braces.c | |
2719 | - make sure array_concat copies the array it returns if one of | |
2720 | the arguments is null [In 1.14.3] | |
2721 | ||
2722 | 12/14 | |
2723 | ----- | |
2724 | subst.c | |
2725 | - split the ${...} expansion code out into a separate function, | |
2726 | static char *parameter_brace_expand() | |
2727 | - changes to array_value so that any variable can be referred to | |
2728 | as an array with an integer subscript. The value will be | |
2729 | returned if a non-array variable is referred to as ${var[0]}; | |
2730 | if the subscript is > 0 a null string is returned | |
2731 | ||
2732 | 12/15 | |
2733 | ----- | |
2734 | machines.h | |
2735 | - fixes to freebsd description for FreeBSD 2 [In 1.14.3] | |
2736 | ||
2737 | support/bashbug.sh | |
2738 | - changed to use /usr/lib/sendmail if present or /usr/sbin/sendmail | |
2739 | if present, defaulting to rmail [In 1.14.3] | |
2740 | ||
2741 | bashhist.c | |
2742 | - HISTFILESIZE now controls how large the history file is after | |
2743 | it is written. After saving the shell history, sv_histfilesize | |
2744 | will truncate it if necessary. history -w can override this. | |
2745 | ||
2746 | documentation/bash.1 | |
2747 | - documented change to treatment of HISTSIZE when saving history | |
2748 | ||
2749 | lib/malloc/malloc.c | |
2750 | - removed the calls to sigsetmask() in malloc(). This should | |
2751 | result in a speed improvement | |
2752 | ||
2753 | 12/19 | |
2754 | ----- | |
2755 | builtins/enable.def | |
2756 | - don't allow -f or -d in a restricted shell | |
2757 | ||
2758 | builtins/alias.def | |
2759 | - rewrote alias and unalias to use the internal getopt | |
2760 | - added -p option to print the alias list to alias | |
2761 | - fixed up the documentation for `alias' | |
2762 | ||
2763 | documentation/{bash.1,features.texi} | |
2764 | - updated the documentation for `alias' | |
2765 | - updated the documentation for $_ | |
2766 | ||
2767 | array.c,array.h | |
2768 | - new function `empty_array (ARRAY *a)' removes all of the | |
2769 | elements in a without destroying the array variable in | |
2770 | preparation for overwriting it. Used by read -a. | |
2771 | ||
2772 | builtins/read.def | |
2773 | - call empty_array() before assigning list of values with read -a | |
2774 | - changed dispose_array to use empty_array to destroy the | |
2775 | array elements | |
2776 | ||
2777 | variables.c | |
2778 | - set $_ to argv[0] at variable initialization time | |
2779 | ||
2780 | 12/20 | |
2781 | ----- | |
2782 | subst.c | |
2783 | - broke the pattern removal code into a few separate functions: | |
2784 | getpatspec to get the pattern specifier, getpattern to do the | |
2785 | necessary word expansions and return the pattern to be matched | |
2786 | - new function: parameter_list_remove_pattern(), which implements | |
2787 | the ${param[#%][[%#]]pattern} where param is `@' or `*' | |
2788 | ||
2789 | documentation/bash.1 | |
2790 | - documented new pattern removal functionality for the positional | |
2791 | paramters | |
2792 | ||
2793 | general.c | |
2794 | - new function strsub (s, pat, rep, gflag) replaces PAT with REP | |
2795 | in S. All occurrences are replaced if GFLAG != 0; the first is | |
2796 | replaced otherwise | |
2797 | - changed strindex() to avoid multiple calls to strnicmp by | |
2798 | checking first character of the string | |
2799 | ||
2800 | builtins/fc.def | |
2801 | - changed to use builtin_getopt with a check for fc numbers as | |
2802 | arguments | |
2803 | - some code rearranging for efficiency and clarity | |
2804 | - fc_dosubs now just calls strsub(); fc_replace is gone | |
2805 | ||
2806 | 12/21 | |
2807 | ----- | |
2808 | subst.c | |
2809 | - new function, match_pattern, which matches a shell globbing | |
2810 | pattern anywhere in a string and returns the boundaries of the | |
2811 | match | |
2812 | ||
2813 | lib/readline/readline.h | |
2814 | - declarations for rl_insert_command and rl_backward_char_search | |
2815 | ||
2816 | lib/readline/readline.c | |
2817 | - new function rl_insert_comment, no longer vi-mode-specific | |
2818 | - new function rl_backward_char_search | |
2819 | ||
2820 | lib/readline/bind.c | |
2821 | - comment-begin now sets the comment char for emacs and vi modes | |
2822 | - variable holding the value is now _rl_comment_begin | |
2823 | ||
2824 | lib/readline/vi_mode.c | |
2825 | - move the `comment-begin' stuff to readline.c and bind.c | |
2826 | ||
2827 | lib/readline/funmap.c | |
2828 | - vi-comment is now insert-comment | |
2829 | - new bindable command character-search-backward | |
2830 | ||
2831 | lib/readline/vi_mode.c | |
2832 | - command mode `#' now invokes rl_insert_comment | |
2833 | ||
2834 | lib/readline/emacs_keymap.c | |
2835 | - M-# now bound to insert-comment | |
2836 | - M-space now bound to set-mark | |
2837 | - M-^] now bound to character-search-backward | |
2838 | ||
2839 | bashline.c | |
2840 | - posix_readline_initialize now calls rl_variable_bind to set the | |
2841 | value of comment-begin rather than directly modifying | |
2842 | _rl_comment_begin | |
2843 | ||
2844 | documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo | |
2845 | - added description of new bindable `insert-comment' command | |
2846 | - documented new M-space emacs mode binding | |
2847 | - documented new character-search-backward command and default | |
2848 | emacs mode binding to M-C-] | |
2849 | ||
2850 | shell.c | |
2851 | - only call posix_initialize if posixly_correct is set | |
2852 | ||
2853 | 12/22 | |
2854 | ----- | |
2855 | cpp-Makefile | |
2856 | - make $(Program) depend on $(srcdir)/.distribution, for the | |
2857 | benefit of systems where `make' does not have VPATH support | |
2858 | [In 1.14.3] | |
2859 | ||
2860 | jobs.c | |
2861 | - if a foreground job is killed by SIGINT while job control is | |
2862 | active, print a newline to compensate for the kernel printing | |
2863 | ^C without one [in 1.14.3] | |
2864 | ||
2865 | bashline.c | |
2866 | - make sure bashline_reinitialize resets rl_completion_entry_function | |
2867 | to NULL, as the comment says it should [In 1.14.3] | |
2868 | ||
2869 | 12/23 | |
2870 | ----- | |
2871 | test.c | |
2872 | - fix a problem that caused core dumps if a `)' was missing in a | |
2873 | parenthesized expression [In 1.14.3] | |
2874 | ||
2875 | jobs.c | |
2876 | - broke the code the manages the manipulation of the job table and | |
2877 | process status out of flush_child into a new function waitchld() | |
2878 | - flush_child now just calls waitchld() with a parameter that tells | |
2879 | it not to block | |
2880 | - wait_for calls waitchld() with the pid it's looking for and tells | |
2881 | it to block (don't call it with WNOHANG) | |
2882 | - cleaned up wait_for considerably -- turned the wait_loop: label | |
2883 | stuff into a do-while loop and removed the setting of job status | |
2884 | (that's now done only by waitchld). wait_for now calls | |
2885 | waitchld continuously until the job it is interested in is | |
2886 | marked JDEAD. | |
2887 | ||
2888 | 12/28 | |
2889 | ----- | |
2890 | subst.c | |
2891 | - fixed expand_word_internal so that any word that expands into | |
2892 | nothing and contains a double-quoted $@ is removed, like sh | |
2893 | and ksh | |
2894 | - new function: expand_string_for_rhs, which calls expand_word_internal | |
2895 | with a variable that lets it find out whether or not a $@ appeared | |
2896 | in the WORD in ${paramOPword} when expanding it, so that "$@" | |
2897 | and various other things are handled correctly on the rhs | |
2898 | - added params for parameter_brace_expand to tell expand_word_internal | |
2899 | if a quoted $@ was processed as part of the rhs (or even the lhs); | |
2900 | these new params are passed along to parameter_brace_expand_rhs | |
2901 | - pass the right value of quoted to parameter_brace_expand_rhs from | |
2902 | parameter_brace_expand. expand_string_for_rhs doesn't need to know | |
2903 | whether the brace expression is quoted | |
2904 | ||
2905 | 12/31 | |
2906 | ----- | |
2907 | support/printenv | |
2908 | - now an official part of the distribution, moved from CWRU/misc | |
2909 | [in 1.14.3] | |
2910 | ||
2911 | cpp-Makefile | |
2912 | - copy support/printenv into the `tests' directory when making tests | |
2913 | [in 1.14.3] | |
2914 | - change to understand GCC_STANDARD [in 1.14.3] | |
2915 | ||
2916 | support/bashbug.sh | |
2917 | - fixed a typo that caused it to not parse correctly [in 1.14.3] | |
2918 | ||
2919 | machines.h | |
2920 | - define GCC_STANDARD if the standard `cc' is gcc and you don't want | |
2921 | to use the compiler named `gcc' for some reason [in 1.14.3] | |
2922 | ||
2923 | 1/2 | |
2924 | --- | |
2925 | general.h | |
2926 | - added FS_DIRECTORY to the list of flags that file_status returns | |
2927 | ||
2928 | execute_cmd.c | |
2929 | - changed find_in_path_element to return null if the flags argument | |
2930 | specifies FS_EXEC_ONLY and the file is not executable | |
2931 | - return FS_DIRECTORY from file_status if the argument specifies a | |
2932 | directory | |
2933 | - new function, is_directory (char *), which returns non-zero if the | |
2934 | filename argument is a directory | |
2935 | ||
2936 | execute_cmd.h | |
2937 | - extern declaration for is_directory | |
2938 | ||
2939 | flags.c, flags.h | |
2940 | - hashing_disabled and locate_commands_in_functions were removed, | |
2941 | hashing_enabled added | |
2942 | ||
2943 | execute_cmd.c, builtins/common.c. builtins/hash.def | |
2944 | - use hashing_enabled instead of hashing_disabled, and reverse | |
2945 | the sense of tests of it | |
2946 | ||
2947 | documentation/bash.1, documentation/features.texi | |
2948 | - changed description of `set -h/set -o hashcmds', removed | |
2949 | set -d/set -o nohash | |
2950 | ||
2951 | bashline.c | |
2952 | - changed command_word_completion_function to return matches if names | |
2953 | are directories as well as if they are executable files | |
2954 | ||
2955 | support/mksysdefs | |
2956 | - look for `ranlib' in $PATH before searching the file system; | |
2957 | look in /usr/gnu/bin for it; default to `:' if not found | |
2958 | ||
2959 | general.c | |
2960 | - change ansicstr to accept a second argument telling it whether to | |
2961 | recognize \c and to pass back a non-zero value in it if \c is | |
2962 | seen | |
2963 | ||
2964 | general.h | |
2965 | - changed extern declaration of ansicstr | |
2966 | ||
2967 | subst.c | |
2968 | - call ansicstr with an extra argument | |
2969 | ||
2970 | 1/3 | |
2971 | --- | |
2972 | builtins/echo.def | |
2973 | - rewrote to use ansicstr() with the new argument | |
2974 | ||
2975 | 1/4 | |
2976 | --- | |
2977 | trap.c | |
2978 | - changed instances of signal() to set_signal_handler() [in 1.14.4] | |
2979 | - combined reset_signals and restore_signals into a single function, | |
2980 | since they were essentially identical | |
2981 | ||
2982 | subst.c | |
2983 | - if set -u is set, references to the positional parameters now | |
2984 | generate errors if that parameter is not set [in 1.14.4] | |
2985 | ||
2986 | lib/*/Makefile, builtins/Makefile | |
2987 | - since RANLIB can be just `ranlib', just try to run it without | |
2988 | checking that the file exists [in 1.14.4] | |
2989 | ||
2990 | builtins/set.def | |
2991 | - changed `hashcmds' to `hashall' | |
2992 | ||
2993 | documentation/{bash.1,features.texi} | |
2994 | - changed `hashcmds' to `hashall' | |
2995 | ||
2996 | 1/5 | |
2997 | --- | |
2998 | trap.c | |
2999 | - make the loop that restores signal handlers run from signal 0 to | |
3000 | make sure user subshells don't inherit traps on `exit' (to fix | |
3001 | for 1.14.3, change restore_original_signals so that the loop | |
3002 | starts from 0) [in 1.14.4] | |
3003 | ||
3004 | variables.c | |
3005 | - don't import exported function definitions at startup if the | |
3006 | shell is restricted | |
3007 | ||
3008 | builtins/source.def | |
3009 | - don't allow use of pathname arguments containing `/' in a | |
3010 | restricted shell | |
3011 | ||
3012 | execute_cmd.c | |
3013 | - when a shell is spawned to execute a shell script without a | |
3014 | #! line, turn off the -r flag if the shell is restricted | |
3015 | ||
3016 | shell.c | |
3017 | - added a new long option `--restricted' | |
3018 | ||
3019 | documentation/bash.1 | |
3020 | - added a section on the restricted shell, and documented the | |
3021 | new `--restricted' long invocation option | |
3022 | ||
3023 | 1/7 | |
3024 | --- | |
3025 | shell.c | |
3026 | - when using bash -c command, make run_one_command return | |
3027 | last_command_exit_value if a throw_to_top_level with value | |
3028 | EXITPROG occurs [in 1.14.4] | |
3029 | ||
3030 | print_cmd.c | |
3031 | - make sure to initialize arg_index in the non-varargs implementation | |
3032 | of cprintf [in 1.14.4] | |
3033 | ||
3034 | jobs.c | |
3035 | - don't try to change the state of the SIGCHLD handler before | |
3036 | calling waitchld() from wait_for, since SIGCHLD is blocked | |
3037 | while this code is executing [in 1.14.4] | |
3038 | ||
3039 | 1/11 | |
3040 | ---- | |
3041 | lib/readline/rltty.c | |
3042 | - call control_keypad iff the value of a new variable, | |
3043 | _rl_enable_keypad, is non-zero | |
3044 | ||
3045 | lib/readline/bind.c | |
3046 | - new readline variable `enable-keypad' to control whether readline | |
3047 | tries to manipulate the application keypad | |
3048 | ||
3049 | documentation/{bash.1,readline.3}, lib/readline/doc/rluser.texinfo | |
3050 | - documented new `enable-keypad' variable | |
3051 | ||
3052 | 1/12 | |
3053 | ---- | |
3054 | lib/readline/search.c | |
3055 | - make sure to call rl_unix_word_rubout and rl_unix_line_discard | |
3056 | with the correct arguments [in 1.14.4] | |
3057 | ||
3058 | make_cmd.h | |
3059 | - make sure make_select_command is declared even if SELECT_COMMAND | |
3060 | is not defined | |
3061 | ||
3062 | parse.y | |
3063 | - make sure the \[ and \] escape sequences are not recognized if | |
3064 | READLINE is not defined [in 1.14.4] | |
3065 | ||
3066 | config.h | |
3067 | - make sure HISTORY is defined if READLINE is; code moved here | |
3068 | from bashhist.c [in 1.14.4] | |
3069 | ||
3070 | bashhist.c | |
3071 | - removed check for READLINE being defined without HISTORY; now | |
3072 | in config.h | |
3073 | - new function, bash_history_reinit | |
3074 | ||
3075 | flags.h, flags.c, builtins/set.def | |
3076 | - the -H/-o histexpand flag should be compiled into the shell | |
3077 | only if BANG_HISTORY is defined [in 1.14.4] | |
3078 | ||
3079 | subst.c | |
3080 | - don't include sv_histchars unless BANG_HISTORY is defined | |
3081 | [in 1.14.4] | |
3082 | - if QUOTED is true in parameter_brace_expand_rhs, pre-process the | |
3083 | word on the rhs of the parameter expansion by a call to | |
3084 | string_extract_double_quoted with the STRIPDQ parameter set to 1 | |
3085 | - new arg for string_extract_double_quoted; causes it to strip | |
3086 | double quotes and alter its backslash handling behavior; designed | |
3087 | to be called from parameter_brace_expand_rhs | |
3088 | - changed all other instances of string_extract_double_quoted to | |
3089 | call it with STRIPDQ set to 0, to get old behavior | |
3090 | ||
3091 | shell.c | |
3092 | - call bash_history_reinit rather than manipulating history | |
3093 | variables directly | |
3094 | ||
3095 | variables.c | |
3096 | - don't auto-export $BASH [in 1.14.4] | |
3097 | ||
3098 | tests/rhs-exp.tests | |
3099 | - new test script to check for behavior fixed by changes to | |
3100 | string_extract_double_quoted and parameter_brace_expand_rhs | |
3101 | ||
3102 | parse.y | |
3103 | - `for' and `select' must now take non-empty lists between | |
3104 | `in' and `;' | |
3105 | ||
3106 | 1/16 | |
3107 | ---- | |
3108 | subst.c | |
3109 | - fixed string_quote_removal to do double-quoted string processing | |
3110 | itself rather than call string_extract_double_quoted, which | |
3111 | assumes that a call to expand_word_internal or the equivalent | |
3112 | will follow immediately and leaves some backslashes in place, | |
3113 | inappropriately for quote removal | |
3114 | ||
3115 | 1/23 | |
3116 | ---- | |
3117 | subst.c | |
3118 | - make sure to set `temp' to NULL after it's freed by sub_append_string | |
3119 | in expand_word_internal to keep it from pointing to newly-allocated | |
3120 | memory that will be subsequently freed, causing a `memory freed | |
3121 | twice' error [in 1.14.4] | |
3122 | ||
3123 | trap.c | |
3124 | - handle the EXIT_TRAP specially in reset_or_restore_signal_handlers, | |
3125 | since in both cases we simply want to free up the trap string and | |
3126 | mark the signal as not trapped | |
3127 | ||
3128 | shell.h | |
3129 | - added \n to the list of characters in slashify_in_double_quotes | |
3130 | ||
3131 | 1/26 | |
3132 | ---- | |
3133 | subst.c | |
3134 | - make string_extract_single_quoted and string_extract_double_quoted | |
3135 | `inline' | |
3136 | - new function skip_single_quoted, used when we used to call | |
3137 | string_extract_single_quoted and just throw the returned string | |
3138 | away | |
3139 | - new function skip_double_quoted for the same purpose | |
3140 | ||
3141 | 1/28 | |
3142 | ---- | |
3143 | subst.c | |
3144 | - fixed expand_word_internal so that if an assignment word | |
3145 | is expanded, no word splitting is performed [in 1.14.4] | |
3146 | ||
3147 | builtins/ulimit.def | |
3148 | - some systems lack RLIMIT_CPU; so `#ifdef' its use [in 1.14.4] | |
3149 | - some versions of cpp expand parameters like \n if `n' is an | |
3150 | argument to the macro; change `n' to `num' in the definition | |
3151 | of print_rlimtype to compensate [in 1.14.4] | |
3152 | ||
3153 | builtins/read.def | |
3154 | - make sure the read loop sets `saw_escape' to note that an | |
3155 | escape character was read if CTLESC or CTLNUL is read [in 1.14.4] | |
3156 | ||
3157 | shell.c, sig.c | |
3158 | - only test interactive_shell before calling maybe_save_shell_history | |
3159 | [in 1.14.4] | |
3160 | shell.c | |
3161 | - include <locale.h> if HAVE_LOCALE_H is defined | |
3162 | - call setlocale(LC_ALL, "") at the beginning of main() if | |
3163 | either _POSIX_VERSION or HAVE_SETLOCALE is defined | |
3164 | ||
3165 | support/mksysdefs | |
3166 | - look for <locale.h>, define HAVE_LOCALE_H if found | |
3167 | ||
3168 | cpp-Makefile | |
3169 | - pass HAVE_LOCALE_H through from sysdefs.h to the build process | |
3170 | ||
3171 | bashhist.c | |
3172 | - remove test against interactive_shell in maybe_save_shell_history | |
3173 | [in 1.14.4] | |
3174 | ||
3175 | variables.c | |
3176 | - moved definition of DEFAULT_MAIL_PATH to config.h | |
3177 | ||
3178 | config.h, config.h.mini | |
3179 | - now has definition of DEFAULT_MAIL_PATH [in 1.14.4] | |
3180 | - changed default value of PATH to | |
3181 | `/usr/gnu/bin:/usr/local/bin:/usr/ucb:/bin:/usr/bin:.' | |
3182 | [in 1.14.4] | |
3183 | ||
3184 | documentation/bash.1 | |
3185 | - updated the example of the default path in the description of | |
3186 | the PATH variable | |
3187 | ||
3188 | lib/readline/readline.c | |
3189 | - set up a table of `legal' LC_CTYPE values and match the value of | |
3190 | $LC_CTYPE against it when deciding whether or not to default to | |
3191 | eight-bit input and output | |
3192 | - check for LC_ALL, LC_CTYPE, and LANG, in that order, for names to | |
3193 | check against the legal_lc_ctype_values table | |
3194 | ||
3195 | lib/readline/bind.c | |
3196 | - moved strindex, stricmp, and strnicmp to lib/readline/util.c, | |
3197 | added _rl_ prefix to names | |
3198 | - some miscellaneous code cleanups and speedups | |
3199 | ||
3200 | lib/readline/rldefs.h | |
3201 | - define _POSIX_VDISABLE as _SVR4_VDISABLE if there is a define | |
3202 | for the latter and not the former [in 1.14.4] | |
3203 | - moved defining _rl_stricmp and _rl_strnicmp as strcasecmp and | |
3204 | strncasecmp, respectively, here from bind.c, since the functions | |
3205 | are now defined in util.c and used in two files | |
3206 | ||
3207 | builtins/common.c | |
3208 | - removed the \n case in double_quote, so a backslash is not added | |
3209 | before an existing newline. The \<newline> pair is removed by | |
3210 | the parser before anything else in the shell gets hold of it | |
3211 | except within single quotes [in 1.14.4] | |
3212 | ||
3213 | 1/30 | |
3214 | ---- | |
3215 | general.c | |
3216 | - make sure the string index in canonicalize_pathname never goes | |
3217 | < 0 (it can, in some cases, result in `start' being -1, and `i' | |
3218 | being set to that) [in 1.14.4] | |
3219 | ||
3220 | 2/1 | |
3221 | --- | |
3222 | execute_cmd.c | |
3223 | - fix a typo in a call to `access' in AFS-specific code [in 1.14.4] | |
3224 | ||
3225 | 2/3 | |
3226 | --- | |
3227 | builtins/shopt.def | |
3228 | - finally added new `shopt' builtin | |
3229 | ||
3230 | builtins/umask.def | |
3231 | - converted to use builtin_getopt | |
3232 | ||
3233 | bashhist.c | |
3234 | - support for storing literal newlines in the history list when | |
3235 | command_oriented_history is enabled, rather than using semicolons | |
3236 | ||
3237 | builtins/Makefile | |
3238 | - changed rule to make a .o file from a .def file to remove the | |
3239 | .c file if the compilation fails | |
3240 | ||
3241 | 2/6 | |
3242 | --- | |
3243 | bashhist.c | |
3244 | - added new variable `force_append_history' that will force the | |
3245 | history list to be appended to the history file at shell exit | |
3246 | - new function, maybe_append_history, to append any history lines | |
3247 | from the current session to the history file. Used by history -a | |
3248 | ||
3249 | builtins/bind.def | |
3250 | - changed the `-d' option to -p | |
3251 | ||
3252 | builtins/set.def | |
3253 | - added `allenv' as a -o synonym for `set -k'. Now all of the | |
3254 | single-letter shell options have -o equivalents | |
3255 | ||
3256 | builtins/shopt.def | |
3257 | - added -p option to display shell options, like other builtins | |
3258 | - added `interactive_comments' as a shell option, like set -o | |
3259 | ||
3260 | builtins/bind.def, builtins/history.def, builtins/enable.def | |
3261 | - changed use of multiple variables to hold option flag settings to | |
3262 | one variable with bits representing flag values | |
3263 | ||
3264 | documentation/bash.1, documentation/features.texi | |
3265 | - changed the description of the `bind' builtin for the new -p option | |
3266 | - changed the description of the `set' builtin for the new | |
3267 | `-o allenv' option | |
3268 | - updated the description of the `shopt' builtin | |
3269 | ||
3270 | builtins/history.def | |
3271 | - changed -a option to use maybe_append_history | |
3272 | ||
3273 | subst.c | |
3274 | - changed the substring/subarray code to make negative offsets | |
3275 | count backwards from the end of the string or array | |
3276 | ||
3277 | builtins/bashgetopt.c | |
3278 | - added option modifiers `;' (argument is optional) and `#' | |
3279 | (argument is optional, but if present must be numeric) | |
3280 | ||
3281 | builtins/hash.def | |
3282 | - converted to use builtin_getopt | |
3283 | - broke code out into a new function: add_hashed_command | |
3284 | ||
3285 | 2/7 | |
3286 | --- | |
3287 | builtins/getopt.c | |
3288 | - changed to save state to avoid relying on `nextchar' staying the | |
3289 | same across calls to sh_getopt [in 1.14.4] | |
3290 | - added a function to restore `nextchar' from this saved state | |
3291 | [in 1.14.4] | |
3292 | - removed some dead code | |
3293 | ||
3294 | builtins/getopts.def | |
3295 | - call function to restore sh_getopt state when parsing explicitly | |
3296 | supplied arguments rather than the positional parameters [in 1.14.4] | |
3297 | ||
3298 | lib/readline/vi_mode.c | |
3299 | - fixed an off-by-one error in _rl_vi_done_inserting that put the | |
3300 | \0 in vi_insert_buf at offset `len' instead of `len - 1' | |
3301 | ||
3302 | lib/readline/complete.c | |
3303 | - print_filename now filters out control characters and displays | |
3304 | them in printable format, rather than relying on the tty driver | |
3305 | to do the right thing [in 1.14.4] | |
3306 | ||
3307 | 2/8 | |
3308 | --- | |
3309 | lib/posixheaders/stdc.h | |
3310 | - test for each special keyword being defined individually, rather | |
3311 | than just testing on `const' [in 1.14.4] | |
3312 | ||
3313 | lib/readline/util.c | |
3314 | - new function _rl_abort_internal; rl_abort just calls this | |
3315 | ||
3316 | nojobs.c | |
3317 | - include error.h for extern function definitions [in 1.14.4] | |
3318 | ||
3319 | builtins/ulimit.def | |
3320 | - include <unistd.h> if HAVE_UNISTD_H is defined | |
3321 | - use HAVE_LIMITS_H to decide whether or not to include <limits.h> | |
3322 | ||
3323 | variables.c, subst.c, builtins/set.def | |
3324 | - removed special handling of `noclobber' variable | |
3325 | ||
3326 | builtins/set.def | |
3327 | - new function set_shellopts to set up the $SHELLOPTS variable | |
3328 | based on the values of the set -o options; `set' calls this | |
3329 | function whenever one of the options is changed | |
3330 | - new function parse_shellopts to take the value of SHELLOPTS and | |
3331 | turn on each option found therein | |
3332 | - new function initialize_shell_options to parse any inherited | |
3333 | value of $SHELLOPTS and set up $SHELLOPTS | |
3334 | ||
3335 | shell.c | |
3336 | - call initialize_shell_options at the end of shell_initialize() | |
3337 | ||
3338 | execute_cmd.c, general.c | |
3339 | - moved extract_colon_unit from execute_cmd.c to general.c | |
3340 | ||
3341 | execute_cmd.h, general.h | |
3342 | - moved extern declaration of extract_colon_unit from | |
3343 | execute_cmd.h to general.h | |
3344 | ||
3345 | documentation/{bash.1,features.texi} | |
3346 | - documented SHELLOPTS | |
3347 | ||
3348 | 2/18 | |
3349 | ---- | |
3350 | builtins/{shopt,pushd,jobs,umask}.def | |
3351 | - removed the `longjobs', `longdirs', `pushd_home' and `symbolic_umask' | |
3352 | options | |
3353 | ||
3354 | lib/readline/{histexpand,histsearch,histfile}.c, lib/readline/histlib.h | |
3355 | - new files, split off from old history library history.c | |
3356 | ||
3357 | lib/readline/history.c, lib/readline/history.h | |
3358 | - new function clear_history() to clear the history list | |
3359 | ||
3360 | lib/readline/doc/hstech.texinfo | |
3361 | - documented clear_history () | |
3362 | ||
3363 | builtins/pushd.def | |
3364 | - new function clear_directory_stack() to delete all elements of | |
3365 | the dir stack | |
3366 | - new -c option for `dirs' to clear directory stack | |
3367 | - new function get_dirstack_index for dirs -N and dirs +N to use | |
3368 | - new function get_dirstack_element(i, dir) for use by other parts of | |
3369 | the shell that want the functionality of dirs -N and dirs +N | |
3370 | (dir is 1 for dirs +N, -1 for dirs -N) | |
3371 | - new function set_dirstack_element(i, dir, val) for use by other | |
3372 | parts of the shell to change values in the dirstack (dir is -1 | |
3373 | for dirs -N, +1 for dirs +N). Used when assigning to $DIRSTACK. | |
3374 | ||
3375 | builtins/history.def | |
3376 | - new -c option to clear the history list | |
3377 | ||
3378 | documentation/bash.1, documentation/features.texi | |
3379 | - removed no-longer-valid shopt options | |
3380 | - documented new dirs -c option | |
3381 | - documented new history -c option | |
3382 | - documented new \T and \H prompt escape sequences | |
3383 | - documented new $DIRSTACK dynamic array variable | |
3384 | - documented the new expand-glob and list-glob readline commands | |
3385 | ||
3386 | variables.c | |
3387 | - set PS4 to its default value of `+ ', so that unsetting it will | |
3388 | disable the tracing characters [in 1.14.4] | |
3389 | - new framework for dynamic array variables -- each place an | |
3390 | array index is assigned to, a test is made. if a dynamic | |
3391 | assignment function exists, it is called with args `self', | |
3392 | the index being assigned to, and the new value | |
3393 | - new variable `$DIRSTACK', a dynamic array variable that holds | |
3394 | the current contents of the directory stack. You can even | |
3395 | change the stack by assigning to thie variable | |
3396 | ||
3397 | shell.c | |
3398 | - changed indirection_level_string to return the null string if | |
3399 | $PS4 is unset or null [in 1.14.4] | |
3400 | ||
3401 | parse.y | |
3402 | - new \H prompt escape for hostname up to first `.'; changed \h | |
3403 | to return full hostname (like \w/\W) | |
3404 | - new \T prompt escape for 12-hour time | |
3405 | ||
3406 | bashline.c | |
3407 | - new readline functions to expand glob patterns and insert or | |
3408 | list the expansions (special completion functions) | |
3409 | ||
3410 | ||
3411 | 2/20 | |
3412 | ---- | |
3413 | builtins/pushd.def | |
3414 | - new code for `pushd -n' and `popd -n' to inhibit cd when | |
3415 | adding or removing directories from the stack | |
3416 | - broke functionality off into separate functions for use by the | |
3417 | $DIRSTACK manipulation functions | |
3418 | ||
3419 | 2/21 | |
3420 | ---- | |
3421 | lib/readline/kill.c | |
3422 | - new functions to copy words to the kill ring, backward or | |
3423 | forward | |
3424 | ||
3425 | lib/readline/readline.h | |
3426 | - extern declarations for rl_copy_{backward,forward}_word | |
3427 | ||
3428 | ||
3429 | lib/readline/funmap.c | |
3430 | - new bindable readline commands: copy-backward-word and | |
3431 | copy-forward-word to copy portions of the line to the kill | |
3432 | ring without deleting them | |
3433 | ||
3434 | documentation/{bash.1,readline.3}, lib/readline/doc/hsuser.texinfo | |
3435 | - documented the new copy-backward-word and copy-forward-word | |
3436 | readline commands | |
3437 | ||
3438 | mailcheck.c, config.h | |
3439 | - the declaration of DEFAULT_MAIL_PATH is now only in config.h | |
3440 | and used by mailcheck.c and variables.c. There is no need to | |
3441 | use DEFAULT_MAIL_PATH_LEN; `sizeof' does the job [in 1.14.4] | |
3442 | ||
3443 | 2/22 | |
3444 | ---- | |
3445 | support/mksysdefs | |
3446 | - changes to fix `RELEASE' if it ends up being set to the empty string | |
3447 | [in 1.14.4] | |
3448 | - check for amdahl UTS [in 1.14.4] | |
3449 | - check for SGI Irix version 6.x [in 1.14.4] | |
3450 | ||
3451 | machines.h | |
3452 | - new entry for Amdahl UTS [in 1.14.4] | |
3453 | - changes to the SGI entry for Irix 6.x [in 1.14.4] | |
3454 | ||
3455 | 2/23 | |
3456 | ---- | |
3457 | machines.h | |
3458 | - changes for BSD/OS 2.0 (M_OS now set to `BSD_OS') [in 1.14.4] | |
3459 | ||
3460 | support/mksysdefs | |
3461 | - change to recognize BSD/OS 2.0 and set SYSDEF to BSDI2 [in 1.14.4] | |
3462 | ||
3463 | siglist.h | |
3464 | - don't declare sys_siglist on BSD/OS 2.0 [in 1.14.4] | |
3465 | ||
3466 | 2/24 | |
3467 | ---- | |
3468 | parse.y | |
3469 | - if reset_parser is called while the prompt command is being | |
3470 | executed because of a syntax error in $PROMPT_COMMAND, an | |
3471 | infinite loop results. set token_to_read back to 0 at the | |
3472 | end of execute_prompt_command to stop the looping [in 1.14.4] | |
3473 | ||
3474 | 2/25 | |
3475 | ---- | |
3476 | mailcheck.h | |
3477 | - new header file for mail-checking and related definitions | |
3478 | - declaration of DEFAULT_MAIL_PATH is now here | |
3479 | ||
3480 | mailcheck.c | |
3481 | - new function, make_default_mailpath, which constructs a default | |
3482 | $MAILPATH string from DEFAULT_MAIL_PATH [in 1.14.4] | |
3483 | - change remember_mail_dates to call make_default_mailpath | |
3484 | [in 1.14.4] | |
3485 | ||
3486 | externs.h | |
3487 | - moved function declarations for functions in mailcheck.c to | |
3488 | mailcheck.h | |
3489 | ||
3490 | variables.c | |
3491 | - change initialize_shell_variables to call make_default_mailpath | |
3492 | [in 1.14.4] | |
3493 | - removed some unneeded variables in initialize_shell_variables | |
3494 | ||
3495 | 2/26 | |
3496 | ---- | |
3497 | lib/readline/callback.c | |
3498 | - new file with readline callback function interface | |
3499 | ||
3500 | lib/readline/rlconf.h | |
3501 | - new READLINE_CALLBACKS define for the readline callback code to | |
3502 | be compiled in and available | |
3503 | ||
3504 | lib/readline/readline.c | |
3505 | - broke readline_internal into three functions: readline_internal_setup, | |
3506 | readline_internal_charloop, and readline_internal_teardown | |
3507 | - changes for READLINE_CALLBACKS | |
3508 | ||
3509 | lib/readline/readline.h | |
3510 | - extern declarations for the readline callback code | |
3511 | ||
3512 | cpp-Makefile | |
3513 | - added lib/readline/callback.c to the list of readline files | |
3514 | ||
3515 | lib/readline/input.c | |
3516 | - added a layer of indirection to allow the user to specify the | |
3517 | function that reads a character from rl_instream. The variable | |
3518 | name is rl_getc_function, set by default to rl_getc | |
3519 | ||
3520 | 2/27 | |
3521 | ---- | |
3522 | lib/readline/display.c | |
3523 | - added a variable rl_redisplay_function to allow an application- | |
3524 | specified redisplay function, for those apps that want to control | |
3525 | redisplay | |
3526 | ||
3527 | lib/readline/readline.c | |
3528 | - extern declarations for rl_getc_function and rl_redisplay_function | |
3529 | ||
3530 | lib/readline/{readline,display,isearch,search,parens}.c | |
3531 | - changed to call through rl_redisplay_function rather than | |
3532 | rl_redisplay directly | |
3533 | ||
3534 | parse.y | |
3535 | - try to avoid some work in reset_readline_prompt and prompt_again | |
3536 | if the prompt is the empty or null string [in 1.14.4] | |
3537 | ||
3538 | lib/readline/readline.c | |
3539 | - call rl_expand_prompt unconditionally [in 1.14.4] | |
3540 | ||
3541 | lib/readline/display.c | |
3542 | - short-circuit out of rl_expand_prompt if the prompt string is null | |
3543 | after clearing out the saved local prompt values. This allows | |
3544 | $PS2 to be set to "" [in 1.14.4] | |
3545 | ||
3546 | lib/readline/doc/rltech.texinfo | |
3547 | - documented the callback code and functions | |
3548 | - documented rl_getc_function and rl_redisplay_function | |
3549 | ||
3550 | lib/readline/{callback,readline,rltty,signals}.c | |
3551 | - added layer of indirction for terminal prep and deprep, with | |
3552 | rl_term_prep_function and rl_term_deprep_function. These are | |
3553 | set by default to rl_prep_terminal and rl_deprep_terminal, | |
3554 | respectively | |
3555 | ||
3556 | lib/readline/readline.h | |
3557 | - make rl_term_prep_function and rl_term_deprep_function available | |
3558 | to callers | |
3559 | ||
3560 | 3/1 | |
3561 | --- | |
3562 | lib/readline/complete.c | |
3563 | - broke the (long, complicated) rl_complete_internal code into a | |
3564 | number of separate functions: | |
3565 | ||
3566 | find_completion_word | |
3567 | gen_completion_matches | |
3568 | remove_duplicate_matches | |
3569 | display_matches | |
3570 | insert_text | |
3571 | insert_match | |
3572 | append_to_match | |
3573 | insert_all_matches | |
3574 | ||
3575 | - made some efficiency improvments to filename_completion_function | |
3576 | - the completion ignore function is now called no matter what type | |
3577 | of completion is being performed (as it should have been all along) | |
3578 | ||
3579 | lib/readline/rldefs.h | |
3580 | - use #defines for the possible values ORed into `found_quote' by | |
3581 | the completion code | |
3582 | ||
3583 | 3/2 | |
3584 | --- | |
3585 | make_cmd.c, general.c | |
3586 | - moved make_word_array from make_cmd.c to general.c, renamed to | |
3587 | word_list_to_argv, extended it to optionally not malloc all of | |
3588 | the strings and to reserve space at the start of the array | |
3589 | ||
3590 | execute_cmd.c | |
3591 | - changed to use word_list_to_argv, not mallocing space for the | |
3592 | strings | |
3593 | ||
3594 | builtins/common.c, builtins/common.h | |
3595 | - new function make_builtin_argv, which uses word_list_to_argv | |
3596 | and reserves 1 slot at the beginning for the command name | |
3597 | ||
3598 | builtins/exec.def | |
3599 | - changed to use word_list_to_argv | |
3600 | ||
3601 | builtins/{getopts,test}.def | |
3602 | - changed to use make_builtin_argv | |
3603 | ||
3604 | subst.c | |
3605 | - new function match_pattern_char, to see if the first char of | |
3606 | a string has a chance to match a given pattern (test against | |
3607 | the first char of the pattern); used by match_pattern in the | |
3608 | MATCH_ANY case | |
3609 | ||
3610 | 3/3 | |
3611 | --- | |
3612 | jobs.c | |
3613 | - renamed flush_child to sigchld to capture the functionality better | |
3614 | ||
3615 | array.c | |
3616 | - new function array_pat_subst, to do pattern substitution on each | |
3617 | element in an array | |
3618 | ||
3619 | array.h | |
3620 | - extern declaration for array_pat_subst | |
3621 | ||
3622 | subst.c | |
3623 | - new function pat_subst to do pattern matching and substitution on | |
3624 | a string | |
3625 | - new function parameter_brace_pat_subst to implement | |
3626 | ${v/[/]pat[/sub]}; calls pat_subst for simple vars, | |
3627 | pos_params_pat_subst to do substitution on the positional params, | |
3628 | and array_pat_subst for things like ${v[@]/p/r} | |
3629 | ||
3630 | subst.h | |
3631 | - extern declaration for pat_subst so array.c can find it | |
3632 | ||
3633 | 3/6 | |
3634 | --- | |
3635 | parse.y | |
3636 | - <>filename now dups filename to file descriptor 0 for both input | |
3637 | and output even when not in posix.2 mode | |
3638 | ||
3639 | bashline.c | |
3640 | - add the globbing characters to the list of characters that need | |
3641 | to be quoted by filename completion | |
3642 | ||
3643 | jobs.h | |
3644 | - new convenience macros: | |
3645 | RUNNING, STOPPED, DEADJOB - to test a job's state | |
3646 | IS_FOREGROUND, IS_NOTIFIED, IS_JOBCONTROL - flags | |
3647 | ||
3648 | jobs.c, builtins/{kill,fg_bg}.def | |
3649 | - changed to use new jobs.h macros | |
3650 | ||
3651 | 3/7 | |
3652 | --- | |
3653 | array.c, array.h | |
3654 | - new function dup_array_subrange(a, s, e) to make a new array | |
3655 | out of the elements of array A between S and E, inclusive | |
3656 | - add `quoted' parameters to array_subrange and array_pat_subst | |
3657 | to preserve proper quoting of elements when expanding things | |
3658 | like "${av[@]/xx/yy}" | |
3659 | - new function array_quote to quote the members of an array like | |
3660 | the functions in subst.c | |
3661 | ||
3662 | subst.c | |
3663 | - pass the quoted flag to array_subrange and array_pat_subst | |
3664 | - quote_string is no longer static | |
3665 | ||
3666 | subst.h | |
3667 | - extern declaration for quote_string | |
3668 | ||
3669 | builtins/hash.def | |
3670 | - added a -p pathname option to specify a pathname for the command | |
3671 | name to be hashed. With -p, no path search is performed. | |
3672 | ||
3673 | lib/readline/histexpand.c | |
3674 | - broke history_tokenize off into history_tokenize_internal and | |
3675 | added two arguments: a character index and a word index. If | |
3676 | the char index is >= 0, the word index will be modified to point | |
3677 | into the returned array of strings to the word surrounding that | |
3678 | particular character index | |
3679 | - new function history_find_word(line, ind) to return the word | |
3680 | containing the character at index IND in LINE | |
3681 | - new variable search_match, found by history_find_word, to hold the | |
3682 | word last matched by a !?string? search | |
3683 | - corrected a problem with the `%' modifier: it should insert the | |
3684 | word last matched, not the last search string | |
3685 | ||
3686 | 3/8 | |
3687 | --- | |
3688 | cpp-Makefile | |
3689 | - changed INSTALL_PROGRAM and INSTALL_DATA to use support/install.sh | |
3690 | - changed `install' target to not explicitly save the old version of | |
3691 | bash in `bash.old'; let install take care of it | |
3692 | ||
3693 | shell.c | |
3694 | - new static variable `running_under_emacs', set to 1 if the | |
3695 | variable `EMACS' is in the startup environment, and to 2 if | |
3696 | we're running under the `eterm' terminal emulator | |
3697 | - send an escape sequence to eterm if running_under_emacs is 2 | |
3698 | after executing any $PROMPT_COMMAND to tell it the current | |
3699 | directory | |
3700 | ||
3701 | 3/9 | |
3702 | --- | |
3703 | builtins/ulimit.def | |
3704 | - made getting -u work for systems that have a MAXUPRC define. | |
3705 | it still cannot be set without RLIMIT_NPROC | |
3706 | ||
3707 | shell.c | |
3708 | - include trap.h for sig definitions | |
3709 | ||
3710 | builtins/common.h, subst.h, general.h, externs.h | |
3711 | - more extern function declarations | |
3712 | ||
3713 | bashhist.c | |
3714 | - new function, bash_history_disable(), to turn off history and | |
3715 | history expansion | |
3716 | - bash_history_disable now sets history_expansion_inhibited | |
3717 | ||
3718 | bashline.h | |
3719 | - new file with extern declarations from bashline.c | |
3720 | ||
3721 | parse.y, bashhist.c, builtins/bind.def, subst.c, sig.c | |
3722 | - include bashline.h | |
3723 | ||
3724 | 3/10 | |
3725 | ---- | |
3726 | lib/glob/glob.h | |
3727 | - new file with extern declarations for local glob library | |
3728 | ||
3729 | shell.c | |
3730 | - include glob.h, mailcheck.h | |
3731 | ||
3732 | cpp-Makefile | |
3733 | - changes to dependencies due to mailcheck.h, bashline.h, glob.h | |
3734 | ||
3735 | 3/13 | |
3736 | ---- | |
3737 | execute_cmd.c | |
3738 | - new function execute_connection to execute commands of type | |
3739 | cm_connection | |
3740 | - new function execute_pipeline, to execute pipelines | |
3741 | ||
3742 | lib/readline/rltty.c | |
3743 | - add a `tty' argument to the set_winsize function/macro, the | |
3744 | non-shell version needs it | |
3745 | ||
3746 | 3/14 | |
3747 | ---- | |
3748 | parse.y | |
3749 | - added \a (bell) and \e (escape) prompt string escape sequences | |
3750 | ||
3751 | 3/16 | |
3752 | ---- | |
3753 | lib/readline/display.c | |
3754 | - fixed bug in update_line that caused stray characters to be left on | |
3755 | lines after the first if characters are deleted so that the first | |
3756 | line becomes exactly as long as the screen width [in 1.14.4] | |
3757 | ||
3758 | lib/readline/doc-support | |
3759 | - brought in the GNU getopt because texindex needs it | |
3760 | ||
3761 | documentation/Makefile | |
3762 | - adopted the BSD convention of a suffix of `.0' for formatted | |
3763 | manual pages | |
3764 | ||
3765 | 3/17 | |
3766 | ---- | |
3767 | support/inpath | |
3768 | - a script to find out if a particular command name appears in | |
3769 | a directory in $PATH [in 1.14.4] | |
3770 | ||
3771 | support/mksysdefs | |
3772 | - changed to use inpath to find `ranlib' [in 1.14.4] | |
3773 | ||
3774 | 3/18 | |
3775 | ---- | |
3776 | bashline.c | |
3777 | - include bashline.h | |
3778 | - removed the DYNAMIC_HISTORY_COMPLETION define; that code is now | |
3779 | included unconditionally | |
3780 | - renamed ETCHOSTS to DEFAULT_HOSTS_FILE; moved definition to | |
3781 | bashline.h | |
3782 | - moved definition of BRACE_COMPLETION to config.h | |
3783 | ||
3784 | config.h | |
3785 | - conditional definition of BRACE_COMPLETION is now here | |
3786 | ||
3787 | pathnames.h | |
3788 | - new file with defines that are absolute pathnames | |
3789 | ||
3790 | shell.h | |
3791 | - include pathnames.h | |
3792 | ||
3793 | mailcheck.h | |
3794 | - def of DEFAULT_MAIL_PATH now moved to pathnames.h | |
3795 | ||
3796 | shell.c | |
3797 | - def of SYS_PROFILE moved to pathnames.h | |
3798 | ||
3799 | alias.h | |
3800 | - removed a bunch of extra definitions | |
3801 | ||
3802 | lib/readline/{vi_mode.c,bind.c} | |
3803 | - removed superfluous STATIC_MALLOC code | |
3804 | ||
3805 | variables.c | |
3806 | - removed SHADOWED_ENV code | |
3807 | ||
3808 | 3/20 | |
3809 | ---- | |
3810 | machines.h | |
3811 | - don't define USG or USGr3 for linux machines [in 1.14.4] | |
3812 | - change REVERSED_SETVBUF_ARGS to SETVBUF_REVERSED for autoconf | |
3813 | compatibility | |
3814 | ||
3815 | shell.c | |
3816 | - change REVERSED_SETVBUF_ARGS to SETVBUF_REVERSED for autoconf | |
3817 | compatibility | |
3818 | ||
3819 | support/mksysdefs, maxpath.h | |
3820 | - change HAVE_SYS_PARAM to HAVE_SYS_PARAM_H for autoconf | |
3821 | compatibility | |
3822 | ||
3823 | support/mksysdefs, jobs.h | |
3824 | - use HAVE_SYS_WAIT_H | |
3825 | ||
3826 | machines.h, error.c | |
3827 | - change HAVE_VFPRINTF to HAVE_VPRINTF for autoconf compatibility | |
3828 | ||
3829 | test.c | |
3830 | - replace UID_T and GID_T with GETGROUPS_T, the size of the elements | |
3831 | of the array returned by getgroups | |
3832 | ||
3833 | general.c | |
3834 | - define HAVE_KILLPG if killpg() is present; compile in a replacement | |
3835 | killpg if not | |
3836 | ||
3837 | machines.h, jobs.c | |
3838 | - change BSD_GETPGRP to HAVE_BSD_PGRP | |
3839 | ||
3840 | sig.c | |
3841 | - don't call initialize_siglist if HAVE_SYS_SIGLIST is defined, no | |
3842 | longer use INITIALIZE_SIGLIST | |
3843 | ||
3844 | machines.h, lib/malloc/malloc.c | |
3845 | - change NO_SBRK_DECL to SBRK_DECLARED | |
3846 | ||
3847 | 3/22 | |
3848 | ---- | |
3849 | machines.h | |
3850 | - BSD/OS 2.0 does not need INT_GROUPS_ARRAY in SYSDEP_CFLAGS | |
3851 | ||
3852 | lib/readline/rldefs.h | |
3853 | - don't check `Linux'; just include <termcap.h> if HAVE_TERMCAP_H | |
3854 | is defined | |
3855 | ||
3856 | builtins/command.def | |
3857 | - changed get_standard_path to use HAVE_CONFSTR | |
3858 | ||
3859 | execute_cmd.c | |
3860 | - execute_simple_command no longer uses alloca | |
3861 | - don't check RISC6000 anymore when deciding whether to use | |
3862 | #pragma alloca | |
3863 | ||
3864 | execute_cmd.c, shell.c | |
3865 | - check for ultrix instead of Ultrix when calling alloca(0) | |
3866 | ||
3867 | jobs.h | |
3868 | - check HAVE_UNISTD_H to see whether to declare fork, getpid, | |
3869 | and getpgrp | |
3870 | ||
3871 | builtins/common.c | |
3872 | - include <signal.h> for NSIG | |
3873 | ||
3874 | sig.h | |
3875 | - don't define SIGABRT as SIGIOT unless SIGIOT is defined | |
3876 | ||
3877 | jobs.c | |
3878 | - check for ultrix instead of Ultrix | |
3879 | ||
3880 | 3/23 | |
3881 | ---- | |
3882 | general.c, general.h | |
3883 | - new function check_dev_tty, which makes sure we can open | |
3884 | /dev/tty | |
3885 | ||
3886 | shell.c | |
3887 | - call check_dev_tty instead of having the code inline | |
3888 | ||
3889 | posixstat.h | |
3890 | - removed references to isc386 | |
3891 | ||
3892 | general.h | |
3893 | - code to define one of TERMIOS_TTY_DRIVER, TERMIO_TTY_DRIVER, | |
3894 | or NEW_TTY_DRIVER | |
3895 | ||
3896 | jobs.c, nojobs.c | |
3897 | - use the general.h code to define the tty driver types | |
3898 | ||
3899 | 3/24 | |
3900 | ---- | |
3901 | builtins/declare.def | |
3902 | - new -p option to display variables and their values and attributes | |
3903 | `declare -p xxx' displays attribs and value of var `xxx' | |
3904 | ||
3905 | builtins/setattr.def | |
3906 | - new function to display the attributes and value of a particular | |
3907 | variable; used by set_or_show_attributes | |
3908 | - new function to look up a variable by name and show that name's | |
3909 | attributes and value | |
3910 | ||
3911 | builtins/common.c | |
3912 | - declarations for new functions in setattr.def | |
3913 | ||
3914 | variables.c | |
3915 | - don't set a default value for MAILPATH in initialize_shell_variables; | |
3916 | let remember_mail_dates take care of it [in 1.14.4] | |
3917 | ||
3918 | mailcheck.c | |
3919 | - fixed an off-by-one bug in make_default_mailpath [in 1.14.4] | |
3920 | ||
3921 | 3/28 | |
3922 | ---- | |
3923 | [changes for autoconf-generated config files] | |
3924 | ||
3925 | lib/malloc/malloc.c | |
3926 | - use HAVE_GETPAGESIZE, HAVE_BSD_SIGNALS, HAVE_POSIX_SIGNALS | |
3927 | ||
3928 | trap.c | |
3929 | - remove tests for USG and USGr4 | |
3930 | - test on HAVE_POSIX_SIGNALS rather than _POSIX_VERSION | |
3931 | - use MUST_REINSTALL_SIGHANDLERS define to decide whether trap_handler | |
3932 | should call signal again | |
3933 | ||
3934 | getcwd.c | |
3935 | - redid the directory includes for autoconf compatibility | |
3936 | - use HAVE_LSTAT instead of testing for S_ISLNK | |
3937 | - use STRUCT_DIRENT_HAS_D_INO | |
3938 | - include memalloc.h for alloca define | |
3939 | ||
3940 | general.h | |
3941 | - cleaned up strchr, strrchr definitions | |
3942 | - removed tests against USG | |
3943 | - use HAVE_MEMMOVE instead of MEMMOVE_MISSING | |
3944 | ||
3945 | jobs.c | |
3946 | - use HAVE_WAIT3, MUST_REINSTALL_SIGHANDLERS, GETPGRP_VOID | |
3947 | ||
3948 | mailcheck.h | |
3949 | - removed definition of DEFAULT_MAIL_DIRECTORY; now set by | |
3950 | autoconf in config.h | |
3951 | ||
3952 | shell.c | |
3953 | - remove checks on USG, just check for HAVE_GETPW_DECLS | |
3954 | - use C_ALLOCA define | |
3955 | - redid the isnetconn() code using HAVE_SYS_SOCKET_H, | |
3956 | HAVE_GETPEERNAME, SVR4 and SVR4_2 | |
3957 | ||
3958 | general.c | |
3959 | - use HAVE_KILLPG, HAVE_RESTARTABLE_SYSCALLS, HAVE_UNAME, | |
3960 | ULIMIT_MAXFDS, HAVE_TIMEVAL, HAVE_TIMES | |
3961 | ||
3962 | lib/readline/rldefs.h | |
3963 | - redid the tty driver definitions using HAVE_TERMIOS_H, etc. | |
3964 | - don't define anything having to do with signal type | |
3965 | ||
3966 | lib/glob/glob.c | |
3967 | - redid the DIRENT defines and includes | |
3968 | - redid other includes to remove dependencies on USG and system | |
3969 | type (e.g., NeXT) | |
3970 | ||
3971 | builtins/times.def | |
3972 | - changed to use HAVE_GETRUSAGE, HAVE_TIMEVAL, HAVE_TIMES, and | |
3973 | the autoconf way to include <sys/time.h> and <time.h> | |
3974 | ||
3975 | builtins/ulimit.def | |
3976 | - changed to use HAVE_GETRLIMIT | |
3977 | - removed test of USG being defined | |
3978 | ||
3979 | siglist.h | |
3980 | - changed to use SYS_SIGLIST_DECLARED, HAVE_UNDER_SYS_SIGLIST, and | |
3981 | HAVE_STRSIGNAL | |
3982 | ||
3983 | print_cmd.c | |
3984 | - use PRINTF_DECLARED | |
3985 | ||
3986 | builtins/command.def | |
3987 | - use HAVE_CONFSTR along with _CS_PATH to get the standard path | |
3988 | ||
3989 | execute_cmd.c | |
3990 | - only compile in execute_shell_script if HAVE_HASH_BANG_EXEC is not | |
3991 | defined | |
3992 | ||
3993 | nojobs.c | |
3994 | - use HAVE_SIGINTERRUPT, HAVE_KILLPG, HAVE_POSIX_SIGNALS, | |
3995 | MUST_REINSTALL_SIGHANDLERS, HAVE_WAITPID, *_TTY_DRIVER defines | |
3996 | ||
3997 | test.c | |
3998 | - set up a new `getmaxgroups' define, moving the code out of inline | |
3999 | - eliminate use of GETGROUPS_T | |
4000 | ||
4001 | variables.c | |
4002 | - use CAN_REDEFINE_GETENV | |
4003 | ||
4004 | sig.c, sig.h | |
4005 | - use HAVE_POSIX_SIGNALS, MUST_REINSTALL_SIGHANDLERS | |
4006 | ||
4007 | pathnames.h | |
4008 | - removed the default mail directory defines; now set by autoconf | |
4009 | ||
4010 | oslib.c | |
4011 | - new file, functions from general.c that are unix-version variable | |
4012 | ||
4013 | general.h | |
4014 | - slightly changed function declarations for use by oslib.c | |
4015 | ||
4016 | support/bashbug.sh | |
4017 | - changed @xxx@ to !xxx! for sed substitutions to avoid conflicts | |
4018 | with autoconf substitutions in the Makefile | |
4019 | - added MACHTYPE variable | |
4020 | ||
4021 | mailcheck.c | |
4022 | - changed DEFAULT_MAIL_PATH to DEFAULT_MAIL_DIRECTORY, since that | |
4023 | more clearly defines its function | |
4024 | ||
4025 | lib/readline/rltty.h | |
4026 | - new file, to include the correct tty driver #include file | |
4027 | ||
4028 | lib/readline/rltty.c | |
4029 | - include rltty.h | |
4030 | ||
4031 | lib/malloc/malloc.c | |
4032 | - make systems with Posix signals block all signals while malloc | |
4033 | is executing | |
4034 | ||
4035 | 3/29 | |
4036 | ---- | |
4037 | input.c | |
4038 | - use off_t as the type of a seek offset, rather that int or long | |
4039 | ||
4040 | variables.c, oslib.c | |
4041 | - moved `getenv' from variables.c to oslib.c | |
4042 | ||
4043 | 3/31 | |
4044 | ---- | |
4045 | sig.c, sig.h | |
4046 | - new function, jump_to_top_level, which just calls longjmp with | |
4047 | top_level as an argument -- here to isolate calls to longjmp | |
4048 | ||
4049 | subst.c | |
4050 | - replaced calls to longjmp with jump_to_top_level | |
4051 | ||
4052 | bashjmp.h | |
4053 | - new file with setjmp/longjmp defines and declarations | |
4054 | ||
4055 | shell.h, nojobs.c | |
4056 | - include bashjmp.h in place of setjmp.h | |
4057 | ||
4058 | shell.c, sig.c, execute_cmd.c, unwind_prot.h, expr.c, | |
4059 | builtins/{return,source}.def | |
4060 | - change to use new defs in bashjmp.h | |
4061 | ||
4062 | subst.c | |
4063 | - make sure PAT and REP in pattern substitution are run through | |
4064 | expand_string_unsplit | |
4065 | ||
4066 | builtins/set.def | |
4067 | - don't try to blindly dereference the value returned by | |
4068 | find_flags in set_shellopts | |
4069 | ||
4070 | 4/2 | |
4071 | --- | |
4072 | aclocal.m4, config.h.in, config.h.top, config.h.bot, configure.in, | |
4073 | support/install.sh, support/config.guess, support/config.sub | |
4074 | - new files for (now official) autoconf-based configuration | |
4075 | ||
4076 | Makefile.in, builtins/Makefile.in, | |
4077 | lib/{doc-support,malloc,glob,termcap,tilde,readline}/Makefile.in | |
4078 | - new Makefiles for autoconf | |
4079 | ||
4080 | [additionally, all source files now include config.h] | |
4081 | ||
4082 | 4/3 | |
4083 | --- | |
4084 | array.c, array.h | |
4085 | - index_t --> arrayind_t, because some systems define index_t in | |
4086 | <sys/types.h> | |
4087 | ||
4088 | 4/4 | |
4089 | --- | |
4090 | aclocal.m4 | |
4091 | - fix test for broken dup2 | |
4092 | ||
4093 | lib/*/Makefile.in | |
4094 | - make all object files depend on $(BUILD_DIR)/config.h | |
4095 | ||
4096 | 4/5 | |
4097 | --- | |
4098 | array.c | |
4099 | - fixed problems in empty_array: need to reset max_index | |
4100 | and max_size, and remove the links in the element chain | |
4101 | after freeing them | |
4102 | ||
4103 | jobs.c | |
4104 | - new functions to save an array of status values for each | |
4105 | foreground job that exits (degenerate case is to have a | |
4106 | single-process job exit and have a 1-element array) | |
4107 | - new function to set a shell array variable `PIPESTATUS' | |
4108 | which holds the status values from each member of the | |
4109 | last-executed pipeline that spawned children | |
4110 | ||
4111 | documentation/bash.1 | |
4112 | - documented $PIPESTATUS | |
4113 | ||
4114 | 4/6 | |
4115 | --- | |
4116 | configure.in | |
4117 | - added new --with-afs argument to #define AFS for execute_cmd.c | |
4118 | ||
4119 | 4/10 | |
4120 | ---- | |
4121 | builtins/ulimit.def | |
4122 | - use sysconf(_SC_CHILD_MAX) to find the maximum number of child | |
4123 | proceeses per user if HAVE_SYSCONF and _SC_CHILD_MAX are both | |
4124 | defined and RLIMIT_NPROC is not | |
4125 | ||
4126 | 4/12 | |
4127 | ---- | |
4128 | lib/readline/undo.c | |
4129 | - new variable, local to library, to keep track of the number of | |
4130 | `open' undo groups (UNDO_BEGIN without corresponding UNDO_END) | |
4131 | - new function _rl_fix_last_undo_of_type to modify start and end | |
4132 | bounds of last undo record of a specified type | |
4133 | ||
4134 | lib/readline/vi_mode.c | |
4135 | - _rl_vi_done_inserting now calls rl_end_undo_group if the count | |
4136 | of unclosed groups is > 0 | |
4137 | - fixed rl_vi_change_to to save an undo record when redoing and | |
4138 | to fix the buffer corruption when doing `u' undo after a `.' | |
4139 | redo of `C' | |
4140 | ||
4141 | 4/13 | |
4142 | ---- | |
4143 | unwind_prot.h | |
4144 | - changed to use a union { char *s; int i; } when unwind-protecting | |
4145 | integers to force correct alignment on machines where ints and | |
4146 | pointers differ in size | |
4147 | ||
4148 | lib/readline/readline.c | |
4149 | - new variable Keymap rl_executing_keymap, which is set to the | |
4150 | keymap the last function was invoked out of | |
4151 | ||
4152 | lib/readline/bind.c | |
4153 | - new variable Keymap rl_binding_keymap, which is set to the last | |
4154 | keymap a function and key sequence were bound in | |
4155 | ||
4156 | 4/17 | |
4157 | ---- | |
4158 | general.c | |
4159 | - removed xmalloc, xrealloc, xfree to xmalloc.c | |
4160 | ||
4161 | lib/malloc/Makefile.in | |
4162 | - MALLOC and ALLOCA are both set by autoconf | |
4163 | - need to provide some empty stub file to make up the library | |
4164 | in case neither malloc.c and alloca.c are compiled into the | |
4165 | shell | |
4166 | ||
4167 | lib/malloc/gmalloc.c | |
4168 | - new file, GNU libc malloc code | |
4169 | ||
4170 | Makefile.in | |
4171 | - new source file, xmalloc.c, new object file, xmalloc.o | |
4172 | ||
4173 | general.h | |
4174 | - changed type of size argument to xmalloc, xrealloc to `size_t' | |
4175 | ||
4176 | configure.in | |
4177 | - changes for new argument `--with-glibc-malloc' that includes | |
4178 | gmalloc.o in libmalloc.a | |
4179 | ||
4180 | 4/18 | |
4181 | ---- | |
4182 | xmalloc.c | |
4183 | - if malloc or realloc return null, report in the error message | |
4184 | how many bytes have been allocated | |
4185 | ||
4186 | lib/readline/display.c | |
4187 | - changed redisplay code to use an array of positions in the visible | |
4188 | and invisible lines at which to break lines instead of simply | |
4189 | calculating based on the screenwidth and number of invisible | |
4190 | characters. In the future, this will allow newlines embedded in | |
4191 | the lines to display to be handled better | |
4192 | ||
4193 | [Bash-1.14.4 released to net] | |
4194 | ||
4195 | 4/19 | |
4196 | ---- | |
4197 | lib/readline/signals.c | |
4198 | - changed last call to signal() to call rl_set_sighandler() | |
4199 | ||
4200 | 4/20 | |
4201 | ---- | |
4202 | lib/readline/display.c | |
4203 | - changed some ascii-specific code to use CTRL_CHAR and UNCTRL | |
4204 | - finished up the changes that keep an array of line breaks | |
4205 | ||
4206 | shell.h | |
4207 | - moved #define constants for parameter pattern substitution here | |
4208 | from subst.c | |
4209 | ||
4210 | subst.c | |
4211 | - changed the pattern substitution functions to take a `flags' | |
4212 | parameter, which subsumes the match type, global replacement | |
4213 | flag, and quoted variables | |
4214 | - changed the pattern substitution functions to handle the `#' | |
4215 | and `%' match qualifiers, which anchor the match at the | |
4216 | beginning and end of the string, respectively | |
4217 | ||
4218 | shell.c | |
4219 | - moved the code that turns off privileged mode into a function | |
4220 | named `disable_priv_mode' | |
4221 | - if the shell is running setuid or setgid and `-p' is not | |
4222 | supplied, turn off privileged mode and reset the effective | |
4223 | uid/gid | |
4224 | ||
4225 | 4/21 | |
4226 | ---- | |
4227 | subst.c | |
4228 | - added a `quoted' paramter to parameter_brace_remove_pattern; | |
4229 | Posix.2 says that the pattern is parsed differently if the | |
4230 | entire expression is double-quoted | |
4231 | - `getpattern' now takes a second argument, `quoted' | |
4232 | - fixed `getpattern' to correctly handles a pattern spec when | |
4233 | the whole expression is double-quoted. Posix.2 says that | |
4234 | quote characters inside the pattern spec don't quote any | |
4235 | special pattern chars if the whole thing is double-quoted. | |
4236 | For example, the `*' in "${foo#'*'}" is not quoted, and the | |
4237 | single quotes must appear literally. | |
4238 | ||
4239 | Makefile.in | |
4240 | - add `documentation' as a dependency of `.made' | |
4241 | ||
4242 | 4/24 | |
4243 | ---- | |
4244 | Makefile.in | |
4245 | - added `installdirs' target that makes bindir, infodir, mandir, | |
4246 | and man3dir [in 1.14.5 cpp-Makefile] | |
4247 | ||
4248 | 4/25 | |
4249 | ---- | |
4250 | builtins/fc.def | |
4251 | - fixed problem with `fc -l' that occurred when fewer than 16 lines | |
4252 | were in the history list [in 1.14.5] | |
4253 | ||
4254 | 5/1 | |
4255 | --- | |
4256 | Makefile.in, {builtins,documentation}/Makefile.in, lib/*/Makefile.in | |
4257 | - fixed up the various `clean' targets to agree with Gnu coding | |
4258 | standards | |
4259 | ||
4260 | 5/2 | |
4261 | --- | |
4262 | lib/readline/complete.c | |
4263 | - made insert_all_matches correctly quote each of the filenames | |
4264 | inserted into the line, if necessary | |
4265 | ||
4266 | config.h.top | |
4267 | - surround definitions of DEFAULT_PATH_VALUE and STANDARD_UTILS_PATH | |
4268 | with #ifndef/#endif to allow them to be overridden from the command | |
4269 | line | |
4270 | ||
4271 | builtins/set.def | |
4272 | - changed set -o allenv to set -o keyword for ksh88 compatibility | |
4273 | ||
4274 | documentation/{bash.1,features.texi} | |
4275 | - changed set -o allenv to set -o keyword | |
4276 | ||
4277 | builtins/setattr.def | |
4278 | - added a `nodefs' attribute to set_or_show_attributes, | |
4279 | show_var_attributes, and show_name_attributes to inhibit printing | |
4280 | of definition as well as name | |
4281 | ||
4282 | builtins/declare.def | |
4283 | - changed calls to set_or_show_attributes, and show_var_attributes | |
4284 | accordingly | |
4285 | ||
4286 | 5/3 | |
4287 | --- | |
4288 | Makefile.in | |
4289 | - LIBPATH -> LIBSUBDIR | |
4290 | ||
4291 | 5/4 | |
4292 | --- | |
4293 | lib/readline/bind.c | |
4294 | - renamed readline variable meta-flag to be input-meta | |
4295 | ||
4296 | documentation/bash.1, lib/readline/doc/rluser.texinfo | |
4297 | - changed meta-flag to input-meta | |
4298 | ||
4299 | documentation/Makefile.in | |
4300 | - use groff -Tascii to convert .1 -> .0 | |
4301 | ||
4302 | subst.c | |
4303 | - new function, strip_trailing_ifs_whitespace, does the obvious | |
4304 | ||
4305 | builtins/read.def | |
4306 | - call strip_trailing_ifs_whitespace before assigning last | |
4307 | variable to remainder of input string [in 1.14.5] | |
4308 | ||
4309 | 5/5 | |
4310 | --- | |
4311 | builtins/hashcom.h | |
4312 | - changed check_dot member of the PATH_DATA struct to flags, and | |
4313 | added a HASH_CHKDOT define to replace the check_dot semantics | |
4314 | - add HASH_RELPATH define for flags value | |
4315 | ||
4316 | builtins/hash.def, builtins/common.c | |
4317 | - instead of xxx->check_dot, use (xxx->flags & HASH_CHKDOT) | |
4318 | ||
4319 | builtins/hash.def | |
4320 | - if the full pathname to which a command is being hashed does | |
4321 | not begin with a `/', set the HASH_RELPATH flag for it | |
4322 | ||
4323 | builtins/common.c | |
4324 | - if a hashed filename as HASH_RELPATH set, check ./filename, | |
4325 | returning null if that filename is not executable | |
4326 | ||
4327 | execute_cmd.c, general.c, execute_cmd.h, general.h | |
4328 | - moved same_file and check_binary_file from execute_cmd.c to | |
4329 | general.c | |
4330 | ||
4331 | hashlib.c, Makefile.in | |
4332 | - renamed hash.c to hashlib.c | |
4333 | ||
4334 | hashlib.h, Makefile.in, builtins/Makefile.in, alias.h, variables.h, | |
4335 | execute_cmd.c, hashlib.c, builtins/hashcom.h | |
4336 | - renamed hash.h to hashlib.h | |
4337 | ||
4338 | variables.c, alias.c | |
4339 | - removed inclusion of `hash.h'; header files already include | |
4340 | correct file | |
4341 | ||
4342 | Makefile.in | |
4343 | - new rule to remake all the Makefiles (`make Makefiles') | |
4344 | - more changes to adhere to GNU coding standards for the various | |
4345 | flavors of `clean' targets | |
4346 | ||
4347 | 5/8 | |
4348 | --- | |
4349 | documentation/Makefile.in | |
4350 | - use `texi2dvi' to make dvi files rather than tex and texindex | |
4351 | [in 1.14.5] | |
4352 | - don't install `bash_builtins.1' [in 1.14.5] | |
4353 | ||
4354 | Makefile.in | |
4355 | - removed instances of doc-support/texindex | |
4356 | ||
4357 | 5/9 | |
4358 | --- | |
4359 | make_cmd.c | |
4360 | - new function make_bare_word, to make a WORD_DESC from a string but | |
4361 | not to set any of its flags | |
4362 | - broke make_word into make_bare_word and make_word_flags | |
4363 | - fixed a bug in make_word_flags to make backslash-quoting a quoting | |
4364 | character work right to not set the W_QUOTED flags | |
4365 | ||
4366 | subst.c, array.c, execute_cmd.c | |
4367 | - call make_bare_word instead of make_word in situations where we | |
4368 | don't want the flags set inadvertently | |
4369 | ||
4370 | 5/11 | |
4371 | ---- | |
4372 | subst.c | |
4373 | - removed special handling of $POSIX_PEDANTIC | |
4374 | ||
4375 | 5/12 | |
4376 | ---- | |
4377 | shell.c | |
4378 | - broke the code that fetches the uids and gids into a new | |
4379 | function, uidget() | |
4380 | ||
4381 | subst.c | |
4382 | - EUID and UID are no longer handled specially, since they're | |
4383 | readonly | |
4384 | - removed sv_uids function | |
4385 | - merge sv_histfilesize into sv_histsize | |
4386 | ||
4387 | variables.c | |
4388 | - instead of calling sv_uids from initialize_shell_variables, | |
4389 | call uidset() instead | |
4390 | - sv_uids -> uidset with mods to make it faster and avoid an | |
4391 | extra call to free, malloc, and itos | |
4392 | ||
4393 | bashhist.c | |
4394 | - call sv_histsize instead of sv_histfilesize | |
4395 | ||
4396 | 5/13 | |
4397 | ---- | |
4398 | pathexp.c | |
4399 | - moved setup_ignore_patterns here from bashline.c, so GLOBIGNORE | |
4400 | works even when readline is compiled out of the shell | |
4401 | - changed the ignore data structure to a `struct ignorevar', | |
4402 | defined in pathexp.h | |
4403 | - added functions to implement GLOBIGNORE | |
4404 | ||
4405 | bashline.c | |
4406 | - setup_ignore_patterns now in pathexp.c | |
4407 | - renamed _ignore_names to ignore_completion_names | |
4408 | ||
4409 | subst.c | |
4410 | - new function sv_globignore to be called when GLOBIGNORE changes | |
4411 | value | |
4412 | ||
4413 | documentation/{bash.1,features.texi} | |
4414 | - documented GLOBIGNORE | |
4415 | ||
4416 | 5/15 | |
4417 | ---- | |
4418 | documentation/texinfo.tex | |
4419 | - upgraded to version 2.145 from autoconf-2.3 distribution | |
4420 | ||
4421 | 5/16 | |
4422 | ---- | |
4423 | lib/readline/display.c | |
4424 | - delicate surgery on rl_redisplay, update_line, and _rl_update_final | |
4425 | to convert to using the line breaks array instead of assuming that | |
4426 | lines wrap because they're too long and using absolute buffer | |
4427 | positioning calculated from the screen width. Now the `lithist' | |
4428 | shopt option works right | |
4429 | ||
4430 | lib/readline/complete.c | |
4431 | - make sure insert_match doesn't double an opening quote character | |
4432 | after make_quoted_replacement adds an opening quote [in 1.14.5] | |
4433 | - make sure append_match doesn't double a closing quote character | |
4434 | [in 1.14.5] | |
4435 | ||
4436 | quit.h | |
4437 | - new macros: SETINTERRUPT, CLRINTERRUPT, ADDINTERRUPT, DELINTERRUPT | |
4438 | to manipulate the value of interrupt_state | |
4439 | ||
4440 | trap.c, sig.c, jobs.c | |
4441 | - changes to use the new macros from quit.h | |
4442 | ||
4443 | jobs.c | |
4444 | - make an a job that exits due to SIGINT make the shell act as if | |
4445 | it received the interrupt itself, but only if SIGINT is not | |
4446 | trapped [in 1.14.5] | |
4447 | ||
4448 | 5/18 | |
4449 | ---- | |
4450 | builtins/common.c | |
4451 | - fix up find_hashed_filename and the HASH_RELPATH code. still need | |
4452 | to use `shopt -s checkhash' to check the hashed pathnames. could | |
4453 | fix this up more to make that unnecessary in the HASH_RELPATH case | |
4454 | ||
4455 | subst.c | |
4456 | - new function get_array_value that does array subscripting for | |
4457 | things like aa[1], for use by other parts of the shell like the | |
4458 | expression evaluator | |
4459 | ||
4460 | expr.c | |
4461 | - changes to make things like $(( aa[1] + aa[2])) work without | |
4462 | using ${aa[1]} | |
4463 | ||
4464 | bashhist.c | |
4465 | - converted the HISTIGNORE code to use the `struct ignorevar' | |
4466 | framework, with a callback function histignore_item_func to | |
4467 | set the HIGN_EXPAND flag if needed | |
4468 | ||
4469 | pathexp.c | |
4470 | - made the `globignore' variable static | |
4471 | - redid the code that removes ignored names from the `names' array | |
4472 | in ignore_globbed_names to make it more efficient | |
4473 | ||
4474 | bashline.c | |
4475 | - made the `fignore' variable static | |
4476 | ||
4477 | 5/20 | |
4478 | ---- | |
4479 | Makefile.in | |
4480 | - made the `distclean' target remove the Makefiles in subdirectories | |
4481 | created by autoconf | |
4482 | ||
4483 | 5/22 | |
4484 | ---- | |
4485 | builtins/command.def | |
4486 | - don't allow `command -p' if the shell is restricted | |
4487 | ||
4488 | documentation/bash.1 | |
4489 | - documented the restriction on command -p for rbash | |
4490 | ||
4491 | 5/23 | |
4492 | ---- | |
4493 | aclocal.m4 | |
4494 | - add a new macro BASH_CHECK_TYPE, based on AC_CHECK_TYPE, that | |
4495 | allows the caller to specify the header files to be included | |
4496 | in the test program and provides for a default value to be | |
4497 | defined if the type is found in the system files | |
4498 | ||
4499 | configure.in | |
4500 | - check for getrusage and gettimeofday functions/syscalls | |
4501 | - use BASH_CHECK_TYPE to check for clock_t in sys/types.h and | |
4502 | sys/times.h | |
4503 | - use BASH_CHECK_TYPE to check for sigset_t instead of a special | |
4504 | BASH_TYPE_SIGSET_T | |
4505 | - use BASH_CHECK_TYPE to check for quad_t instead of BASH_QUAD_T | |
4506 | - new argument --enable-command-timing to compile in the `time' | |
4507 | reserved word and command timing | |
4508 | ||
4509 | general.c | |
4510 | - print_time_in_hz takes a `clock_t', not a `time_t' | |
4511 | ||
4512 | execute_cmd.c | |
4513 | - support for timing pipelines with a new function time_command | |
4514 | - execute_command_internal calls time_command if it is passed a | |
4515 | command with the CMD_TIME_PIPELINE bit set in command->flags | |
4516 | - new functions difftimeval and addtimeval to do arithmetic on | |
4517 | timeval structs with overflow | |
4518 | ||
4519 | parse.y | |
4520 | - new production: pipeline_command, used by list1 and simple_list1 | |
4521 | - pipeline_command includes rules to handle `!' and time | |
4522 | - code to recognize `time' as a reserved word | |
4523 | ||
4524 | print_cmd.c | |
4525 | - new code to print `time ' before a command if the CMD_TIME_PIPELINE | |
4526 | flag bit is turned on | |
4527 | ||
4528 | builtins/test.def | |
4529 | - added description of string1 < string2 and string1 > string2 to | |
4530 | the long doc | |
4531 | ||
4532 | test.c | |
4533 | - added `<' and `>' string binary operators | |
4534 | ||
4535 | documentation/bash.1 | |
4536 | - documented the `time' reserved word and command timing | |
4537 | - documented the new test `<' and `>' binary operators | |
4538 | ||
4539 | documentation/features.texi | |
4540 | - documented the `time' reserved word and command timing | |
4541 | - added more to the section detailing the differences between bash | |
4542 | and sh | |
4543 | - added descriptions of LINENO and ENV to the Ksh variables section | |
4544 | - added description of echo to bash builtins section | |
4545 | - added PPID, BASH, SHLVL to the Bash variables section | |
4546 | ||
4547 | subst.c | |
4548 | - added a `quoted' parameter to extract_dollar_brace_string; changed | |
4549 | all calls to it | |
4550 | ||
4551 | 5/24 | |
4552 | ---- | |
4553 | builtins/let.def | |
4554 | - wrote code for an `exp' builtin that treats all of its arguments | |
4555 | as an expression, concatenates them like `eval', and runs the | |
4556 | expression evaluator | |
4557 | ||
4558 | expr.c | |
4559 | - added code to do the Posix.2 conditional operator: expr?expr:expr | |
4560 | - added a `noeval' flag to suppress evaluation. currently it only | |
4561 | suppresses assignment | |
4562 | - added code to the && and || functions so that evaluation is | |
4563 | suppressed in the part of the statement that is not supposed to | |
4564 | be executed (a && b: set noeval if a is false; a || b; set | |
4565 | noeval if a is true) | |
4566 | ||
4567 | 5/25 | |
4568 | ---- | |
4569 | documentation/{bash.1,features.texi} | |
4570 | - documented new `expr?expr:expr' conditional expression syntax | |
4571 | now arithmetic evaluation is Posix.2-conformant | |
4572 | ||
4573 | lib/readline/readline.c | |
4574 | - added several more locale names to the list of legal $LANG | |
4575 | values | |
4576 | ||
4577 | subst.c | |
4578 | - fixed a bug in parameter_brace_patsub: when replacing a string | |
4579 | with nothing, rep was set to "", and the code attempted to | |
4580 | free "", which the GNU malloc upchucked on | |
4581 | ||
4582 | bashhist.c | |
4583 | - just add a line to the history if command_oriented_history is | |
4584 | set to 1 and the current line in the command is > 1; don't | |
4585 | even bother checking history_ignore | |
4586 | ||
4587 | parse.y | |
4588 | - new variable `two_tokens_ago' to remember the token read before | |
4589 | `token_before_that' | |
4590 | - fix to history_delimiting_chars to make sure that no semicolon | |
4591 | is added after `()' (assume its a function definition), but that | |
4592 | a semicolon is added after other `)' (assume its a parenthesized | |
4593 | command) | |
4594 | ||
4595 | 5/31 | |
4596 | ---- | |
4597 | tests/run-all | |
4598 | - put `.' first in $PATH and don't export ENV | |
4599 | - set THIS_SH to ../bash if it's unset | |
4600 | ||
4601 | lib/readline/complete.c | |
4602 | - only try to find a word break character in rl_complete_internal | |
4603 | if we hit the end of the input string and found_quote == 0 | |
4604 | (the opening quote could have been the last character in the | |
4605 | string) | |
4606 | ||
4607 | 6/2 | |
4608 | --- | |
4609 | subst.c | |
4610 | - changed make_quoted_char to return CTLNUL\0 if passed a \0 | |
4611 | (this is what quote_string does, too) [in 1.14.5] | |
4612 | - changed list_string to use make_quoted_char when adding a quoted | |
4613 | null argument due to a null field when ifs != ' \t\n' | |
4614 | - added an `expandpat' argument to getpattern, which tells it to | |
4615 | call string_extract_double_quoted if the pattern expression is | |
4616 | double-quoted, and changed all calls to initially pass `1' as | |
4617 | its value | |
4618 | ||
4619 | jobs.c | |
4620 | - changed start_job so that an attempt to start a job marked as | |
4621 | JDEAD elicits an error message [in 1.14.5] | |
4622 | ||
4623 | Makefile.in | |
4624 | - fixed `distclean' target so that it removes Makefiles in subdirs | |
4625 | *after* descending into them to do submakes (!) | |
4626 | - fixed `realclean' target to remove everything that distclean does | |
4627 | ||
4628 | 6/5 | |
4629 | --- | |
4630 | builtins/declare.def | |
4631 | - fixed a typo that made `declare +r var' turn off read-only status | |
4632 | for a variable [in 1.14.5] | |
4633 | - added -p option to short doc and long doc | |
4634 | - added code to allow `declare -f -options name' to set and unset | |
4635 | attributes for the named functions. Only when no other options | |
4636 | are supplied will the named and value of the function be displayed | |
4637 | [in 1.14.5] | |
4638 | ||
4639 | variables.h | |
4640 | - new SETVARATTR macro to set or unset attributes for a specific | |
4641 | SHELL_VAR * | |
4642 | ||
4643 | builtins/setattr.def | |
4644 | - use SETVARATTR | |
4645 | ||
4646 | 6/7 | |
4647 | --- | |
4648 | execute_cmd.c | |
4649 | - moved the retrieval of $PS3 inside the loop in execute_select_command | |
4650 | so that PS3 can be modified in the select command's body | |
4651 | [in 1.14.5] | |
4652 | ||
4653 | execute_cmd.c | |
4654 | - changed execute_builtin and execute_function to not set | |
4655 | builtin_env and function_env, respectively, to NULL if there is | |
4656 | no temporary env. This makes the temp env persist across calls | |
4657 | to functions from other functions [in 1.14.5] | |
4658 | ||
4659 | configure.in | |
4660 | - Linux needs LOCAL_LDFLAGS set to -rdynamic | |
4661 | ||
4662 | 6/8 | |
4663 | --- | |
4664 | general.c | |
4665 | - canonicalize_pathname should not attempt to interpret backslash | |
4666 | quoting `/', since Unix doesn't really allow it [in 1.14.5] | |
4667 | ||
4668 | bashline.c | |
4669 | - added `\', `!', and `)' to the list of characters which | |
4670 | cause filenames to be quoted | |
4671 | - changed bash_quote_filename to use any of the three shell | |
4672 | quoting styles based on the value of a variable, | |
4673 | completion_quoting_style | |
4674 | - if *qcp is not 0 when passed to bash_quote_filename, adjust the | |
4675 | type of completion we're doing based on its value (i.e., | |
4676 | *qcp == '"' forces double quoting, *qcp == '\'' forces single) | |
4677 | - bash_quote_filename now leaves the quotes intact in the filename | |
4678 | it returns. The readline completion code takes care of avoiding | |
4679 | doubled open quotes | |
4680 | - if a filename containing a `!' is passed to bash_quote_filename | |
4681 | without an opening quote character, and we are performing history | |
4682 | expansion, use single quoting as the quoting style | |
4683 | ||
4684 | bashhist.c | |
4685 | - changed bash_history_disable to not call bash_history_reinit(0), | |
4686 | but do what it needs to directly | |
4687 | - new function bash_history_enable | |
4688 | - make history_expansion_inhibited exist only if BANG_HISTORY | |
4689 | is defined | |
4690 | ||
4691 | bashhist.h | |
4692 | - extern declaration for bash_history_enable | |
4693 | ||
4694 | lib/readline/complete.c | |
4695 | - make make_quoted_replacement set should_quote to 1 if the quote | |
4696 | character is `'' as well as if it's `"' | |
4697 | ||
4698 | test.c | |
4699 | - added the csh-like `=~' and `!~' pattern-matching binary operators | |
4700 | which match the string on the lhs against the shell pattern on | |
4701 | the rhs. PATTERN_MATCHING must be defined for this to work; it is | |
4702 | undefined and undocumented by default | |
4703 | ||
4704 | jobs.c | |
4705 | - broke the code that gets the new window size and sets $LINES and | |
4706 | $COLUMNS out of sigwinch_sighandler into a new function, | |
4707 | get_window_size, which sigwinch_sighandler calls | |
4708 | ||
4709 | 6/12 | |
4710 | ---- | |
4711 | parse.y | |
4712 | - new function, pop_expansion, to remove the top string on the | |
4713 | expanded token stack | |
4714 | - renamed save_expansion to push_expansion | |
4715 | ||
4716 | lib/readline/complete.c | |
4717 | - fixed a bug in find_completion_word that tested found_quote | |
4718 | instead of quote_char when trying to decide if we have an unclosed | |
4719 | quoted string [in 1.14.6] | |
4720 | ||
4721 | 6/26 | |
4722 | ---- | |
4723 | subst.c | |
4724 | - fixed expand_word_internal to remove all traces of $*, even if | |
4725 | it's quoted, if there are no positional parameters and there are | |
4726 | other characters in the expansion | |
4727 | ||
4728 | bashline.c | |
4729 | - don't attempt hostname completion if multiple consecutive `@' | |
4730 | characters appear | |
4731 | ||
4732 | 6/27 | |
4733 | ---- | |
4734 | shell.c | |
4735 | - initialize top_level early, and exit if a longjmp sends us there | |
4736 | before we reinitialize | |
4737 | ||
4738 | subst.c | |
4739 | - more fixes to expansion of quoted $* when no positional parameters | |
4740 | - broke the code that assigns a value to an array element (and parses | |
4741 | the array element reference) into a new function, | |
4742 | do_array_element_assignment | |
4743 | ||
4744 | builtins/read.def | |
4745 | - new function, bind_read_variable, to allow binding simple variables | |
4746 | and array elements to strings read (uses do_array_element_assignment) | |
4747 | - changed occurrences of bind_variable to bind_read_variable where | |
4748 | it matters | |
4749 | ||
4750 | variables.c | |
4751 | - tentative change to bind_variable to make x=y the same as x[0]=y | |
4752 | if x is already an array variable. This works for `read' as well. | |
4753 | This is what ksh does. | |
4754 | ||
4755 | 6/28 | |
4756 | ---- | |
4757 | alias.h | |
4758 | - added a `flags' member to the ASSOC struct and renamed it to | |
4759 | `alias_t' | |
4760 | ||
4761 | alias.c, bashline.c, builtins/alias.def, builtins/type.def | |
4762 | - changed ASSOC to alias_t | |
4763 | ||
4764 | alias.c | |
4765 | - changed add_alias to set the AL_EXPANDNEXT flag when the alias is | |
4766 | inserted into the hash table | |
4767 | ||
4768 | parse.y | |
4769 | - added a third parameter to push_string: a pointer to the alias_t | |
4770 | that is being expanded | |
4771 | - push_string marks the alias it's passed as being expanded | |
4772 | (AL_BEINGEXPANDED) | |
4773 | - pop_string marks the alias being popped as no longer being | |
4774 | expanded | |
4775 | - changed shell_getc to defer popping an alias expansion until | |
4776 | the parser has had a chance to catch up, since the parser reads | |
4777 | ahead and would cause the expansion to be popped before it | |
4778 | fully parsed the expanded string | |
4779 | - changed alias_expand_word to check the AL_BEINGEXPANDED flag | |
4780 | instead of the expanded_token_stack when checking whether an | |
4781 | alias is already being expanded | |
4782 | ||
4783 | oslib.c | |
4784 | - make the definition of bzero be surrounded by #ifdef HAVE_BZERO | |
4785 | rather than lumping it in with bcopy | |
4786 | ||
4787 | configure.in | |
4788 | - add a test for bzero | |
4789 | ||
4790 | config.h.in | |
4791 | - add a template for HAVE_BZERO | |
4792 | ||
4793 | 7/3 | |
4794 | --- | |
4795 | builtins/set.def | |
4796 | - added new meaning for `set +o' without options, as per the latest | |
4797 | draft of Posix.2. It means to list -o options as a series of set | |
4798 | commands to recreate the current settings | |
4799 | ||
4800 | documentation/bash.1 | |
4801 | - augmented description of the `set' builtin | |
4802 | ||
4803 | 7/6 | |
4804 | --- | |
4805 | jobs.c | |
4806 | - make sure that temp_handler is not set to SIG_DFL before calling | |
4807 | it from waitchld | |
4808 | ||
4809 | builtins/cd.def | |
4810 | - rewrote cd_builtin to make the code flow clearer | |
4811 | - broke full directory name construction out into a separate | |
4812 | function: mkpath | |
4813 | - cd_builtin now tests that a directory constructed from a $CDPATH | |
4814 | entry is actually a directory before trying to chdir to it | |
4815 | - added an error message if $HOME is not set | |
4816 | - added a descriptive error message if `cd -' used and OLDPWD unset | |
4817 | - changed the error messages to use builtin_error, not file_error | |
4818 | - moved the code at the bind_and_exit label into a function, | |
4819 | bindpwd (no_symlinks) | |
4820 | - Posix.2 says that when using $CDPATH, the resultant value of PWD | |
4821 | should have no symlinks | |
4822 | ||
4823 | 7/7 | |
4824 | --- | |
4825 | input.c | |
4826 | - if fd_to_buffered_stream fails in some way and returns a NULL | |
4827 | buffered stream, with_input_from_buffered_stream uses a function | |
4828 | that does nothing but return EOF as the `getter'. This keeps | |
4829 | the shell from crashing if invoked with fd 0 closed | |
4830 | ||
4831 | subst.c | |
4832 | - made the `quoted' parameter to expand_word_internal into a flags | |
4833 | word with flag values defined in shell.h. Each place where | |
4834 | `quoted' is tested for a non-zero value was changed to test | |
4835 | (quoted & (Q_HERE_DOCUMENT|Q_DOUBLE_QUOTES)) != 0 instead | |
4836 | ||
4837 | mailcheck.c, shell.c, parse.y | |
4838 | - change calls to the expand_string* functions to pass an explicit | |
4839 | Q_DOUBLE_QUOTES where appropriate | |
4840 | ||
4841 | 7/9 | |
4842 | --- | |
4843 | subst.c | |
4844 | - getpattern now passes Q_NOQUOTE to expand_word_internal, indicating | |
4845 | that quotes in the pattern spec are not to be treated specially | |
4846 | ||
4847 | 7/12 | |
4848 | ---- | |
4849 | jobs.c | |
4850 | - fixed up the MUST_UNBLOCK_CHILD code in wait_for so that it now | |
4851 | unblocks all signals and sets the signal handler for SIGCHLD to | |
4852 | SIG_DFL. pre-v4 SCO machines seem to require this [in 1.14.5] | |
4853 | ||
4854 | [Bash-1.14.5 released to net 7/16] | |
4855 | ||
4856 | 7/17 | |
4857 | ---- | |
4858 | documentation/features.texi | |
4859 | - changed the Bourne Shell builtins section to have the same format | |
4860 | as the bash builtins section, with usage synopses | |
4861 | - added a section on the restricted shell | |
4862 | ||
4863 | 7/18 | |
4864 | ---- | |
4865 | documentation/features.texi | |
4866 | - changed the name of this document to the Bash Reference Manual | |
4867 | - added sections on POSIX mode and restricted shell | |
4868 | ||
4869 | lib/readline/doc/hsuser.texinfo | |
4870 | - added the text from the bash manual page about the bash history | |
4871 | facilities if BashFeatures is set | |
4872 | ||
4873 | 7/19 | |
4874 | ---- | |
4875 | documentation/features.texi | |
4876 | - added more stuff to the bash basics section | |
4877 | ||
4878 | lib/readline/doc/rluser.texinfo | |
4879 | - added a sample inputrc file | |
4880 | ||
4881 | 7/20 | |
4882 | ---- | |
4883 | documentation/features.texi | |
4884 | - added section on shell expansions to bash basics section | |
4885 | ||
4886 | builtins/Makefile.in, lib/glob/Makefile.in, lib/malloc/Makefile.in, | |
4887 | lib/readline/Makefile.in, lib/termcap/Makefile.in, lib/tilde/Makefile.in | |
4888 | - ar is now called with flags `cr' when building libraries | |
4889 | ||
4890 | 7/21 | |
4891 | ---- | |
4892 | lib/readline/complete.c | |
4893 | - fixed a bug in find_completion_word that resulted in the found_quote | |
4894 | flag and the delimiter character not being passed back to the | |
4895 | caller (tested (*fp) instead of (fp) before assigning found_quote; | |
4896 | similarly for dp). With this fix, the filename dequoting function | |
4897 | is properly called | |
4898 | ||
4899 | 7/25 | |
4900 | ---- | |
4901 | general.c | |
4902 | - renamed bash_tilde_expand to bash_tilde_expansion_failure_hook | |
4903 | - new function, bash_tilde_expand, that just sets interrupt_immediately | |
4904 | and calls tilde_expand, returning what tilde_expand returns | |
4905 | ||
4906 | subst.c, general.c, shell.c, execute_cmd.c, variables.c, bashline.c, | |
4907 | builtins/cd.def | |
4908 | - changed calls to tilde_expand to calls to bash_tilde_expand instead | |
4909 | ||
4910 | 7/27 | |
4911 | ---- | |
4912 | builtins/set.def | |
4913 | - added a -o history option to enable and disable command history | |
4914 | saving. This uses bash_history_enable() and bash_history_disable() | |
4915 | It's keyed off of remember_on_history. With this, shell scripts | |
4916 | can use the command history | |
4917 | ||
4918 | bashhist.c | |
4919 | - bash_history_enable now calls sv_history_control and sv_histignore | |
4920 | ||
4921 | builtins/fc.def | |
4922 | - if history_list() returns a null pointer, immediately return | |
4923 | [in 1.14.6] | |
4924 | ||
4925 | documentation/{bash.1,features.texi}, lib/readline/doc/hsuser.texinfo | |
4926 | - added a description of the `set -o history' option and changed | |
4927 | text to refer to it rather than strictly interactive shells | |
4928 | ||
4929 | 8/1 | |
4930 | --- | |
4931 | variables.c | |
4932 | - new builtin variable $HOSTNAME, initialized to current_host_name | |
4933 | as set in shell.c | |
4934 | ||
4935 | documentation/bash.1, documentation/features.texi | |
4936 | - documented $HOSTNAME | |
4937 | ||
4938 | 8/3 | |
4939 | --- | |
4940 | support/texi2html | |
4941 | - new program, a texinfo-html converter | |
4942 | ||
4943 | documentation/Makefile.in | |
4944 | - added directives to produce features.html from features.texi | |
4945 | ||
4946 | MANIFEST.doc | |
4947 | - added features.html and features_toc.html to the doc distribution | |
4948 | ||
4949 | 8/10 | |
4950 | ---- | |
4951 | lib/readline/bind.c | |
4952 | - new functions rl_variable_dumper and rl_dump_variables to print | |
4953 | readline variables and their values to rl_outstream | |
4954 | - new functions rl_get_keymap_name and rl_get_keymap_name_from_edit_mode | |
4955 | to get the name of the current keymap for the variable dumper | |
4956 | ||
4957 | lib/readline/readline.h | |
4958 | - extern declarations for rl_variable_dumper, rl_dump_variables, and | |
4959 | rl_get_keymap_name | |
4960 | ||
4961 | builtins/bind.def | |
4962 | - added -V flag to print variable names and bindings | |
4963 | - added -P flag to print variable names and bindings in the syntax | |
4964 | of the inputrc file | |
4965 | ||
4966 | lib/readline/funmap.c | |
4967 | - added new bindable `dump-variables' readline command | |
4968 | ||
4969 | documentation/{bash.{1,html},readline.3,features.html}, | |
4970 | lib/readline/doc/rluser.texinfo | |
4971 | - documented new `dump-variables' readline command | |
4972 | ||
4973 | documentation/{bash.{1,html},features.{texi,html} | |
4974 | - documented new bind -P and -V options | |
4975 | ||
4976 | documentation/bashbug.1 | |
4977 | - new manual page | |
4978 | ||
4979 | documentation/Makefile.in | |
4980 | - changes to build and install bashbug.1 | |
4981 | ||
4982 | 8/15 | |
4983 | ---- | |
4984 | print_cmd.c | |
4985 | - new function `xprintf' that just calls vfprintf(stdout, ...) | |
4986 | to avoid having to declare printf | |
4987 | ||
4988 | parse.y | |
4989 | - slight change in how read_token_word computes `all_digits' | |
4990 | ||
4991 | 8/21 | |
4992 | ---- | |
4993 | ||
4994 | subst.c | |
4995 | - new function dequote_escapes to remove CTLESC escaping | |
4996 | CTLESC and CTLNUL in a string, returning a new string | |
4997 | ||
4998 | 8/25 | |
4999 | ---- | |
5000 | shell.c | |
5001 | - execute the file SYS_BASHRC for interactive shells if SYS_BASHRC | |
5002 | is defined, before executing ~/.bashrc | |
5003 | ||
5004 | config.h.top | |
5005 | - add a dummy commented definition for SYS_BASHRC, defaulting to | |
5006 | /etc/bash.bashrc | |
5007 | ||
5008 | lib/readline/input.c | |
5009 | - added code to call select() in rl_gather_tyi() and return | |
5010 | immediately if it indicates that there is nothing to read on | |
5011 | the readline input fd (#ifdef HAVE_SELECT) | |
5012 | ||
5013 | lib/posixheaders/posixdir.h | |
5014 | - new file to localize the <dirent.h>/<sys/dir.h> and dirent/direct | |
5015 | mess | |
5016 | ||
5017 | posixdir.h, lib/readline/posixdir.h | |
5018 | - symlinks to lib/posixheaders/posixdir.h | |
5019 | ||
5020 | lib/readline/rldefs.h | |
5021 | - removed the posix dir includes and defines | |
5022 | ||
5023 | lib/readline/complete.c, getcwd.c | |
5024 | - include posixdir.h rather than having the code inline | |
5025 | ||
5026 | builtins/cd.def | |
5027 | - new code to do spelling correction on the directory name | |
5028 | modified from patch sent by Neil Russell (caret@c-side.com) | |
5029 | ||
5030 | 8/29 | |
5031 | ---- | |
5032 | builtins/shopt.def | |
5033 | - new option `cdspell' to toggle cd directory name spelling | |
5034 | correction | |
5035 | ||
5036 | documentation/{bash.{1,html},features.texi} | |
5037 | - documented new shopt `cdspell' option | |
5038 | ||
5039 | 9/5 | |
5040 | --- | |
5041 | subst.c | |
5042 | - $'' should expand to the same thing as '' (a quoted null string) | |
5043 | ||
5044 | shell.h | |
5045 | - changed CTLNUL to '\177'; some scripts use ^B for things like IFS | |
5046 | [in 1.14.6] | |
5047 | ||
5048 | 9/7 | |
5049 | --- | |
5050 | support/config.guess | |
5051 | - added code to identify a PPC running Solaris 2 | |
5052 | ||
5053 | doc | |
5054 | - new directory replacing documentation | |
5055 | ||
5056 | Makefile.in, MANIFEST, MANIFEST.doc, configure.in | |
5057 | - replaced `documentation' with `doc' | |
5058 | ||
5059 | 9/8 | |
5060 | --- | |
5061 | lib/readline/display.c | |
5062 | - fixed the code in _rl_update_final that decides whether or not the | |
5063 | cursor is at character position 0 on an otherwise-empty line and | |
5064 | adjusts _rl_vis_botlin accordingly | |
5065 | ||
5066 | 9/13 | |
5067 | ---- | |
5068 | general.c | |
5069 | - fixed canonicalize_pathname to make sure that intermediate | |
5070 | results correspond to directories before blindly chopping | |
5071 | off the last component when we see a `..'. This fixes the | |
5072 | `cd ../.../..' being equivalent to `cd ..' problem | |
5073 | ||
5074 | subst.c | |
5075 | - fixed make_named_pipe so that mkfifo is called with mode 0600 | |
5076 | for security reasons [in 1.14.6] | |
5077 | - changed the /dev/fd version of add_fifo_list to zero out new | |
5078 | entries to the fifo_list when it resizes it larger [in 1.14.6] | |
5079 | - changed make_dev_fd_filename to use DEV_FD_PREFIX | |
5080 | ||
5081 | aclocal.m4 | |
5082 | - changed BASH_HAVE_DEV_FD to check for /proc/self/fd and define | |
5083 | DEV_FD_PREFIX to either "/dev/fd/" or "/proc/self/fd/" as | |
5084 | appropriate | |
5085 | ||
5086 | 9/14 | |
5087 | ---- | |
5088 | lib/readline/display.c | |
5089 | - when displaying the first line of a multiline prompt, make sure | |
5090 | that the final \n is followed by a \r (outputting one if necessary) | |
5091 | so that we know we are starting at column 0 | |
5092 | ||
5093 | variables.h | |
5094 | - new attribute: att_local | |
5095 | ||
5096 | variables.c | |
5097 | - changed make_local_variable to set the att_local attribute | |
5098 | - changed makunbound to just make variables marked as `local' in | |
5099 | the current context invisible. This makes the local variable | |
5100 | persist throughout the function even if it is unset, so a | |
5101 | subsequent assignment preserves the `local' attribute | |
5102 | - changed kill_all_local_variables to unset the att_local attribute | |
5103 | before calling makunbound | |
5104 | ||
5105 | 9/18 | |
5106 | ---- | |
5107 | lib/readline/complete.c | |
5108 | - make sure the cursor is on the last line of a possibly-multiple- | |
5109 | line command line before listing the completions in | |
5110 | display_matches | |
5111 | ||
5112 | 9/19 | |
5113 | ---- | |
5114 | braces.c | |
5115 | - fixed the non-SHELL case in brace_gobbler so the loop exits when | |
5116 | it should | |
5117 | ||
5118 | lib/readline/bind.c, lib/readline/readline.h | |
5119 | - added functions to dump key sequences bound to macros and their | |
5120 | values | |
5121 | ||
5122 | builtins/bind.def | |
5123 | - added -S and -s options to dump the readline macros and their values | |
5124 | - changed the options so that -p and -P dump functions, -v and -V | |
5125 | dump variables, and -s and -S dump macros (s for string) | |
5126 | ||
5127 | doc/{bash.{1,html},readline.3,features.texi}, lib/readline/doc/rluser.texinfo | |
5128 | - added documentation for the new `bind' options | |
5129 | - added documentation for the new readline functions to dump macros | |
5130 | and the key sequences that output them | |
5131 | ||
5132 | 9/22 | |
5133 | ---- | |
5134 | print_cmd.c | |
5135 | - new function xtrace_print_word_list (WORD_LIST *) to print the | |
5136 | words of a simple command when set -x is on. This prints '' | |
5137 | when it encounters an empty string | |
5138 | ||
5139 | externs.h | |
5140 | - new extern declaration for xtrace_print_word_list | |
5141 | ||
5142 | execute_cmd.c | |
5143 | - call xtrace_print_word_list in execute_simple_command | |
5144 | ||
5145 | 9/25 | |
5146 | ---- | |
5147 | builtins/getopts.def | |
5148 | - make sure that the loop counter stops at 10 when stepping through | |
5149 | the dollar_vars array to count the number of positional parameters | |
5150 | [in 1.14.6] | |
5151 | ||
5152 | 9/30 | |
5153 | ---- | |
5154 | lib/readline/histsearch.c | |
5155 | - fixed history_search_internal to bail immediately if it gets a | |
5156 | null or empty search string. This fixes the !? core dumps. | |
5157 | [in 1.14.6] | |
5158 | ||
5159 | 10/3 | |
5160 | ---- | |
5161 | lib/readline/histexpand.c | |
5162 | - if there is a null string given with a !? search specifier, use | |
5163 | a previous search string if one exists, else fail immediately | |
5164 | ||
5165 | trap.c | |
5166 | - made run_exit_trap preserve $? around the call to execute the | |
5167 | trap string, unless the trap string contains an `exit' | |
5168 | command, in which case it can set the shell's exit status | |
5169 | [in 1.14.6] | |
5170 | ||
5171 | In other words: | |
5172 | ||
5173 | touch /tmp/z | |
5174 | trap 'rm /tmp/z ; exit 5' 0 | |
5175 | exit 1 | |
5176 | ||
5177 | exits with status 5; while | |
5178 | ||
5179 | touch /tmp/z | |
5180 | trap 'rm /tmp/z' 0 | |
5181 | exit 1 | |
5182 | ||
5183 | exits with status 1 | |
5184 | ||
5185 | subst.c, parse.y | |
5186 | - moved the $'...' code from subst.c to parse.y, more like ksh | |
5187 | does it | |
5188 | ||
5189 | doc/bash.1, doc/bash.html, doc/features.texi | |
5190 | - moved the description of $'...' from the expansion section to | |
5191 | the quoting section | |
5192 | ||
5193 | 10/4 | |
5194 | ---- | |
5195 | command.h | |
5196 | - added a `line' member to the function struct for the source line | |
5197 | the function definition starts on | |
5198 | ||
5199 | make_cmd.c | |
5200 | - initialize the `line' member in Function_def to 0 | |
5201 | - make_function_def takes a third parameter telling which line the | |
5202 | function definition started on and a fourth telling which line | |
5203 | the function body started on | |
5204 | ||
5205 | make_cmd.h | |
5206 | - changed prototype for make_function_def | |
5207 | ||
5208 | parse.y | |
5209 | - new variable `function_dstart', set by read_token and read_token_word | |
5210 | to keep track of where a function definition begins | |
5211 | - new variable `function_bstart' to keep track of where function | |
5212 | body begins | |
5213 | - pass function_dstart and function_bstart to make_function_def | |
5214 | - new function strtrans to do the $"..." locale-specific translation | |
5215 | of `...' | |
5216 | - call strtrans() to translate $"string". The translated string is | |
5217 | double-quoted | |
5218 | ||
5219 | doc/bash.{1,html} | |
5220 | - updated the description of LINENO now that line numbers within | |
5221 | functions are correct | |
5222 | ||
5223 | configure.in | |
5224 | - look for the `gettext' library function | |
5225 | ||
5226 | config.h.in | |
5227 | - define HAVE_GETTEXT if gettext(3) exists in a findable library | |
5228 | ||
5229 | 10/5 | |
5230 | ---- | |
5231 | builtins/common.c | |
5232 | - changed backslash_quote so that `#' is only quoted at the start | |
5233 | of a word | |
5234 | - new function contains_shell_metas returns 1 if the argument | |
5235 | string contains one or more shell meta-characters that require | |
5236 | quoting | |
5237 | ||
5238 | builtins/common.h | |
5239 | - extern declaration for contains_shell_metas | |
5240 | ||
5241 | print_cmd.c | |
5242 | - changed xtrace_print_word_list to print words containing | |
5243 | shell metacharacters within single quotes | |
5244 | ||
5245 | lib/termcap | |
5246 | - upgraded to GNU termcap version 1.3 | |
5247 | ||
5248 | 10/9 | |
5249 | ---- | |
5250 | lib/readline/readline.c | |
5251 | - call setlocale(LC_CTYPE, ...) after finding a legal value for | |
5252 | one of LC_ALL, LC_CTYPE, or LANG | |
5253 | ||
5254 | 10/11 | |
5255 | ----- | |
5256 | lib/readline/search.c | |
5257 | - make rl_history_search_internal just do previous-history or | |
5258 | next-history as appropriate when given a null search string | |
5259 | (rl_point == 0) | |
5260 | ||
5261 | 10/24 | |
5262 | ----- | |
5263 | subst.c | |
5264 | - fixed an off-by-one error in char_is_quoted that skipped a | |
5265 | characters after calling skip_single_quoted or skip_double_quoted | |
5266 | [in 1.14.6] | |
5267 | - fixed an off-by-one error in string_extract_verbatim so it | |
5268 | leaves *sindex at the separator character if the separator | |
5269 | character is "'" [in 1.14.6] | |
5270 | ||
5271 | 10/27 | |
5272 | ----- | |
5273 | parse.y | |
5274 | - in CHECK_FOR_RESERVED_WORD, make sure that reading a `}' | |
5275 | decrements open_brace_awaiting_satisfaction if it is non-zero | |
5276 | [in 1.14.6] | |
5277 | ||
5278 | shell.c | |
5279 | - don't run the shell startup files if the shell is running | |
5280 | setuid | |
5281 | - don't source $ENV if the shell is running setuid | |
5282 | ||
5283 | variables.c | |
5284 | - new parameter to initialize_shell_variables: no_functions. If | |
5285 | non-zero, don't import functions from the environment | |
5286 | ||
5287 | variables.h | |
5288 | - change to function prototype for initialize_shell_variables | |
5289 | ||
5290 | lib/readline/complete.c | |
5291 | - fix for the code that decides whether or not a char is quoted for | |
5292 | applications that don't supply a value for rl_char_is_quoted_p | |
5293 | - fixed insert_match to not remove a user-supplied opening quote | |
5294 | character if make_quoted_replacement does not return a string | |
5295 | beginning with that quote character | |
5296 | ||
5297 | 11/2 | |
5298 | ---- | |
5299 | general.c | |
5300 | - new function ungetc_with_restart that handles the local buffering | |
5301 | [in 1.14.6] | |
5302 | ||
5303 | parse.y | |
5304 | - changed yy_stream_unget to call ungetc_with_restart if the OS | |
5305 | does not have restartable syscalls [in 1.14.6] | |
5306 | ||
5307 | 11/3 | |
5308 | ---- | |
5309 | bashline.c | |
5310 | - rewrote _ignore_completion_names to actually free and remove | |
5311 | names from the array if more than one names in the array | |
5312 | passed is acceptable, instead of just bailing [in 1.14.6] | |
5313 | ||
5314 | 11/7 | |
5315 | ---- | |
5316 | bashline.c | |
5317 | - if no matches are acceptable to _ignore_completion_names, | |
5318 | free the entries in NAMES, set NAMES[0] == 0, and let the | |
5319 | caller clean up [in 1.14.6] | |
5320 | - fixed a problem with backslash-quoted characters in | |
5321 | bash_dequote_filename that caused the character after the | |
5322 | backslash to be interpreted | |
5323 | - bash_dequote_filename now takes a quote_char parameter that, | |
5324 | if non-zero, gives the quote character (`'' or `"') that | |
5325 | delimits the filename. Used to initialize the quoting state | |
5326 | ||
5327 | lib/readline/complete.c | |
5328 | - if the completion ignore function returns with MATCHES == 0 | |
5329 | or MATCHES[0] == 0, ring the bell and quit the completion | |
5330 | attempt [in 1.14.6] | |
5331 | - pass quote_char to gen_completion_matches so it can pass it | |
5332 | along to the app-specific filename dequoting function | |
5333 | - have gen_completion_matches pass quote_char to whatever function | |
5334 | is pointed to by rl_filename_dequoting_function | |
5335 | ||
5336 | pathexp.c | |
5337 | - rewrote ignore_globbed_names to be more like _ignore_completion_names | |
5338 | ||
5339 | lib/readline/doc/rltech.texinfo | |
5340 | - updated documentation for rl_filename_dequoting_function | |
5341 | ||
5342 | 11/10 | |
5343 | ----- | |
5344 | subst.c | |
5345 | - fixed remove_quoted_nulls so that it is now a full function that | |
5346 | removes unquoted CTLNUL chars from the string it is passed | |
5347 | [in 1.14.6] | |
5348 | - fixed expand_word_internal to avoid generating some unneeded | |
5349 | quoted nulls (if the string is partially quoted, note that we | |
5350 | have seen a quoted null and add one if the rest of the string | |
5351 | doesn't expand to anything) | |
5352 | ||
5353 | 11/13 | |
5354 | ----- | |
5355 | variables.c | |
5356 | - bind HOSTTYPE, OSTYPE, and HOSTNAME unconditionally | |
5357 | ||
5358 | pathexp.c | |
5359 | - new function quote_globbing_chars, adds `\' before globbing | |
5360 | chars in its string argument, returns new string | |
5361 | ||
5362 | pathexp.h | |
5363 | - extern declaration for quote_globbing_chars | |
5364 | ||
5365 | bashhist.c | |
5366 | - if the previous line contains globbing chars, run it through | |
5367 | quote_globbing_chars before trying to match. This affects | |
5368 | only HISTIGNORE patterns containing `&' | |
5369 | ||
5370 | 11/14 | |
5371 | ----- | |
5372 | bashhist.c | |
5373 | - if the history line to be added contains globbing chars, quote | |
5374 | them with backslashes by calling quote_globbing_chars in | |
5375 | history_should_ignore before comparing them against the | |
5376 | patterns in HISTIGNORE | |
5377 | ||
5378 | bashline.c | |
5379 | - make sure that we erase the current readline line after running | |
5380 | fc on it and executing the resultant commands in | |
5381 | vi_edit_and_execute_command, so the original readline line | |
5382 | doesn't get returned [in 1.14.6] | |
5383 | ||
5384 | jobs.h | |
5385 | - added a new job listing format: JLIST_NONINTERACTIVE -- like | |
5386 | JLIST_LONG, but does not print the job number | |
5387 | ||
5388 | jobs.c | |
5389 | - added code to pretty_print_job to handle JLIST_NONINTERACTIVE | |
5390 | - call notify_and_cleanup() from wait_for even if the shell is | |
5391 | running a script (interactive_shell == 0) | |
5392 | - changed notify_and_cleanup to call notify_of_job_status if | |
5393 | interactive or interactive_shell == 0, so scripts report | |
5394 | about jobs they run | |
5395 | - changed notify_of_job_status to call pretty_print_job with a | |
5396 | JLIST_NONINTERACTIVE format if interactive_shell is 0 and a | |
5397 | job is marked JDEAD, after printing the script name and line | |
5398 | number. This message is printed only if the job dies due to | |
5399 | a fatal signal | |
5400 | ||
5401 | support/mkversion.c | |
5402 | - added support for a `-status status' argument to set the | |
5403 | `release status' of the shell (alpha, beta, or release). It | |
5404 | defines `RELSTATUS' in version.h and changes the definition | |
5405 | of SCCSVERSION, if present | |
5406 | ||
5407 | Makefile.in | |
5408 | - set a RELSTATUS variable that is included when printing the build | |
5409 | message and passed to mkversion with the -status option | |
5410 | - make RELSTATUS one of the variables sed sets when it creates | |
5411 | bashbug from support/bashbug.sh | |
5412 | ||
5413 | version.c | |
5414 | - added a `release_status' variable that's set to RELSTATUS if | |
5415 | it's defined | |
5416 | ||
5417 | support/bashbug.sh | |
5418 | - added the `RELSTATUS' variable to the report with heading | |
5419 | `Release Status' | |
5420 | - set the bug address to chet@po.cwru.edu if the release status | |
5421 | is `alpha' or `beta' | |
5422 | ||
5423 | 11/15 | |
5424 | ----- | |
5425 | ||
5426 | shell.c, execute_cmd.c | |
5427 | - new variable expand_aliases to control alias expansion. For now, | |
5428 | this is set to the same value as interactive_shell when that is | |
5429 | set | |
5430 | ||
5431 | parse.y | |
5432 | - perform alias expansion if expand_aliases is non-zero rather than | |
5433 | checking the value of interactive_shell | |
5434 | ||
5435 | 11/16 | |
5436 | ----- | |
5437 | builtins/shopt.def | |
5438 | - new option `expand_aliases' to control the value of expand_aliases | |
5439 | ||
5440 | doc/bash.1, doc/bash.html | |
5441 | - updated the description of `shopt' with the `expand_aliases' option | |
5442 | ||
5443 | 11/28 | |
5444 | ----- | |
5445 | bashline.c | |
5446 | - if there is only one completion in _ignore_completion_names, see | |
5447 | if it is acceptable and return right away [in 1.14.6] | |
5448 | ||
5449 | configure.in | |
5450 | - change to define WAITPID_BROKEN on SCO 3.2v5 | |
5451 | ||
5452 | 12/6 | |
5453 | ---- | |
5454 | parse.y | |
5455 | - call prompt_again in read_token_word if a newline is read in an | |
5456 | interactive shell and bash_input.type is either st_stdin or | |
5457 | st_stream | |
5458 | - remove superfluous call to reset_readline_prompt in yy_readline_get | |
5459 | ||
5460 | 12/7 | |
5461 | ---- | |
5462 | parse.y | |
5463 | - combine delimiters, delimiter_depth, and delimiter_space into a | |
5464 | single structure of type `struct dstack' | |
5465 | - replace all references to delimiter* with dstack.delimiter* | |
5466 | - include parser.h for struct dstack | |
5467 | - new define pop_delimiter(), analogous to push_delimiter | |
5468 | - current_delimiter, push_delimiter, and pop_delimiter defines now | |
5469 | include the delimiter stack struct as the first parameter | |
5470 | ||
5471 | parser.h | |
5472 | - now includes definition of struct dstack | |
5473 | ||
5474 | bashline.c | |
5475 | - include parser.h for struct dstack | |
5476 | - refer to dstack.delimiter_depth instead of delimiter_depth | |
5477 | ||
5478 | 12/12 | |
5479 | ----- | |
5480 | execute_cmd.c | |
5481 | - before doing a longjmp(subshell_top_level,...) when executing a | |
5482 | shell script without a leading #!, set history_lines_this_session | |
5483 | to 0 to forget about the history and not save it on an exec | |
5484 | (we don't free the memory with clear_history(), though -- that | |
5485 | would slow bash down) | |
5486 | ||
5487 | 12/14 | |
5488 | ----- | |
5489 | jobs.c, nojobs.c | |
5490 | - cause the sigwinch handling code to be compiled into the shell | |
5491 | even if READLINE is defined | |
5492 | - new functions: set_sigwinch_handler and unset_sigwith_handler | |
5493 | to enable and disable catching of SIGWINCH and adjusting $LINES | |
5494 | and $COLUMNS | |
5495 | - changed initialize_job_signals to install a signal handler for | |
5496 | SIGWINCH with set_sigwinch_handler | |
5497 | ||
5498 | jobs.h | |
5499 | - extern declarations for set_sigwinch_handler and | |
5500 | unset_sigwinch_handler | |
5501 | ||
5502 | 12/20 | |
5503 | ----- | |
5504 | doc/bash.{1,html}, doc/readline.3, lib/readline/doc/rluser.texinfo | |
5505 | - documented the readline `visible-stats' variable | |
5506 | ||
5507 | 12/21 | |
5508 | ----- | |
5509 | trap.c | |
5510 | - new global variable `running_trap' incremented and decremented | |
5511 | around running a trap command in _run_trap_internal | |
5512 | ||
5513 | execute_cmd.c | |
5514 | - new variable currently_executing_command, set to the COMMAND * | |
5515 | currently being processed by execute_command_internal, unless a | |
5516 | trap command is being run (running_trap != 0) | |
5517 | - new function executing_line_number, which returns the line number | |
5518 | of the currently executing command (which may not be the same as | |
5519 | line_number) | |
5520 | - don't run the debug trap if it was not set before the current | |
5521 | simple command was executed, since we don't want to run it after | |
5522 | the trap command that sets the DEBUG trap | |
5523 | ||
5524 | variables.c | |
5525 | - new function assign_lineno, to assign a value to line_number | |
5526 | when LINENO is set | |
5527 | - changed get_lineno to call executing_line_number() rather than | |
5528 | returning line_number | |
5529 | ||
5530 | parse.y | |
5531 | - new argument for push_stream telling it whether or not to reset | |
5532 | line_number to 0 | |
5533 | ||
5534 | builtins/common.c | |
5535 | - change to parse_and_execute to call push_stream with an argument | |
5536 | ||
5537 | 12/29 | |
5538 | ----- | |
5539 | subst.c | |
5540 | - set subshell_environment in command_substitute and process_substitute | |
5541 | for the child process | |
5542 | ||
5543 | 1/2 | |
5544 | --- | |
5545 | trap.c | |
5546 | - made decode_signal recognize signal names case insensitively | |
5547 | ||
5548 | shell.c | |
5549 | - make the shell exit on a longjmp (DISCARD, ...) if | |
5550 | subshell_environment is non-zero | |
5551 | ||
5552 | 1/16 | |
5553 | ---- | |
5554 | lib/readline/histexpand.c | |
5555 | - let the `!' in ${!xxx} pass through without error | |
5556 | ||
5557 | shell.c | |
5558 | - new --help long option | |
5559 | - new function show_shell_usage() for use by --help | |
5560 | ||
5561 | 1/19 | |
5562 | ---- | |
5563 | parse.y | |
5564 | - changes to shell_getc to make sure that lines consisting of only a | |
5565 | newline get added to the history correctly when they are part of | |
5566 | a quoted string | |
5567 | ||
5568 | 1/24 | |
5569 | ---- | |
5570 | aclocal.m4, configure.in | |
5571 | - added a check for -lsocket (and -lnsl) to fix solaris problems | |
5572 | with isnetconn() | |
5573 | ||
5574 | shell.c | |
5575 | - rearranged the code in isnetconn to check for a socket using | |
5576 | getpeername() first, before any SVR4 or SVR4.2-specific checks | |
5577 | - added checks for ttys (isatty) and FIFOs (S_ISFIFO) to the | |
5578 | SVR4/SVR4.2 case of isnetconn() | |
5579 | ||
5580 | general.h | |
5581 | - new macro RESIZE_MALLOCED_BUFFER to check and see whether there | |
5582 | is enough room in a string to add a given number of characters | |
5583 | and to resize it if there is not | |
5584 | ||
5585 | 1/25 | |
5586 | ---- | |
5587 | parse.y, general.c, subst.c, bashhist.c, alias.c, array.c, variables.c | |
5588 | - use RESIZE_MALLOCED_BUFFER where appropriate | |
5589 | ||
5590 | 1/26 | |
5591 | ---- | |
5592 | support/config.{guess,sub} | |
5593 | - merged in latest changes from GNU master copies | |
5594 | ||
5595 | 1/30 | |
5596 | ---- | |
5597 | ||
5598 | jobs.c | |
5599 | - make sure to freeze the jobs list when calling a trap handler | |
5600 | for SIGINT | |
5601 | - added code to waitchld() so that a SIGINT trap handler is called | |
5602 | if the shell is running a shell script and a SIGINT is received | |
5603 | while waiting for a foreground job, even if that job does not | |
5604 | die from the SIGINT | |
5605 | ||
5606 | jobs.c, nojobs.c | |
5607 | - make get_tty_state reset $LINES and $COLUMNS after each process | |
5608 | exits if the variable `check_window_size' is non-zero | |
5609 | ||
5610 | builtins/shopt.def | |
5611 | - new variable `checkwinsize', which controls the value of | |
5612 | check_window_size | |
5613 | ||
5614 | doc/{bash.{1,html},features.texi} | |
5615 | - updated description of `shopt' to include `checkwinsize' | |
5616 | ||
5617 | execute_cmd.c, lib/readline,complete.c | |
5618 | - some changes from the GNU WIN32 project for the bash port to | |
5619 | Windows NT and Windows 95 | |
5620 | ||
5621 | bashwait.h | |
5622 | - new file, with `union wait' defines from jobs.h | |
5623 | ||
5624 | jobs.h | |
5625 | - include `bashwait.h' if <sys/wait.h> is not present and | |
5626 | _POSIX_VERSION is not defined | |
5627 | - removed define of pid_t for non-Posix systems; now provided by | |
5628 | autoconf in config.h | |
5629 | ||
5630 | 1/31 | |
5631 | ---- | |
5632 | parse.y | |
5633 | - new temporary delimiter stack, used when decoding prompt strings. | |
5634 | This is needed so command substitutions in the prompt strings | |
5635 | (especially PS2) don't screw up the parser's quoting state | |
5636 | ||
5637 | lib/readline/complete.c | |
5638 | - new variable for readline library users: | |
5639 | rl_completion_append_character. The value of this variable is | |
5640 | the character appended to a completion when it occurs at the | |
5641 | end of a line. Setting it to '\0' causes nothing to be | |
5642 | appended. | |
5643 | ||
5644 | lib/readline/readline.h | |
5645 | - declaration for rl_completion_append_character | |
5646 | ||
5647 | lib/readline/doc/rltech.texinfo | |
5648 | - documented rl_completion_append_character as int variable available | |
5649 | to library users | |
5650 | ||
5651 | subst.c | |
5652 | - new code for maintaining a string array saying which words in the | |
5653 | output of expand_word_list_internal are the result of globbing | |
5654 | ||
5655 | variables.c | |
5656 | - new function put_gnu_argv_flags_into_env (pid, flags_string) | |
5657 | to put Roland's GNU getopt helper variable into the export_env | |
5658 | ||
5659 | execute_cmd.c | |
5660 | - in execute_disk_command, after forking the child, put the GNU | |
5661 | getopt helper environment variable into the child's export_env | |
5662 | ||
5663 | unwind_prot.c | |
5664 | - changed unwind_protect_var and restore_variable to do the | |
5665 | bcopy of the variable's value if it's shorter than the size of | |
5666 | an int, as well as if it's longer. This keeps stray data | |
5667 | from being copied if a short is being unwind-protected | |
5668 | ||
5669 | unwind_prot.h | |
5670 | - new define, unwind_protect_short, to protect variables smaller | |
5671 | than an int | |
5672 | ||
5673 | jobs.c | |
5674 | - in the code that handles SIGCHLD traps, call unwind_protect_short | |
5675 | if that is the size of a pid_t (for last_made_pid) | |
5676 | ||
5677 | 2/5 | |
5678 | --- | |
5679 | Makefile.in | |
5680 | - only try make distclean in HIST_LIBDIR if Makefile exists -- could | |
5681 | have already been removed if HIST_LIBDIR is the same as RL_LIBDIR | |
5682 | ||
5683 | general.c | |
5684 | - make canonicalize_pathname be more careful about what it checks | |
5685 | for being a directory name when processing a full pathname | |
5686 | ||
5687 | Makefile.in, configure.in, doc/Makefile.in | |
5688 | - small changes to get bash to build better in a directory not the | |
5689 | source directory | |
5690 | ||
5691 | 2/12 | |
5692 | ---- | |
5693 | Makefile.in | |
5694 | - added `install-strip' target | |
5695 | ||
5696 | 2/14 | |
5697 | ---- | |
5698 | doc/bash.{1,html}, doc/features.texi | |
5699 | - documented the `--verbose' startup option | |
5700 | ||
5701 | lib/readline/complete.c | |
5702 | - fix to gen_completion_matches to fix a memory leak | |
5703 | - fix to rl_complete_internal to fix a memory leak | |
5704 | ||
5705 | 2/15 | |
5706 | ---- | |
5707 | bashwait.h | |
5708 | - changed to use WORDS_BIGENDIAN instead of LITTLE_ENDIAN or | |
5709 | BIG_ENDIAN | |
5710 | ||
5711 | configure.in, config.h.in | |
5712 | - call AC_C_BIGENDIAN, define WORDS_BIGENDIAN | |
5713 | ||
5714 | Makefile.in | |
5715 | - remove all references to mkendian.c, mkendian, and bash_endian.h | |
5716 | - added a `symlinks' target that just runs support/fixlinks | |
5717 | ||
5718 | MANIFEST | |
5719 | - mkendian.c is no longer in the distribution | |
5720 | ||
5721 | 2/16 | |
5722 | ---- | |
5723 | execute_cmd.c | |
5724 | - include <sys/times.h> if HAVE_SYS_TIMES_H and HAVE_TIMES are | |
5725 | defined | |
5726 | ||
5727 | bashline.c | |
5728 | - fix to bash_directory_completion_hook to compensate for | |
5729 | canonicalize_pathname returning NULL | |
5730 | ||
5731 | variables.c | |
5732 | - fix to initialize_shell_variables to compensate for | |
5733 | canonicalize_pathname returning NULL | |
5734 | ||
5735 | 2/22 | |
5736 | ---- | |
5737 | tests/test-tests, tests/test.right | |
5738 | - changes to avoid writing in the source directory -- all temp files | |
5739 | are created in /tmp | |
5740 | ||
5741 | [First alpha release at Thu Feb 22 15:59:51 EST 1996] | |
5742 | ||
5743 | 2/23 | |
5744 | ---- | |
5745 | lib/readline/rldefs.h | |
5746 | - work around SVR4.2 bug including <sys/ptem.h> and <termios.h> | |
5747 | ||
5748 | lib/readline/chardefs.h | |
5749 | - fix to CTRL_CHAR macro for chars > 128 on systems with signed | |
5750 | characters | |
5751 | ||
5752 | builtins/ulimit.def | |
5753 | - protect more of the RLIMIT_* defines with checks | |
5754 | - new macro RETINVALID() to set errno and return the correct | |
5755 | value for an invalid request | |
5756 | ||
5757 | doc/Makefile.in | |
5758 | - add a definition for INSTALL, set by autoconf | |
5759 | ||
5760 | 2/26 | |
5761 | ---- | |
5762 | support/bashbug.sh | |
5763 | - if USER is unset, assign it the value of $LOGNAME or `whoami` | |
5764 | ||
5765 | Makefile.in,{lib/*,doc,builtins}/Makefile.in | |
5766 | - use `test' instead of `[' to conform to GNU coding standards | |
5767 | - `incdir' -> `includedir' as per latest GNU coding standards | |
5768 | ||
5769 | lib/readline/Makefile.in, lib/glob/Makefile.in | |
5770 | - use $(srcdir)/ instead of $(srcdir) in the CSOURCES variable | |
5771 | ||
5772 | general.h | |
5773 | - new define, FS_NODIRS, to not find directory names when searching | |
5774 | $PATH | |
5775 | ||
5776 | execute_cmd.c | |
5777 | - fix to find_in_path_element so it does not return directories | |
5778 | - executable_file() no longer returns directories as executable | |
5779 | ||
5780 | 2/27 | |
5781 | ---- | |
5782 | jobs.h | |
5783 | - new flag value: J_NOHUP | |
5784 | ||
5785 | jobs.c | |
5786 | - new function: nohup_job(job). Sets J_NOHUP flag for specified | |
5787 | job | |
5788 | - change hangup_all_jobs so that jobs marked J_NOHUP are not | |
5789 | sent SIGHUP. If stopped, the job still gets SIGCONT. | |
5790 | - changed calls to report_error to call internal_error, which will | |
5791 | not exit the shell | |
5792 | - changed FIND_CHILD define to call internal_error, restore the | |
5793 | SIGINT handler, set termination_state to 127 and return, rather | |
5794 | than aborting the shell | |
5795 | ||
5796 | builtins/jobs.def | |
5797 | - new option for disown: `-h'. Marks the specified jobs J_NOHUP. | |
5798 | ||
5799 | doc/{bash.{1,html},features.texi} | |
5800 | - added description of `disown -h' | |
5801 | ||
5802 | jobs.c, nojobs.c | |
5803 | - include some files needed for struct winsize by SCO | |
5804 | ||
5805 | lib/readline/input.c | |
5806 | - added some #ifdefs to avoid including <sys/time.h> on systems | |
5807 | with select but without <sys/select.h> | |
5808 | ||
5809 | configure.in | |
5810 | - check for <stdarg.h>, define HAVE_STDARG_H in config.h if found | |
5811 | ||
5812 | config.h.bot | |
5813 | - define USE_VARARGS and either PREFER_STDARG or PREFER_VARARGS | |
5814 | if one of <stdarg.h> or <varargs.h> is present | |
5815 | ||
5816 | aclocal.m4 | |
5817 | - moved default mail directory check here from configure.in, macro | |
5818 | name is BASH_DEFAULT_MAIL_DIR | |
5819 | - rewrote BASH_CHECK_DEV_FD to cache the value | |
5820 | - minor fixes from Bruno Haible | |
5821 | ||
5822 | shell.c | |
5823 | - no longer includes <varargs.h> | |
5824 | ||
5825 | builtins/Makefile.in | |
5826 | - add -I$(topdir)/builtins to list of includes | |
5827 | ||
5828 | execute_cmd.c, lib/glob/glob.c | |
5829 | - include memalloc.h for correct alloca definitions | |
5830 | ||
5831 | error.[ch], print_cmd.c, builtins/common.[ch] | |
5832 | - changes to include new ANSI-C stdargs code if PREFER_STDARG is | |
5833 | defined | |
5834 | ||
5835 | 2/28 | |
5836 | ---- | |
5837 | aclocal.m4 | |
5838 | - more minor fixes from Andreas Schwab | |
5839 | ||
5840 | doc/Makefile.in | |
5841 | - change TEXINPUTS makefile variables to TEXINPUTDIR to avoid | |
5842 | conflict with shell variable of the same name | |
5843 | ||
5844 | builtins/pushd.def | |
5845 | - fix to avoid a bad call to free after a call to | |
5846 | polite_directory_format does not change its argument string | |
5847 | ||
5848 | lib/readline/bind.c | |
5849 | - fixes to _rl_macro_dumper_internal so that it prints whatever | |
5850 | prefix it's passed, if any | |
5851 | ||
5852 | 2/29 | |
5853 | ---- | |
5854 | Makefile.in | |
5855 | - slight change to the rule for `stamp-h': it should be created by | |
5856 | running `config.status', not explicitly by the makefile rule | |
5857 | ||
5858 | builtins/Makefile.in | |
5859 | - replace `..' in the dependencies with `$(topdir)' | |
5860 | - replace `.' in the dependencies with `$(srcdir)' | |
5861 | ||
5862 | 3/1 | |
5863 | --- | |
5864 | Makefile.in | |
5865 | - add a rule to build builtins/builtext.h for the benefit of | |
5866 | deficient makes like the SunOS one | |
5867 | ||
5868 | variables.c | |
5869 | - fix to assign_in_env so that values in the environment are | |
5870 | properly null-terminated | |
5871 | ||
5872 | builtins/Makefile.in | |
5873 | - added dependencies for object files made from .c files in this | |
5874 | directory: common.o, getopt.o, bashgetopt.o. SunOS /bin/make | |
5875 | doesn't seem to be able to handle anything else | |
5876 | ||
5877 | support/mkclone | |
5878 | - new script to replace clone-bash that works from MANIFEST to link | |
5879 | only those files contained in a distribution | |
5880 | ||
5881 | support/mkversion.c | |
5882 | - change so that it doesn't try to get `.build' from the source | |
5883 | directory when that's different from the build directory | |
5884 | ||
5885 | 3/4 | |
5886 | --- | |
5887 | bashjmp.h | |
5888 | - #undef setjmp and longjmp before redefining them as sigsetjmp and | |
5889 | siglongjmp, respectively | |
5890 | ||
5891 | bashhist.c | |
5892 | - fixed an uninitialized variable problem in expand_histignore_pattern | |
5893 | ||
5894 | builtins/set.def | |
5895 | - used `on_or_off' where `value' was needed in minus_o_option_commands | |
5896 | ||
5897 | builtins/common.h | |
5898 | - added extern declaration for set_var_attribute | |
5899 | ||
5900 | print_cmd.c | |
5901 | - include `bashansi.h' instead of just string.h or strings.h | |
5902 | ||
5903 | builtins/*.def, builtins/common.c | |
5904 | - include `../bashansi.h' where appropriate | |
5905 | ||
5906 | parse.y | |
5907 | - fixed a parenthesization problem in alias_expand_token | |
5908 | ||
5909 | general.h | |
5910 | - added extern declaration for `ungetc_with_restart' | |
5911 | ||
5912 | lib/readline/readline.c | |
5913 | - renamed LibraryVersion to rl_library_version, made it extern, | |
5914 | assigned `2.1' to it | |
5915 | ||
5916 | lib/readline/readline.h | |
5917 | - extern declaration for `rl_library_version' | |
5918 | ||
5919 | lib/readline/doc/rltech.texinfo | |
5920 | - added description of `rl_library_version' | |
5921 | ||
5922 | lib/glob/glob.c | |
5923 | - changed call to sprintf in glob_dir_to_array to a couple of | |
5924 | calls to strcpy, since we keep the length of the first string | |
5925 | we copy | |
5926 | ||
5927 | 3/7 | |
5928 | --- | |
5929 | aclocal.m4 | |
5930 | - added new macro `BASH_FUNC_LSTAT' to check for lstat on Linux, | |
5931 | which defines it as an inline function in <sys/stat.h> | |
5932 | ||
5933 | configure.in | |
5934 | - call BASH_FUNC_LSTAT if $ac_cv_func_lstat has value `no' | |
5935 | ||
5936 | 3/8 | |
5937 | --- | |
5938 | parse.y | |
5939 | - changed the occurrences of `list' in the if command productions | |
5940 | to use `compound_list' instead | |
5941 | ||
5942 | 3/11 | |
5943 | ---- | |
5944 | parse.y | |
5945 | - changed the occurrences of `list' in the while and until command | |
5946 | productions to use `compound_list' | |
5947 | ||
5948 | lib/readline/complete.c | |
5949 | - fix to filename_completion_function -- off-by-one error when | |
5950 | expand-tilde is enabled and a filename to be completed begins | |
5951 | with `~/' | |
5952 | ||
5953 | 3/12 | |
5954 | ---- | |
5955 | builtins/cd.def | |
5956 | - made the POSIX.2 behavior of PWD not containing symlinks after | |
5957 | using $CDPATH part of `posix mode', not default shell behavior | |
5958 | ||
5959 | lib/readline/display.c | |
5960 | - fix to update_line to handle update problems when using | |
5961 | horizontal scroll mode. This is a dumb update solution -- it | |
5962 | should use a better one | |
5963 | ||
5964 | 3/14 | |
5965 | ---- | |
5966 | examples/functions/csh-compat | |
5967 | - replaced the defintion for `alias' with a better one posted to | |
5968 | usenet by Mohit Aron <aron@cs.rice.edu> | |
5969 | ||
5970 | 3/15 | |
5971 | ---- | |
5972 | jobs.c | |
5973 | - fix to wait_for_background_pids to keep `wait' from hanging | |
5974 | ||
5975 | 3/19 | |
5976 | ---- | |
5977 | lib/readline/input.c | |
5978 | - new function `_rl_input_available()' returns > 0 if there is | |
5979 | input available on the readline input file descriptor. Only | |
5980 | works if select(2) or FIONREAD are available | |
5981 | ||
5982 | lib/readline/isearch.c | |
5983 | - slight change to the isearch termination behavior -- ESC still | |
5984 | terminates the search, but if there is pending input or if input | |
5985 | arrives within 0.1 seconds (on systems with select(2)) it is | |
5986 | used as a prefix character with rl_execute_next | |
5987 | ||
5988 | shell.c | |
5989 | - the GNU coding standards say to write the output generated by | |
5990 | the --help command line option to stdout, not stderr | |
5991 | - show_shell_version now takes an `extended' option that displays | |
5992 | copyright information if non-zero | |
5993 | - show_shell_version now prints the value of `MACHTYPE' by default | |
5994 | - the `--version' option now causes the shell to exit successfully | |
5995 | after printing the extended version information | |
5996 | ||
5997 | externs.h | |
5998 | - changed prototype for show_shell_version | |
5999 | ||
6000 | shell.c, bashline.c, builtins/help.def | |
6001 | - changed calls to show_shell_version to add appropriate argument | |
6002 | ||
6003 | Makefile.in | |
6004 | - pass a `MACHTYPE' define to the compiler | |
6005 | ||
6006 | 3/22 | |
6007 | ---- | |
6008 | general.c | |
6009 | - changed print_timeval() and print_time_in_hz() to output three | |
6010 | fractional digits after the decimal point | |
6011 | ||
6012 | examples/loadables/sleep.c | |
6013 | - changed to an implementation that will sleep fractional portions | |
6014 | of seconds if select() is available | |
6015 | ||
6016 | 3/25 | |
6017 | ---- | |
6018 | builtins/shopt.def | |
6019 | - fixes to shopt -o from Andreas Schwab. Use FLAG_ON/FLAG_OFF | |
6020 | instead of SETOPT/UNSETOPT | |
6021 | ||
6022 | 3/26 | |
6023 | ---- | |
6024 | Makefile.in, builtins/Makefile.in | |
6025 | - use `@includedir@' instead of `@incdir' for autoconf 2.9 | |
6026 | ||
6027 | Makefile.in | |
6028 | - the `info', `dvi', and `ps' targets do not depend on `texindex' | |
6029 | - add a `dist' target that just prints a message describing how | |
6030 | distributions are constructed | |
6031 | ||
6032 | support/mkdirs | |
6033 | - replace uses of [...] with `test' | |
6034 | ||
6035 | 3/28 | |
6036 | ---- | |
6037 | parse.y | |
6038 | - fix for a problem with \@ prompt expansion from Tim Mooney | |
6039 | ||
6040 | jobs.c | |
6041 | - broke the code that prints a pipeline out into a separate | |
6042 | function: print_pipeline(). This gets called by | |
6043 | pretty_print_job and can be used for debugging | |
6044 | - two new functions to save and restore the_pipeline around calls | |
6045 | to make_child that you don't want to disturb the current pipeline, | |
6046 | for example in process substitution | |
6047 | ||
6048 | subst.c | |
6049 | - changed process_substitute to call save_pipeline and | |
6050 | restore_pipeline in the appropriate places | |
6051 | ||
6052 | 3/29 | |
6053 | ---- | |
6054 | general.c | |
6055 | - ansicstr now takes an additional parameter, the length of the | |
6056 | string to be translated. It's the second paramter. | |
6057 | ||
6058 | builtins/echo.def | |
6059 | - changed call to ansicstr to pass strlen(list->word->word) | |
6060 | ||
6061 | parse.y | |
6062 | - redid the $'...' expansion so it works like it's supposed to: | |
6063 | the quoted strings may appear anywhere in a token, and multiple | |
6064 | ansi-c quoted strings may appear in a token | |
6065 | - redid the $"..." expansion so it works like it's supposed to | |
6066 | ||
6067 | tests/nquote.{tests,right}, tests/run-nquote | |
6068 | - tests for the $'...' and $"..." quoting stuff -- simple-minded | |
6069 | ||
6070 | subst.c | |
6071 | - on systems without /dev/fd, open the named pipe for a `reading | |
6072 | in child' process substitution (>(...)) with O_NONBLOCK | |
6073 | ||
6074 | lib/posixheaders/filecntl.h | |
6075 | - add code to make sure the O_NONBLOCK is defined to O_NDELAY if | |
6076 | it is present and O_NONBLOCK is not defined by <fcntl.h> | |
6077 | ||
6078 | general.c | |
6079 | - don't bother handling both O_NONBLOCK and O_NDELAY in | |
6080 | unset_nodelay_mode, since filecntl.h defines O_NONBLOCK as | |
6081 | O_NDELAY for non-Posix systems | |
6082 | ||
6083 | 4/1 | |
6084 | --- | |
6085 | lib/readline/funmap.c | |
6086 | - made `vi-fetch-history' a bindable command name | |
6087 | ||
6088 | doc/readline.3 | |
6089 | - many cleanups, updated the list of default bindings | |
6090 | ||
6091 | 4/4 | |
6092 | --- | |
6093 | doc/bash.1, doc/readline.3 | |
6094 | - fixed up use of \-; now it is not used unless the text is being | |
6095 | printed in bold or italic | |
6096 | ||
6097 | configure.in, config.h.in | |
6098 | - add a configuration option, --enable-usg-echo-default, to turn | |
6099 | on DEFAULT_ECHO_TO_USG and make `echo' expand backslash-escaped | |
6100 | characters by default | |
6101 | ||
6102 | 4/8 | |
6103 | --- | |
6104 | parse.y | |
6105 | - another small change to localeexpand to handle backslash-escaped | |
6106 | double quotes in the double-quoted string | |
6107 | ||
6108 | 4/9 | |
6109 | --- | |
6110 | shell.c | |
6111 | - add the value of MACHTYPE to the text output by `--help' | |
6112 | ||
6113 | 4/11 | |
6114 | ---- | |
6115 | parse.y | |
6116 | - more changes to the $"..." and $'...' code to move it into | |
6117 | read_token | |
6118 | - don't try to check token[token_index - 1] unless token_index | |
6119 | is greater than 0 | |
6120 | ||
6121 | 4/12 | |
6122 | ---- | |
6123 | trap.c | |
6124 | - new function run_trap_cleanup to clean up after _run_trap_internal | |
6125 | in the event that parse_and_execute does not return normally | |
6126 | (e.g., if a `return' is executed in the trap command) | |
6127 | - set running_trap to the number of the signal whose trap is being | |
6128 | run plus one in _run_trap_internal | |
6129 | ||
6130 | trap.h | |
6131 | - extern declaration for run_trap_cleanup | |
6132 | ||
6133 | jobs.c | |
6134 | - new function `unfreeze_jobs_list' to set freeze_jobs_list back to 0. | |
6135 | called from parse_and_execute_cleanup so a `return' while running | |
6136 | an interrupt trap does not leave the jobs list frozen | |
6137 | ||
6138 | jobs.h | |
6139 | - new extern declaration for unfreeze_jobs_list | |
6140 | ||
6141 | builtins/common.c | |
6142 | - if running_trap is non-zero in parse_and_execute_cleanup, indicating | |
6143 | that parse_and_execute was running a trap command when it got a | |
6144 | `return', call run_trap_cleanup (running_trap - 1) | |
6145 | - parse_and_execute_cleanup now calls unfreeze_jobs_list | |
6146 | ||
6147 | 4/16 | |
6148 | ---- | |
6149 | Makefile.in | |
6150 | - don't try to make `doc' as a dependency of `install' | |
6151 | ||
6152 | doc/Makefile.in | |
6153 | - make `info' a dependency of `install' to make sure the info | |
6154 | document is present and up to date before installing it | |
6155 | - make the `install' target install the documents with a $(srcdir)/ | |
6156 | prefix in case we're building in another directory | |
6157 | ||
6158 | lib/glob/glob.c | |
6159 | - fixed an off-by-one error in glob_dir_to_array | |
6160 | ||
6161 | shell.c | |
6162 | - removed an extra increment of arg_index when setting up the | |
6163 | arguments for -c command | |
6164 | ||
6165 | 4/17 | |
6166 | ---- | |
6167 | pathexp.c | |
6168 | - made quote_globbing_chars backslash-quote backslashes as well as | |
6169 | `?*[]'; changed it to be a little faster | |
6170 | ||
6171 | bashhist.c | |
6172 | - call quote_globbing_chars to quote backslashes in the previous | |
6173 | history line even if no other globbing chars are present. This | |
6174 | is done only if we're matching against a HISTIGNORE pattern of `&' | |
6175 | - don't bother quoting globbing characters in the current history | |
6176 | line in history_should_ignore -- fnmatch ignores special chars in | |
6177 | its `string' argument | |
6178 | ||
6179 | [bash-2.0-alpha2 frozen] | |
6180 | ||
6181 | 4/18 | |
6182 | ---- | |
6183 | command.h | |
6184 | - new flag value for a word: W_NOSPLIT. A word with this bit set | |
6185 | in its flags will not have word splitting performed | |
6186 | ||
6187 | parse.y | |
6188 | - turn on the W_NOSPLIT flags for assignment statements appearing | |
6189 | where an assignment statement is acceptable (words that would | |
6190 | return ASSIGNMENT_WORD rather than WORD). This means that, for | |
6191 | the time being, assignment statement arguments to builtins like | |
6192 | `declare' or `alias' will be split unless they are quoted | |
6193 | ||
6194 | subst.c | |
6195 | - don't split a word in expand_word_internal if the W_NOSPLIT flag | |
6196 | is set, rather than checking W_ASSIGNMENT; do the same thing in | |
6197 | expand_word_list_internal | |
6198 | ||
6199 | builtins.h | |
6200 | - a new flag, ASSIGNMENT_BUILTIN, indicating that this builtin takes | |
6201 | assignment statements as arguments | |
6202 | - rearranged the values of the builtin flags, so the BUILTIN_* flags | |
6203 | come first, then the *_BUILTIN flags | |
6204 | ||
6205 | builtins/makebuiltins.c | |
6206 | - added code for an array of `assignment builtins' -- builtins that | |
6207 | take assignment statements as arguments -- and to add the | |
6208 | ASSIGNMENT_BUILTIN flag for those builtins | |
6209 | ||
6210 | execute_cmd.c | |
6211 | - added a hack function `fix_assignment_words', which checks the | |
6212 | first word of a builtin command to see if it is a builtin that | |
6213 | has the ASSIGNMENT_BUILTIN flag set, and adds W_NOSPLIT to the | |
6214 | flags for all words with the W_ASSIGNMENT bit set. This means | |
6215 | that word splitting is not done for any of the assignment | |
6216 | statements in commands like `declare z=$a' | |
6217 | ||
6218 | 4/19 | |
6219 | ---- | |
6220 | execute_cmd.c | |
6221 | - fixed a memory-freed-twice error in find_in_path_element | |
6222 | ||
6223 | lib/readline/rltty.c | |
6224 | - include <sys/ioctl.h> if GWINSZ_IN_SYS_IOCTL is defined and | |
6225 | SHELL is not defined | |
6226 | ||
6227 | lib/readline/input.c | |
6228 | - changed a stray HAVE_FIONREAD to FIONREAD | |
6229 | - include <sys/ioctl.h> if FIONREAD_IN_SYS_IOCTL is defined | |
6230 | ||
6231 | aclocal.m4 | |
6232 | - new macro, BASH_HAVE_FIONREAD, to check for a #define of | |
6233 | FIONREAD in <sys/ioctl.h> or one of the files it includes; | |
6234 | defines FIONREAD_IN_SYS_IOCTL if present | |
6235 | ||
6236 | config.h.in | |
6237 | - new line for FIONREAD_IN_SYS_IOCTL | |
6238 | ||
6239 | configure.in | |
6240 | - call BASH_HAVE_FIONREAD | |
6241 | ||
6242 | 4/22 | |
6243 | ---- | |
6244 | builtins/cd.def | |
6245 | - fixed a memory-freed-twice error in mkpath() | |
6246 | ||
6247 | jobs.c | |
6248 | - don't print a job termination message for a non-interactive shell | |
6249 | with startup_state == 2 (those shells are started to run commands | |
6250 | when bash is invoked with `-c command') | |
6251 | ||
6252 | 4/23 | |
6253 | ---- | |
6254 | general.h | |
6255 | - definition for a `generic pointer' type PTR_T -- `void *' on ANSI | |
6256 | C systems, `char *' otherwise | |
6257 | ||
6258 | jobs.h | |
6259 | - new members of job struct: `j_cleanup', a function to call when the | |
6260 | job is marked JDEAD, and `cleanarg', argument to pass to j_cleanup | |
6261 | ||
6262 | jobs.c | |
6263 | - initialize j_cleanup and cleanarg to NULL in stop_pipeline | |
6264 | - call j_cleanup from waitchld() when a job is marked JDEAD | |
6265 | ||
6266 | test.c | |
6267 | - fixed binop() so it recognizes `<' and `>' as binary operators | |
6268 | - fixed a bug in binary_operator so `<' works correctly | |
6269 | ||
6270 | tests/test-tests | |
6271 | - fixed the tests so they no longer rely on the modes of files in | |
6272 | the file system to test -u, -g, -r, -x, -w, and so on, except | |
6273 | for a few `standard' files like /dev/tty and /dev/null | |
6274 | - added tests for string < string and string > string | |
6275 | ||
6276 | xmalloc.c | |
6277 | - include <unistd.h> if HAVE_UNISTD_H is defined for a prototype | |
6278 | for sbrk | |
6279 | - add an extern declaration for sbrk if SBRK_DECLARED is not defined | |
6280 | - use PTR_T to cast the return value of sbrk() when finding out where | |
6281 | the break is and how many bytes of memory have been allocated | |
6282 | ||
6283 | lib/malloc/malloc.c | |
6284 | - added code to write 0xcf into memory as it's freed, to uncover | |
6285 | callers that try to refer to freed memory, and writes 0xdf into | |
6286 | newly-allocated memory, to uncover callers that assume something | |
6287 | about new allocations (e.g., that newmem[0] == 0) | |
6288 | ||
6289 | lib/malloc/gmalloc.c | |
6290 | - latest version from GNU sources | |
6291 | ||
6292 | 4/25 | |
6293 | ---- | |
6294 | doc/bash.1 | |
6295 | - changed the description of `unset' to include a description of | |
6296 | the `-v' option | |
6297 | ||
6298 | parse.y | |
6299 | - fixed a problem with conversion to 12-hour time in | |
6300 | decode_prompt_string that made 12:00pm show up as 00:00pm | |
6301 | ||
6302 | 4/26 | |
6303 | ---- | |
6304 | builtins/common.c, subst.c | |
6305 | - a couple of fixes from Andreas Schwab | |
6306 | ||
6307 | configure.in | |
6308 | - set up the minimal configuration after checking for | |
6309 | --enable-minimal-config with AC_ARG_ENABLE, before checking any | |
6310 | of the other options, instead of after checking all options. | |
6311 | This makes `--enable-minimal-config --enable-prompt-string-decoding' | |
6312 | work as documented | |
6313 | - changed AC_PREREQ to require autoconf version 2.8 or higher | |
6314 | - added some code to disable gnu malloc by default on the systems | |
6315 | listed in NOTES | |
6316 | - set MALLOC_SRC to have the $(ALLOC_LIBSRC)/ prefix to avoid having | |
6317 | a directory in the dependencies when making without the gnu | |
6318 | malloc | |
6319 | ||
6320 | lib/malloc/Makefile.in | |
6321 | - make gmalloc.o depend on $(BUILD_DIR)/config.h | |
6322 | ||
6323 | 4/30 | |
6324 | ---- | |
6325 | COMPAT | |
6326 | - new file listing user-visible incompatibilites between bash-1.14 | |
6327 | and bash-2.0 | |
6328 | ||
6329 | parse.y | |
6330 | - new prompt expansions, \v (version) and \V (version + patchlevel) | |
6331 | ||
6332 | config.h.top | |
6333 | - the default value of PS1 is now '\s-\v\$ ' | |
6334 | ||
6335 | doc/{bash.{1,html},features.texi} | |
6336 | - added descriptions of \v and \V prompt expansions | |
6337 | - changed default value of PS1 | |
6338 | ||
6339 | Makefile.in | |
6340 | - added dependencies on config.h.top for files that use definitions | |
6341 | included there | |
6342 | ||
6343 | builtins/exec.def | |
6344 | - removed reference to `no_exit_on_failed_exec' from the help text | |
6345 | ||
6346 | 5/3 | |
6347 | --- | |
6348 | builtins/cd.def | |
6349 | - fixed a typo in fix from 4/22 | |
6350 | ||
6351 | 5/7 | |
6352 | --- | |
6353 | builtins/common.c | |
6354 | - new function `no_options (WORD_LIST *)' to be called by builtins | |
6355 | that do not take options to check for options and -?. It returns | |
6356 | 0 on success, non-zero if an unwanted option is supplied | |
6357 | ||
6358 | builtins/common.h | |
6359 | - extern declaration for no_options | |
6360 | ||
6361 | builtins/return.def | |
6362 | - corrected the error message to include returning from a sourced | |
6363 | script | |
6364 | ||
6365 | builtins/{getopts,eval,wait,source,fg_bg,help}.def | |
6366 | - changed the following builtins to either call no_options or test | |
6367 | explicitly for options and return EX_USAGE if any are found: | |
6368 | ||
6369 | getopts eval wait source . fg bg help | |
6370 | ||
6371 | builtins/help.def | |
6372 | - error messages are now printed using builtin_error | |
6373 | ||
6374 | 5/8 | |
6375 | --- | |
6376 | builtins/jobs.def | |
6377 | - fixed an unitialized variable problem | |
6378 | ||
6379 | tests/more-exp.tests | |
6380 | - added additional tests for IFS problem uncovered by `iffe' | |
6381 | ||
6382 | 5/9 | |
6383 | --- | |
6384 | lib/malloc/Makefile.in | |
6385 | - use $(ALLOCA_SOURCE) instead of $< in rule that builds alloca.o. | |
6386 | Some makes don't expand the $< in non-suffix rules | |
6387 | ||
6388 | lib/readline/rldefs.h | |
6389 | - fix workaround for SVR4.2 bug | |
6390 | ||
6391 | shell.c | |
6392 | - even though SVR4.2 has getpeername(), isnetconn() should not use it | |
6393 | ||
6394 | maxpath.h | |
6395 | - rework to make sure PATH_MAX and NAME_MAX are defined, and remove | |
6396 | the BUILDING_MAKEFILE code | |
6397 | ||
6398 | general.c, parse.y, oslib.c, jobs.c, builtins/common.c, builtins/cd.def | |
6399 | - change uses of MAXPATHLEN to PATH_MAX | |
6400 | ||
6401 | examples/loadables/{{log,base,dir}name,tty,pathchk,tee}.c | |
6402 | - new loadable builtins: | |
6403 | ||
6404 | logname basename dirname tty pathchk tee | |
6405 | ||
6406 | configuure.in, config.h.in | |
6407 | - look for tzset(3), define HAVE_TZSET if found | |
6408 | ||
6409 | subst.c | |
6410 | - new special variable function, sv_tz, which calls tzset when | |
6411 | TZ is changed, if tzset(3) exists and the shell is compiled | |
6412 | to do prompt string decoding | |
6413 | ||
6414 | subst.h | |
6415 | - extern declaration for sv_tz | |
6416 | ||
6417 | 5/10 | |
6418 | ---- | |
6419 | builtins/echo.def | |
6420 | - only call printf if the string to print is non-null | |
6421 | - add an fflush(stdout) after the printf call to work around a | |
6422 | bug in SunOS 5.5 | |
6423 | ||
6424 | 5/16 | |
6425 | ---- | |
6426 | shell.c | |
6427 | - moved some variable declarations out of this file to more | |
6428 | logical places | |
6429 | ||
6430 | support/config.guess | |
6431 | - small fixes from rfg@monkeys.com | |
6432 | ||
6433 | version.c | |
6434 | - moved functions for getting, setting, and displaying shell version | |
6435 | information here from shell.c | |
6436 | ||
6437 | general.c | |
6438 | - moved set_lines_and_columns to variables.c | |
6439 | - moved getc_with_restart and ungetc_with_restart to input.c | |
6440 | - new function argv_to_word_list(), converts an array of strings | |
6441 | into a WORD_LIST | |
6442 | - renamed find_name_in_list to find_name_in_array to match rest | |
6443 | of functions that operate on arrays of strings | |
6444 | ||
6445 | configure.in, Makefile.in, jobs.c, nojobs.c | |
6446 | - changes so that jobs.c no longer includes nojobs.c, and the correct | |
6447 | object file (jobs.o or nojobs.o) is selected by configure | |
6448 | and substituted into the Makefile | |
6449 | ||
6450 | list.c | |
6451 | - new file, list manipulation functions from general.c | |
6452 | ||
6453 | externs.h, general.h | |
6454 | - moved extern declarations for functions defined in oslib.c and | |
6455 | list.c to externs.h from general.h | |
6456 | ||
6457 | 5/17 | |
6458 | ---- | |
6459 | locale.c | |
6460 | - new file, with locale code from parse.y and shell.c | |
6461 | ||
6462 | shell.c | |
6463 | - don't turn off job control if act_like_sh is set | |
6464 | - if an unknown option is supplied at startup or if -c is | |
6465 | supplied without an argument, exit with EX_USAGE | |
6466 | - call posix_initialize after parsing all the options, to | |
6467 | catch `bash -o posix' | |
6468 | - new functions: init_interactive(), init_noninteractive() | |
6469 | - exit with EX_NOTFOUND if a script argument is not found | |
6470 | - exit with EX_NOINPUT if a script file cannot be opened for | |
6471 | some reason | |
6472 | ||
6473 | shell.h | |
6474 | - new define for EX_NOINPUT exit status (126) | |
6475 | ||
6476 | 5/18 | |
6477 | ---- | |
6478 | lib/readline/bind.c | |
6479 | - fixed _rl_get_keyname() so that it properly handles C-\ and outputs | |
6480 | it as \C-\\ and C-" as \C-\". This fixes the improper binding | |
6481 | commands written by `bind -p' that caused weird things to happen | |
6482 | when people used the output of `bind -p' as a start for their | |
6483 | own inputrc files | |
6484 | - new function _rl_init_file_error to print error messages encountered | |
6485 | while parsing the inputrc file | |
6486 | - print out an error message if parsing an inputrc line and no closing | |
6487 | double quote is found for a key binding | |
6488 | ||
6489 | lib/readline/complete.c | |
6490 | - in rl_complete_internal, if the completion function results in | |
6491 | multiple matches, but none match up to even the first character, | |
6492 | use what the user typed in (which is presumably a glob pattern | |
6493 | that expanded into multiple files) as matches[0]. This makes | |
6494 | things like show-all-if-ambiguous work right, too | |
6495 | ||
6496 | oslib.c | |
6497 | - if we are providing our own version of getenv(), provide a function | |
6498 | _getenv() as well, which just calls getenv() | |
6499 | ||
6500 | builtins/ulimit.def | |
6501 | - #define _KERNEL before including <sys/resource.h> if HPUX is | |
6502 | defined. This makes the full set of limits available on hpux | |
6503 | version 8 and above | |
6504 | ||
6505 | bashline.c | |
6506 | - new function, enable_hostname_completion, sets up readline to | |
6507 | perform or not perform hostname completion. Hostname completion | |
6508 | is on by default. | |
6509 | - don't attempt hostname completion in attempt_shell_completion() | |
6510 | unless perform_hostname_completion is set | |
6511 | ||
6512 | builtins/shopt.def | |
6513 | - add a `set_func' member to the shopt options structure, to provide | |
6514 | a hook for those variables that require a little more than just | |
6515 | toggling a variable on or off | |
6516 | - new shopt variable `hostcomplete', turns hostname completion on and | |
6517 | off | |
6518 | ||
6519 | doc/{bash.{1,html},features.texi} | |
6520 | - added description of new shopt `hostcomplete' variable | |
6521 | ||
6522 | 5/21 | |
6523 | ---- | |
6524 | sig.c | |
6525 | - don't try to save the shell history in termination_unwind_protect | |
6526 | if we're dying due to SIGABRT | |
6527 | ||
6528 | bashhist.c | |
6529 | - new functions: last_history_entry (static), last_history_line | |
6530 | ||
6531 | bashhist.h | |
6532 | - extern declarations for new functions in bashhist.c | |
6533 | ||
6534 | error.c | |
6535 | - have programming_error() report the last command in the history | |
6536 | before aborting | |
6537 | ||
6538 | builtins/fc.def | |
6539 | - if the editor returns a non-zero exit status when using `fc -e', | |
6540 | return immediately without trying to execute the commands, as | |
6541 | per Posix.2, 5.12.2 | |
6542 | - when using `fc -s', echo the command to be executed to stderr, | |
6543 | not stdout | |
6544 | ||
6545 | lib/readline/terminal.c | |
6546 | - new file, with all code related to termcap/terminfo | |
6547 | ||
6548 | lib/readline/{readline,rltty,display,util}.c | |
6549 | - moved functions dealing with termcap to terminal.c | |
6550 | ||
6551 | lib/readline/readline.c | |
6552 | - readline_initialize_everything now calls _rl_enable_meta_key() | |
6553 | to turn on the meta key, based on the value of _rl_enable_meta | |
6554 | (on by default) | |
6555 | ||
6556 | lib/readline/rltty.c | |
6557 | - do not enable and disable the meta key each time readline is | |
6558 | called; do it once at initialization | |
6559 | ||
6560 | 5/23 | |
6561 | ---- | |
6562 | bashhist.c | |
6563 | - when `hist_verify' is set, call re_edit with the expanded line, | |
6564 | not the original one, and do not print the results of the | |
6565 | expansion before re-editing | |
6566 | ||
6567 | 5/24 | |
6568 | ---- | |
6569 | support/config.guess | |
6570 | - recognize linux/sparc | |
6571 | ||
6572 | configure.in | |
6573 | - don't use GNU malloc on linux/sparc | |
6574 | ||
6575 | variables.c | |
6576 | - initialize a new $MACHTYPE variable to the value of MACHTYPE as | |
6577 | set by autoconf | |
6578 | ||
6579 | doc/{bash.{1,html},features.texi} | |
6580 | - documented $MACHTYPE | |
6581 | ||
6582 | 5/30 | |
6583 | ---- | |
6584 | builtins/ulimit.def | |
6585 | - allow the max vm size to be set via setrlimit() if RLIMIT_VMEM | |
6586 | is defined | |
6587 | ||
6588 | 5/31 | |
6589 | ---- | |
6590 | shell.h | |
6591 | - changed EX_USAGE to 258, EX_BADUSAGE is now 2 | |
6592 | - added a number of execution failure statuses, so that builtins | |
6593 | can indicate various failures. All are greater than 256, so | |
6594 | they cannot be returned by other utilities | |
6595 | ||
6596 | execute_cmd.c | |
6597 | - new function, builtin_status(), to translate the new return | |
6598 | status codes to something the shell can export | |
6599 | - changed execute_simple_command to call builtin_status after | |
6600 | execute_builtin_or_function to translate error codes if a | |
6601 | builtin is invoked. If a function or regular builtin is | |
6602 | invoked, all return values greater than EX_SHERRBASE get | |
6603 | translated to EXECUTION_FAILURE, with the exception that | |
6604 | EX_USAGE gets translated to EX_BADUSAGE. If a special | |
6605 | builtin failed with a status > EX_SHERRBASE, special_builtin_failed | |
6606 | is set to cause the shell to exit in POSIX mode | |
6607 | - changed execute_builtin_or_function to return EX_REDIRFAIL if | |
6608 | redirections fail | |
6609 | - changed execute_subshell_builtin_or_function to translate | |
6610 | EX_USAGE to EX_BADUSAGE if a builtin is executed | |
6611 | - set this_command_name to NULL in execute_for_command before binding | |
6612 | each member of the word list to the loop variable, to avoid | |
6613 | garbled error messages if the variable has the integer attribute | |
6614 | ||
6615 | builtins/{set,unset}.def | |
6616 | - return EX_USAGE instead of EXECUTION_FAILURE if a bad option is | |
6617 | supplied | |
6618 | ||
6619 | builtins/source.def | |
6620 | - return EX_USAGE instead of EXECUTION_FAILURE if the required | |
6621 | filename argument is missing | |
6622 | ||
6623 | builtins/setattr.def | |
6624 | - return EX_BADASSIGN if any assignment statements given as arguments | |
6625 | to readonly, export, etc. return failures (assignment to | |
6626 | non-identifier, assignment to readonly variable) | |
6627 | ||
6628 | builtins/declare.def | |
6629 | - don't allow `declare var=value' to assign value to a readonly | |
6630 | variable | |
6631 | ||
6632 | lib/readline/rldefs.h | |
6633 | - include <stdarg.h> if we're going to be using stdarg instead of | |
6634 | varargs | |
6635 | ||
6636 | lib/readline/display.c | |
6637 | - added `stdarg' version of rl_message | |
6638 | ||
6639 | lib/readline/readline.h | |
6640 | - changed extern declaration for rl_message to be in ANSI-C format | |
6641 | if __STDC__ is defined and we're using stdarg | |
6642 | ||
6643 | variables.c | |
6644 | - make sure this_command_name is set to null before calling | |
6645 | make_variable_value in assign_array_var_from_string so any | |
6646 | error messages are not garbled | |
6647 | ||
6648 | 6/2 | |
6649 | --- | |
6650 | builtins/common.c | |
6651 | - don't execute the command in parse_and_execute if -n has been | |
6652 | enabled and the shell is not interactive | |
6653 | - include flags.h for read_but_dont_execute | |
6654 | ||
6655 | [bash-2.0-alpha3 released] | |
6656 | ||
6657 | 6/5 | |
6658 | --- | |
6659 | subst.c | |
6660 | - array_length_reference and parameter_brace_expand_length now | |
6661 | return -1 on errors | |
6662 | - parameter_brace_expand now returns &expand_param_error if | |
6663 | paramter_brace_expand_length returns something < 0 | |
6664 | ||
6665 | variables.c | |
6666 | - assign_in_env now checks for assignments to readonly shell | |
6667 | variables and disallows them | |
6668 | ||
6669 | 6/6 | |
6670 | --- | |
6671 | xmalloc.c | |
6672 | - only do pointer arithmetic on pointers cast to (char *), since | |
6673 | it's not required that compilers support arithmetic on void * | |
6674 | ||
6675 | shell.c | |
6676 | - make sure <sys/socket.h> is included with the same conditions | |
6677 | used to call getpeername(2) in isnetconn() | |
6678 | ||
6679 | parse.y | |
6680 | - added a new function, paren_match, to parse the contents of $(...) | |
6681 | constructs. This function correctly handles embedded quoted | |
6682 | strings, embedded command substitutions, embedded command | |
6683 | substitutions with embedded quoted strings, etc. The implementation | |
6684 | is much closer to that described in POSIX.2, section 3.6.3. | |
6685 | - changed read_token_word to call paren_match where appropriate | |
6686 | ||
6687 | subst.c | |
6688 | - rewrote extract_delimited_string so that it correctly understands | |
6689 | quoted strings inside command substitutions, a la paren_match | |
6690 | in parse.y. Corrected the description of the function's output | |
6691 | in the code. extract_delimited_string is now very recursive, and | |
6692 | does not try to do everything in one pass without recursion | |
6693 | ||
6694 | 6/7 | |
6695 | --- | |
6696 | test.c | |
6697 | - fixed three_arguments() to test the second argument for a valid | |
6698 | binary operator before checking whether or not the first argument | |
6699 | is `!'. This is what POSIX.2 says to do. | |
6700 | ||
6701 | lib/malloc/malloc.c | |
6702 | - don't compile in the memory scrambling code (#define MEMSCRAMBLE) | |
6703 | if NO_MEMSCRAMBLE is defined. | |
6704 | ||
6705 | configure.in | |
6706 | - define NO_MEMSCRAMBLE in LOCAL_CFLAGS for SCO 3.2v[45] | |
6707 | ||
6708 | 6/9 | |
6709 | --- | |
6710 | parse.y | |
6711 | - renamed paren_match to parse_matched_pair | |
6712 | - call parse_matched_pair to parse <(...) and >(...) constructs, | |
6713 | since those should be treated the same as $(...) for the purposes | |
6714 | of matching parens and skipping embedded quoted strings | |
6715 | ||
6716 | 6/13 | |
6717 | ---- | |
6718 | parse.y | |
6719 | - augmented parse_matched_pair | |
6720 | o fixed up backslash quoting and CTLESC handling after | |
6721 | backslashes | |
6722 | o match pairs of ${...} and $[...] inside double-quoted | |
6723 | strings or `` strings | |
6724 | o keep track of line number quoted string starts on for | |
6725 | better error messages | |
6726 | o push and pop delimiters when parsing quoted strings | |
6727 | inside $(...), ${...}, and $[...] for use by the | |
6728 | history code | |
6729 | o set EOF_Reached to 1 if we get an EOF before finding the | |
6730 | match closer | |
6731 | - rewrote read_token_word from scratch to use parse_matched_pair: | |
6732 | o shell quote characters use parse_matched_pair to find | |
6733 | the matching quote | |
6734 | o fixed up backslash parsing code | |
6735 | o compound array assignments use parse_matched_pair | |
6736 | o corrected all_digits and dollar_present computations, so, | |
6737 | for instance, 2''>/dev/null is no longer accepted as | |
6738 | identical to 2>/dev/null | |
6739 | o converted ${...} parsing to use parse_matched_pair | |
6740 | o removed printing of error messages about unmatched quotes; | |
6741 | now handled by parse_matched_pair | |
6742 | o converted $'...' and $"..." to use parse_matched_pair | |
6743 | o removed all of the delimited_xxx and dollar_xxx variables | |
6744 | and embedded_quoted_string | |
6745 | - modified report_syntax_error to regularize error messages: | |
6746 | o non-interactive shells and interactive shells running | |
6747 | scripts with `.' now always report line numbers | |
6748 | o unexpected EOF is always reported when EOF_Reached is true | |
6749 | o non-interactive shells no longer duplicate the script name | |
6750 | in error messages (e.g., `./z3: ./z3: line 3: syntax error') | |
6751 | ||
6752 | bashline.c | |
6753 | - make sure `newnames' is freed in _ignore_completion_names | |
6754 | ||
6755 | lib/readline/complete.c | |
6756 | - don't insert the first match on TAB completion in | |
6757 | rl_complete_internal() if matches[0] is the empty string -- | |
6758 | that will overwrite whatever the user has typed, if dequoting | |
6759 | what the user typed results in the empty string | |
6760 | ||
6761 | execute_cmd.c | |
6762 | - include <limits.h> if HAVE_LIMITS_H is defined for ARG_MAX | |
6763 | - only put the special environment variable for GNU getopt into | |
6764 | the environment if ARG_MAX exceeds 10240 | |
6765 | ||
6766 | subst.c | |
6767 | - rewrote extract_dollar_brace_string so that it fully obeys | |
6768 | the POSIX.2 rules for finding the closing `}' and uses | |
6769 | skip_{single,double}_quoted rather than trying to do it with | |
6770 | inline delimiters | |
6771 | - removed the INC_NEST and DEC_NEST defines | |
6772 | ||
6773 | 6/14 | |
6774 | ---- | |
6775 | jobs.c | |
6776 | - don't print status messages for background jobs that complete | |
6777 | successfully when running shell scripts | |
6778 | ||
6779 | builtins/shopt.def | |
6780 | - when using shopt -o as a synonym for set -o, make sure $SHELLOPTS | |
6781 | is updated | |
6782 | - make sure to update $SHELLOPTS when using shopt to set or unset | |
6783 | interactive comments | |
6784 | ||
6785 | execute_cmd.c | |
6786 | - fixed find_in_path_element to not return non-executable files | |
6787 | when FS_EXEC_PREFERRED is one of the flags, after saving such | |
6788 | a file as file_to_lose_on (fix from william@nscs.fast.net) | |
6789 | ||
6790 | 6/17 | |
6791 | ---- | |
6792 | lib/readline/complete.c | |
6793 | - after printing possible completions, all lines of a multi-line | |
6794 | prompt are redisplayed using rl_forced_update_display() | |
6795 | ||
6796 | subst.c | |
6797 | - in expand_word_internal, only do tilde expansion on words where | |
6798 | (flags & (W_ASSIGNMENT|W_QUOTED)) == W_ASSIGNMENT (unquoted | |
6799 | assignment statements) and contain unquoted `=~' or `:~', and | |
6800 | only if posixly_correct is off. POSIX.2 says that only the | |
6801 | assignments preceding the command name should be tilde-expanded. | |
6802 | ||
6803 | 6/18 | |
6804 | ---- | |
6805 | support/config.guess | |
6806 | - recognize the new Pyramid DC-OSx as `mips-pyramid-sysv4' | |
6807 | ||
6808 | configure.in | |
6809 | - set LOCAL_CFLAGS to -Xa for mips-pyramid-sysv4 as per | |
6810 | Peter Chubb | |
6811 | ||
6812 | subst.c | |
6813 | - variable assignment errors when there is not a command name | |
6814 | after the assignments now causes a non-interactive shell to | |
6815 | exit in POSIX.2 mode | |
6816 | ||
6817 | execute_cmd.c | |
6818 | - if the iteration variable in a for statement is a read-only | |
6819 | variable, a variable assignment error occurs. This causes | |
6820 | non-interactive shells to exit in posix mode, and a failure | |
6821 | status to be returned for other non-interactive shells and | |
6822 | interactive shells | |
6823 | - if the selection variable in a select statement is a read-only | |
6824 | variable, a variable assignment error occurs, with the same | |
6825 | consequences as a for statement variable assignment error | |
6826 | ||
6827 | doc/bashref.* | |
6828 | - renamed features.* to bashref.*, since that more accurately | |
6829 | reflects the current contents | |
6830 | ||
6831 | 6/19 | |
6832 | ---- | |
6833 | test.c | |
6834 | - changed three_arguments() to do one-argument tests on $1 and | |
6835 | $3 and return the appropriate values if -a or -o is given as | |
6836 | the second argument | |
6837 | - changed three_arguments() to perform a one-argument test on | |
6838 | $2 if $1 == '(' and $3 == ')' and return that result | |
6839 | - make sure test_stat translates /dev/fd/xx to DEV_FD_PREFIX/xx | |
6840 | so /dev/fd/0 always means the same thing, even on linux, | |
6841 | which uses /proc/self/fd | |
6842 | ||
6843 | aclocal.m4 | |
6844 | - added a check for libncurses in BASH_CHECK_LIB_TERMCAP | |
6845 | ||
6846 | configure.in | |
6847 | - added an initial message saying we're configuring for bash-2.0 | |
6848 | ||
6849 | lib/glob/fnmatch.c | |
6850 | - made a small change to fnmatch() to fix a bug matching patterns | |
6851 | with multiple consecutive `*'s | |
6852 | ||
6853 | 6/20 | |
6854 | ---- | |
6855 | parse.y | |
6856 | - inhibit history expansion when calling pre_process_line() from | |
6857 | shell_getc() if the current delimiter is a single quote, even | |
6858 | if we're on a different line than the opening quote | |
6859 | - make sure read_a_line prints a prompt if we're interactive and | |
6860 | not using readline, and make sure we call clearerr() if we | |
6861 | get EOF when interactive and not using readline | |
6862 | ||
6863 | bashhist.c | |
6864 | - new function history_expansion_p(char *) returns 1 if the string | |
6865 | passed contains the history expansion or history substitution | |
6866 | characters | |
6867 | - pre_process_line() now calls history_expansion_p and calls | |
6868 | the history expansion code only if that returns 1 | |
6869 | ||
6870 | 6/26 | |
6871 | ---- | |
6872 | lib/readline/isearch.c | |
6873 | - swap the behavior of ^J and ^M when i-searching. ^J now terminates | |
6874 | the search without accepting the line. ^M terminates the search | |
6875 | and accepts the line, executing the command | |
6876 | ||
6877 | examples/loadables/sprintf.c | |
6878 | - new `sprintf' builtin: sprintf var format [args...] | |
6879 | ||
6880 | lib/readline/readline.c | |
6881 | - added a line in _rl_dispatch that sets _rl_suppress_redisplay if | |
6882 | the function is rl_insert and there is input available | |
6883 | ||
6884 | 6/27 | |
6885 | ---- | |
6886 | builtins/getopts.def | |
6887 | - new function, getopts_bind_variable(), used when assigning a value | |
6888 | to the user-supplied variable passed to getopts(). It makes sure | |
6889 | that that variable name is legal and prints an error message if it | |
6890 | is not | |
6891 | ||
6892 | builtins/getopt.c | |
6893 | - don't increment sh_optind until after we've checked whether or not | |
6894 | the current option character appears in the list of options passed | |
6895 | to getopts by the user | |
6896 | ||
6897 | 6/28 | |
6898 | ---- | |
6899 | variables.c | |
6900 | - added a new parameter to print_var_value: QUOTE. If it's non-zero | |
6901 | and the variable's value contains shell metacharacters, quote the | |
6902 | value so it can be read back in | |
6903 | ||
6904 | variables.h | |
6905 | - changed extern declaration for print_var_value | |
6906 | ||
6907 | siglist.h | |
6908 | - if SYS_SIGLIST_DECLARED is not defined, but HAVE_UNDER_SYS_SIGLIST | |
6909 | is, only declare sys_siglist as extern char *sys_siglist[] if | |
6910 | sys_siglist is not `#define'd | |
6911 | ||
6912 | parse.y | |
6913 | - make sure a reserved word is acceptable before returning `}' as | |
6914 | a token from special_case_tokens, even if the token read so far | |
6915 | is "}" | |
6916 | - make reset_parser set allow_open_brace to 0 | |
6917 | ||
6918 | 7/1 | |
6919 | --- | |
6920 | test.c | |
6921 | - fixed binop to not try to read s[3] if s[2] == '\0'. There are | |
6922 | no one-character binary operators that begin with `-' | |
6923 | ||
6924 | variables.c | |
6925 | - fixed kill_all_local_variables to do nothing if variable_context | |
6926 | is >= local_variable_stack_size (indicating that we do have some | |
6927 | local variables, but not at this level of function nesting, and | |
6928 | we are beyond the end of the array allocated the last time we | |
6929 | had local variables) | |
6930 | ||
6931 | 7/2 | |
6932 | --- | |
6933 | execute_cmd.c | |
6934 | - non-interactive shells in posix mode should exit if the variable | |
6935 | in a for command is not a valid identifier. This should really | |
6936 | be caught by the parser | |
6937 | - non-interactive shells in posix mode should exit if a function | |
6938 | name is not a valid identifier. This should also be caught by | |
6939 | the parser | |
6940 | ||
6941 | 7/3 | |
6942 | --- | |
6943 | jobs.c | |
6944 | - non-interactive shells should ignore stopped children, so | |
6945 | waitchld() should set waitpid_flags to WUNTRACED only if the | |
6946 | shell is interactive and it's not a subshell environment | |
6947 | ||
6948 | lib/readline/signals.c | |
6949 | - if not being compiled as part of the shell, readline should | |
6950 | catch SIGTERM and clean up | |
6951 | ||
6952 | shell.c | |
6953 | - change to isnetconn: on Solaris 2.5, getpeername() can return | |
6954 | EINVAL rather than ENOTSOCK if the fd passed as the first | |
6955 | argument is not a socket | |
6956 | ||
6957 | 7/5 | |
6958 | --- | |
6959 | lib/readline/complete.c | |
6960 | - new variable, available to library users, to inhibit completion | |
6961 | and cause the completion character to be inserted into the | |
6962 | line with self-insert: rl_inhibit_completion. Set to 0 by default. | |
6963 | ||
6964 | lib/readline/readline.h | |
6965 | - extern declaration for rl_inhibit_completion | |
6966 | ||
6967 | lib/readline/doc/rltech.texinfo | |
6968 | - documented rl_inhibit_completion | |
6969 | ||
6970 | lib/readline/bind.c | |
6971 | - new readline user variable: disable-completion. This provides | |
6972 | users a way to toggle the value of rl_inhibit_completion | |
6973 | ||
6974 | doc/{bash.{1,html},readline.3}, lib/readline/doc/rluser.texinfo | |
6975 | - documented disable-completion variable | |
6976 | ||
6977 | lib/readline/doc/Makefile | |
6978 | - added `html' target to create html from rlman.texinfo and | |
6979 | hist.texinfo | |
6980 | ||
6981 | 7/8 | |
6982 | --- | |
6983 | builtins/cd.def | |
6984 | - only try cd spelling correction if the shell is currently | |
6985 | interactive, regardless of value of `cdspell' option | |
6986 | ||
6987 | lib/posixheaders/alloca.h | |
6988 | - AIX 4.2 needs `#pragma alloca' if gcc is not being used | |
6989 | ||
6990 | 7/9 | |
6991 | --- | |
6992 | builtins/getopts.def | |
6993 | - return EXECUTION_FAILURE from getopts if it's trying to assign | |
6994 | to a read-only variable | |
6995 | - reset sh_badopt to zero in getopts_reset() | |
6996 | ||
6997 | builtins/getopt.c | |
6998 | - new variable, sh_badopt, set to 1 if we find an illegal option | |
6999 | - do the increment of sh_optind if sh_badopt is non-zero and we're | |
7000 | at the end of the option string at the beginning of sh_getopt(). | |
7001 | The increment is deferred until the next call so $OPTIND is | |
7002 | correct | |
7003 | ||
7004 | builtins/getopt.h | |
7005 | - extern declaration of sh_badopt | |
7006 | ||
7007 | 7/10 | |
7008 | ---- | |
7009 | Makefile.in | |
7010 | - don't pass ALLOCA_SOURCE or ALLOCA_OBJECT to the make in lib/malloc | |
7011 | - don't make libmalloc.a depend on ALLOCA_DEP -- it causes some | |
7012 | compilers to build alloca.o in the top directory, and if ALLOCA | |
7013 | is not defined, makes the malloc library depend on a directory | |
7014 | ||
7015 | aclocal.m4 | |
7016 | - some small changes to make the output look better | |
7017 | ||
7018 | memalloc.h | |
7019 | - made some small changes suggested by the autoconf documentation | |
7020 | ||
7021 | 7/11 | |
7022 | ---- | |
7023 | parse.y | |
7024 | - swapped meanings of \h and \H in prompt_string_decode for | |
7025 | bash-1.14.6 compatibility | |
7026 | ||
7027 | doc/{bash.{1,html},bashref.texi} | |
7028 | - updated prompt string decoding section with swap of \h and \H | |
7029 | ||
7030 | general.c | |
7031 | - print_timeval and print_time_in_hz now accept a FILE * as the | |
7032 | first argument, so `times' can print to stdout while `time' | |
7033 | prints to stderr | |
7034 | ||
7035 | execute_cmd.c | |
7036 | - changed time_command to print the timing statistics to stderr | |
7037 | ||
7038 | builtins/times.def | |
7039 | - added the FILE * argument to the calls to print_timeval and | |
7040 | print_time_in_hz | |
7041 | ||
7042 | support/texi2html | |
7043 | - upgraded to version 1.50 | |
7044 | ||
7045 | error.c | |
7046 | - include bashhist.h if HISTORY is defined for declarations of | |
7047 | last_history_line() and remember_on_history | |
7048 | ||
7049 | lib/glob/glob.c | |
7050 | - add a `#pragma alloca' as the first thing in the file if we're | |
7051 | not using gcc and _AIX is defined | |
7052 | ||
7053 | lib/posixheaders/memalloc.h | |
7054 | - remove the `#pragma alloca' stuff; it is done in the C source | |
7055 | files now, to avoid problems with other AIX header file | |
7056 | declarations | |
7057 | ||
7058 | 7/12 | |
7059 | ---- | |
7060 | lib/readline/rltty.c | |
7061 | - some changes to work around AIX 4.2 bugs (sometimes OPOST is unset | |
7062 | in termios, sometimes FLUSHO is inexplicably set in termios, etc.) | |
7063 | ||
7064 | 7/15 | |
7065 | ---- | |
7066 | lib/readline/rltty.c | |
7067 | - make SETATTR use TCSADRAIN on POSIX machines. This setting is | |
7068 | supposed to be used for changes that affect output | |
7069 | ||
7070 | [bash-2.0-alpha4 released] | |
7071 | ||
7072 | 7/16 | |
7073 | ---- | |
7074 | trap.c | |
7075 | - changed reset_or_restore_signal_handlers to honor traps before | |
7076 | special signals, so that `trap "" 2' works right and causes | |
7077 | children to ignore SIGINT | |
7078 | ||
7079 | locale.c | |
7080 | - added lc_all variable to track the value of LC_ALL | |
7081 | - added new functions: set_default_locale_vars, set_locale_var, | |
7082 | set_lang, get_locale_var, removed get_current_messages_locale | |
7083 | ||
7084 | subst.h | |
7085 | - added extern declaration for sv_locale | |
7086 | ||
7087 | subst.c | |
7088 | - LC_ALL, LC_CTYPE, LC_MESSAGES, and LANG are now special variables; | |
7089 | sv_locale() is called when they are assigned a value | |
7090 | ||
7091 | shell.c | |
7092 | - call set_default_locale_vars after initializing the shell variables | |
7093 | in main(), so LC_CTYPE and LC_MESSAGES (if present) have values | |
7094 | - shell.c does not need to include <locale.h> | |
7095 | ||
7096 | general.c | |
7097 | - changed print_timeval and print_time_in_hz to format their output | |
7098 | as Posix.2 specifies for `time -p' if the new POSIX_TIME argument | |
7099 | is non-zero | |
7100 | ||
7101 | parse.y | |
7102 | - new grammar production: timespec, to handle `time' and `time -p' | |
7103 | - change to special_case_tokens so that -p after `time' returns | |
7104 | TIMEOPT | |
7105 | ||
7106 | execute_cmd.c | |
7107 | - set posix_time in time_command if the command's flags include | |
7108 | CMD_TIME_POSIX | |
7109 | - call print_timeval and print_time_in_hz with posix_time as | |
7110 | the new third argument | |
7111 | - use a space to separate the word (`real') and the time if we're | |
7112 | in posix mode. This is what POSIX.2 defines for `time -p' | |
7113 | ||
7114 | builtins/times.def | |
7115 | - call print_timeval and print_time_in_hz with 0 as the new third | |
7116 | argument | |
7117 | ||
7118 | command.h | |
7119 | - new flag: CMD_TIME_POSIX, used to handle `time -p' | |
7120 | ||
7121 | doc/{bash.{1,html},bashref.texi} | |
7122 | - documented `time -p' | |
7123 | ||
7124 | 7/17 | |
7125 | ---- | |
7126 | support/mkversion.c | |
7127 | - include `config.h' before any other include files | |
7128 | ||
7129 | parse.y | |
7130 | - initialize was_dollar to 0 in parse_matched_pair | |
7131 | ||
7132 | configure.in | |
7133 | - removed duplicate check for <sys/file.h> from call to | |
7134 | AC_HAVE_HEADERS | |
7135 | ||
7136 | sig.c | |
7137 | - include siglist.h so we can find out if it defines HAVE_SYS_SIGLIST | |
7138 | ||
7139 | siglist.h | |
7140 | - define HAVE_SYS_SIGLIST if we end up defining sys_siglist as | |
7141 | _sys_siglist (Solaris 2.[45]) | |
7142 | ||
7143 | siglist.c | |
7144 | - include "siglist.h" before testing whether or not HAVE_SYS_SIGLIST | |
7145 | is defined; it may be defined in there (Solaris 2.[45]) | |
7146 | ||
7147 | 7/19 | |
7148 | ---- | |
7149 | examples/misc/alias-conv.sh | |
7150 | - updated, now uses code from examples/functions/csh-compat to do | |
7151 | the alias conversion, uses `command' builtin in functions it | |
7152 | creates, does some substitution of csh special variables to | |
7153 | bash equivalents | |
7154 | ||
7155 | examples/misc/cshtobash | |
7156 | - a more ambitious script that attempts to convert csh aliases, | |
7157 | environment variables, and local variables to bash equivalents | |
7158 | ||
7159 | 7/22 | |
7160 | ---- | |
7161 | bashline.c | |
7162 | - added `:' to the set of completion word break characters so that | |
7163 | individual directories in $PATH assignments can be completed | |
7164 | ||
7165 | aclocal.m4 | |
7166 | - added a new macro, BASH_CC_WORKS, that aborts configuration if | |
7167 | ${CC} can't compile a simple program successfully | |
7168 | ||
7169 | configure.in | |
7170 | - call BASH_CC_WORKS before doing anything else | |
7171 | ||
7172 | 7/23 | |
7173 | ---- | |
7174 | execute_cmd.c | |
7175 | - fixed select_query to print the prompt ($PS3) to stderr | |
7176 | ||
7177 | support/bashbug.sh | |
7178 | - workaround for bug in SunOS 5.x /bin/sh that causes it to | |
7179 | not ignore interrupts while waiting for a foreground process | |
7180 | to exit | |
7181 | ||
7182 | 7/24 | |
7183 | ---- | |
7184 | general.c | |
7185 | - added new functions to decompose `timeval's and `clock_t's into | |
7186 | seconds and thousandths of seconds: timeval_to_secs and | |
7187 | clock_t_to_secs | |
7188 | - changed print_timeval and print_time_in_hz to call timeval_to_secs | |
7189 | and clock_t_to_secs, respectively | |
7190 | - removed no-longer-used third argument for print_timeval and | |
7191 | print_time_in_hz -- `time' output is now done in execute_cmd.c | |
7192 | ||
7193 | general.h | |
7194 | - new extern declarations for timeval_to_secs and clock_t_to_secs | |
7195 | ||
7196 | builtins/times.def | |
7197 | - changed calls to print_timeval and print_time_in_hz, removing the | |
7198 | no-longer-used third argument | |
7199 | ||
7200 | execute_cmd.c | |
7201 | - changed the way time_command prints its output: it now interprets | |
7202 | a format string, replacing several escape sequences prefixed with | |
7203 | a `%' with the real, user, and system times. There are options in | |
7204 | the format string to ask for the `long' format that `times' uses | |
7205 | as well as to specify the number of places after the decimal point, | |
7206 | and whether to output fractional seconds at all | |
7207 | - time_command now uses the value of the `TIMEFORMAT' variable, if | |
7208 | present, to format the timing output. This is flexible enough to | |
7209 | encompass the bash default, posix `time -p', BSD, and SV time | |
7210 | formats | |
7211 | ||
7212 | 7/25 | |
7213 | ---- | |
7214 | Makefile.in | |
7215 | - `make clean' should delete the files listed in $(CREATED_SUPPORT); | |
7216 | `make mostlyclean' should not | |
7217 | ||
7218 | doc/{bash.{1,html},bashref.texi} | |
7219 | - fixed an error in the description of the effect that setting and | |
7220 | unsetting GLOBIGNORE has on the setting of the `dotglob' option | |
7221 | ||
7222 | doc/bashref.texi | |
7223 | - updated the section listing the major differences between bash | |
7224 | and the SVR4.2 shell | |
7225 | ||
7226 | lib/readline/readline.c | |
7227 | - removed the setting of _rl_suppress_redisplay, since it doesn't | |
7228 | really do anything yet | |
7229 | ||
7230 | oslib.c | |
7231 | - new function get_clk_tck (void), returns the value of _SC_CLK_TCK | |
7232 | if sysconf(3) is available, otherwise returns the value of | |
7233 | CLOCKS_PER_SEC (default 60) | |
7234 | ||
7235 | general.c | |
7236 | - moved CLOCKS_PER_SEC defines to oslib.c | |
7237 | - changed clock_t_to_secs to call get_clk_tck once to get the | |
7238 | right value to use | |
7239 | ||
7240 | externs.h | |
7241 | - extern declaration for get_clk_tck | |
7242 | ||
7243 | execute_cmd.c | |
7244 | - changed print_formatted_time so that a `%' at the end of the string | |
7245 | is output literally | |
7246 | - changed print_formatted_time to output a newline after the | |
7247 | translated format string, so it does not need to be included in | |
7248 | the format | |
7249 | - changed BASH_TIMEFORMAT (the default time format) to have a leading | |
7250 | newline to match ksh93 | |
7251 | ||
7252 | configure.in | |
7253 | - use `shlicc2' on BSD/OS machines | |
7254 | ||
7255 | 7/26 | |
7256 | ---- | |
7257 | doc/bash.html | |
7258 | - major overhaul, cleaned up text, corrected some minor HTML errors | |
7259 | ||
7260 | variables.c | |
7261 | - call sv_optind and sv_opterr to initialize the getopts stuff in | |
7262 | initialize_shell_variables | |
7263 | ||
7264 | 7/29 | |
7265 | ---- | |
7266 | shell.c | |
7267 | - don't let maybe_execute_file try to read files that are not | |
7268 | `regular files' | |
7269 | ||
7270 | 7/30 | |
7271 | ---- | |
7272 | parse.y | |
7273 | - cast `string' in yy_string_get() to unsigned char * to avoid | |
7274 | sign extension bugs. For example, bash -c $'ls\377who' | |
7275 | ||
7276 | ||
7277 | builtins/reserved.def | |
7278 | - add help text for the `time' reserved word | |
7279 | - deleted description of `HISTCONTROL' | |
7280 | - added descriptions for HISTIGNORE, PWD, HOSTNAME, GLOBIGNORE, | |
7281 | MACHTYPE | |
7282 | ||
7283 | 7/31 | |
7284 | ---- | |
7285 | builtins/common.c | |
7286 | - parse_and_execute saves and restores the line number around | |
7287 | calls, and resets it to 0 when pushing the string onto the | |
7288 | input stack | |
7289 | ||
7290 | parse.y | |
7291 | - added code that parses `` within a double-quoted string as a | |
7292 | single word | |
7293 | ||
7294 | 8/6 | |
7295 | --- | |
7296 | configure.in, config.h.in | |
7297 | - look for `textdomain' as well as `gettext' for internationalization | |
7298 | ||
7299 | locale.c | |
7300 | - when LC_MESSAGES is set, call textdomain as well as setlocale | |
7301 | - new variable `default_domain', used to track the value of | |
7302 | $TEXTDOMAIN | |
7303 | ||
7304 | subst.c | |
7305 | - call sv_locale when TEXTDOMAIN changes | |
7306 | ||
7307 | 8/7 | |
7308 | --- | |
7309 | error.c | |
7310 | - new function, sys_error(), which prints a formatted string followed | |
7311 | by a colon and strerror(errno) to stderr | |
7312 | ||
7313 | error.h | |
7314 | - extern declaration for sys_error | |
7315 | ||
7316 | jobs.c, nojobs.c, input.c, execute_cmd.c, subst.c | |
7317 | - changes to use sys_error() | |
7318 | ||
7319 | [many files] | |
7320 | - changes to many of the literal strings in the code for consistency | |
7321 | and easier potential translation | |
7322 | ||
7323 | 8/8 | |
7324 | --- | |
7325 | parse.y | |
7326 | - new function debug_parser(int) to toggle the value of yydebug | |
7327 | if YYDEBUG != 0 | |
7328 | ||
7329 | 8/9 | |
7330 | --- | |
7331 | oslib.c | |
7332 | - don't use CLOCKS_PER_SEC, just try to get CLK_TCK (60 by default) | |
7333 | ||
7334 | bashline.c | |
7335 | - set saved_history_line_to_use to -1 when it's not going to be used | |
7336 | rather than 0. A value of 0 can be confused with the first | |
7337 | history line | |
7338 | ||
7339 | builtins/evalstring.c | |
7340 | - moved parse_and_execute and auxiliary functions here from | |
7341 | builtins/common.c | |
7342 | ||
7343 | builtins/evalfile.c | |
7344 | - moved maybe_execute_file here from shell.c | |
7345 | ||
7346 | Makefile.in, builtins/Makefile.in | |
7347 | - changes necessitated by the new files | |
7348 | ||
7349 | 8/12 | |
7350 | ---- | |
7351 | builtins/common.c | |
7352 | - fixed an off-by-one bug in single_quote that could make bash | |
7353 | run off the end of a string if it consisted entirely of single | |
7354 | quotes | |
7355 | ||
7356 | 8/13 | |
7357 | ---- | |
7358 | shell.c | |
7359 | - moved code from main() to a new function: open_shell_script | |
7360 | - don't try to fclose(default_input) if BUFFERED_INPUT is defined | |
7361 | - moved argument binding code out of two places in main() and | |
7362 | open_shell_script() to a new function: bind_args(). This takes | |
7363 | an additional argument telling whether to bind starting at $0 | |
7364 | or $1 | |
7365 | - moved the code that calls the with_input_from_* functions into | |
7366 | a new function: set_bash_input | |
7367 | - moved the normal shell command-line option parsing code out of | |
7368 | main() into a new function: parse_shell_options | |
7369 | - moved the long option parsing code out of main() into a new | |
7370 | function: parse_long_options() | |
7371 | ||
7372 | general.c | |
7373 | - new function: move_to_high_fd(fd), which tries to move FD to a | |
7374 | file descriptor close to the allowed maximum, returning the new | |
7375 | fd and closing the old one (or returning the old one if something | |
7376 | goes wrong) | |
7377 | ||
7378 | general.h | |
7379 | - new extern declaration for move_to_high_fd | |
7380 | ||
7381 | variables.c | |
7382 | - moved indirection_level_string() here from shell.c | |
7383 | ||
7384 | jobs.c | |
7385 | - change initialize_jobs to use move_to_high_fd() instead of the | |
7386 | inline code to do the same thing | |
7387 | ||
7388 | 8/14 | |
7389 | ---- | |
7390 | lib/readline/readline.c | |
7391 | - add `en_US.ISO8859-1' to the list of legal LANG values that turns | |
7392 | on readline's 8-bit mode | |
7393 | ||
7394 | 8/15 | |
7395 | ---- | |
7396 | builtins/evalfile.c | |
7397 | - combined source_file and maybe_execute_file into a new function | |
7398 | _evalfile(fname, flags), where the flags select the appropriate | |
7399 | behavior | |
7400 | ||
7401 | eval.c | |
7402 | - moved the functions that perform the read-eval loop here from | |
7403 | shell.c | |
7404 | ||
7405 | execute_cmd.c | |
7406 | - changed CPU calculation for printing timing statistics using | |
7407 | ideas and code from Deven Corzine (deven@ties.org) | |
7408 | ||
7409 | eval.c, builtins/evalstring.c | |
7410 | - make sure we dispose of global_command if set -n is on and the | |
7411 | shell is not interactive | |
7412 | ||
7413 | 8/16 | |
7414 | ---- | |
7415 | variables.c | |
7416 | - make a new array variable, BASH_VERSINFO, with version information: | |
7417 | ||
7418 | BASH_VERSINFO[0] = release (2) | |
7419 | BASH_VERSINFO[1] = version (00) | |
7420 | BASH_VERSINFO[2] = patch level (0) | |
7421 | BASH_VERSINFO[3] = build version (1058) | |
7422 | BASH_VERSINFO[4] = release status (beta1) | |
7423 | BASH_VERSINFO[5] = $MACHTYPE (sparc-sun-sunos4.1.4) | |
7424 | ||
7425 | doc/{bash.{1,html},bashref.texi} | |
7426 | - Documented BASH_VERSINFO | |
7427 | ||
7428 | configure.in, config.h.in | |
7429 | - look for bindtextdomain(), set HAVE_BINDTEXTDOMAIN if found | |
7430 | ||
7431 | subst.c | |
7432 | - call sv_locale if TEXTDOMAINDIR is set or changes | |
7433 | ||
7434 | locale.c | |
7435 | - handle TEXTDOMAINDIR in set_locale_var; call bindtextdomain if | |
7436 | it is present | |
7437 | ||
7438 | tests/array.tests | |
7439 | - added calls to egrep to filter out BASH_VERSINFO and PIPESTATUS, | |
7440 | which can vary from system to system | |
7441 | ||
7442 | 8/19 | |
7443 | ---- | |
7444 | shell.c | |
7445 | - moved line_buffer_stream from here to oslib.c, made it into a | |
7446 | replacement for setlinebuf() if that is not available | |
7447 | ||
7448 | externs.h | |
7449 | - extern declaration for setlinebuf() | |
7450 | ||
7451 | lib/readline/input.c | |
7452 | - in rl_gather_tyi, punt if chars_avail < 0 after checking input fd | |
7453 | ||
7454 | 8/20 | |
7455 | ---- | |
7456 | builtins/suspend.def | |
7457 | - send SIGSTOP instead of SIGTSTP | |
7458 | ||
7459 | 8/21 | |
7460 | ---- | |
7461 | builtins/colon.def | |
7462 | - added true and false as builtins (undocumented) | |
7463 | ||
7464 | CWRU/POSIX.NOTES, doc/bashref.texi | |
7465 | - note that process substitution is not available in posix mode | |
7466 | ||
7467 | bashintl.h | |
7468 | - new header file for internationalization, included by locale.c | |
7469 | ||
7470 | 8/22 | |
7471 | ---- | |
7472 | subst.c | |
7473 | - in command_substitute, set istring to NULL before trying to | |
7474 | make the pipe, so if that fails, the code at error_exit: | |
7475 | doesn't try to free it | |
7476 | ||
7477 | execute_cmd.c | |
7478 | - when executing a shell script without a leading `#!' internally, | |
7479 | and the shell is not interactive, close the fd to the script | |
7480 | we're reading. If this is called by the exec builtin, the shell | |
7481 | will not have forked, and the fd will not have been closed, even | |
7482 | though it's marked close-on-exec | |
7483 | - if subshell_argv is non-null, free its members (except 0) and | |
7484 | subshell_argv in shell_execve before reassigning it | |
7485 | - dispose of currently_executing_command before jumping back to | |
7486 | subshell_top_level | |
7487 | ||
7488 | builtins/hash.def | |
7489 | - use a sentinel variable so we only initialize the hash table | |
7490 | once in initialize_filename_hashing | |
7491 | ||
7492 | shell.c | |
7493 | - don't flush the filename hash table in shell_reinitialize | |
7494 | - free dollar_vars[0] in set_shell_name before assigning it | |
7495 | - don't fetch the current hostname more than once | |
7496 | - don't fetch the current user information more than once unless | |
7497 | the uid changes | |
7498 | ||
7499 | parse.y | |
7500 | - initialize_bash_input should free bash_input.name if it is | |
7501 | non-null before zeroing it | |
7502 | ||
7503 | 8/23 | |
7504 | ---- | |
7505 | aclocal.m4 | |
7506 | - changed BASH_CHECK_SOCKLIB: if -lsocket is present, check for | |
7507 | and cache the existence of -lnsl. Define LIBS appropriately | |
7508 | based on the values of the cache variables rather than relying | |
7509 | on the autoconf tests to do it | |
7510 | ||
7511 | 8/26 | |
7512 | ---- | |
7513 | parse.y | |
7514 | - fix up yy_readline_get and yy_stream_get to fix the sign | |
7515 | extension problem | |
7516 | ||
7517 | shell.c | |
7518 | - move the setjmp(top_level) that catches early SIGINTs to the | |
7519 | first statement in main() | |
7520 | ||
7521 | Makefile.in | |
7522 | - added a `strip' target to strip the binary | |
7523 | ||
7524 | [bash-2.0-beta1 frozen] | |
7525 | ||
7526 | 8/27 | |
7527 | ---- | |
7528 | parse.y | |
7529 | - replaced several static state variables with a single flags word: | |
7530 | parser_state | |
7531 | ||
7532 | 8/28 | |
7533 | ---- | |
7534 | parse.y | |
7535 | - in read_token_word, combined the ${...} case with the other | |
7536 | expansion cases -- the code was identical | |
7537 | - added code to handle ksh-style ((...)) -- equivalent to | |
7538 | `let "..."'. In fact, the above construct is translated internally | |
7539 | into `let "..."', so error messages output by the evaluator | |
7540 | will contain `let' | |
7541 | ||
7542 | expr.c | |
7543 | - changed evalerror to call internal_error so the name of the | |
7544 | shell script is prefixed to the message, if necessary | |
7545 | ||
7546 | Makefile.in | |
7547 | - changed RELSTATUS to `beta2' | |
7548 | ||
7549 | tests/{arith,new-exp}.{tests,right} | |
7550 | - changed the expected error message because of the change in format | |
7551 | of the arithmetic evaluation error messages in expr.c | |
7552 | ||
7553 | builtins/pushd.def | |
7554 | - changed pushd_builtin so `pushd -' is equivalent to `pushd $OLDPWD' | |
7555 | ||
7556 | externs.h | |
7557 | - changed the extern declaration for setlinebuf() to avoid having | |
7558 | to include stdio.h before externs.h everywhere | |
7559 | ||
7560 | 8/29 | |
7561 | ---- | |
7562 | error.c | |
7563 | - new function, parser_error, for use by parts of the parser that | |
7564 | don't want to call report_syntax_error | |
7565 | ||
7566 | error.h | |
7567 | - extern declaration for parser_error | |
7568 | ||
7569 | parse.y | |
7570 | - changed some parts of the parser to use parser_error | |
7571 | - made the ((...)) code #ifdef'd on DPAREN_ARITHMETIC | |
7572 | ||
7573 | shell.c | |
7574 | - added a line to the --help output saying to use `bashbug' to | |
7575 | report bugs | |
7576 | ||
7577 | configure.in | |
7578 | - added new option: --enable-dparen-arithmetic; it controls | |
7579 | the DPAREN_ARITHMETIC define in config.h | |
7580 | - changed $host_os check for SCO to only enable -DWAITPID_BROKEN | |
7581 | for sco3.2v5; all other SCO versions enable -DMUST_UNBLOCK_CHILD | |
7582 | ||
7583 | config.h.in | |
7584 | - added line for DPAREN_ARITHMETIC, modified by configure | |
7585 | ||
7586 | doc/{bash.{1,html},bashref.texi} | |
7587 | - documented new ((...)) command and new configuration option | |
7588 | ||
7589 | execute_cmd.c | |
7590 | - shell_execve should not try to close default_buffered_input unless | |
7591 | it is >= 0. Other code that closes it and deallocates the buffer | |
7592 | should set default_buffered_input to -1 | |
7593 | ||
7594 | 8/30 | |
7595 | ---- | |
7596 | configure.in | |
7597 | - more changes to LOCAL_CFLAGS for sco machines | |
7598 | ||
7599 | error.c | |
7600 | - changed parser_error to handle all cases of the shell being | |
7601 | interactive, not interactive, reading from a script, and reading | |
7602 | from some other file | |
7603 | ||
7604 | parse.y | |
7605 | - changed report_syntax_error to call parser_error for consistent | |
7606 | messages | |
7607 | ||
7608 | dispose_cmd.c | |
7609 | - change dispose_command to use programming_error instead of | |
7610 | report_error | |
7611 | ||
7612 | execute_cmd.c, input.c, general.c | |
7613 | - changed calls to report_error to internal_error, since we don't | |
7614 | want to possibly exit in any of those cases | |
7615 | ||
7616 | 9/3 | |
7617 | --- | |
7618 | input.c | |
7619 | - changed the `localbuf' type to `unsigned char' | |
7620 | ||
7621 | parse.y | |
7622 | - changed yy_stream_get to use feof to test for end of file when | |
7623 | not using getc_with_restart | |
7624 | ||
7625 | 9/6 | |
7626 | --- | |
7627 | config.h.top | |
7628 | - added a commented-out define for SYS_BASH_LOGOUT, which is a | |
7629 | system-wide .bash_logout file, run when a login shell exits | |
7630 | - added /sbin to STANDARD_UTILS_PATH | |
7631 | ||
7632 | builtins/exit.def | |
7633 | - added support for SYS_BASH_LOGOUT | |
7634 | ||
7635 | 9/10 | |
7636 | ---- | |
7637 | lib/readline/{{chardefs,histlib}.h,{bind,histexpand,readline,util,vi_mode}.c} | |
7638 | - changed to_upper to _rl_to_upper and to_lower to _rl_to_lower | |
7639 | - changed digit_value to _rl_digit_value | |
7640 | - changed digit_p to _rl_digit_p | |
7641 | - changed uppercase_p and lowercase_p to _rl_uppercase_p and | |
7642 | _rl_lowercase_p respectively | |
7643 | - changed pure_alphabetic to _rl_pure_alphabetic | |
7644 | ||
7645 | support/zecho.c | |
7646 | - new file, implements a bare-bones echo (no -n, no \-escapes), | |
7647 | to be used by tests | |
7648 | ||
7649 | tests/rhs-exp.tests | |
7650 | - changed calls to echo to use recho to avoid errors when bash is | |
7651 | configured with --enable-usg-echo-default | |
7652 | ||
7653 | tests/more-exp.tests | |
7654 | - changed some calls to echo to use zecho to avoid errors when bash | |
7655 | is configured with --enable-usg-echo-default | |
7656 | ||
7657 | 9/11 | |
7658 | ---- | |
7659 | lib/readline/histexpand.c | |
7660 | - fixed a possible off-by-one error in history_expand_internal when | |
7661 | deciding whether or not to reallocate `result' | |
7662 | ||
7663 | expr.c | |
7664 | - fixed expcond() so that an assignment may be supplied as the | |
7665 | token after the `?' | |
7666 | - illegal bases now cause an evaluation error | |
7667 | - multiple base specifications now cause an evaluation error | |
7668 | ||
7669 | tests/arith.tests | |
7670 | - added more tests for conditional operator and associativity | |
7671 | ||
7672 | tests/{run-heredoc,heredoc.{tests,right}} | |
7673 | - new set of tests for here-documents | |
7674 | ||
7675 | builtins/common.c | |
7676 | - print out the name returned by get_name_for_error in | |
7677 | builtin_error() | |
7678 | ||
7679 | subst.c | |
7680 | - set this_command_name to NULL before processing command-line | |
7681 | assignment statements so arithmetic evaluation errors don't | |
7682 | print garbage | |
7683 | - according to POSIX.2, echo ${foo?$x} should print the expanded | |
7684 | value of $x, even when it doesn't expand into anything | |
7685 | ||
7686 | 9/12 | |
7687 | ---- | |
7688 | shell.c | |
7689 | - changed the execution of startup files so that $ENV is never | |
7690 | run by a non-interactive shell and an interactive shell begun | |
7691 | as `sh' reads and executes $ENV, as posix specifies | |
7692 | ||
7693 | doc/{bash.{1,html},bashref.texi} | |
7694 | - updated description of startup file behavior | |
7695 | ||
7696 | doc/Makefile.in | |
7697 | - make sure references to bashref.texi are preceded by $(srcdir)/ | |
7698 | so we can build the documentation in another directory just by | |
7699 | typing `make'; e.g. after giving configure the --srcdir option | |
7700 | ||
7701 | subst.c | |
7702 | - change to array_remove_pattern to avoid evaluating the `param' | |
7703 | part of the ${param#word} spec twice when doing things like | |
7704 | echo ${A[x=(i+=1)]#${A[y=(i+=2)]}} | |
7705 | ||
7706 | 9/13 | |
7707 | ---- | |
7708 | builtins/bashgetopt.c | |
7709 | - fixed a problem with `;' option specifier (optional argument) | |
7710 | ||
7711 | support/config.{sub,guess} | |
7712 | - added cases to recognize CRAY C90 and T90 | |
7713 | ||
7714 | builtins/ulimit.def | |
7715 | - rewritten almost from scratch to use internal_getopt and to not | |
7716 | mask the return value from getrlimit/setrlimit, and to make it | |
7717 | easier to maintain | |
7718 | - added `-l' option for systems with RLIMIT_MEMLOCK (4.4 BSD) | |
7719 | ||
7720 | doc/{bash.{1,html},bashref.texi} | |
7721 | - documented new `-l' option to `ulimit' | |
7722 | ||
7723 | 9/24 | |
7724 | ---- | |
7725 | parse.y | |
7726 | - added `in' to the list of tokens that should not be followed by | |
7727 | a semicolon when combining history lines | |
7728 | - removed the special-case code in history_delimiting_chars that | |
7729 | tried to be smart about `()' | |
7730 | ||
7731 | 9/25 | |
7732 | ---- | |
7733 | print_cmd.c | |
7734 | - fixes to print_group_command from Andreas Schwab | |
7735 | - rewrote indent() to use a single malloced string for the spaces | |
7736 | to print, rather than calling cprintf multiple times | |
7737 | ||
7738 | shell.c | |
7739 | - make sure to set the strings in current_user to NULL after freeing | |
7740 | their contents in uidget(). | |
7741 | ||
7742 | parse.y | |
7743 | - make sure decode_prompt_string quotes the values inserted by the | |
7744 | \w and \W escape sequences using backslashes if the string will be | |
7745 | expanded later because promptvars is set | |
7746 | ||
7747 | support/mkdirs | |
7748 | - removed leading `^' from regular expressions to be matched by | |
7749 | `expr' on the advice of meyering@appaloosa.asic.sc.ti.com | |
7750 | ||
7751 | 9/26 | |
7752 | ---- | |
7753 | parse.y | |
7754 | - added a few more possible flag values for parser_state | |
7755 | - changed history_delimiting_chars to not add a semicolon after a | |
7756 | right paren if we're parsing a case statement | |
7757 | ||
7758 | 9/27 | |
7759 | ---- | |
7760 | builtins/ulimit.def | |
7761 | - a few minor cleanups | |
7762 | ||
7763 | 10/1 | |
7764 | ---- | |
7765 | builtins/trap.def | |
7766 | - make sure first_arg is non-empty before calling signal_object_p() | |
7767 | ||
7768 | [bash-2.0-beta2 frozen] | |
7769 | ||
7770 | 10/2 | |
7771 | ---- | |
7772 | bashintl.h | |
7773 | - if we have setlocale(), but don't have a definition for LC_ALL, | |
7774 | undefine HAVE_SETLOCALE | |
7775 | ||
7776 | configure.in | |
7777 | - set LOCAL_LDFLAGS on AIX 4.2 to allow dynamic loading of builtins | |
7778 | ||
7779 | builtins/enable.def | |
7780 | - use correct flags for AIX 4.2 in dlopen call if _AIX is defined | |
7781 | ||
7782 | examples/loadables/Makefile | |
7783 | - add sample commands for AIX 4.2 | |
7784 | ||
7785 | 10/3 | |
7786 | ---- | |
7787 | variables.c | |
7788 | - new functions: merge_temporary_env(), merge_builtin_env(), to | |
7789 | take temporary_env and builtin_env, respectively, and create | |
7790 | shell variables from them | |
7791 | ||
7792 | variables.h | |
7793 | - new extern declarations for merge_temporary_env() and | |
7794 | merge_builtin_env() | |
7795 | ||
7796 | execute_cmd.c | |
7797 | - if variable assignments preceds a posix special builtin, and the | |
7798 | shell is in posix mode, those assignments should persist in the | |
7799 | shell environment after the builtin completes | |
7800 | ||
7801 | doc/bashref.texi | |
7802 | - modified description of what's changed by posix mode to include | |
7803 | the persistance of assignment statements preceding special builtins | |
7804 | ||
7805 | doc/mkposix | |
7806 | - new script to create CWRU/POSIX.NOTES directly from the `Bash | |
7807 | POSIX Mode' node of bashref.texi, like INSTALL is created | |
7808 | ||
7809 | 10/4 | |
7810 | ---- | |
7811 | lib/{malloc,glob,readline}/Makefile.in, builtins/Makefile.in | |
7812 | - don't have autoconf substitute LOCAL_CFLAGS into the CFLAGS | |
7813 | assignment so people on SCO 3.2v[45] can still build with | |
7814 | NO_MEMSCRAMBLE even when they run `make CFLAGS=...' | |
7815 | ||
7816 | test.c | |
7817 | - renamed eaccess() to test_eaccess() to avoid conflict with SCO | |
7818 | ||
7819 | config.h.bot | |
7820 | - #undef HAVE_GETCWD if GETCWD_BROKEN is defined, so we use the | |
7821 | replacement in getcwd.c | |
7822 | ||
7823 | general.c | |
7824 | - fixed a small memory leak in full_pathname that occurs if | |
7825 | getcwd() returns NULL | |
7826 | ||
7827 | oslib.c | |
7828 | - new constant string variable: bash_getcwd_errstr, to use when | |
7829 | getcwd() returns NULL | |
7830 | ||
7831 | {general,jobs}.c, parse.y, builtins/{cd.def,common.c} | |
7832 | - change calls to getwd() to use getcwd() instead | |
7833 | ||
7834 | general.c, builtins/common.c, builtins/cd.def | |
7835 | - changed error behavior when getcwd() returns NULL to use | |
7836 | bash_getcwd_errstr, sys_error(), and strerror(errno) where | |
7837 | appropriate | |
7838 | ||
7839 | sig.c | |
7840 | - change a couple of calls to signal to set_signal_handler | |
7841 | ||
7842 | aclocal.m4 | |
7843 | - added definitions of _popen and _pclose to the BASH_FUNC_GETCWD | |
7844 | macro | |
7845 | ||
7846 | configure.in | |
7847 | - added -DPATH_MAX=1024 to LOCAL_CFLAGS for sco3.2v[45] on the | |
7848 | advice of <grog@lemis.de> | |
7849 | - removed check for getwd(3) | |
7850 | ||
7851 | externs.h | |
7852 | - removed extern declaration for getwd(), added extern declaration | |
7853 | for getcwd() if HAVE_GETCWD is not defined | |
7854 | ||
7855 | oslib.c | |
7856 | - removed definition of getwd(); it is no longer used | |
7857 | ||
7858 | lib/readline/rltty.c | |
7859 | - changed SETATTR macro for SCO POSIX systems to call tcsetattr | |
7860 | with TCSANOW, on advice of <wbader@nacs.fast.net> | |
7861 | ||
7862 | 10/7 | |
7863 | ---- | |
7864 | support/mkdirs | |
7865 | - slight change to work around a bug in the HP-UX `expr' | |
7866 | ||
7867 | 10/8 | |
7868 | ---- | |
7869 | lib/readline/vi_mode.c | |
7870 | - changes so that the text inserted with an `i' command is available | |
7871 | to be reinserted with `.' | |
7872 | ||
7873 | examples/functions/autoload.v2 | |
7874 | - new implementation: uses arrays, keeps a list of autoloaded | |
7875 | functions, allows autoloaded functions to be removed, allows | |
7876 | autoloaded functions to be listed | |
7877 | ||
7878 | execute_cmd.c | |
7879 | - when freeing the members of subshell_argv in shell_execve(), free | |
7880 | only the members up to subshell_argc | |
7881 | ||
7882 | 10/9 | |
7883 | ---- | |
7884 | configure.in | |
7885 | - replaced calls to AC_HAVE_FUNCS with AC_CHECK_FUNCS | |
7886 | - replaced calls to AC_FUNC_CHECK with AC_CHECK_FUNC | |
7887 | - replaced calls to AC_HAVE_HEADERS with AC_CHECK_HEADERS | |
7888 | - added additional code to check for libintl.{a,so} for the | |
7889 | internationalization functions if bindtextdomain is not found | |
7890 | in libc | |
7891 | - define HAVE_WAIT3 if AC_FUNC_CHECK(wait3,...) succeeds, rather | |
7892 | than HAVE_FUNC_WAIT3, which is not used in the source | |
7893 | - added a call to AC_FUNC_STRCOLL to check for the presence of a | |
7894 | working strcoll(3) | |
7895 | ||
7896 | config.h.in | |
7897 | - removed HAVE_FUNC_WAIT3 | |
7898 | - added HAVE_STRCOLL | |
7899 | ||
7900 | variables.c, stringlib.c | |
7901 | - move sort_char_array from variables.c to stringlib.c | |
7902 | ||
7903 | variables.h, externs.h | |
7904 | - move extern declaration of sort_char_array from variables.h to | |
7905 | externs.h | |
7906 | ||
7907 | variables.c | |
7908 | - don't sort the exported environment, even when we're not in | |
7909 | posix mode | |
7910 | ||
7911 | stringlib.c | |
7912 | - changed qsort_string_compare to use strcoll(3) if it is available | |
7913 | (HAVE_STRCOLL is defined). This means that the results of glob | |
7914 | expansions are now sorted in the per-locale collation order | |
7915 | ||
7916 | locale.c | |
7917 | - track the value of $LC_COLLATE and call setlocale(LC_COLLATE,...) | |
7918 | when it changes. Also, set its default value | |
7919 | ||
7920 | subst.c | |
7921 | - LC_COLLATE is now a special variable; call sv_locale when it is | |
7922 | assigned to or unset | |
7923 | ||
7924 | lib/readline/util.c | |
7925 | - move compare_strings here from complete.c; renamed it | |
7926 | _rl_qsort_string_compare; made it use strcoll(3) if it's | |
7927 | available; made it global so other library files can use it | |
7928 | ||
7929 | lib/readline/complete.c | |
7930 | - use _rl_qsort_string_compare instead of static compare_strings. | |
7931 | This means that completions are now sorted in a locale-specific | |
7932 | collation order | |
7933 | ||
7934 | lib/readline/funmap.c | |
7935 | - removed static declaration of qsort_string_compare; qsort now | |
7936 | uses _rl_qsort_string_compare instead | |
7937 | ||
7938 | oslib.c | |
7939 | - rewrote stricmp, strnicmp; renamed them strcasecmp and | |
7940 | strncasecmp, since they're only compiled in if HAVE_STRCASECMP | |
7941 | is not defined | |
7942 | ||
7943 | externs.h | |
7944 | - removed extern declarations of strnicmp, stricmp, replacing them | |
7945 | with declarations of strcasecmp and strncasecmp if HAVE_STRCASECMP | |
7946 | is not defined; removed #defines of stricmp and strnicmp to | |
7947 | strcasecmp and strncasecmp | |
7948 | ||
7949 | trap.c | |
7950 | - changed calls to stricmp to direct calls to strcasecmp | |
7951 | ||
7952 | Makefile.in | |
7953 | - bumped RELSTATUS to `beta3' | |
7954 | ||
7955 | doc/bash.{1,html} | |
7956 | - added mention of LC_COLLATE | |
7957 | ||
7958 | doc/bashref.texi | |
7959 | - removed item about sorting environment from the section on posix | |
7960 | mode | |
7961 | ||
7962 | 10/16 | |
7963 | ----- | |
7964 | subst.c | |
7965 | - fixed array_length_reference to return 0 for an unbound variable | |
7966 | and 1 for a variable that is not an array | |
7967 | ||
7968 | examples/scripts.v2/cdhist.bash | |
7969 | - package with functions to replace cd and maintain a cd directory | |
7970 | stack | |
7971 | ||
7972 | examples/scripts.v2/pmtop | |
7973 | - a `poor man's top' for SunOS 4.x and BSD | |
7974 | ||
7975 | examples/scripts.v2/bashrand | |
7976 | - a script to return a random number within a specified range, with | |
7977 | an optional seed | |
7978 | ||
7979 | examples/scripts/zprintf | |
7980 | - printf(1) replacement that uses gawk to do the output | |
7981 | ||
7982 | doc/{bash.{1,html},bashref.texi}, lib/readline/doc/hsuser.texinfo | |
7983 | - several small corrections | |
7984 | ||
7985 | 10/17 | |
7986 | ----- | |
7987 | variables.c | |
7988 | - changed the calls to list_string_with_quotes and then | |
7989 | expand_words_no_vars in assign_array_var_from_string to a single | |
7990 | call to expand_string. This behaves more rationally, and closer | |
7991 | to ksh93 | |
7992 | ||
7993 | subst.c | |
7994 | - commented out list_string_with_quotes -- it is no longer used | |
7995 | ||
7996 | lib/readline/terminal.c | |
7997 | - new function, _rl_set_screen_size(int rows, int cols), to set | |
7998 | readline's idea of the screen size | |
7999 | ||
8000 | jobs.c, nojobs.c | |
8001 | - make sure that window size changes are propagated back down to | |
8002 | the readline code, by calling _rl_set_screen_size with the | |
8003 | new sizes. This happens when bash gets a SIGWINCH or if | |
8004 | `checkwinsize' is set with `shopt' | |
8005 | ||
8006 | 10/18 | |
8007 | ----- | |
8008 | support/config.guess | |
8009 | - added code to recognize the various NetBSD ports | |
8010 | ||
8011 | lib/readline/signals.c | |
8012 | - don't install a handler for SIGALRM if the containing application | |
8013 | has installed a handler with SA_RESTART as part of the flags. | |
8014 | This is in effect, obviously, only for systems with POSIX signals. | |
8015 | ||
8016 | subst.c | |
8017 | - make parameter_brace_expand_length expand variables in a double- | |
8018 | quoted environment so it takes spaces in the variable value into | |
8019 | account | |
8020 | ||
8021 | 10/21 | |
8022 | ----- | |
8023 | command.h | |
8024 | - flags for possible values of subshell_environment telling what | |
8025 | caused the subshell | |
8026 | ||
8027 | builtins/command.def | |
8028 | - the `command' builtin should not be setting CMD_NO_FORK at all; | |
8029 | it doesn't know enough about the execution context to do so | |
8030 | ||
8031 | execute_cmd.c, subst.c | |
8032 | - set subshell_environment to one of the values in command.h rather | |
8033 | than to `1', so we know what kind of subshell it is (just for | |
8034 | informational purposes; nothing actually uses this yet) | |
8035 | ||
8036 | ||
8037 | 10/22 | |
8038 | ----- | |
8039 | execute_cmd.c | |
8040 | - just return EXECUTION_SUCCESS immediately in execute_command_internal | |
8041 | if read_but_dont_execute is set | |
8042 | ||
8043 | 10/23 | |
8044 | ----- | |
8045 | general.c | |
8046 | - fixed check_dev_tty to return immediately if ttyname() returns NULL | |
8047 | ||
8048 | builtins/suspend.def | |
8049 | - SIGSTOP cannot be caught, so there's no reason to try to do so | |
8050 | ||
8051 | examples/loadables/{finfo,pathchk,print}.c | |
8052 | - minor fixes | |
8053 | ||
8054 | pathexp.c | |
8055 | - fix to off-by-one error in setup_ignore_patterns | |
8056 | ||
8057 | jobs.c | |
8058 | - try to set the tty pgrp to our pgrp if we change our pgrp to our | |
8059 | pid and become a process group leader. If it doesn't work, | |
8060 | reset our pgrp to what it was originally and disable job control | |
8061 | ||
8062 | aclocal.m4 | |
8063 | - new test, BASH_STRUCT_TERMIO_LDISC, to test for a c_line member | |
8064 | of struct termio | |
8065 | ||
8066 | config.h.in | |
8067 | - add a new preprocessor variable, TERMIO_LDISC, undefined by default | |
8068 | ||
8069 | configure.in | |
8070 | - call BASH_STRUCT_TERMIO_LDISC after BASH_STRUCT_TERMIOS_LDISC | |
8071 | ||
8072 | 10/25 | |
8073 | ----- | |
8074 | lib/readline/terminal.c | |
8075 | - increased the size of the termcap buffers to 4096 | |
8076 | ||
8077 | 10/29 | |
8078 | ----- | |
8079 | parse.y | |
8080 | - include memalloc.h for uses of alloca that the code in the | |
8081 | generated bison parser does not catch (e.g., HP-UX 10.10) | |
8082 | ||
8083 | aclocal.m4 | |
8084 | - new test, BASH_KERNEL_RLIMIT_CHECK, to check whether a given | |
8085 | HP-UX machine needs _KERNEL defined for the RLIMIT_* defines in | |
8086 | <sys/resource.h> (9.05, 10.01 yes, 10.10,10.20 no) | |
8087 | ||
8088 | configure.in | |
8089 | - call BASH_KERNEL_RLIMIT_CHECK if $host_os begins with `hpux' | |
8090 | ||
8091 | config.h.in | |
8092 | - new #undef for RLIMIT_NEEDS_KERNEL | |
8093 | ||
8094 | builtins/ulimit.def | |
8095 | - only define _KERNEL before including <sys/resource.h> if HPUX | |
8096 | and RLIMIT_NEEDS_KERNEL are both defined | |
8097 | ||
8098 | [bash-2.0-beta3 frozen] | |
8099 | ||
8100 | 11/1 | |
8101 | ---- | |
8102 | locale.c | |
8103 | - if setting LC_ALL to a null value (as is done when `unset LC_ALL' | |
8104 | is run), call setlocale() to set LC_ALL back to default_locale | |
8105 | ||
8106 | lib/readline/readline.c | |
8107 | - moved i18n code from here to nls.c | |
8108 | ||
8109 | lib/readline/Makefile.in, Makefile.in | |
8110 | - new readline library member, nls.c | |
8111 | ||
8112 | lib/readline/nls.c | |
8113 | - new file, with internationalization code from readline.c (such as | |
8114 | it is) | |
8115 | - updated legal_lang_values to just contain a list of codesets | |
8116 | - added code modified from a diff sent by Ulrich Drepper | |
8117 | <drepper@cygnus.com> to parse a locale specification and isolate | |
8118 | and normalize the codeset part, for checking against the values | |
8119 | in legal_lang_values | |
8120 | ||
8121 | 11/4 | |
8122 | ---- | |
8123 | builtins/setattr.def, locale.c, aclocal.m4, oslib.c | |
8124 | - minor cleanups | |
8125 | ||
8126 | 11/5 | |
8127 | ---- | |
8128 | lib/readline/complete.c, test.c, trap.c | |
8129 | - more minor cleanups | |
8130 | ||
8131 | 11/6 | |
8132 | ---- | |
8133 | parse.y | |
8134 | - added a `flags' parameter to parse_matched_pair, currently unused | |
8135 | ||
8136 | 11/7 | |
8137 | ---- | |
8138 | configure.in, config.h.in | |
8139 | - add a check for time_t, defaulting to `long' if it's not | |
8140 | defined in <sys/types.h> | |
8141 | ||
8142 | builtins/fc.def | |
8143 | - use `time_t *' instead of `long *' in call to time() | |
8144 | ||
8145 | 11/8 | |
8146 | ---- | |
8147 | configure.in | |
8148 | - removed check for getpwent in libsun.a; it's not necessary for | |
8149 | recent versions of irix (irix[56].?) | |
8150 | ||
8151 | 11/11 | |
8152 | ----- | |
8153 | test.c | |
8154 | - used `&&' where `||' was needed when testing if HAVE_LSTAT and | |
8155 | S_IFLNK are both defined | |
8156 | ||
8157 | [bash-2.0-beta3 net release version frozen] | |
8158 | ||
8159 | 11/12 | |
8160 | ----- | |
8161 | builtins/getopt.c | |
8162 | - when sh_getopt detects that a required argument is not present, | |
8163 | set sh_optarg to "" so that getopts does the right thing | |
8164 | ||
8165 | 11/15 | |
8166 | ----- | |
8167 | builtins/ulimit.c | |
8168 | - made the default (without -H or -S) report the soft limit and set | |
8169 | both soft and hard limits (like sh and ksh) | |
8170 | ||
8171 | expr.c | |
8172 | - changed the maximum base in base#num constants to 64, implemented | |
8173 | just like ksh93 | |
8174 | ||
8175 | doc/{bash.{1,html},bashref.texi} | |
8176 | - updated description of ulimit builtin to new behavior when | |
8177 | neither -H nor -S is supplied | |
8178 | - updated arithmetic evaluation section with new maximum base and | |
8179 | explanation of how numbers between 10 and 63 are represented | |
8180 | ||
8181 | lib/readline/vi_mode.c | |
8182 | - in rl_vi_done_inserting, don't try to save the text entered while | |
8183 | in insert mode unless rl_undo_list is non-null (indicating that | |
8184 | there was actually some text to be saved) | |
8185 | ||
8186 | 11/19 | |
8187 | ----- | |
8188 | lib/readline/tcap.h | |
8189 | - new file, for termcap library definitions. Uses <termcap.h> if | |
8190 | it is available | |
8191 | ||
8192 | lib/readline/rldefs.h | |
8193 | - remove inclusion of termcap.h; now included in tcap.h | |
8194 | ||
8195 | lib/readline/{terminal,display,readline}.c | |
8196 | - include tcap.h | |
8197 | ||
8198 | lib/readline/Makefile.in | |
8199 | - update dependencies to include tcap.h | |
8200 | ||
8201 | 11/21 | |
8202 | ----- | |
8203 | lib/readline/complete.c | |
8204 | - broke the code that computes the lcd of the list of completion | |
8205 | matches out into a separate function, compute_lcd_of_matches() | |
8206 | ||
8207 | lib/readline/complete.c | |
8208 | - call compute_lcd_of_matches after calling the application-specific | |
8209 | completion ignore function, since it may have eliminated some | |
8210 | names from the match list | |
8211 | ||
8212 | builtins/cd.def | |
8213 | - replaced instances of MAXNAMLEN in the spelling correction code | |
8214 | with PATH_MAX | |
8215 | ||
8216 | lib/readline/terminal.c | |
8217 | - new termcap capabilities: kh (sent by Home key) and kH (sent by | |
8218 | End key) automatically bound to beginning-of-line and end-of-line | |
8219 | respectively in emacs_standard and vi_movement maps | |
8220 | ||
8221 | mailcheck.c | |
8222 | - fix to remember_mail_dates so any message following the | |
8223 | filename is saved correctly | |
8224 | ||
8225 | 11/22 | |
8226 | ----- | |
8227 | lib/readline/bind.c | |
8228 | - fixed extern declaration of _rl_parsing_coditionalized_out | |
8229 | to match declaration in readline.c | |
8230 | ||
8231 | 11/25 | |
8232 | ----- | |
8233 | doc/{bash.{1,html},bashref.texi} | |
8234 | - fixed a gross documentation error in the description of | |
8235 | ${parameter:offset:length} (offset and length were transposed) | |
8236 | - slight changes to the description of output redirection | |
8237 | ||
8238 | subst.c | |
8239 | - new function, quoted_substring, to return substrings of variables | |
8240 | when the expression is within double quotes and the value has | |
8241 | CTLESC characters embedded within it. Called by | |
8242 | parameter_brace_substring | |
8243 | - get_var_and_type should return VT_POSPARMS if `*' is passed as | |
8244 | the variable name | |
8245 | - added a new first parameter for pos_params -- the variable name | |
8246 | - changed pos_params to obey the rules for "$*" wrt using the | |
8247 | first character of IFS as the separator in the result | |
8248 | - if an unquoted $* or $@ is expanded, call quote_escapes on the | |
8249 | result to protect any special characters from inadvertently | |
8250 | causing quoting | |
8251 | ||
8252 | 12/3 | |
8253 | ---- | |
8254 | builtins/ulimit.def | |
8255 | - corrected a misspelling of `unlimited' | |
8256 | - added support for linux RLIMIT_AS resource limit for -v option | |
8257 | and changed the block multiplier to 1024 if we have RLIMIT_VMEM | |
8258 | or RLIMIT_AS | |
8259 | ||
8260 | 12/5 | |
8261 | ---- | |
8262 | lib/readline/readline.c | |
8263 | - fix rl_insert to handle a count of exactly 1024 | |
8264 | ||
8265 | shell.c | |
8266 | - new function: unbind_args(), which removes all the positional | |
8267 | parameters. Just calls remember_args(NULL, 1) | |
8268 | ||
8269 | execute_cmd.c | |
8270 | - call unbind_args when executing a subshell, after setting up | |
8271 | subshell_argX | |
8272 | ||
8273 | bashintl.h | |
8274 | - include <libintl.h> if HAVE_LIBINTL_H defined | |
8275 | ||
8276 | config.h.in | |
8277 | - add HAVE_LIBINTL_H define | |
8278 | ||
8279 | configure.in | |
8280 | - add call to AC_CHECK_HEADERS for libintl.h | |
8281 | ||
8282 | doc/Makefile.in | |
8283 | - added infodir and various mandir defines for completeness | |
8284 | ||
8285 | Makefile.in | |
8286 | - changed some of the *dir defines to use the autoconf values | |
8287 | (e.g., bindir = @bindir@) | |
8288 | - changed manroot to mandir, removed old mandir and manext variables | |
8289 | - added `manpfx' variable; should be either `man' or `cat' | |
8290 | ||
8291 | 12/6 | |
8292 | ---- | |
8293 | lib/readline/readline.c | |
8294 | - fixed rl_digit_loop so it once again displays the argument count | |
8295 | as it's being entered (added calls to _rl_save_prompt and | |
8296 | _rl_restore_prompt) | |
8297 | ||
8298 | 12/7 | |
8299 | ---- | |
8300 | support/config.guess | |
8301 | - recognize netbsd/vax | |
8302 | - recognize openbsd on all supported platforms | |
8303 | - recognize tenon's machten running on powerpc and macintosh | |
8304 | ||
8305 | 12/9 | |
8306 | ---- | |
8307 | support/config.guess | |
8308 | - added all sorts of systems from config.guess distributed with | |
8309 | autoconf-2.12 | |
8310 | ||
8311 | 12/10 | |
8312 | ----- | |
726f6388 | 8313 | subst.c |
ccc6cda3 JA |
8314 | - new function quoted_strchr(); does the same thing as strchr but |
8315 | honors shell backslash and CTLESC quoting conventions | |
8316 | - parameter_brace_patsub now calls quoted_strchr | |
8317 | ||
8318 | 12/11 | |
8319 | ----- | |
8320 | shell.c | |
8321 | - if the shell is named `-su', run the normal login shell startup | |
8322 | files, even if the shell is not interactive. This handles the | |
8323 | case of `su - username -c command' compatibly | |
8324 | ||
8325 | lib/readline/readline.c | |
8326 | - minor change to rl_digit_loop so that M-- and M--1 are equivalent, | |
8327 | as the prompt for digit arguments has always implied | |
8328 | ||
8329 | lib/malloc/malloc.c | |
8330 | - added definitions of calloc() and cfree(), compiled in unless | |
8331 | NO_CALLOC is defined to cpp | |
8332 | ||
8333 | ||
8334 | 12/16 | |
8335 | ----- | |
8336 | parse.y | |
8337 | - protect uses of history_expansion_inhibited with #ifdef | |
8338 | BANG_HISTORY | |
8339 | ||
8340 | [bash-2.0-release candidate frozen] | |
8341 | ||
8342 | builtins/common.c | |
8343 | - changed backslash_quote to quote a tilde if it's the first | |
8344 | character in the string | |
8345 | ||
8346 | 12/17 | |
8347 | ----- | |
8348 | aclocal.m4 | |
8349 | - changed BASH_CC_WORKS to provide a cross-compiling default for | |
8350 | better error messages | |
8351 | ||
8352 | configure.in | |
8353 | - generated configure using autoconf-2.12 | |
8354 | - changed the default value of CFLAGS to `-g -O2' | |
8355 | ||
8356 | 12/18 | |
8357 | ----- | |
8358 | aclocal.m4 | |
8359 | - look for /var/spool/mail before /usr/spool/mail when checking | |
8360 | for the default mail directory | |
8361 | ||
8362 | jobs.c, builtins/shopt.def | |
8363 | - fixed a couple of `macro replacement within a string literal' | |
8364 | problems | |
8365 | ||
8366 | Makefile.in | |
8367 | - removed `realclean' target | |
8368 | ||
8369 | shell.c | |
8370 | - changed the first line ouput by bash --version to conform to | |
8371 | the latest GNU coding standards (replace space between version | |
8372 | and machtype with a hyphen) | |
8373 | ||
8374 | 12/19 | |
8375 | ----- | |
8376 | execute_cmd.c | |
8377 | - when looking at the debug trap in execute_function and | |
8378 | execute_command_internal, make sure it's trapped and not | |
8379 | ignored before trying to save the value of the trap string | |
8380 | ||
8381 | 12/20 | |
8382 | ----- | |
8383 | trap.c | |
8384 | - changed set_signal and ignore_signal to handle EXIT_TRAP and | |
8385 | DEBUG_TRAP specially, so we don't try to fetch signal handlers | |
8386 | or do other unnecessary things | |
8387 | ||
8388 | 12/22 | |
8389 | ----- | |
8390 | builtins/ulimit.def | |
8391 | - if the current euid is not 0, and we're trying to set the hard | |
8392 | limit of a resource to RLIM_INFINITY, set it to the current hard | |
8393 | limit to avoid error messages | |
8394 | ||
8395 | builtins/read.def | |
8396 | - fix for bug that caused core dump if line read had leading white | |
8397 | space and IFS was set to '' | |
8398 | ||
8399 | [bash-2.0-release frozen] |