-
Notifications
You must be signed in to change notification settings - Fork 152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix compiler error on OS X 10.6 #1465
Commits on Aug 27, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 13f4a8c - Browse repository at this point
Copy the full SHA 13f4a8cView commit details -
Configuration menu - View commit details
-
Copy full SHA for a724383 - Browse repository at this point
Copy the full SHA a724383View commit details
Commits on Aug 28, 2019
-
Move the other builtin command docs into ext files
This builds on the prior change to extricate builtin command documentation out of the source and into an external text file for each command. Which is the next step into converting the documentation to a modern markup language. Related #507
Configuration menu - View commit details
-
Copy full SHA for 44fb5d5 - Browse repository at this point
Copy the full SHA 44fb5d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for f5ae4ee - Browse repository at this point
Copy the full SHA f5ae4eeView commit details -
This is to facilitate extracting the command documentation into text files separate from the source code. Related #507
Configuration menu - View commit details
-
Copy full SHA for a226181 - Browse repository at this point
Copy the full SHA a226181View commit details -
More builtin documention moved to external files
Move the libcmd builtin documentation into files separate from the source code. Related #507
Configuration menu - View commit details
-
Copy full SHA for 62fdca2 - Browse repository at this point
Copy the full SHA 62fdca2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 282247d - Browse repository at this point
Copy the full SHA 282247dView commit details -
Configuration menu - View commit details
-
Copy full SHA for b0a1984 - Browse repository at this point
Copy the full SHA b0a1984View commit details -
Configuration menu - View commit details
-
Copy full SHA for e6e79c9 - Browse repository at this point
Copy the full SHA e6e79c9View commit details -
Configuration menu - View commit details
-
Copy full SHA for da4f59d - Browse repository at this point
Copy the full SHA da4f59dView commit details -
Configuration menu - View commit details
-
Copy full SHA for d0d07c6 - Browse repository at this point
Copy the full SHA d0d07c6View commit details -
Move the code for `b_readonly()` into its own module. Refactor it so that the `readonly` and `export` commands only share the `setall()` function.
Configuration menu - View commit details
-
Copy full SHA for 2bf7a27 - Browse repository at this point
Copy the full SHA 2bf7a27View commit details
Commits on Aug 29, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 3d3e417 - Browse repository at this point
Copy the full SHA 3d3e417View commit details -
Configuration menu - View commit details
-
Copy full SHA for e3eb5e1 - Browse repository at this point
Copy the full SHA e3eb5e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 90f9b53 - Browse repository at this point
Copy the full SHA 90f9b53View commit details -
Move b_set() into its own module
This also moves `b_unalias()` into the same module. TBD is refactoring the code to move the option parsing out of the `unall()` function and into the respective `b_*()` functions.
Configuration menu - View commit details
-
Copy full SHA for 75f9c39 - Browse repository at this point
Copy the full SHA 75f9c39View commit details -
Fix definition of
print_scan()
functionBuilds on Copr and OBS were failing because `print_scan()` function definition was not prefixed with `static_fn`.
Configuration menu - View commit details
-
Copy full SHA for 0b46d8c - Browse repository at this point
Copy the full SHA 0b46d8cView commit details -
Make
print_scan()
function non-staticRecently builtins were moved into separate modules. It broke builds in Copr and OBS. `print_scan()` function should be declared non-static as it's used in more than one file. Fix made in previous commit was incorrect.
Configuration menu - View commit details
-
Copy full SHA for 15f781f - Browse repository at this point
Copy the full SHA 15f781fView commit details
Commits on Aug 30, 2019
-
3
Configuration menu - View commit details
-
Copy full SHA for 13d6ace - Browse repository at this point
Copy the full SHA 13d6aceView commit details -
Move each of the `bg`, `fg`, and `disown` implementations into separate modules.
Configuration menu - View commit details
-
Copy full SHA for 208c23d - Browse repository at this point
Copy the full SHA 208c23dView commit details -
Move each command implementation into its own module.
Configuration menu - View commit details
-
Copy full SHA for 7f1061c - Browse repository at this point
Copy the full SHA 7f1061cView commit details -
Refactor break_continue.c and return_exit.c
Separate the break/continue and return/exit implementations into separate modules to improve clarity. This increases the size of the binary by a few words but that is well worth it for the improved clarity.
Configuration menu - View commit details
-
Copy full SHA for 6a372af - Browse repository at this point
Copy the full SHA 6a372afView commit details -
Separate the `cd` and `pwd` implementations into separate modules to improve code clarity.
Configuration menu - View commit details
-
Copy full SHA for 5e0ff94 - Browse repository at this point
Copy the full SHA 5e0ff94View commit details -
Configuration menu - View commit details
-
Copy full SHA for fb2e95b - Browse repository at this point
Copy the full SHA fb2e95bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ba9355 - Browse repository at this point
Copy the full SHA 9ba9355View commit details -
Refactor b_unset(), b_unalias, and unall()
With this change all special builtins are now in their own source module. More importantly this eliminates a lot of cleverness that obfuscates the actual behavior.
Configuration menu - View commit details
-
Copy full SHA for d5277d3 - Browse repository at this point
Copy the full SHA d5277d3View commit details -
Update fallback version to `2020.0.0-beta1`
Configuration menu - View commit details
-
Copy full SHA for 32d8131 - Browse repository at this point
Copy the full SHA 32d8131View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0f44849 - Browse repository at this point
Copy the full SHA 0f44849View commit details -
Move
sig_number()
out of trap.cWe want to be able to separate `b_trap()` and `b_kill()` into separate source modules. This is a step towards doing so.
Configuration menu - View commit details
-
Copy full SHA for 36d688a - Browse repository at this point
Copy the full SHA 36d688aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 990f237 - Browse repository at this point
Copy the full SHA 990f237View commit details -
Eliminate pointless
Bltin()
preprocessor macroThe `Bltin()` macro serves no useful purpose. Its use does not affect the behavior of the target functions. Which means those functions can recognize long name options. Similarly command definitions which use `bltin()` aren't required to use long options. Resolves #1388
Configuration menu - View commit details
-
Copy full SHA for e069b75 - Browse repository at this point
Copy the full SHA e069b75View commit details
Commits on Aug 31, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 4de8a51 - Browse repository at this point
Copy the full SHA 4de8a51View commit details
Commits on Sep 1, 2019
-
Configuration menu - View commit details
-
Copy full SHA for d89753b - Browse repository at this point
Copy the full SHA d89753bView commit details -
Configuration menu - View commit details
-
Copy full SHA for cb9f6d3 - Browse repository at this point
Copy the full SHA cb9f6d3View commit details
Commits on Sep 2, 2019
-
Replace e_astbin with SH_CMDLIB_DIR
The e_astbin var doesn't serve a useful purpose so replace uses of it with the string constant assigned to the var.
Configuration menu - View commit details
-
Copy full SHA for dc9fccc - Browse repository at this point
Copy the full SHA dc9fcccView commit details
Commits on Sep 3, 2019
-
Introduce ${.sh.install_prefix}
This var will be useful for doing things like finding the man pages for builtins. It will hold the value of `meson --prefix=/path`. Typically, /usr or /usr/local.
Configuration menu - View commit details
-
Copy full SHA for a54c289 - Browse repository at this point
Copy the full SHA a54c289View commit details -
The use of `#define` with hard-coded offsets into a large table is fragile. That is, dangerous because the offsets may not be correct. Replace those with vars that are updated during process initialization to point to the correct data structure. Fixes #1394
Configuration menu - View commit details
-
Copy full SHA for 2d497fb - Browse repository at this point
Copy the full SHA 2d497fbView commit details -
Switch to a more idiomatic end-of-table check
The code that checks if the end of a `struct shtable2[]` has been reached presumes a valid, non-NULL, pointer to the `sh_name` structure member. It is more idiomatic to simply check for sh_name == NULL and change the table initialization accordingly.
Configuration menu - View commit details
-
Copy full SHA for 2bce63a - Browse repository at this point
Copy the full SHA 2bce63aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 657c587 - Browse repository at this point
Copy the full SHA 657c587View commit details
Commits on Sep 4, 2019
-
Replace commit 2d497fb with a better approach
Having an independent set of vars contain pointers also stored in shgd->bltin_nodes is sort of gross. Replace that approach with a structure. That allow us to use a name instead of a possibly incorrect array offset for quick access to a specific shell var. Now we only have to worry about the number of vars changing and that is something we can cheaply detect at run time. Also implement a consistent naming scheme for the special symbol for each shell var. The old scheme was very inconsistent. The new scheme has a `VAR_` prefix for all of the vars and the suffix is the actual shell var name.
Configuration menu - View commit details
-
Copy full SHA for a9d4bb0 - Browse repository at this point
Copy the full SHA a9d4bb0View commit details
Commits on Sep 10, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 44463c0 - Browse repository at this point
Copy the full SHA 44463c0View commit details -
Convert
alias
documentation to Sphinx/RSTThis is a proof of concept change to implement the documentation using Sphinx/RST markup. It includes documentation for the `alias` special builtin and the `basename` command builtin. The sole purpose is to establish that using Sphinx/RST is viable by providing concrete examples for examination. I've deliberately chosen to include the documentation build artifacts in the commit. This means that for now the CI builds, and anyone else building from source, doesn't need to have Sphinx installed to build the documentation. This does mean that some care is needed to always run `make man` and `make html` before committing any change to the documentation. TBD is whether a trigger of some sort will be needed to ensure the two sets of files are kept in sync. Related #507
Configuration menu - View commit details
-
Copy full SHA for 24e968c - Browse repository at this point
Copy the full SHA 24e968cView commit details -
Switch b_alias() from optget() to getopt_long()
Another step in switching from the DocOpt base option processing done by the AST `optget()` function to the borg standard `getopt_long()`. It also introduces a system-wide ksh config script to enable auto-loading functions included with ksh by default. This allows the use of the auto-loaded `_ksh_print_help` function. As well as the dirs/popd/pushd set of functions that have been the sole functions included with ksh forever but not automatically enabled. Related #507 Fixes #835
2Configuration menu - View commit details
-
Copy full SHA for fa9673c - Browse repository at this point
Copy the full SHA fa9673cView commit details -
This adds a `man` function to give priority to ksh man pages. Making it possible to do `man alias`, for example. Related #507
Configuration menu - View commit details
-
Copy full SHA for a08307c - Browse repository at this point
Copy the full SHA a08307cView commit details -
Configuration menu - View commit details
-
Copy full SHA for d0f92b4 - Browse repository at this point
Copy the full SHA d0f92b4View commit details
Commits on Sep 11, 2019
-
Changes to make the tests pass
This includes changes to make the b_alias, b_basename, and builtins unit tests pass in light of the previous changes.
Configuration menu - View commit details
-
Copy full SHA for f4c1514 - Browse repository at this point
Copy the full SHA f4c1514View commit details -
Configuration menu - View commit details
-
Copy full SHA for f124433 - Browse repository at this point
Copy the full SHA f124433View commit details -
Configuration menu - View commit details
-
Copy full SHA for 780492b - Browse repository at this point
Copy the full SHA 780492bView commit details -
Move b_echo() into its own module
Note that a lot more work is needed. The logic shared by b_echo(), b_print(), and b_printf() needs to be refactored out of b_print() and into its own function; sh_print()?
Configuration menu - View commit details
-
Copy full SHA for 3bd5b4f - Browse repository at this point
Copy the full SHA 3bd5b4fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6153a5a - Browse repository at this point
Copy the full SHA 6153a5aView commit details -
Configuration menu - View commit details
-
Copy full SHA for fca4d53 - Browse repository at this point
Copy the full SHA fca4d53View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0101139 - Browse repository at this point
Copy the full SHA 0101139View commit details -
Configuration menu - View commit details
-
Copy full SHA for d49d8de - Browse repository at this point
Copy the full SHA d49d8deView commit details -
Use
MESON_INSTALL_DESTDIR_PREFIX
variableinstead of `MESON_INSTALL_PREFIX`. This variable prefixes `DESTDIR` if set. This variable points to temporary installation directory used during package builds. This fixes package builds on OBS and Copr.
Configuration menu - View commit details
-
Copy full SHA for 6d55cdc - Browse repository at this point
Copy the full SHA 6d55cdcView commit details -
[packaging] Add missing files in rpm builds
Recent changes have introduced new files that are installed by default. Add those files under `%files` section in rpm spec files.
Configuration menu - View commit details
-
Copy full SHA for 9c9a5c8 - Browse repository at this point
Copy the full SHA 9c9a5c8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 244d9cc - Browse repository at this point
Copy the full SHA 244d9ccView commit details
Commits on Sep 13, 2019
-
Configuration menu - View commit details
-
Copy full SHA for ce77f93 - Browse repository at this point
Copy the full SHA ce77f93View commit details -
Configuration menu - View commit details
-
Copy full SHA for c085cbc - Browse repository at this point
Copy the full SHA c085cbcView commit details -
Configuration menu - View commit details
-
Copy full SHA for d5d60da - Browse repository at this point
Copy the full SHA d5d60daView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0abef8 - Browse repository at this point
Copy the full SHA c0abef8View commit details -
Configuration menu - View commit details
-
Copy full SHA for a2f9d59 - Browse repository at this point
Copy the full SHA a2f9d59View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0f8af10 - Browse repository at this point
Copy the full SHA 0f8af10View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9487319 - Browse repository at this point
Copy the full SHA 9487319View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0ba0a7b - Browse repository at this point
Copy the full SHA 0ba0a7bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2102308 - Browse repository at this point
Copy the full SHA 2102308View commit details -
Switch to POSIXLY_CORRECT option parsing
Unsurprisingly the AST `optget()` function defaults to POSIXLY_CORRECT option parsing behavior. So switch the `getopt_long()` flag specs to that behavior be prepending a `+` to the short flags string.
Configuration menu - View commit details
-
Copy full SHA for 1687f3b - Browse repository at this point
Copy the full SHA 1687f3bView commit details -
Fix expansion of bare tildes when HOME is unset
Use getpwuid to find the user name and home directory. Cache the user name for future logins_tree lookups to avoid repeating the getpwuid call. Fixes: #1391
Configuration menu - View commit details
-
Copy full SHA for c4f582d - Browse repository at this point
Copy the full SHA c4f582dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6ef2ca5 - Browse repository at this point
Copy the full SHA 6ef2ca5View commit details
Commits on Sep 14, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 7c174b5 - Browse repository at this point
Copy the full SHA 7c174b5View commit details -
Correct which optget_long() error handling
The existing code is fine for long flags and single short flags. But when short flags are bundled together if one of them is invalid then the wrong arg is displayed in the error message.
Configuration menu - View commit details
-
Copy full SHA for 96b19ee - Browse repository at this point
Copy the full SHA 96b19eeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0f05131 - Browse repository at this point
Copy the full SHA 0f05131View commit details -
Don't assume
no_argument
is zeroThe `getopt_long()` symbol `no_argument` is zero on every platform I have access to. Nonetheless, don't assume that is true. Use the symbolic name.
Configuration menu - View commit details
-
Copy full SHA for 2b6e821 - Browse repository at this point
Copy the full SHA 2b6e821View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8aa6eea - Browse repository at this point
Copy the full SHA 8aa6eeaView commit details -
Configuration menu - View commit details
-
Copy full SHA for b935f1a - Browse repository at this point
Copy the full SHA b935f1aView commit details -
Configuration menu - View commit details
-
Copy full SHA for a421fe8 - Browse repository at this point
Copy the full SHA a421fe8View commit details -
Configuration menu - View commit details
-
Copy full SHA for c682318 - Browse repository at this point
Copy the full SHA c682318View commit details
Commits on Sep 15, 2019
-
Use sphinx to generate the docs if available
If the sphinx-build command is installed use it to generate the documentation from the reStructuredText source. Otherwise, use the prebuild man pages.
Configuration menu - View commit details
-
Copy full SHA for c44e124 - Browse repository at this point
Copy the full SHA c44e124View commit details -
Configuration menu - View commit details
-
Copy full SHA for bc155a2 - Browse repository at this point
Copy the full SHA bc155a2View commit details -
Configuration menu - View commit details
-
Copy full SHA for c3a2b14 - Browse repository at this point
Copy the full SHA c3a2b14View commit details -
Configuration menu - View commit details
-
Copy full SHA for 62fd830 - Browse repository at this point
Copy the full SHA 62fd830View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9484249 - Browse repository at this point
Copy the full SHA 9484249View commit details
Commits on Sep 16, 2019
-
Configuration menu - View commit details
-
Copy full SHA for d9491d4 - Browse repository at this point
Copy the full SHA d9491d4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8aa9ac9 - Browse repository at this point
Copy the full SHA 8aa9ac9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1da542f - Browse repository at this point
Copy the full SHA 1da542fView commit details -
Configuration menu - View commit details
-
Copy full SHA for e0c4882 - Browse repository at this point
Copy the full SHA e0c4882View commit details -
Configuration menu - View commit details
-
Copy full SHA for 57085ad - Browse repository at this point
Copy the full SHA 57085adView commit details -
Configuration menu - View commit details
-
Copy full SHA for c584641 - Browse repository at this point
Copy the full SHA c584641View commit details -
Configuration menu - View commit details
-
Copy full SHA for 695269a - Browse repository at this point
Copy the full SHA 695269aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 66d0976 - Browse repository at this point
Copy the full SHA 66d0976View commit details
Commits on Sep 17, 2019
-
Revert "Switch b_hist() from optget() to getopt_long()"
This reverts commit 695269a. The b_hist() code is structured weird. Switching to getopt_long() is going to require a better understanding of the current structure. Specifically, how an argument like `-1` is handled.
Configuration menu - View commit details
-
Copy full SHA for 1c9e7ab - Browse repository at this point
Copy the full SHA 1c9e7abView commit details -
Configuration menu - View commit details
-
Copy full SHA for 91a75b9 - Browse repository at this point
Copy the full SHA 91a75b9View commit details -
run_test.sh: exit with status 77 when skipping a test
meson test outputs "SKIP" in the log when it sees this status. https://mesonbuild.com/Unit-tests.html#skipped-tests-and-hard-errors postscript.sh: cap error count to 50 meson uses specific high-numbered exit status values to detect skips and errors. Avoid using these for legitimate test failures.
Configuration menu - View commit details
-
Copy full SHA for 1eb928a - Browse repository at this point
Copy the full SHA 1eb928aView commit details
Commits on Sep 18, 2019
-
Initialize the jobs table earlier
While investigating a security issue it came to light that the jobs table isn't initialized early enough. Prior to this change command substitution might happen before it is initialized. Which leads to dereferencing a NULL pointer.
Configuration menu - View commit details
-
Copy full SHA for 25f73f4 - Browse repository at this point
Copy the full SHA 25f73f4View commit details
Commits on Sep 19, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 1893891 - Browse repository at this point
Copy the full SHA 1893891View commit details -
Fix and normalize handling of atypical CLI flags
This was prompted by the need to correctly handle negative integers which would otherwise look like invalid short flags. But it also fixes the information displayed when an invalid flag is seen. The previous code worked correctly only in limited situations (e.g., the invalid flag being the first CLI arg).
Configuration menu - View commit details
-
Copy full SHA for 4c9c596 - Browse repository at this point
Copy the full SHA 4c9c596View commit details -
Configuration menu - View commit details
-
Copy full SHA for 98bc42a - Browse repository at this point
Copy the full SHA 98bc42aView commit details
Commits on Sep 20, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 3dffc9d - Browse repository at this point
Copy the full SHA 3dffc9dView commit details -
Configuration menu - View commit details
-
Copy full SHA for abe5bd6 - Browse repository at this point
Copy the full SHA abe5bd6View commit details -
Fix
exit
getopt_long() short optionsThe `X` short flag was left over from experimenting with the behavior of `getopt_long()`.
Configuration menu - View commit details
-
Copy full SHA for 957ce01 - Browse repository at this point
Copy the full SHA 957ce01View commit details -
Fix
head
handling of integer flagsTo have `head` correctly handle a line number that looks like a flag we have to use `getopt_long_only()` rather than `getopt_long()`. Add a regression test to ensure this bug doesn't occur again.
Configuration menu - View commit details
-
Copy full SHA for 376b085 - Browse repository at this point
Copy the full SHA 376b085View commit details -
Remove support for negative ints from
bg
andfg
Despite the embedded documentation implying negative ints are supported they aren't. Furthermore, using a process group ID in the context of `bg` and `fg` doesn't really make any sense.
Configuration menu - View commit details
-
Copy full SHA for abf06c2 - Browse repository at this point
Copy the full SHA abf06c2View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7368706 - Browse repository at this point
Copy the full SHA 7368706View commit details -
Configuration menu - View commit details
-
Copy full SHA for c3aa2d5 - Browse repository at this point
Copy the full SHA c3aa2d5View commit details
Commits on Sep 21, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 46215d4 - Browse repository at this point
Copy the full SHA 46215d4View commit details -
Configuration menu - View commit details
-
Copy full SHA for eb8e227 - Browse repository at this point
Copy the full SHA eb8e227View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0ffecb0 - Browse repository at this point
Copy the full SHA 0ffecb0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7c17e44 - Browse repository at this point
Copy the full SHA 7c17e44View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7b5953c - Browse repository at this point
Copy the full SHA 7b5953cView commit details
Commits on Sep 22, 2019
-
The semantics of `print -R` are very strange. Before embarking on refactoring the b_print() function and related code make sure we have good coverage of its behavior.
Configuration menu - View commit details
-
Copy full SHA for f4d7c1b - Browse repository at this point
Copy the full SHA f4d7c1bView commit details
Commits on Sep 24, 2019
-
Refactor b_print(), b_echo(), and b_printf()
The way in which these three commands were entangled made understanding the behavior of each much more difficult. The code is also confusing for other reasons such as aliasing variable `rflag` with `(struct print).raw`. It also makes it hard to replace optget() with getopt_long(). So before doing that refactor the code in question.
Configuration menu - View commit details
-
Copy full SHA for 6993358 - Browse repository at this point
Copy the full SHA 6993358View commit details -
Configuration menu - View commit details
-
Copy full SHA for 08ab0ec - Browse repository at this point
Copy the full SHA 08ab0ecView commit details
Commits on Sep 25, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 1885d04 - Browse repository at this point
Copy the full SHA 1885d04View commit details -
Configuration menu - View commit details
-
Copy full SHA for 72e1624 - Browse repository at this point
Copy the full SHA 72e1624View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f06b58 - Browse repository at this point
Copy the full SHA 7f06b58View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4e401a9 - Browse repository at this point
Copy the full SHA 4e401a9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4f00fdb - Browse repository at this point
Copy the full SHA 4f00fdbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8bdfa5b - Browse repository at this point
Copy the full SHA 8bdfa5bView commit details -
Change naming of ksh script based tests
The naming of non-expect versus expect based tests has bothered me from the day we implemented the current test naming scheme. Specifically, that `expect` based tests explicitly end with `.exp` while ksh scripts do not end in `.sh` (or `.ksh`) even though the unit test file name does end in that extension. This makes the naming consistent.
Configuration menu - View commit details
-
Copy full SHA for 857b058 - Browse repository at this point
Copy the full SHA 857b058View commit details
Commits on Sep 27, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 1b34915 - Browse repository at this point
Copy the full SHA 1b34915View commit details
Commits on Sep 28, 2019
-
Eliminate Meson warning about our config file
This eliminates this Meson warning: WARNING: Consider using the builtin option for language standard version rather than adding flags by hand.
Configuration menu - View commit details
-
Copy full SHA for 2828fd9 - Browse repository at this point
Copy the full SHA 2828fd9View commit details
Commits on Sep 29, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 07e8829 - Browse repository at this point
Copy the full SHA 07e8829View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8031fed - Browse repository at this point
Copy the full SHA 8031fedView commit details
Commits on Sep 30, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 762f838 - Browse repository at this point
Copy the full SHA 762f838View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce7e096 - Browse repository at this point
Copy the full SHA ce7e096View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3be7e10 - Browse repository at this point
Copy the full SHA 3be7e10View commit details
Commits on Oct 1, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 461707e - Browse repository at this point
Copy the full SHA 461707eView commit details -
Configuration menu - View commit details
-
Copy full SHA for cfec3cb - Browse repository at this point
Copy the full SHA cfec3cbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c3052b - Browse repository at this point
Copy the full SHA 5c3052bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 394ba62 - Browse repository at this point
Copy the full SHA 394ba62View commit details
Commits on Oct 2, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 39bf126 - Browse repository at this point
Copy the full SHA 39bf126View commit details -
Configuration menu - View commit details
-
Copy full SHA for 541a7d4 - Browse repository at this point
Copy the full SHA 541a7d4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3955a1c - Browse repository at this point
Copy the full SHA 3955a1cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 485fb82 - Browse repository at this point
Copy the full SHA 485fb82View commit details -
Configuration menu - View commit details
-
Copy full SHA for fcd6535 - Browse repository at this point
Copy the full SHA fcd6535View commit details -
Configuration menu - View commit details
-
Copy full SHA for 31aec52 - Browse repository at this point
Copy the full SHA 31aec52View commit details -
Configuration menu - View commit details
-
Copy full SHA for f8a6aa6 - Browse repository at this point
Copy the full SHA f8a6aa6View commit details
Commits on Oct 3, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 28592fc - Browse repository at this point
Copy the full SHA 28592fcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 44d6381 - Browse repository at this point
Copy the full SHA 44d6381View commit details -
Configuration menu - View commit details
-
Copy full SHA for c68faf0 - Browse repository at this point
Copy the full SHA c68faf0View commit details -
Configuration menu - View commit details
-
Copy full SHA for e02c662 - Browse repository at this point
Copy the full SHA e02c662View commit details -
The predefined alias overrides (masks) the `type` builtin. Since it is a trivial variant of `whence` that is only exposed if the predefined alias is removed there isn't any point in having it also defined as a builtin.
Configuration menu - View commit details
-
Copy full SHA for 45ea282 - Browse repository at this point
Copy the full SHA 45ea282View commit details
Commits on Oct 4, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 669656b - Browse repository at this point
Copy the full SHA 669656bView commit details -
Configuration menu - View commit details
-
Copy full SHA for e30225b - Browse repository at this point
Copy the full SHA e30225bView commit details -
Enable the expect based tests on FreeBSD
Several months ago I disabled all `expect` based tests on FreeBSD. Since then I fixed the problem that caused those tests to fail on FreeBSD; specifically, that the terminal size was bogus. This change re-enables those tests and fixes related issues.
Configuration menu - View commit details
-
Copy full SHA for 7005717 - Browse repository at this point
Copy the full SHA 7005717View commit details
Commits on Oct 5, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 2095983 - Browse repository at this point
Copy the full SHA 2095983View commit details
Commits on Oct 6, 2019
-
Improve handling of unit test timeouts
This makes it more likely we will get useful information about the state of an `expect` based unit test if it never finishes. Thus triggering a meson test timeout. This doesn't really fix #1411 but it could be many weeks, even months, before I notice a failure of test `glob.exp`. Plus I don't see any reason for this test to timeout. So without more information there isn't much point keeping that issue open. Fixes #1411
Configuration menu - View commit details
-
Copy full SHA for c3098f7 - Browse repository at this point
Copy the full SHA c3098f7View commit details
Commits on Oct 7, 2019
-
A year ago we were seeing `signal.sh` test failures that implied a use-after-free bug. I can no longer reproduce those failures. It looks like some other change committed since then has fixed this issue. So re-enable that test. xResolves #633
Configuration menu - View commit details
-
Copy full SHA for c52d3a3 - Browse repository at this point
Copy the full SHA c52d3a3View commit details
Commits on Oct 9, 2019
-
Configuration menu - View commit details
-
Copy full SHA for b18d4ae - Browse repository at this point
Copy the full SHA b18d4aeView commit details
Commits on Oct 10, 2019
-
Configuration menu - View commit details
-
Copy full SHA for a5ecd1c - Browse repository at this point
Copy the full SHA a5ecd1cView commit details -
Show version number through
ksh --version
Version number is stored in `SH_RELEASE` macro. Add it to the output of `ksh --version`. This was a regression introduced by 44fb5d5.
Configuration menu - View commit details
-
Copy full SHA for ad9d63d - Browse repository at this point
Copy the full SHA ad9d63dView commit details -
Configuration menu - View commit details
-
Copy full SHA for f5d2e83 - Browse repository at this point
Copy the full SHA f5d2e83View commit details
Commits on Oct 12, 2019
-
Move the logic for skipping tests
Move the logic for skipping tests from the meson.build file to the run_test.sh script. This is for a) consistency since some tests are already skipped in run_test.sh or in a specific unit test, and b) because it is better to have `meson test` show which tests are skipped rather than during the `meson` config phase. The reason the skip logic was originally in the meson.build config file was that we didn't know about the magic `77` exit status that Meson recognizes to mean the test was skipped rather than passed or failed.
Configuration menu - View commit details
-
Copy full SHA for d2e31cc - Browse repository at this point
Copy the full SHA d2e31ccView commit details
Commits on Oct 20, 2019
-
Configuration menu - View commit details
-
Copy full SHA for d1de147 - Browse repository at this point
Copy the full SHA d1de147View commit details
Commits on Oct 24, 2019
-
Implement an optget() like alternative
Implement an alternative to the legacy AST optget() function. This looks and behaves much like the getopt_long() function provided by GNU and BSD based platforms but with two extensions supported by AST optget(). First, integers represented as short flags; e.g., `-123`. Second, short flags that are prefixed by `+` rather than `-`. It also deviates from getopt_long() by not supporting some legacy behaviors of that API which we don't need. This is related to Github issue #507 because having such a function is required for parsing the `set`, `typeset`, and `ksh` command args. That is because those commands/programs require supporting short flags like `+o abc` to mean the opposite of `-o abc`. Something that is effectively impossible using the borg standard getopt_long() function. Handling numeric args that otherwise look like an invalid short flag can be done with getopt_long_only() but this implementation makes it much easier. Too, without the risk of recognizing `-abc` as equivalent to `--abc` since that wasn't supported by the legacy AST optget() function. Related #507
Configuration menu - View commit details
-
Copy full SHA for ddfe6b3 - Browse repository at this point
Copy the full SHA ddfe6b3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7faa294 - Browse repository at this point
Copy the full SHA 7faa294View commit details -
Convert some getopt_long_only() to optget_long()
These would have been included in the previous commit but all of these commands had a copy/paste error. They used `getopt_long_only()` when they should have used `getopt_long()`. Thus they were excluded from the previous change.
Configuration menu - View commit details
-
Copy full SHA for a9b86b6 - Browse repository at this point
Copy the full SHA a9b86b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 84648ca - Browse repository at this point
Copy the full SHA 84648caView commit details
Commits on Oct 25, 2019
-
Add more optget_long() unit tests
Add some explicit, complex, tests of how `optget_long()` handles options which have required or optional values. As with previous changes this also helps ensure out behavior is compatible with the GNU and BSD implementations of `getopt_long()` while still allowing us to implement ksh specific extensions. Such as explicit support of numbers as short options and short options prefixed by `+` rather than `-`.
Configuration menu - View commit details
-
Copy full SHA for 856f994 - Browse repository at this point
Copy the full SHA 856f994View commit details
Commits on Oct 28, 2019
-
Try to reduce false positive expect test failures
Since I modified the framework for running `expect` based tests to capture more info when they timeout I've noticed that every single timeout happens on the final [ctrl-D] to terminate the shell. Instead of terminating the shell a new prompt appears. This is an attempt to make those failures less likely.
Configuration menu - View commit details
-
Copy full SHA for e7713a5 - Browse repository at this point
Copy the full SHA e7713a5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2df35bd - Browse repository at this point
Copy the full SHA 2df35bdView commit details -
Configuration menu - View commit details
-
Copy full SHA for c791a0d - Browse repository at this point
Copy the full SHA c791a0dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7f5e094 - Browse repository at this point
Copy the full SHA 7f5e094View commit details -
Configuration menu - View commit details
-
Copy full SHA for bd87dbf - Browse repository at this point
Copy the full SHA bd87dbfView commit details -
Silence lint warning about uninitialized var
The cppcheck lint tool warns that `flags` might be used without being initialized. It's not obvious that can actually happen. Nonetheless, initialize the var to avoid passing a random value to `nv_pubsub()`.
Configuration menu - View commit details
-
Copy full SHA for 0d96c25 - Browse repository at this point
Copy the full SHA 0d96c25View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e019ec - Browse repository at this point
Copy the full SHA 8e019ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0451612 - Browse repository at this point
Copy the full SHA 0451612View commit details -
Configuration menu - View commit details
-
Copy full SHA for fec0369 - Browse repository at this point
Copy the full SHA fec0369View commit details -
Configuration menu - View commit details
-
Copy full SHA for a32b02c - Browse repository at this point
Copy the full SHA a32b02cView commit details -
Configuration menu - View commit details
-
Copy full SHA for d9103c8 - Browse repository at this point
Copy the full SHA d9103c8View commit details
Commits on Oct 29, 2019
-
Once in a while I'll use `DPRINTF()` in a way that causes a SIGSEGV while formatting the message. Usually because I'm trying to print a bogus pointer via the `%s` formatting directive. This causes the code to catch that failure and substitute a generic message rather than killing the process.
Configuration menu - View commit details
-
Copy full SHA for dd2c8ea - Browse repository at this point
Copy the full SHA dd2c8eaView commit details -
Use
static_fn
rather thanstatic
I introduced `static_fn` long ago when I when I started contributing changes and wanted a better way to report a minimally useful backtrace when events like SIGSEGV being delivered occur. This changes the declarations of the remaining ksh `static` functions that should use `static_fn`. This is mostly for consistency rather than any belief that having these functions be global will materially improve diagnostic feedback.
Configuration menu - View commit details
-
Copy full SHA for 4a5d206 - Browse repository at this point
Copy the full SHA 4a5d206View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4503830 - Browse repository at this point
Copy the full SHA 4503830View commit details
Commits on Oct 30, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 9490d10 - Browse repository at this point
Copy the full SHA 9490d10View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6511635 - Browse repository at this point
Copy the full SHA 6511635View commit details -
Fix
cd
function and make it automatically availableUser Andras Farkas <[email protected]> brought this issue to our attention via a message on the ksh mailing list. There are two problems. First, autoloaded functions `cd` and `mcd` aren't available until the user uses the `dirs` command. So put each function definition in its own autoloaded file. Second, the `_cd` function behaves incorrectly if you invoke it with no arguments. I'm ambivalent about the `_cd` behavior of always printing the selected directory on stdout. Personally I think that is just noise. If the user wants to be reminded what the CWD is they can put it in their prompt. But I'm keeping that behavior for the moment to see how others feel and because that is what the legacy implementation does which implies some people think the behavior is useful.
Configuration menu - View commit details
-
Copy full SHA for 651e614 - Browse repository at this point
Copy the full SHA 651e614View commit details -
Run autoloaded functions through shellcheck
This also fixes some problems with the autoloaded functions that I noticed while addressing the shellcheck warnings.
Configuration menu - View commit details
-
Copy full SHA for 286203f - Browse repository at this point
Copy the full SHA 286203fView commit details
Commits on Oct 31, 2019
-
Fix errors due to wchar_t being two bytes
On MS Windows, under Cygwin not WSL, the wchar_t type is an unsigned short. That causes warnings and errors that cause the build to fail. This "fixes" that. Fixes #704
Configuration menu - View commit details
-
Copy full SHA for 886d86f - Browse repository at this point
Copy the full SHA 886d86fView commit details -
1
Configuration menu - View commit details
-
Copy full SHA for f867740 - Browse repository at this point
Copy the full SHA f867740View commit details
Commits on Nov 1, 2019
-
Configuration menu - View commit details
-
Copy full SHA for c6c8c0c - Browse repository at this point
Copy the full SHA c6c8c0cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 42e8a04 - Browse repository at this point
Copy the full SHA 42e8a04View commit details
Commits on Nov 2, 2019
-
lower test parallelism on travis macos
Tests have been timing out on the Travis macOS environment starting a couple of days ago. It appears those servers are extremely overloaded. So reduce our load on the server to increase the likelihood the tests will pass.
Configuration menu - View commit details
-
Copy full SHA for 1a34ebd - Browse repository at this point
Copy the full SHA 1a34ebdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2580181 - Browse repository at this point
Copy the full SHA 2580181View commit details -
Fix b_sync.sh test failures on some macOS systems
When run with malloc debugging enabled fd 3 might be open. Switch to a fd that should never be valid; i.e., open.
Configuration menu - View commit details
-
Copy full SHA for b058d8c - Browse repository at this point
Copy the full SHA b058d8cView commit details
Commits on Nov 3, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 11983a7 - Browse repository at this point
Copy the full SHA 11983a7View commit details
Commits on Nov 4, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 8e4c8f0 - Browse repository at this point
Copy the full SHA 8e4c8f0View commit details
Commits on Nov 5, 2019
-
Move the generated version from a .h to a .c file
The SH_VERSION preprocessor symbol has bothered me for a long time. Especially as used in the context of `e_version[]`. This simplifies how the version is injected by the build process into the code; notwithstanding the large number of files touched by this change.
Configuration menu - View commit details
-
Copy full SHA for 4a438e5 - Browse repository at this point
Copy the full SHA 4a438e5View commit details
Commits on Nov 7, 2019
-
Revert "Move the generated version from a .h to a .c file"
This reverts commit 4a438e5. I had not intended to push this upstream as it's a work in progress and needs to be reviewed.
1Configuration menu - View commit details
-
Copy full SHA for 91b3806 - Browse repository at this point
Copy the full SHA 91b3806View commit details -
Configuration menu - View commit details
-
Copy full SHA for a205e5a - Browse repository at this point
Copy the full SHA a205e5aView commit details
Commits on Nov 8, 2019
-
The original code, prior to the fix for issue #1271, called sfreserve() with just the SF_LOCKR. While fixing the core issue of issue #1271 I noticed the buffer did not have a read/write mode. Which is wrong. What I didn't realize was that is equivalent to read+write. I incorrectly included SF_WRITE rather than SF_RDWR. Fixes #1432
Configuration menu - View commit details
-
Copy full SHA for a3c2dfb - Browse repository at this point
Copy the full SHA a3c2dfbView commit details -
[src/cmd/ksh93/edit/history.c:759] error (nullPointerArithmetic): Pointer addition with NULL pointer.
Configuration menu - View commit details
-
Copy full SHA for c584768 - Browse repository at this point
Copy the full SHA c584768View commit details -
Remove unused header siglist.h
It is interesting that no one noticed the siglist.h header is no longer used. So eliminate the dynamic generation of that unused header.
Configuration menu - View commit details
-
Copy full SHA for c25958e - Browse repository at this point
Copy the full SHA c25958eView commit details -
"unknown flag" -> "unknown option"
This is an anal-retentive change :-) We prefer "uknown option" over "unknown flag".
Configuration menu - View commit details
-
Copy full SHA for ffbfaf6 - Browse repository at this point
Copy the full SHA ffbfaf6View commit details
Commits on Nov 12, 2019
-
The ed_expand() function can attempt to modify the byte(s) immediately preceding `outbuff` if called with `*cur == -1`. That is not legal or safe. Related #1429
Configuration menu - View commit details
-
Copy full SHA for a0c44c9 - Browse repository at this point
Copy the full SHA a0c44c9View commit details
Commits on Nov 14, 2019
-
functions
with not loaded autoloaded functionsIf there are functions marked to be autloaded, but not yet loaded, typing `typeset -f` or `functions` dereferences a NULL pointer. Fixes #1436
Configuration menu - View commit details
-
Copy full SHA for 7df11de - Browse repository at this point
Copy the full SHA 7df11deView commit details
Commits on Nov 15, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 7c92227 - Browse repository at this point
Copy the full SHA 7c92227View commit details -
Move the generated version from a .h to a .c file
Reinstate commit 4a438e5 that was reverted by commit 91b3806. That commit reversion was a mistake because it appeared, based on the problem description, that the change incorrectly constrained the valid version strings. Subsequent analysis of the problem showed that not to be the case and the problem reporter was, in fact, attempting to use a non-semantic version string. The SH_VERSION preprocessor symbol has bothered me for a long time. Especially as used in the context of `e_version[]`. This simplifies how the version is injected by the build process into the code; notwithstanding the large number of files touched by this change.
Configuration menu - View commit details
-
Copy full SHA for d72c3a6 - Browse repository at this point
Copy the full SHA d72c3a6View commit details -
Looking into issue #1438 caused me to notice the style of `sh_close()` would benefit from some tweaking.
Configuration menu - View commit details
-
Copy full SHA for c99e9ff - Browse repository at this point
Copy the full SHA c99e9ffView commit details
Commits on Nov 17, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 359bf21 - Browse repository at this point
Copy the full SHA 359bf21View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0525de9 - Browse repository at this point
Copy the full SHA 0525de9View commit details
Commits on Nov 22, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 42a580c - Browse repository at this point
Copy the full SHA 42a580cView commit details
Commits on Nov 29, 2019
-
Configuration menu - View commit details
-
Copy full SHA for c1af9c6 - Browse repository at this point
Copy the full SHA c1af9c6View commit details -
Cleanup: remove unused function
The clock_t_delta() function was made obsolete by commit 2e18c67 so remove it and thus eliminate a compiler warning.
Configuration menu - View commit details
-
Copy full SHA for 61cfd45 - Browse repository at this point
Copy the full SHA 61cfd45View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9c7211b - Browse repository at this point
Copy the full SHA 9c7211bView commit details
Commits on Dec 1, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 2806b21 - Browse repository at this point
Copy the full SHA 2806b21View commit details -
These cppcheck warnings are false positives: [src/lib/libast/regex/regcache.c:126] warning (objectIndex): The address of local variable 'key' might be accessed at non-zero index. [src/lib/libast/regex/regcache.c:127] warning (objectIndex): The address of local variable 'key' might be accessed at non-zero index. Nonetheless, modify the code to make it clearer and as a byproduct eliminate those warnings.
Configuration menu - View commit details
-
Copy full SHA for 5c16e8d - Browse repository at this point
Copy the full SHA 5c16e8dView commit details
Commits on Dec 9, 2019
-
Configuration menu - View commit details
-
Copy full SHA for ca8c7e6 - Browse repository at this point
Copy the full SHA ca8c7e6View commit details
Commits on Dec 12, 2019
-
Configuration menu - View commit details
-
Copy full SHA for fbaf00e - Browse repository at this point
Copy the full SHA fbaf00eView commit details -
Configuration menu - View commit details
-
Copy full SHA for f05b619 - Browse repository at this point
Copy the full SHA f05b619View commit details
Commits on Dec 15, 2019
-
Use the ksh semantic version in docs
Replace today's date in the generated documentation with the ksh semantic version (e.g., "2020.0.0").
Configuration menu - View commit details
-
Copy full SHA for 82d4f30 - Browse repository at this point
Copy the full SHA 82d4f30View commit details -
Fix bug introduced by commit 6542e5a
It turns out that despite the name, `isfun`, and how the code seems to manipulate it the var is really tri-state: 0, 1, 2 (PATH_FPATH). This also correctly fixes the file descriptor leak that should be impossible but given how can_execute() was structured could occur.
Configuration menu - View commit details
-
Copy full SHA for 6928edc - Browse repository at this point
Copy the full SHA 6928edcView commit details
Commits on Dec 16, 2019
-
Fix shellcheck warnings created by previous commit
export KSH_VERSION=$($MESON_BUILD_ROOT/src/cmd/ksh93/ksh -c 'echo ${.sh.version}') ^---------^ SC2155: Declare and assign separately to avoid masking return values. ^---------------^ SC2086: Double quote to prevent globbing and word splitting. ^-------------------^ SC2016: Expressions don't expand in single quotes, use double quotes for that.
Configuration menu - View commit details
-
Copy full SHA for d0a7db5 - Browse repository at this point
Copy the full SHA d0a7db5View commit details -
Enable shellcheck of standard ksh functions
I happened to notice that the scripts in the src/cmd/ksh93/functions weren't being run through `shellcheck` because they lacked the necessary signature.
Configuration menu - View commit details
-
Copy full SHA for bc901af - Browse repository at this point
Copy the full SHA bc901afView commit details
Commits on Dec 17, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 02525a3 - Browse repository at this point
Copy the full SHA 02525a3View commit details
Commits on Dec 18, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 5efb243 - Browse repository at this point
Copy the full SHA 5efb243View commit details -
1
Configuration menu - View commit details
-
Copy full SHA for c7de8b6 - Browse repository at this point
Copy the full SHA c7de8b6View commit details
Commits on Dec 19, 2019
-
NetBSD does not have a `getopt_long_only()` implementation; thus we need to skip that compatibility test on that platform. Fixes #1451
2Configuration menu - View commit details
-
Copy full SHA for c007254 - Browse repository at this point
Copy the full SHA c007254View commit details
Commits on Dec 20, 2019
-
The previous fix overlooked that symbol `getopt_long_only` was still used even though it wouldn't be called. Fix that oversight and replace the `__NetBSD__` symbol test with a proper feature test for whether the platform provides `getopt_long_only()`. Fixes #1451
Configuration menu - View commit details
-
Copy full SHA for c6757a2 - Browse repository at this point
Copy the full SHA c6757a2View commit details -
Harden unit test against slow test environments
I've seen the test of the `$SECONDS` var fail once to often because a Travis CI environment is overloaded.
Configuration menu - View commit details
-
Copy full SHA for b6be7e7 - Browse repository at this point
Copy the full SHA b6be7e7View commit details
Commits on Dec 22, 2019
-
Add option to disable */shcomp test variants
We always expect the ksh */shcomp unit test variants to behave like the non-shcomp variants. So there is normally no reason to run the shcomp variants. Provide an option to disable those tests in order to reduce the cost of testing ksh script behavior.
Configuration menu - View commit details
-
Copy full SHA for 0d76ee4 - Browse repository at this point
Copy the full SHA 0d76ee4View commit details
Commits on Dec 27, 2019
-
Deal with PATH being unset when running unit tests
This is nowhere close to optimal. It is a clumsy fix for when the user's environment has $PATH unset when running unit tests. The primary reason for this change is to replace the unnecessary invocation of the external `basename` command with an equivalent ksh builtin when running src/cmd/ksh93/data/config.ksh. A secondary reason is to work around whatever is causing `$PATH` to be unset for the person who opened issue #1453. Long term we might want to augment the *config.ksh* script to also explicitly deal with an empty/unset `$PATH`. Fixes #1453
Configuration menu - View commit details
-
Copy full SHA for 2950ede - Browse repository at this point
Copy the full SHA 2950edeView commit details
Commits on Dec 28, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 74c34dc - Browse repository at this point
Copy the full SHA 74c34dcView commit details -
Configuration menu - View commit details
-
Copy full SHA for d9ecc21 - Browse repository at this point
Copy the full SHA d9ecc21View commit details
Commits on Dec 29, 2019
-
Configuration menu - View commit details
-
Copy full SHA for 37cb9ea - Browse repository at this point
Copy the full SHA 37cb9eaView commit details -
Configuration menu - View commit details
-
Copy full SHA for db20aab - Browse repository at this point
Copy the full SHA db20aabView commit details -
I introduced the `$NO_SHCOMP` env var long ago as a means of skipping shcomp unit test variants when running the tests on my local systems. I recently, in commit 0d76ee4, introduced a better mechanism that uses `meson -Dbuild-shcomp-tests=false` at config time to supress those tests. So simplify the script that runs unit tests. This includes related cleanups involving the exit status if the test runner fails for various reasons or explicitly skips a test for compatibility reasons.
Configuration menu - View commit details
-
Copy full SHA for 5abcbd0 - Browse repository at this point
Copy the full SHA 5abcbd0View commit details
Commits on Jan 9, 2020
-
Fix handling of skipped directories
The bug in `path_opentype()` fixed by this commit may affect other scenarios but we know it affects autoloaded functions. Hence the unit test for that scenario. Fixes #1454
Configuration menu - View commit details
-
Copy full SHA for 3bc5816 - Browse repository at this point
Copy the full SHA 3bc5816View commit details
Commits on Jan 10, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 80cc081 - Browse repository at this point
Copy the full SHA 80cc081View commit details -
Fix b_printf.sh unit test on Cygwin
The default `od` output format varies depending on the platform. Force output of octal bytes. Also, eliminate the `head -n1` and tighten up the matching regex.
Configuration menu - View commit details
-
Copy full SHA for 031d73a - Browse repository at this point
Copy the full SHA 031d73aView commit details
Commits on Jan 11, 2020
-
Recent changes require a `ninja install` step before `meson test`. Update the documentation.
Configuration menu - View commit details
-
Copy full SHA for 078cb99 - Browse repository at this point
Copy the full SHA 078cb99View commit details
Commits on Jan 12, 2020
-
The core of this change is moving this statement after the `err:` label: if (isfun && fd >= 0) sh_close(fd); While fixing that I also decided to refactor the function to make the primary logic of `can_execute()` clearer. Coverity CID#353337
Configuration menu - View commit details
-
Copy full SHA for 55cad1d - Browse repository at this point
Copy the full SHA 55cad1dView commit details
Commits on Jan 13, 2020
-
Fix b_print.sh unit test on Cygwin
The default `od` output format varies depending on the platform. Force output of octal bytes. Also, eliminate the `head -n1` and tighten up the matching regex. This is the same fix as commit 031d73a but for a different unit test.
Configuration menu - View commit details
-
Copy full SHA for 2f9b39e - Browse repository at this point
Copy the full SHA 2f9b39eView commit details -
Simplify invalid locale testing
This fixes one, false positive, failure on Cygwin and simplifies and clarifies that test logic.
Configuration menu - View commit details
-
Copy full SHA for 6b6146e - Browse repository at this point
Copy the full SHA 6b6146eView commit details
Commits on Jan 15, 2020
-
Print correct version string on
ksh --version
This change is a hack. It will be moot once the remaining three uses of optget() are modified to use optget_long(). But it's a straightforward way to get the correct version string when running `ksh --version`. Fixes #1456
Configuration menu - View commit details
-
Copy full SHA for b29a24d - Browse repository at this point
Copy the full SHA b29a24dView commit details -
Eliminate unneeded use of
getconf
The `getconf` command hasn't been a builtin for a long time. No known, non AST implementation, supports `getconf LIBPATH`. So remove that pointless test code.
Configuration menu - View commit details
-
Copy full SHA for b277665 - Browse repository at this point
Copy the full SHA b277665View commit details -
Some platforms (e.g., OpenBSD) allow pretty much any locale string. And it is not clear why it is the responsibility of ksh to issue a diagnostic if an invalid locale is specified by the user. Or why we should be testing for this situation. Even ksh93u+, which uses the AST locale subsystem, doesn't produce a diagnostic message when doing `LC_CTYPE=xyz.UTF-8` on OpenBSD. This is a follow up to commit 6b6146e.
Configuration menu - View commit details
-
Copy full SHA for 2f06a34 - Browse repository at this point
Copy the full SHA 2f06a34View commit details
Commits on Jan 16, 2020
-
Remove another
getconf LIBPATH
Also, simplify the affected test by removing extraneous items.
Configuration menu - View commit details
-
Copy full SHA for 127d2e4 - Browse repository at this point
Copy the full SHA 127d2e4View commit details -
Remove another bogus getconf use
The test being removed only passes because of the trailing `exit 0`. Even with ksh93u+ the preceding two commands fail on all platforms I have access to.
Configuration menu - View commit details
-
Copy full SHA for 0641d89 - Browse repository at this point
Copy the full SHA 0641d89View commit details
Commits on Jan 22, 2020
-
Configuration menu - View commit details
-
Copy full SHA for f80d386 - Browse repository at this point
Copy the full SHA f80d386View commit details -
Configuration menu - View commit details
-
Copy full SHA for d5f4cb6 - Browse repository at this point
Copy the full SHA d5f4cb6View commit details -
I noticed this while reviewing OpenSuse patches that included this, pointless, change: -const char e_crondir[] = "/usr/spool/cron/atjobs"; +const char e_crondir[] = "/var/spool/cron";
Configuration menu - View commit details
-
Copy full SHA for 9fa5b47 - Browse repository at this point
Copy the full SHA 9fa5b47View commit details -
Integrate nv_optimize() bug fix from OpenSuse
This is adapted from the ksh93-optimizeleak.dif included with the OpenSuse ksh source. I confirmed the inner condition is true some of the time and the early return does not break any unit tests.
Configuration menu - View commit details
-
Copy full SHA for 2986f8b - Browse repository at this point
Copy the full SHA 2986f8bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 46d4981 - Browse repository at this point
Copy the full SHA 46d4981View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1fd82bd - Browse repository at this point
Copy the full SHA 1fd82bdView commit details
Commits on Jan 24, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 459a380 - Browse repository at this point
Copy the full SHA 459a380View commit details
Commits on Jan 25, 2020
-
Fix cd function and enable it in unit tests
The old AST team implementation of an improved `cd` command has several problems when enabled for every interactive shell. Not least of which is that the approach of using an alias does not allow it to be, easily, overriden by a user defined `cd` function. It also fails to preserve some builtin `cd` command behavior. There may be other problems this doesn't fix. This is an experiment to see if we can augment commands like `cd` without having to write all behavior in the C language. Something other shells, like fish, have managed for more than a decade. Fixes #1445
Configuration menu - View commit details
-
Copy full SHA for 3dfc236 - Browse repository at this point
Copy the full SHA 3dfc236View commit details
Commits on Jan 26, 2020
-
Rename three vars associated with cd related funcs
Don't use global vars for the private data used by the cd related functions (pushd, nextd, etc.). Move them into the `.sh` namespace. Related #1445
Configuration menu - View commit details
-
Copy full SHA for 5000e7f - Browse repository at this point
Copy the full SHA 5000e7fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 43d1853 - Browse repository at this point
Copy the full SHA 43d1853View commit details
Commits on Jan 31, 2020
-
Change default build type to "minsize"
People (and distros) have been building ksh from this project using the default "debug" build type since we switched from Nmake to Meson. That results in a ksh program whose performance is far from optimal. So change the default build type. If a debugging enabled binary is needed, such as in a CI environment, it must be requested explicitly. Related #1449
Configuration menu - View commit details
-
Copy full SHA for db54d36 - Browse repository at this point
Copy the full SHA db54d36View commit details
Commits on Feb 1, 2020
-
The typo is harmless since the string is not used for anything but fix it since it is wrong and confusing.
Configuration menu - View commit details
-
Copy full SHA for 8cf92b2 - Browse repository at this point
Copy the full SHA 8cf92b2View commit details -
Fix compiler error on OS X 10.6
Mac OS X 10.6 (Snow Leopard) causes symbol `ERROR_dictionary` in src/lib/libdll/dlfcn.c to be evaluated. Since that symbol isn't defined it results in a compilation error. Add the identity mapping that is present in the rest of the source code. Fixes #1462
Configuration menu - View commit details
-
Copy full SHA for f8290d2 - Browse repository at this point
Copy the full SHA f8290d2View commit details