Author: Jan Nijtmans <jan.nijtmans@gmail.com>
State: Draft
Type: Project
Vote: Pending
Created: 13-Nov-2017
Post-History:
Tcl-Version: 9.0
Abstract
The "thread" package became an essential part of Tcl. In order to keep functioning in Tcl 8.4, 8.5 and 8.6, a lot of trickery has been introduced, which cannot be maintained indefinitely. This should all be removed eventually.
Therefore, this TIP suggests to continue the development of Thread 2.8, which is meant for Tcl 8.x, but also develop Thread 3.0 which is meant to function with Tcl 9 only. On the script level they will be upwards compatible. The major version number is used to tell the difference.
Proposed Change
Thread 3.0 will be upwards compatible with Thread 2.8. The difference between Thread 3.0 and Thread 2.8 will be that Thread 3.0 will run on Tcl 9.0 only, while Thread 2.x will run on Tcl 8.x only. All functionality which keeps Thread running on Tcl 8.x will be removed in Thread 3.0, but at the script level everything will be 100% upwards compatible.
When the time comes, Thread 3.0a1 will be released together with Tcl 9.0a1, and the same with follow-up intermediate releases. Thread 3.0 will be released together with Tcl 9.0.0.
Implementation
An implementation of this TIP can be found in the novem branch.
Copyright
This document has been placed in the public domain.