aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2020-03-05build: Check for 32-bit time_t at configure timeSteve Bennett3-8/+17
To warn of Y2038 problems, and suggest use of -D__MINGW_USE_VC2005_COMPAT on mingw32. Do this instead of the previous runtime test. Add -D__MINGW_USE_VC2005_COMPAT to the appveyor build. Fixes msteveb/jimtcl#145 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-03-05jim.h: Change type of interp->lastCollectTimeSteve Bennett2-7/+7
Previously we stored lastCollectTime as time_t, but to support more easily enabling 64 bit vs 32 bit time_t, convert this to be JimClock() compatible (64 bit milliseconds). Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-03-05docs: Updates mainly to clarify glob string matchingSteve Bennett1-83/+88
With some additional minor cleanups Fixes msteveb/jimtcl#143 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-03-04clock: test and doc non-Y2038 complianceSteve Bennett2-0/+8
Add a note in the documentation for clock that some systems use 32-bit time_t and are thus not year 2038 compliant. Also add a test to catch this in clock.test Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-02-18docs: fix minor typosAntonio Borneo6-17/+17
Fix few typos in the documentation Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
2020-02-18exec: fix valgrind warning on close(-1)Antonio Borneo1-2/+2
When executing "exec.test" under valgrind, it reports several warning messages Warning: invalid file descriptor -1 in syscall close() Add proper check around close() Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
2020-02-13build: examples.api: Add necessary linker flagsSteve Bennett2-1/+3
Linking with -ljim may need additional libraries Signed-off-by: Steve Bennett <steveb@workware.net.au>
2020-02-06Fix #148 - oo errors with no class variables.TheMarkitecht1-1/+1
https://github.com/msteveb/jimtcl/issues/148
2020-01-22docs: make it clear that the package version is ignoredSteve Bennett1-3/+4
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-12-30regexp: Reset scanner position on failed optional groupSteve Bennett2-0/+6
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-12-13tests: Fix misc.test for new return -level 0 behaviourSteve Bennett1-1/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-12-13return: fix -level 0 -code xxxSteve Bennett2-3/+10
Should return the given return code, not JIM_RETURN (2) Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-30jimsh: interactive mode: print nullsSteve Bennett2-2/+6
If the interp result contains embedded nulls, print the full result. Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-30string map and string compare now support embedded nullsSteve Bennett4-64/+76
Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-20bump version to 0.790.79Steve Bennett3-880/+1079
Update documentation to indicate v0.79 and update Tcl_shipped.html Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-15build: Check for inline supportSteve Bennett2-0/+36
To ensure that linenoise.c can build, even for strict c89 Add cc-check-inline in autosetup/jim-misc.auto Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-15Update ssl cert to use a 4096 bit keySteve Bennett2-19/+75
Keep newer libssl happy Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-14build: Fix out-of-tree build with json extSteve Bennett1-0/+2
If building out-of-tree, the jsmn/ directory may not exist. So create it during configure Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-12aio: tty: allow setting echoSteve Bennett3-2/+21
set-only e.g. to disable echo on stdin: stdin tty echo 0 This allows disabling echo while otherwise keeping cooked mode. Setting input to cooked or raw will overwrite this setting Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-12configure: add SIZEOF_INT to jim-config.hSteve Bennett1-1/+2
It can be useful for extensions to know the size of integers Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-11json: implement -index decode optiondbohdan3-6/+43
2019-11-09json: Fix decode schema for list objSteve Bennett2-0/+6
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-09json: Add json encoder/decoderSteve Bennett6-8/+750
Using the jsmn library for decoding. Based on the original implementation by Svyatoslav Mishyn <juef@openmailbox.org> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-09jsmn: Fix a parser bug where object keys could be non-stringsSteve Bennett1-0/+4
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-09jsmn: import json decoderSteve Bennett3-0/+410
This will be used to add json decode support From: https://github.com/zserge/jsmn, v1.0.0 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-09aio: make some data constSteve Bennett1-3/+3
Move some remaining data to the read-only segment Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-08appveyor.yml: build with sqlite3 extdbohdan1-3/+3
2019-11-08appveyor.yml: fix build in forksdbohdan1-0/+1
2019-11-08appveyor.yml: explicitly build with ssldbohdan1-1/+1
Using only --full will ignore ssl if the ssl library isn't found. By enabling it explicitly, we will get an error if not found.
2019-11-08Improve comments for JimResetHashTable()Steve Bennett1-2/+10
and Jim_FreeHashTable() Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-06build: improve build for shared objectsSteve Bennett3-101/+29
Rather than listing the build rules for each shared object (loadable module) in the Makefile template, generate the build rules in configure. Also, if an extension is configured as a module, any automatic dependencies required by the extension are configured as modules by default. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-06docs: Formatting cleanups, consistencySteve Bennett1-75/+290
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-06docs: Remove docs for the case commandSteve Bennett1-62/+2
This command no longer exists in Jim Tcl, so remove it from the documentation. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-06expr-sugar: $() should return non-error codesSteve Bennett2-24/+27
If an expression returns (e.g.), break, continue or exit, that return code should be propagated, the same it is for [expr {}] Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-11-01regexp,regsub: utf8: Fix incorrect count with . matchesSteve Bennett1-2/+1
Internally bytes were being counted rather than characters Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-10-30aio: need SO_REUSEADDR before bind()Steve Bennett1-3/+3
Commit fe8bab1cc313d0049bbb839589c68059807518c8 accidentally moved the SO_REUSEADDR after bind() where it does no good. Move it back to before bind() Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-10-28utf8_strlen: Improve performanceSteve Bennett2-7/+5
Use utf8_charlen() rather than utf8_tounicode() Note that utf8_charlen() now returns 1 instead of -1 for an invalid utf-8 start byte. Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-10-28regexp: Fix -indices in the utf-8 caseSteve Bennett1-1/+1
The calculation of the end index was wrong. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-10-27regexp -indices should return character indicesSteve Bennett2-8/+11
Not byte indices Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-10-27regexp, regsub: -start is a character indexSteve Bennett2-2/+10
Not a byte index Reported-by: dbohdan <dbohdan@dbohdan.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-10-18file: Add file splitSteve Bennett3-4/+47
This subcommand was missing as it wasn't part of the original Tcl 6.7 Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-10-18file: Better support for trailing slashes in pathnamesSteve Bennett3-91/+201
e.g. file tail /abc/def/ => def Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-09-06signal: Add 'signal block' supportSteve Bennett3-24/+65
This allows a signal to be blocked by setting it's handler to SIG_IGN Can be used to block SIGPIPE for exec Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-09-06exec: Don't force SIGPIPE to be enabledSteve Bennett1-17/+0
Previously SIGPIPE was set to SIG_DFL before vfork so that child processes always had SIGPIPE enabled. This makes it impossible to disable SIGPIPE for child processes. So don't do this. Instead allow the disposition of SIGPIPE to be handled by the 'signal' command. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-08-14aio: Significantly improve the speed of copytoSteve Bennett1-4/+10
Copying 1 byte at a time can be very slow for large transfers. Use a 256 byte buffer instead. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-08-14jim.c, jim.h: Remove unused Jim_ResizeHashTableSteve Bennett2-12/+0
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-08-14jim-history: Remove unused allocationSteve Bennett1-15/+1
This allocation of space for the history is handled by the underlying code so there is no need to allocate a history buffer in jim-history. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-08-14aio: minor code improvementSteve Bennett1-2/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-07-31aio: Add support for lock -waitSteve Bennett3-13/+36
Sometimes it is useful to wait for a lock to become available. Signed-off-by: Steve Bennett <steveb@workware.net.au>
2019-07-26docs: Fix typo in unix domain datagram supportSteve Bennett1-1/+1
Signed-off-by: Steve Bennett <steveb@workware.net.au>