• R/O
  • SSH

yash: List of commits

Rev. Time Author
r3991 2019-03-16 12:46:46 magicant

run-test: Don't use function before defined

The eprintf function should be used after it is defined.

r3990 2019-02-11 23:42:10 magicant

Update test README (#38894)

r3989 2019-02-11 23:42:09 magicant

run-test: Use symlink to invoke testee as sh

We now create a symlink named "sh" that resolves to the testee shell. By
invoking the shell via the symlink, we can invoke the shell as "sh"
without depending on the non-standard "-a" option of the "exec"

r3988 2019-02-11 23:42:08 magicant

run-test: Redirect stdin to /dev/null rather than closing

For standard utilities to work as specified in POSIX, stdin should be
open even if it is unused.

r3987 2019-02-11 21:10:31 magicant

tests/input-p: Use testee to test input consumption

The "head" utility on FreeBSD seems to consume more lines than expected.

r3986 2019-02-11 20:51:03 magicant

tests/umask-p: Don't use XSI extension of ls

The "-g" and "-o" options of the "ls" utility are XSI extensions. We
should be using the more portable "-l" option.

r3985 2019-02-11 20:44:59 magicant

tests/summarize: Don't abort if no tests passed

The "grep" command returns an exit status of zero if there is no
successful test. This should not cause the "summarize.sh" script to
abort due to the "errexit" shell option.

r3984 2019-02-11 20:44:59 magicant

tests/printf-y: Succeed on FreeBSD

On FreeBSD, the "wc -l" command prints blanks before the line count,
causing a false test failure.

We now use the "grep" command to ensure the line printed by "printf" is
not empty.

r3983 2019-02-10 23:54:18 magicant

Seed $RANDOM more randomly

Now the $RANDOM variable is seeded with time as well as the process ID.

r3982 2019-02-10 23:54:18 magicant

Expand $RANDOM to value less than 32768

The $RANDOM variable should expand to a value within the range
[0, 32767]. Previously, the variable was possibly expanding to a larger

r3981 2019-02-02 14:38:07 magicant

More stable test (#37560)

The dummy sleep commands should make it more likely for the SIGCHLD
signal to be caught early enough.

r3980 2019-01-31 00:04:23 magicant

Split long tests (#38894)

By splitting test files, the "make check" command can run faster if the
"make" command supports parallel build and the machine has many CPU

historyx-y.tst -> history[1-2]-y.tst
signal1-y.tst -> signal[1-5]-y.tst
signal2-y.tst -> signal[6-9].y.tst
test-y.tst -> test[1-2]-y.tst

r3979 2019-01-31 00:04:22 magicant

ptwrap: Remove unnecessary operations (#38894)

In our use case, ptwrap does not have to pass stdin or the window size
to the child process.

r3978 2019-01-31 00:00:25 magicant

Parallelize tty-requiring tests (#38894)

r3977 2019-01-30 23:46:02 magicant

Add ptwrap source (#38894)

The file is copied from:

r3976 2019-01-30 23:46:00 magicant

Use %REQUIRETTY% instead of %SEQUENTIAL% (#38894)

We are going to run job-control-related tests in parallel. The keyword
"%REQUIRETTY%" will be inappropriate then.

r3975 2019-01-26 16:44:47 magicant

completion/INIT: Consider $PATHEXT for Cygwin (#38878)

r3974 2019-01-24 00:17:55 magicant


When the _XOPEN_SOURCE_EXTENDED macro is defined on Solaris, symbols
that have been introduced in SUSv2 or later are hidden. The macro should
not be defined to get the symbols.

r3973 2019-01-23 23:11:54 magicant

Update status of correct job after pid reuse (#35958)

If a process ID is reused by another process before the job containing
the previous process is removed from the job list, there are two
processes having the same process ID. When the shell is notified of job
status update, the status of the living process should be updated.

r3972 2019-01-21 17:55:53 magicant

readme: Add known issues

r3971 2019-01-19 11:32:23 magicant

typeset: Print reparsable simple command starting w/ keyword (#37634)

The print_one_command function always prints redirections after the
other command components. As a result, a simple command printed could
not be re-parsed by the shell if the command name word was preceded by a
redirection (but not by any assignment) and the word would otherwise be
a keyword.

Such a word is now quoted so that it can successfully be re-parsed even
though it is printed as the first word of the command.

r3970 2019-01-15 23:41:26 magicant

Include wchar.h in job.c

Some functions used in job.c are declared in wchar.h.

r3969 2019-01-14 16:36:37 magicant

Neglect jobs in subshell with no-fork optimization (#38823)

When the no-fork optimization takes effect on a subshell, it was not
forgetting the original shell's jobs. The subshell was able to falsely
await the original shell's jobs.

The subshell should behave as if it is a child process created by the
fork_and_reset function. This commit extracts part of it as the
become_child function so that it can be directly called in the main
shell process performing the no-fork optimization.

r3968 2019-01-14 00:45:29 magicant

Remove j_nonotify

Now print_job_status_all does not remove printed jobs, we don't need to
protect a job that is being awaited by wait_for_job. Hence the
j_nonotify flag is removed. The j_beingwaitedfor flag, only used for
assertions, is added in place of it.

r3967 2019-01-13 00:34:03 magicant

Test exit status of interrupted wait built-in (#14262)

r3966 2019-01-13 00:20:46 magicant

Test special built-in syntax error in command built-in (#18703)

r3965 2019-01-10 00:40:20 magicant

Test $LINENO in eval and dot script

r3964 2019-01-10 00:40:19 magicant

Test $LINENO in interactive mode correctly (#21676)

The former test was nonsense because the shell was not being executed in
the interactive mode.

Also adding a test for function definition.

r3963 2019-01-10 00:40:18 magicant

Test $LINENO in command substitution

r3962 2019-01-10 00:03:13 magicant

Test exec built-in clearing and adding array (#25716)

Show on old repository browser