August 4, 2013

JTcl 2.6.0 has been released. This is primarily a bug fix release.

  • Fixed a regression bug where trying to invoke an unknown object method with the java package caused an exception.
  • Fixed a bug when trying to decode an invalid Unicode character, could cause an infinite loop.
  • Fixed a bug where file normalize should not try to resolve last path component if it is a link.
  • Added source -encoding encname option, as well as jtcl -encoding encname option when starting the JTcl command line shell.
  • Added JTcl as a informational package, which provides the JTcl version when required, package require JTcl.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

July 1, 2013

JTcl 2.5.0 has been released. This is primarily a bug fix and performance release.

  • Fixed issue with embedded Janino compiler that prevented on-the-fly compilation for TJC and hyde when using Java 7.
  • Fixed runtime execption thrown when invalid format specifier was encountered.
  • Fixed issue that setting env(VAR) was not actually passed to sub-process environment for exec.
  • Fixed issue where line continuation with \r\n sequences were not parsed correctly during Interp.eval().
  • Major performance enhancement when reading stdin, now read as many bytes as are available.
  • Minor performance improvements when using the java package, better caching of previously resolved classes. Patch contributed by Fabrice Ilponse.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

October 11, 2012

JTcl 2.4.0 has be released.

  • Bug fixes:
    • Creating a safe interpreter (interp create -safe) now excludes jaclloadjava, jaclloadtjc and assorted auto_* commands.
    • Fixed leaking Java objects created using the java package, which could cause out of memory exceptions in long-running programs.
    • Compiling Tcl code to Java using TJC now uses the -debug compiler flag to include debugging information in the generated class files.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

July 12, 2012

JTcl 2.3.0 has be released. New or fixed in this release:

  • New! JTcllib - module fleet enables light-weight concurrent programming in JTcl. See the manual page in the jtcllib documentation.
  • Bug fixes:
    • An empty variable name ("") would cause IsArrayVarname to throw exception.
    • After a backslash-newline sequence, only gobble up spaces and tabs (not newlines or any other whitespace) during eval.
    • dict now preserves order of entries.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

February 23, 2012

JTcl 2.2.0 has be released. New or fixed in this release:

  • New! Backported Tcl 8.5 commands lassign, lrepeat, and lreverse are now implemented.
  • New! JTcllib - module ziplib to access and manipulate ZIP and JAR files.
  • New! paraffin.tcl utility allows building self-contained JTcl applications in a single JAR file.
  • Bug fixes:
    • glob "" previously caused an exception, now treated as glob ".".
    • An ArrayIndexOutOfBounds exception was fixed in MarkableInputStream.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

December 19, 2011

JTcl 2.1.0 has be released. New or fixed in this release:

  • New! JTcllib - JTcl specific library of modules using the java package. The first (and so far, only) module is hyde. User submissions are encouraged.
  • Bug fixes:
    • info command ::foo returned too many leading namespace separators.
    • An exception was thrown when opening a non-existent file in mode "a" or "a+".
    • Fileevent processing on an open socket would cause excessive CPU usage.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

July 14, 2011

JTcl 2.0.0 has been released. New or fixed in this release:

  • info nameofexecutable now creates and returns a temporary shell/bat script that invokes JTcl.
  • lset performance issues fixed.
  • socket -server command now executes command as a script.
  • ManagedSystemInStream thread is stopped when Interp is disposed.
  • All user background threads are now Java daemon threads, so that they will be stopped on main thread exit.
  • TJC enforces Java version 1.5 when compiling Tcl procs using javac.
  • Javadoc for JTcl interpreter is now generated and included in website and doc zip file.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

April 13, 2011

JTcl 2.0.0-b1 has been released. New or fixed in this release:

  • dict and apply commands have been backported from Tcl 8.5. A compatibilty package dict is included.
  • array unset on an undefined variable will not cause an error.
  • user element added to tcl_platform array.
  • Tcllib 1.13 is included. Note that Tcllib modules have not been extensively tested, some may not work due to JTcl differences.
  • java::import now imports classes from wildcard package names ("*"). Example:
    java::import java.util.* ; java::new Date     will import java.util.Date and create a new instance.
  • Building with Maven is now fully supported, including the TJC stage 2 compiler and JTcl distribution.
  • Command line program tjc (Windows: tjc.bat) now included.
  • Documentation for Tcl 8.4 and included packages now local to the website.

Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team

November 17, 2010

JTcl 2.0.0-a1 has been released! This is the first release of JTcl, and you may find bugs. Please report bugs and other unexpected behaviors at the JTcl project site's Bug tracking system.

The JTcl Team