Jim Tcl
Timeline
Not logged in

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent check-ins

2021-11-27
23:29
Announce release 0.81 Leaf check-in: cc212301fa user: steveb tags: www
23:06
Generate shipped documentation for 0.81

Signed-off-by: Steve Bennett <steveb@workware.net.au> Leaf check-in: a8a1a366d3 user: steveb@workware.net.au tags: trunk,

23:06
bump version to 0.81

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 5c6b963c1d user: steveb@workware.net.au tags: trunk,

2021-11-08
04:36
core: avoid some gcc 11 warnings

Fixes: #210

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 977273b557 user: steveb@workware.net.au tags: trunk,

2021-10-06
20:46
configure.ac: fix autoreconf with autoconf >= 2.70

Fix the following build failure raised with openocd and autoconf >= 2.70 due to http://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commit;h=aba75f6d4a9c875a9d5d90a07c6b3678db66a4bf:

>>> openocd 0.11.0 Autoreconfiguring autoreconf: error: configure.ac: AC_INIT not found; not an autoconf script?

Fixes: - http://autobuild.buildroot.org/results/5fb7aa28703aff61ba850eac11bd35c8804528ae

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> check-in: f518d646df user: steveb@workware.net.au tags: trunk,

2021-07-21
00:28
jim-sqlite3: integers are 64 bit integers

When extracting the results of a query, an integer result should be retrieved with sqlite3_column_int64(), not sqlite3_column_int()

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 79d50ea2b2 user: steveb@workware.net.au tags: trunk,

2021-07-15
05:08
aio: Fix the 'lock' subcommand

The name of the subcommand was inadvertently "lock ?-wait?" rather than "lock"

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: ea679c5f0f user: steveb@workware.net.au tags: trunk,

05:08
subcmd: sort subcommand when returning them

Both for -commands and -help, and when an error is generated, sort the subcommands.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 1cd968c77f user: steveb@workware.net.au tags: trunk,

2021-07-09
22:13
autosetup: Update .guess and .sub files from '2018-03-08' to '2021-06-03'

(This brings autosetup to v0.7.0-7-gc154c58)

Signed-off-by: Veronika Kremneva <kremneva@synopsys.com> check-in: 710667d60d user: steveb@workware.net.au tags: trunk,

2021-07-08
22:32
tests: move garabage collection test to ref.test

bootstrap jimsh doesn't have garbage collection, so move such tests into ref.test

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 5f8d965e92 user: steveb@workware.net.au tags: trunk,

12:36
collect: correctly handle references as globally scoped names

When a reference is used as a command name (e.g. in oo.tcl) it is created in the global namespace as ::<reference...

The current check for references that are commands with a reference count of 1 doesn't take this into account so these references were not being garbage collected.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: cfa6aa94e4 user: steveb@workware.net.au tags: trunk,

2021-07-02
09:55
exec: support stdin fd being closed

Don't try to dup2() a file descriptor that is already correct. This can happen if, for example, stdin is closed and exec redirects stdin from a file, thus opening the input as file descriptor 0.

Fixes #201

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 495ef67247 user: steveb@workware.net.au tags: trunk,

2021-04-21
13:15
Fix various typos and grammar mistakes

Also update some out-of-date links. check-in: 433eb990df user: steveb tags: www

2021-04-08
22:29
build: Allow some paths to contain spaces

Quote the build dir or and the path to jimsh/tclsh in the Makefile in case they contain spaces.

Also fix a few problems in tests/ that arise when the build and/or source dir contain spaces.

Fixes #199

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 9940807fd4 user: steveb@workware.net.au tags: trunk,

22:07
build: update autosetup for AUTOREMAKE fix

In case the path to configure contains spaces.

v0.7.0-6-g8e7e397

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 19ee691086 user: steveb@workware.net.au tags: trunk,

2021-04-03
04:06
expr: allow existing multiple argument support with --compat

Some users may not be ready to immediately move to the single-argument expr, so provide a --compat option to configure to support the previous behaviour as a transition strategy.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 2b3c605af8 user: steveb@workware.net.au tags: trunk,

2021-03-21
23:00
json::encode: Improve the implementation

Use a single subencoder proc for all types.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 5eca1dfa4d user: steveb@workware.net.au tags: trunk,

2021-03-18
22:32
core: Fix memory leak replacing existing commands

Fixes #198

Reported-by: Antonio Borneo <borneo.antonio@gmail.com> Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 6bb6d300df user: steveb@workware.net.au tags: trunk,

2021-03-10
01:11
install: Fix install of jimdb for out-of-tree build

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: a79f1ccc6a user: steveb@workware.net.au tags: trunk,

2021-03-09
22:53
tests: Fix debug.test for single arg expr

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: a6cf5584e3 user: steveb@workware.net.au tags: trunk,

12:08
expr: TIP 526, only support a single arg

Avoid unexpected issues by concatenating multiple arguments. This does create an incompatibility with early versions, but it is generally trivial to convert existing code to one of two forms:

1. expr {$a + $b} -- usually correct 2. expr "$a + $b" -- usually incorrect

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: d2275407f6 user: steveb@workware.net.au tags: trunk,

2021-03-07
04:56
aio: pass socktype to getaddrinfo()

Some old systems are not happy with a numeric service and no socktype. Fixes #196

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: e39a1428c5 user: steveb@workware.net.au tags: trunk,

2021-02-26
22:49
aio: tests: bootstrap jimsh doesn't have posix open flags

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: fd542496b9 user: steveb@workware.net.au tags: trunk,

22:48
tests: Fix return code from tests/runall.tcl

In the case where interp is not supported

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 32de3899c0 user: steveb@workware.net.au tags: trunk,

22:26
aio: mingw doesn't have O_NOCTTY

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 4a0bf60c61 user: steveb@workware.net.au tags: trunk,

20:17
docs: Clarify that regexp back references are not supported

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 28c7eb26ba user: steveb@workware.net.au tags: trunk,

20:17
aio: open: support for POSIX open flags

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 628572b9ee user: steveb@workware.net.au tags: trunk,

2021-02-20
08:12
aio: rework internals of open

In preparation for support of posix mode flags to open

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: c4bcc65b8d user: steveb@workware.net.au tags: trunk,

08:12
oo: minor code cleanups

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 5a2e31d90e user: steveb@workware.net.au tags: trunk,

08:12
oo: instance ref should be fully qualified

In case the class is created with a namespace name

Fixes #193

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: c45faf699e user: steveb@workware.net.au tags: trunk,

08:12
jim.c: Fix compiler warning

When namespace is disabled, Jim_memrchr is not needed

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 31c87f3cd5 user: steveb@workware.net.au tags: trunk,

08:12
build: some extensions are dep only

Extensions like nshelper and jsonencode should only be selected if explicitly enabled or if they are the target of a dependency. So enabling namespace enables nshelper, but --full --without-ext=namespace doesn't.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 1f60f063fa user: steveb@workware.net.au tags: trunk,

07:59
redis: avoid over-allocating memory

Should not make any difference in practice, but the allocations should be size * (argc - 1) not size * argc - 1

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: ebc51fe547 user: steveb@workware.net.au tags: trunk,

2021-02-04
21:55
build: quieten compiler warnings

Irrelevant warnings from some compilers

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 414bf44622 user: steveb@workware.net.au tags: trunk,

2021-01-30
00:00
lsearch, lsort: support for -stride and -index

Add -stride support to both lsearch and lsort Add -index support to lsearch Improve -index for lsort to support multiple indices

Also harmonise some error messages with Tcl 8.7

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: f3223d0a64 user: steveb@workware.net.au tags: trunk,

2021-01-23
02:49
history: Add support for history keep

Fixes #191

Signed-off-by: Steve Bennett <steveb@workware.net.au> Reported-by: D. Bohdan <dbohdan@dbohdan.com> check-in: 1f877e4da6 user: steveb@workware.net.au tags: trunk,

2021-01-10
05:33
package: add ABI version checking

jim.h now includes JIM_ABI_VERSION that should be incremented whenever the ABI changes. Then all loadable modules should call Jim_CheckAbiVersion() to make sure they are loaded against the correct version.

Add Jim_PackageProvideCheck() that does both Jim_CheckAbiVersion() and Jim_PackageProvide() to simplify the implementation of loadable extensions.

Also rename the "big" sqlite3 extension to just sqlite to avoid a naming conflict with the smaller jim-sqlite3 extension.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: bb63492d0b user: steveb@workware.net.au tags: trunk,

05:19
jcov, jtime, jtrace: fix not removing callback check-in: 15be64893a user: steveb@workware.net.au tags: trunk,
2021-01-09
01:06
jimdb: A command line Jim debugger using xtrace

Also add some additional tools that use xtrace.

examples/jcov - code coverage examples/jtime - code coverage that measures execution time examples/jtrace - trace script execution

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: ca7bb2659b user: steveb@workware.net.au tags: trunk,

01:06
Add the [xtrace] command

Allows a debugger or tracing facility to be implemented

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 240f6048c1 user: steveb@workware.net.au tags: trunk,

2021-01-06
04:42
build: Need sdl needs 'check false'

If no 'check' is provided, we assume that the checks passed. If pkg-config is specified, but no other check, use 'check false' to ensure the module is disable if the pkg-config checks don't pass.

Also travis now does 'make all' so that any module extensions are also built, and add a dependency on libhiredis-dev to test building the redis extension.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 7e831c6a1e user: steveb@workware.net.au tags: trunk,

03:07
configure: Add --allextmod option

To build all non-default extensions as modules if prerequisites are met.

Also move the extension help out of the main help since it is quite long and show it with --extinfo. Now extension help is generated from $extdb to avoid the help and the module configuration becoming out of sync.

Signed-off-by: Steve Bennett <steveb@workware.net.au> Leaf check-in: 22ff3326d5 user: steveb@workware.net.au tags: trunk

2021-01-03
04:01
Add article on new SDL2 support check-in: 434706f0d1 user: steveb tags: www
03:19
travis ci build: test bootstrap jimsh

Make sure we don't break the bootstrap jimsh Also build with --maintainer to check for assertion failures and reference count issues.

Signed-off-by: Steve Bennett <steveb@workware.net.au> Leaf check-in: eb416f6334 user: steveb@workware.net.au tags: trunk,

03:09
bootstrap jimsh: pass all tests

In order to test bootstrap jimsh, it is very helpful if it can pass all the unit tests.

- Set tcl_platform(bootstrap) to 1 for bootstrap jimsh or 0 otherwise - Use getref to determine in we have references, not ref since we implement a poor-man's ref for bootstrap jimsh - bootstrap jimsh package doesn't return a "Can't load package" message if loading the package fails - exec tests using [open |command] need pipe - bootstrap jimsh can't set file times with [file mtime]

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: fede70dd50 user: steveb@workware.net.au tags: trunk,

2021-01-02
14:52
core: fix parsing of booleans

When boolean parsing was combined in commit 982ec4f524bc81a240cb729cf09bd3c677aea485 it broken parsing of boolean values in expressions that weren't standalone.

e.g. expr {true} was fine, but expr {true ? 4 : 5} was not.

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 2ad0450cbd user: steveb@workware.net.au tags: trunk,

05:22
build: Fix bootstrap build

In order for make-bootstrap-jim to reliably match #ifndef...JIM_BOOTSTRAP with the corresponding #endif, a corresponding comment needs to be added after the #endif

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: fd58aeec0d user: steveb@workware.net.au tags: trunk,

03:59
build: Dynamic modules require $(LIBJIM)

Add this depenency to avoid issues with parallel builds

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: f28b4ba029 user: steveb@workware.net.au tags: trunk,

03:42
build: update autosetup for pkg-config fix

v0.7.0-3-g35b88dc

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: 7fed40485f user: steveb@workware.net.au tags: trunk,

2021-01-01
06:59
sdl: Add basic text support

Requires a truetype font file

Signed-off-by: Steve Bennett <steveb@workware.net.au> check-in: ab6230c961 user: steveb@workware.net.au tags: trunk,