aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2018-09-21lreplace: Implement TIP #505Steve Bennett2-15/+88
More consistent behaviour of replacing past end of list Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-09-21file: Add microsecond resolution for mtime: mtimeusSteve Bennett3-16/+78
Note that actual support is dependent upon the underlying operating system and filesystem. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-09-04bootstrap package supportSteve Bennett1-3/+7
Allow minimal command "package" to take additional arguments, but ignore them. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-09-04Tidy some signed/unsigned comparisonsSteve Bennett6-9/+9
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-28distclean: Remove generated tests/MakefileSteve Bennett1-1/+1
2018-07-27linenoise: Update for optimised delete charSteve Bennett1-10/+46
Update to version: https://github.com/msteveb/linenoise/commit/174a404dfa323a17852414dfc70b36976eddf6f3 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-26jim-interp.c: fix compile warning with GCC 8.1.1Antonio Borneo1-1/+1
GCC complains about possible truncation from snprintf() jim-interp.c: In function ‘JimInterpCommand’: jim-interp.c:164:46: warning: ‘%ld’ directive output may be truncated writing between 1 and 20 bytes into a region of size 19 [-Wformat-truncation=] snprintf(buf, sizeof(buf), "interp.handle%ld", Jim_GetId(interp)); ^~~ jim-interp.c:164:32: note: directive argument in the range [-9223372036854775807, 9223372036854775807] snprintf(buf, sizeof(buf), "interp.handle%ld", Jim_GetId(interp)); ^~~~~~~~~~~~~~~~~~ jim-interp.c:164:5: note: ‘snprintf’ output between 15 and 34 bytes into a destination of size 32 snprintf(buf, sizeof(buf), "interp.handle%ld", Jim_GetId(interp)); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
2018-07-25linenoise: Update for optimised insertSteve Bennett1-33/+75
Update to version: https://github.com/msteveb/linenoise/commit/d7bcf93d4de7581e043283ab461eca2310dd8fdc Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-25Update autosetup to v0.6.8Steve Bennett11-521/+636
autosetup changes: - The syntax for templates has changed slightly - Update config.guess and config.sub to 2018-03-08 - Add rpath support - Add --runstatedir Also: - enable rpath when building libjim as shared - ensure that 'make test' works on MacOS when libjim is shared Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-09exec: Finally get the environ rightSteve Bennett1-3/+7
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08exec: Fix environment for windowsSteve Bennett1-4/+3
The incorrect environment was used in 8f7471a0f Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08foreach: Avoid memory leak in case of errorSteve Bennett1-1/+2
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08exec: Better adhere to possible vfork restrictionsSteve Bennett1-11/+40
Avoid modification of any variables on the parents stack. Avoid use of stdio in the event that execve fails. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08remove some unused variable assignmentsSteve Bennett2-2/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08build-jim-ext: Improvements when cross compiling, TclSteve Bennett2-74/+65
Detect when cross compiling (build != host) Tcl exec loses stderr if redirected and an error code is returned, so redo the approach to exec so that it works on both Tcl and Jim Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08linenoise.c: Minor update to fix compiler warningSteve Bennett1-1/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08aio: Fall back to stdio error if no ssl errorSteve Bennett1-3/+3
Conditions such as ECONNRESET may result in a failed ssl connection with no ssl error, so return the stdio error in this case rather than just "unknown SSL error" Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-08aio: Always set error message on I/O errorSteve Bennett1-5/+10
Some operations that failed (such as read) would leave an empty error result. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-05expr: Fix compiler warning on older gccSteve Bennett1-1/+1
jim/jim.c: In function ‘SetExprFromAny’: jim/jim.c:9109:16: error: ‘top’ may be used uninitialized in this function [-Werror=maybe-uninitialized] expr->expr = top; ^ jim/jim.c:9075:25: note: ‘top’ was declared here struct JimExprNode *top; Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-07-01Bump version to 0.780.78Steve Bennett4-66/+298
2018-06-30oo: Fix 'methods' for superclassesSteve Bennett1-1/+1
Methods inherited from a base class are created with alias, so they are not returned by 'info procs'. Need to use 'info commands' instead.
2018-06-08jim.c: Allow Jim_WrongNumArgs() to accept NULL for msgSteve Bennett1-1/+1
For consistency with Tcl Reported-by: Stuart Cassoff <stwo@bell.net> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-06-03jim.c: Jim_Length/Jim_String internal checksSteve Bennett1-5/+2
Perform the same internal checks as Jim_GetString() when the string rep needs to be generated by calling Jim_GetString() Reported-by: Stuart Cassoff <stwo@bell.net> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-03-25linenoise: Update to support multiline mode.Steve Bennett5-707/+1613
Updated to: https://github.com/msteveb/linenoise/commit/ad5172e99520e2fe2a35b4bbd7fbc74d9df36df1 Now supports multiline mode (by setting $history::multiline to 1) Improved windows support Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-01-18expr: prevent stack overflowSteve Bennett1-1/+4
Limit the depth of the expressions to a reasonable level to prevent stack overflow Signed-off-by: Steve Bennett <steveb@workware.net.au>
2018-01-01linenoise: Add ^Z (SUSP) supportSteve Bennett1-0/+14
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-12-31utf8: Update UnicodeData.txt and EastAsianWidth.txt to 10.0.0Steve Bennett2-24/+1094
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-12-31utf8: Fix merging of adjacent wide character rangesSteve Bennett1-14/+25
Adjacent wide character ranges were not being merged correctly, and the final range was not being output. Fix this, and also merge adjacent combining character ranges. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-12-31linenoise: Update to fix potential buffer overflowSteve Bennett1-6/+6
From https://github.com/msteveb/linenoise/commit/a4545af5e3766c58100be6bf406b9a0d2049090f Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-12-31utf8: Be more strict at rejecting invalid UTF-8 sequences.Steve Bennett3-23/+17
RFC 3629 says: Implementations of the decoding algorithm above MUST protect against decoding invalid sequences Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-12-31regexp: Implement class shorthand escapes in bracketsSteve Bennett2-11/+30
The following class shorthand escapes now match Tcl when used within bracket expressions: \d [[:digit:]] \s [[:space:]] \w [[:alnum:]_] (note underscore) e.g. [a-f\d] => [a-f0-9] Previously these shorthand escapes were only implemented outside bracket expressions. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-12-02jim.c: Various minor cleanupsSteve Bennett1-69/+67
Small improvements to code for clarity and code reduction. Improve comments. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-29tests: clock.test needs cmd clockSteve Bennett1-0/+2
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-27build: Fix out-of-tree buildsSteve Bennett1-1/+1
Was broken by the support for --silent-rules Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-26tests: Make the failing SIGPIPE tests go away on AppVeyorSteve Bennett1-1/+7
Work around the problem by skipping the test Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-26build: Support --silent-rulesSteve Bennett2-42/+115
And enable silent rules by default if using GNU make. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-26Update autosetup to v0.6.7-17-gb5a0e85Steve Bennett11-110/+311
Mostly for --{enable,disable}-silent-rules Use new opt-str where appropriate Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-25tests: remove debugging from event.testSteve Bennett1-2/+0
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-25tests: If ipv6 sockets can't be bound, don't testSteve Bennett1-2/+15
This is a workaround for IPv6 tests failing on Travis Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-25build: During install, make sure pkgconfig dir existsSteve Bennett1-0/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-08docs: Bring README.utf-8 up-to-dateSteve Bennett1-12/+15
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-08tclcompat.tcl: minor comment updatesSteve Bennett1-3/+4
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-04interp: command should be created in the global namespaceSteve Bennett1-1/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-11-04tests: exec2-3.2 now passes on OpenBSDSteve Bennett1-3/+3
Reported-by: Stuart Cassoff <stwo@bell.net> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-10-21tests: Use a more explicit approach to test SIGPIPESteve Bennett1-2/+8
Write to a closed pipe in exec2-3.2 to force SIGPIPE Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-10-21aio: No need to create a new channel for sslSteve Bennett2-21/+12
Just "promote" the current channel to ssl Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-10-21doc: Update remaining references to os.waitSteve Bennett5-5/+5
Now simply 'wait' Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-10-21file: __MSYS__ signifies windows tooSteve Bennett1-1/+1
Needed to make file join work with msys2 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-10-17tests: Try to fix exec2-3.2 on WindowsSteve Bennett1-2/+2
On some mingw platforms exec2-3.2 isn't producing SIGPIPE Try to make it do so. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2017-10-17signal, exec, wait, pid: improvements, especially to execSteve Bennett19-768/+845
- fix popen [open "|pipeline ..."] to return meaningful status in close (but note that stderr is not captured) - popen pipelines can now be used as the target of exec redirection - overally improvements to exec on windows. Now crt file descriptors are used throughout - add support for [pid], [wait] and popen on windows - os.wait is now wait, and integrates with [exec ... &] to be able to wait for running background tasks - [socket pipe] is now also [pipe] and is supported on windows - [file tempfile] is supported on windows - move duplicated code between jim-aio.c and jim-exec.c to jimiocompat.c - Fix [exec] on windows to match unix semantics wrt sharing the parent stream unless redirected rather than using /dev/null - On windows redirect to or from /dev/null is automatically converted to NUL: - If signal support is disabled, implement a minimal Jim_SignalId() for exec and wait - aio now supports getfd, to return the underlying file descriptor. This is used by exec to support redirection, and allows popen channels to support exec redirection. Signed-off-by: Steve Bennett <steveb@workware.net.au>