Permalink
Commits on Nov 7, 2017
  1. docs: Bring README.utf-8 up-to-date

    msteveb committed Nov 7, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  2. tclcompat.tcl: minor comment updates

    msteveb committed Oct 26, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
Commits on Nov 4, 2017
  1. interp: command should be created in the global namespace

    msteveb committed Oct 30, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  2. tests: exec2-3.2 now passes on OpenBSD

    msteveb committed Nov 4, 2017
    Reported-by: Stuart Cassoff <stwo@bell.net>
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
Commits on Oct 21, 2017
  1. tests: Use a more explicit approach to test SIGPIPE

    msteveb committed Oct 21, 2017
    Write to a closed pipe in exec2-3.2 to force SIGPIPE
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  2. aio: No need to create a new channel for ssl

    msteveb committed Oct 15, 2017
    Just "promote" the current channel to ssl
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  3. doc: Update remaining references to os.wait

    msteveb committed Oct 21, 2017
    Now simply 'wait'
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  4. file: __MSYS__ signifies windows too

    msteveb committed Oct 20, 2017
    Needed to make file join work with msys2
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
Commits on Oct 16, 2017
  1. tests: Try to fix exec2-3.2 on Windows

    msteveb committed Oct 16, 2017
    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>
  2. signal, exec, wait, pid: improvements, especially to exec

    msteveb committed Sep 14, 2016
    - 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>
Commits on Oct 15, 2017
  1. jim: cmdPrivData needs to be saved and restored

    msteveb committed Oct 15, 2017
    If a C command invokes another C command (including indirectly),
    cmdPrivData was being changed but not restored
  2. after: Need to initialise 'ms'

    msteveb committed Oct 15, 2017
    Also fix a warning on Windows
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  3. eventloop: remove leftover debugging

    msteveb committed Oct 15, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  4. eventloop: support sub-millisecond timer resolution

    msteveb committed Sep 22, 2017
    Timeouts may now be specified in fractions of milliseconds. e.g.  after 0.5
    
    This can be useful on faster systems where 1ms resolution is too coarse.
    
    Also, use clock_gettime(CLOCK_MONOTONIC_RAW) for timers, if available.
    This clock is insensitive to system clock changes and ntp adjustments.
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  5. aio tempname: Fix a crash when the template is invalid

    msteveb committed Oct 15, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
Commits on Sep 22, 2017
  1. scan: make some structure members const

    msteveb committed Nov 20, 2014
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
Commits on Sep 21, 2017
  1. examples/tip.tcl: Use 'writable' when sending output

    msteveb committed Sep 20, 2017
    Avoids situations where the output might block
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  2. configure: Remove reference to ensemble extension

    msteveb committed Sep 21, 2017
    It is not pushed to mainline yet.
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  3. configure: --with-mod and --with-ext allow commas

    msteveb committed Sep 17, 2017
    Makes it a bit easier to type on the command line.
    e.g.
    
      --with-mod=binary,zlib --with-ext=sqlite3
    
    Spaces are still accepted, as are multiple instances of
    --with-mod, --with-ext and --without-ext
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  4. configure: Improve module selection

    msteveb committed Sep 17, 2017
    Modules/extensions are now explicitly marked as optional
    (and enabled with --full), or off (must be explicitly
    enabled with --with-mod/--with-ext)
    
    This means that now binary and tclprefix are correctly
    not enabled by default, and zlib is enabled with --full.
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  5. auto.def: tclprefix should not be enabled by default

    msteveb committed Sep 17, 2017
    It is listed as not enabled by default, but it is enabled by default
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  6. prefix.test: Use the correct package name

    msteveb committed Sep 17, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  7. tcltest: Support 'needs package xxx'

    msteveb committed Sep 17, 2017
    Makes it easy to skip all tests if the package isn't available
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  8. tcl::prefix: respect -message when no valid options

    msteveb committed Sep 16, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  9. jim.c: minor code cleanups in [switch]

    msteveb committed Sep 16, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
Commits on Sep 16, 2017
  1. perf: cache the result of successful subcmd lookup

    msteveb committed Sep 16, 2017
    Speeds up jim-subcmd commands such as array, clock, file, aio
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  2. remove special regexpValue internal rep

    msteveb committed Sep 16, 2017
    To avoid an explosion of different internal rep structures,
    simply use the existing ptrIntValue for jim-regexp
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  3. Simplify error reporting in jim-subcmd

    msteveb committed Sep 16, 2017
    Make use of Jim_SetResultFormatted()
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  4. perf: cache successful Jim_GetEnum() results

    msteveb committed Sep 16, 2017
    When Jim_GetEnum() succeeds, cache the result in the object
    to speed up subsequent identical calls to Jim_GetEnum()
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  5. defer: fast lookup existence of $jim::defer

    msteveb committed Sep 16, 2017
    This speeds up call frame destruction in the common
    case that $jim::defer does not exist.
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
Commits on Sep 15, 2017
  1. Implement defer, $jim::defer

    msteveb committed Aug 28, 2017
    Allows commands to run when a proc or interpreter exits.
    
    If the $jim::defer variables exists at proc or interp exit,
    it is treated as a list of scripts to evaluate (in reverse order).
    
    The [defer] command is a helper to add scripts to $jim::defer
    
    See tests/defer.test
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  2. docs: Update documentation for recent changes

    msteveb committed Sep 15, 2017
    Add aio sockopt
    Add history completion
    Remove aio tcp_nodelay
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  3. history: Add autocompletion support

    msteveb committed Sep 15, 2017
    With 'history completion <cmd>'
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  4. aio: Add support for many socket options

    msteveb committed Sep 13, 2017
    Add aio sockopt to get and set various socket options
    via setsockopt()/getsockopt()
    
    And remove 'aio tcp_nodelay' in favour of 'aio sockopt tcp_nodelay'
    
    Signed-off-by: Steve Bennett <steveb@workware.net.au>
  5. eventloop: return from callback is not an error

    msteveb committed Sep 14, 2017
    Signed-off-by: Steve Bennett <steveb@workware.net.au>