Tcl 9.0.4 Release Announcement
June 26, 2026
The Tcl Core Team is pleased to announce the release of Tcl 9.0.4. This is the fourth patch of Tcl 9.0.
Tcl is the Tool Command Language originated by John Ousterhout and his team at U.C. Berkeley in the late 1980s. Its development is continued by the efforts of a global network of volunteers guided by the Tcl Core Team.
We would like to express our gratitude to all those who submit bug reports and patches. This information is invaluable in enabling us to identify and eliminate problems. Such reports can be submitted to the Tcl Ticket Tracker. We ask that you log in (anonymous if you wish) to create tickets. This deters abuse of the ticketing system.
Where to get the new releases
Tcl 9.0.4 sources are freely available as open source from the Tcl SourceForge project's file distribution area.
Note
The release files on GitHub are a partial mirror of those release files.
The Tcl 9.0.4 distribution is source code only. We keep links to some third parties offering pre-built binaries for various systems here.
Tcl Summary
The Tcl distribution delivers C source code that builds into a C library providing interpreters and related supports to execute programs written in the Tcl programming language. Source code for the application program tclsh is also included. tclsh provides a shell for either interactive execution of Tcl commands, or execution of files containing Tcl programs.
Tcl is an extensible language, and the Tcl C library provides interfaces for the creation of extension libraries adding new commands and features to the core Tcl command set. Tcl 9 debuts the full feature set needed to package an application written in C and Tcl into a single file executable exploiting virtual filesystem archives.
Tcl Improvement Proposals (TIPs)
Each new user-visible feature in Tcl should find its origins in a Tcl Improvement Proposal (TIP). TIPs are published, edited, considered and voted in public, and should contain valuable information about how a feature came to be the way it is.
Tcl 9.0.4 Changes Summary
(from changes.md in the source code distribution)
The source code for Tcl is managed by fossil. Tcl developers coordinate all changes to the Tcl source code in our shared repository.
Release Tcl 9.0.4 arises from the check-in with tag core-9-0-4. Tcl patch releases have the primary purpose of delivering bug fixes to the userbase.
Bug fixes
- unsupported commands should not be available in safe interpreters
- Check for -municode doesn't work on WSL
- configure --enable-man-compression error
- nmake: rmdir and mkdir are picked from cygwin if available
- lseq: has incorrect results in edge cases
- lseq: "count" error persists across calls
- lseq: Remove the ability to pass expressions as numeric values in the lseq command.
- Performance regression in expr in/ni operators
- Uninitialized memory access in setting script limits
- Crash when defining const if namespace does not exist
- Glob errors with -directory option and patterns containing absolute paths (Windows)
- Glob errors with -directory option with trailing backslash (Windows)
- File normalization inconsistency for glob result (Windows)
- Avoid ClockClientData typedef redefinition
- Building sqlite3 for tcl8 redefines typedef
- Inconsistent file join with volume-relative arguments
- mind PTHREAD_NULL as sentinel value vs legitimate pthread_t arg
- fileevent poor performance due to shimmering
Updated bundled packages, libraries, standards, data
- autoconf 2.73
- http 2.10.2
- Itcl 4.3.8
- sqlite3 3.53.0
- tcltest 2.5.11
- Thread 3.0.6
- tzdata 2026b
- zlib 1.3.2
Known bugs
- changed behaviour wrt command names, namespaces and resolution
- windows dos device paths inconsistencies and missing functionality
- load library (dll) from zipfs-library causes a leak in temporary folder
- lsearch -sorted -inline -subindices incorrect result
- "No error" when load fails due to a missing secondary DLL
For additional information
Please visit the Tcl Developer Xchange web site. This site contains a variety of information about Tcl/Tk in general, the core Tcl and Tk distributions, Tcl development tools, and much more.
Tcl Core Team and Maintainers
Don Porter, Tcl Core Release Manager