Skip to content

Releases: flightaware/tohil

v4.4.2

25 Jan 21:27
Compare
Choose a tag to compare

This release addresses the following bugs:

  • tohil set the python interpreter's sys.argv in cases when it should not have (#80)
  • tohil unset the tcl interpreter's ::arg* variables in cases when it should not have (#80)

Full Changelog: v4.4.1...v4.4.2

It seems you feel our work is not a benefit to the public

04 Jan 23:03
fd6f716
Compare
Choose a tag to compare

This is a bugfix release for v4.4.0 that properly sets the version number of the library. v4.4.0's release notes are reproduced below.

Tohil v4.4.0 is a fairly minor release, with a single new feature

  • The ::argv0, ::argc, and ::argv variables are now set in tohil's Tcl interpreter if their Python siblings are also set (#76)

-

30 Dec 23:51
083cf48
Compare
Choose a tag to compare
-

This release has been superseded by v4.4.1 since it did not set the library's version properly.

I don't know much about biomechanics, Roy. I wish I did.

23 Nov 15:01
Compare
Choose a tag to compare

What's Changed

  • TclProcs now return tclobj datatype by default. (Previously it returned strings by default but returns tclobjs now for consistency with tohil.call and tohil.eval)
  • Thread state handling improvements aka bug and crash fixes when using Tohil/Python from multiple Tcl interpreters (#70)
  • Tohil tclobj integer math is now always performed at 64-bits, even on 32-bit machines (#75)
  • Much faster Python-to-Tcl numeric conversions (Ibid)
  • Fix infinite recursion when Tohil's exception handler caused an exception (#73)
  • configure script improvements to permit building Tohil with nix (#65).
  • Tohil previously stored a Python capsule containing a pointer to its corresponding Tcl interpreter in __main__.interp and you could make Python crash by doing like interp = ''" before importing tohil. This renames interp to something way less likely to have a conflict.
  • Many new tests, and tests can now be run via nix.

Full Changelog: v4.2.0...v4.3.0

I'm sort of an orphan.

09 Sep 18:19
Compare
Choose a tag to compare

Tohil 4.2 fulfills on Tohil's #1 new feature request: Python code passed to tohil::exec is now unindented before being passed to Python.

  • Fixed crash when register_callback-registered functions raised a Python exception.
  • Added the required directory tree to build tohil as a Debian package.
  • Cleaned up tohil namespace so dir(tohil) doesn't show modules tohil imported as if it had created them.
  • Make 'package forget tohil' work. (hat tip to @pooryorick)
  • Support tcl 'unload' command for tohil shared library. (ditto)
  • Add -nonevalue option to tohil::call to allow the "none" sentinel to be arbitrarily specified. (Retains the default of tohil::NONE.)
  • Homebrew formula for building with homebrew (hat tip to @midsandhighs)
  • Updates to documentation and tests.

For full details please visit https://flightaware.github.io/tohil-docs/whatsnew/4.2.html

This release includes contributions by @resuna, @bovine, @NasaGeek, @midsandhighs, @pooryorick, @eric1tran and your humble narrator. Many thanks.

Ah, gosh. You've really got some nice toys here.

11 Aug 18:56
Compare
Choose a tag to compare

Welcome to Tohil 4.1.1. Despite the .1, this is the first release of Tohil 4.1.

4.1 contains a few improvements since 4.0, many bug fixes, and considerably improved documentation.

For details, please visit What's New in Tohil 4.1

Nothing is worse than having an itch you can never scratch.

03 Aug 21:14
Compare
Choose a tag to compare

Yet another minor release in our asymptotic slugfest to find an elusive bug. This time when we get a python exception during tcl's tohil initialization, return the python exception value as a Tcl error rather than returning the last thing that happened to be in the Tcl interpreter's result object.

The egg hatched, and a hundred baby spiders came out

28 Jul 21:59
Compare
Choose a tag to compare

Now with our elusive error, that we no longer error on namespace creation failure, we now get an error loading the shared library. The way tohil did the error message, it clobbered a possibly helpful message from Tcl. This small release should make the clobbered error available.

I never seen a turtle. But I understand what you mean.

24 Jul 22:59
Compare
Choose a tag to compare

A small maintenance release to keep tohil from erroring on package require tohil when the tohil namespace already exists in the Tcl interpreter.

I make friends. They're toys. My friends are toys.

01 Jun 10:11
Compare
Choose a tag to compare

Welcome to Tohil 4!

This is a major new release. Please see full release notes at https://flightaware.github.io/tohil-docs/whatsnew/4.0.html

Highlights:

  • Python code using Tohil to invoke Tcl code or access Tcl data, the default return value is now a tclobj object rather than a string.
  • Full Python subinterpreter support - multiple Python interpreters can use Tohil without "crosstalk" between them or other ill effects.
  • Support for Separate Virtual Interpreters in Rivet - Apache Rivet Tcl module with a separate Tcl interpeter per virtual host that use Tohil now gets a separate Python interpreter as well.
  • A function can now be specified in a to= arg.
  • Greatly improved documentation, in Python-standard format, now served online.