You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(19) |
Jul
(96) |
Aug
(144) |
Sep
(222) |
Oct
(496) |
Nov
(171) |
Dec
(6) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(4) |
Feb
(4) |
Mar
(9) |
Apr
(4) |
May
(12) |
Jun
(6) |
Jul
|
Aug
|
Sep
(1) |
Oct
(2) |
Nov
|
Dec
|
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
(52) |
Aug
(47) |
Sep
(47) |
Oct
(95) |
Nov
(56) |
Dec
(34) |
2003 |
Jan
(99) |
Feb
(116) |
Mar
(125) |
Apr
(99) |
May
(123) |
Jun
(69) |
Jul
(110) |
Aug
(130) |
Sep
(289) |
Oct
(211) |
Nov
(98) |
Dec
(140) |
2004 |
Jan
(85) |
Feb
(87) |
Mar
(342) |
Apr
(125) |
May
(101) |
Jun
(60) |
Jul
(151) |
Aug
(118) |
Sep
(162) |
Oct
(117) |
Nov
(125) |
Dec
(95) |
2005 |
Jan
(141) |
Feb
(54) |
Mar
(79) |
Apr
(83) |
May
(74) |
Jun
(125) |
Jul
(63) |
Aug
(89) |
Sep
(130) |
Oct
(89) |
Nov
(34) |
Dec
(39) |
2006 |
Jan
(98) |
Feb
(62) |
Mar
(56) |
Apr
(94) |
May
(169) |
Jun
(41) |
Jul
(34) |
Aug
(35) |
Sep
(132) |
Oct
(722) |
Nov
(381) |
Dec
(36) |
2007 |
Jan
(34) |
Feb
(174) |
Mar
(15) |
Apr
(35) |
May
(74) |
Jun
(15) |
Jul
(8) |
Aug
(18) |
Sep
(39) |
Oct
(125) |
Nov
(89) |
Dec
(129) |
2008 |
Jan
(176) |
Feb
(91) |
Mar
(69) |
Apr
(178) |
May
(310) |
Jun
(434) |
Jul
(171) |
Aug
(73) |
Sep
(187) |
Oct
(132) |
Nov
(259) |
Dec
(292) |
2009 |
Jan
(27) |
Feb
(54) |
Mar
(35) |
Apr
(54) |
May
(93) |
Jun
(10) |
Jul
(36) |
Aug
(36) |
Sep
(93) |
Oct
(52) |
Nov
(45) |
Dec
(74) |
2010 |
Jan
(20) |
Feb
(120) |
Mar
(165) |
Apr
(101) |
May
(56) |
Jun
(12) |
Jul
(73) |
Aug
(306) |
Sep
(154) |
Oct
(82) |
Nov
(63) |
Dec
(42) |
2011 |
Jan
(176) |
Feb
(86) |
Mar
(199) |
Apr
(86) |
May
(237) |
Jun
(50) |
Jul
(26) |
Aug
(56) |
Sep
(42) |
Oct
(62) |
Nov
(62) |
Dec
(52) |
2012 |
Jan
(35) |
Feb
(33) |
Mar
(128) |
Apr
(152) |
May
(133) |
Jun
(21) |
Jul
(74) |
Aug
(423) |
Sep
(165) |
Oct
(129) |
Nov
(387) |
Dec
(276) |
2013 |
Jan
(105) |
Feb
(30) |
Mar
(130) |
Apr
(42) |
May
(60) |
Jun
(79) |
Jul
(101) |
Aug
(46) |
Sep
(81) |
Oct
(14) |
Nov
(43) |
Dec
(4) |
2014 |
Jan
(25) |
Feb
(32) |
Mar
(30) |
Apr
(80) |
May
(42) |
Jun
(23) |
Jul
(68) |
Aug
(127) |
Sep
(112) |
Oct
(72) |
Nov
(29) |
Dec
(69) |
2015 |
Jan
(35) |
Feb
(49) |
Mar
(95) |
Apr
(10) |
May
(70) |
Jun
(64) |
Jul
(93) |
Aug
(85) |
Sep
(43) |
Oct
(38) |
Nov
(124) |
Dec
(29) |
2016 |
Jan
(253) |
Feb
(181) |
Mar
(132) |
Apr
(419) |
May
(68) |
Jun
(90) |
Jul
(52) |
Aug
(142) |
Sep
(131) |
Oct
(80) |
Nov
(84) |
Dec
(192) |
2017 |
Jan
(329) |
Feb
(842) |
Mar
(248) |
Apr
(85) |
May
(247) |
Jun
(186) |
Jul
(37) |
Aug
(73) |
Sep
(98) |
Oct
(108) |
Nov
(143) |
Dec
(143) |
2018 |
Jan
(155) |
Feb
(139) |
Mar
(72) |
Apr
(112) |
May
(82) |
Jun
(119) |
Jul
(24) |
Aug
(33) |
Sep
(179) |
Oct
(295) |
Nov
(111) |
Dec
(34) |
2019 |
Jan
(20) |
Feb
(29) |
Mar
(49) |
Apr
(89) |
May
(185) |
Jun
(131) |
Jul
(9) |
Aug
(59) |
Sep
(30) |
Oct
(44) |
Nov
(118) |
Dec
(53) |
2020 |
Jan
(70) |
Feb
(108) |
Mar
(50) |
Apr
(9) |
May
(70) |
Jun
(24) |
Jul
(103) |
Aug
(82) |
Sep
(132) |
Oct
(119) |
Nov
(174) |
Dec
(169) |
2021 |
Jan
(75) |
Feb
(51) |
Mar
(76) |
Apr
(73) |
May
(53) |
Jun
(120) |
Jul
(114) |
Aug
(73) |
Sep
(70) |
Oct
(18) |
Nov
(26) |
Dec
|
2022 |
Jan
(26) |
Feb
(63) |
Mar
(64) |
Apr
(64) |
May
(48) |
Jun
(74) |
Jul
(129) |
Aug
(106) |
Sep
(238) |
Oct
(169) |
Nov
(149) |
Dec
(111) |
2023 |
Jan
(110) |
Feb
(47) |
Mar
(82) |
Apr
(106) |
May
(168) |
Jun
(101) |
Jul
(155) |
Aug
(35) |
Sep
(51) |
Oct
(55) |
Nov
(134) |
Dec
(202) |
2024 |
Jan
(103) |
Feb
(129) |
Mar
(154) |
Apr
(89) |
May
(60) |
Jun
(162) |
Jul
(201) |
Aug
(61) |
Sep
(167) |
Oct
(111) |
Nov
(133) |
Dec
(141) |
2025 |
Jan
(122) |
Feb
(88) |
Mar
(106) |
Apr
(113) |
May
(203) |
Jun
(185) |
Jul
(124) |
Aug
(138) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Marc C. <cul...@gm...> - 2024-10-14 14:55:51
|
I have a question for the experts. It has to do with when the interpreter, during execution of a script, allows idle tasks and timer tasks to be run. There is an expectation in may situations that idle tasks will not be run between two consecutive commands in the script. For example, in macosx/README it says: The TkAqua-specific command [tk::unsupported::MacWindowStyle style] is used to get and set macOS-specific toplevel window class and attributes. Note that the window class and many attributes have to be set before the window is first mapped for the change to have any effect. That means that the following code is expected to work: toplevel .t tk::unsupported::MacWindowStyle style .t modal but something like this: toplevel .t < lots of code here> tk::unsupported::MacWindowStyle modal will probably not work because the window will get mapped during the <lots of code>. The window actually gets mapped in an idle task that is created by the toplevel command. The first code block works because that idle task gets run after the MacWindowStyle command has run. My question is essentially "How large can the <lots of code> be and have this still work?" What are the rules? When running a script, when does the interpreter pause and "return to the event loop"? Is there some way to ensure that a given block of code will run completely before any additional idle tasks get run? - Marc |
From: Harald O. <har...@el...> - 2024-10-14 14:48:30
|
Dear TCL/Tk community, thanks to Don and team for the great release of TCL/Tk9.0.0. This is awesome! We all need a breath after this 7 years process. --- May I propose a meeting to discuss the next steps ? What about Monday 28th of October 12:00 UTC for one hour? Many regions will have stopped daytime saving time then. My personal agenda is: - what is the next version of TCL/Tk for: - non breaking bugfix style TIPs (like the two most recent ones) (10.1 ?) - innovative TIPs (10.1a0 ?) - breaking TIPs (11.0a0 ?) - what are the possible innovations? - factor out the image command from Tk - list image formats By the way, the conference 2025 may be in Italy... Thank you for all, Harald |
From: Ashok N. <apn...@ya...> - 2024-10-14 12:10:25
|
Sure, I'm just not sure how the next release is going to be versioned. /Ashok Yahoo Mail: Search, organise, conquer On Mon, 14 Oct 2024 at 4:12 pm, Harald Oehlmann<har...@el...> wrote: Am 04.10.2024 um 15:33 schrieb apnmbx-public--- via Tcl-Core: > Proudly announcing the first TIP post 9.0 😊 TIP 701: C API for tilde > substitution in paths > > https://core.tcl-lang.org/tips/doc/trunk/tip/701.md <https://core.tcl- > lang.org/tips/doc/trunk/tip/701.md> > > TIP 602 removed the implicit tilde substitution from Tcl's handling of > file paths. The file home and file tildeexpand commands made equivalent > functionality explicitly available to scripts. However, no comparable C > API was made available to extensions. This TIP remedies the oversight. > > Please review. CFV in 2 weeks. > > /Ashok Dear Ashok, thanks for the great TIP. I only have a question about the concerned TCL version. IMHO, this should go into version 9.0.1, not 9.1.x. Take care, Harald |
From: Harald O. <har...@el...> - 2024-10-14 10:42:13
|
Am 04.10.2024 um 15:33 schrieb apnmbx-public--- via Tcl-Core: > Proudly announcing the first TIP post 9.0 😊 TIP 701: C API for tilde > substitution in paths > > https://core.tcl-lang.org/tips/doc/trunk/tip/701.md <https://core.tcl- > lang.org/tips/doc/trunk/tip/701.md> > > TIP 602 removed the implicit tilde substitution from Tcl's handling of > file paths. The file home and file tildeexpand commands made equivalent > functionality explicitly available to scripts. However, no comparable C > API was made available to extensions. This TIP remedies the oversight. > > Please review. CFV in 2 weeks. > > /Ashok Dear Ashok, thanks for the great TIP. I only have a question about the concerned TCL version. IMHO, this should go into version 9.0.1, not 9.1.x. Take care, Harald |
From: Torsten B. <be...@ty...> - 2024-10-11 07:23:43
|
Hi, you are right, this feature was never implemented. It should have been added to the "Amendment" section of that TIP but was overlooked. I'll add that right away. There are several mismatches between the TIP and the real implementation. The "Amendment" section is supposed to document these. If you look at the tclsh manual page (https://www.tcl-lang.org/man/tcl9.0/UserCmd/tclsh.html) you will not find that feature documented either. This manual page and the zipfs manual page are the definitive source for reading about the real implementation (unless we have overlooked yet another mismatch ...). Regards, Torsten > Am 11.10.2024 um 06:06 schrieb Julian Noble via Tcl-Core <tcl...@li...>: > > Tip 430 states > If the first argument to Tclsh or Wish is detected to be a zipfile, that file will be mounted as ZIPFS_ROOT/app. If ZIPFS_ROOT/app/main.tcl exists, that file is marked set the shell's startup script. If ZIPFS_ROOT/app/tcl_library exists, it will be searched for init.tcl. > > Is this still meant to be a feature? > I've been unable to verify on windows - it just seems to try to run it as a script, giving the error: > couldn't read file "some.zip": invalid or incomplete multibyte or wide character > > (same if some.zip replaced with a tclsh that has an attached zip) > > glancing at the tclZipfs.c code it looks like this feature is dependent on the SUPPORT_BUILTIN_ZIP_INSTALL flag - are the 'install' argument and mounting of first argument if a zip supposed to be enabled/disabled as a single unit? > I couldn't test anyway due to compilation error with that flag (https://core.tcl-lang.org/tcl/tktview/c5825d3235) > As that ticket reports - the 'tclsh install mkimg ..' is suspect anyway > > Perhaps 'tclsh install/loading first arg if zip' works on other platforms? Anyone tried it? > > I feel the mount first argument as a zip is perhaps an unnecessary feature. > Without this magic, it is easy enough anyway to cat a small Tcl script to the beginning of a zip - along with a ctrl-z character - and then the script can mount/set auto_paths etc as desired. > e.g I have a small file named #z containing the binary <SUB> character and do: > cat kitheader.tcl #z test.zip > kitname.zipkit > > This works fine. > > This mount-first-arg-if-zip feature would seem to have potential to collide with that and I don't currently understand the benefit.. > unless it allows dropping into a standard tclsh repl if no main.tcl is present? > That would be nice. > (I can do this if I use a main.tcl-hacked-tclsh with a as per my earlier message regarding dropping into a standard repl - but although I've seen the request pop up from users over the years - I don't see any interest/comments from this list) > > > Cheers, > Julian > > > > > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core |
From: Julian N. <ju...@pr...> - 2024-10-11 04:26:12
|
Tip 430 states If the first argument to Tclsh or Wish is detected to be a zipfile, that file will be mounted as*ZIPFS_ROOT*//app/. If*ZIPFS_ROOT*//app/main.tcl/exists, that file is marked set the shell's startup script. If*ZIPFS_ROOT*//app/tcl_library/exists, it will be searched for/init.tcl/. Is this still meant to be a feature? I've been unable to verify on windows - it just seems to try to run it as a script, giving the error: couldn't read file "some.zip": invalid or incomplete multibyte or wide character (same if some.zip replaced with a tclsh that has an attached zip) glancing at the tclZipfs.c code it looks like this feature is dependent on the SUPPORT_BUILTIN_ZIP_INSTALL flag - are the 'install' argument and mounting of first argument if a zip supposed to be enabled/disabled as a single unit? I couldn't test anyway due to compilation error with that flag (https://core.tcl-lang.org/tcl/tktview/c5825d3235) As that ticket reports - the 'tclsh install mkimg ..' is suspect anyway Perhaps 'tclsh install/loading first arg if zip' works on other platforms? Anyone tried it? I feel the mount first argument as a zip is perhaps an unnecessary feature. Without this magic, it is easy enough anyway to cat a small Tcl script to the beginning of a zip - along with a ctrl-z character - and then the script can mount/set auto_paths etc as desired. e.g I have a small file named #z containing the binary <SUB> character and do: cat kitheader.tcl #z test.zip > kitname.zipkit This works fine. This mount-first-arg-if-zip feature would seem to have potential to collide with that and I don't currently understand the benefit.. unless it allows dropping into a standard tclsh repl if no main.tcl is present? That would be nice. (I can do this if I use a main.tcl-hacked-tclsh with a as per my earlier message regarding dropping into a standard repl - but although I've seen the request pop up from users over the years - I don't see any interest/comments from this list) Cheers, Julian |
From: Jan N. <jan...@gm...> - 2024-10-10 21:57:49
|
Op vr 4 okt 2024 om 15:33 schreef apnmbx-public--- via Tcl-Core: > Proudly announcing the first TIP post 9.0 😊 TIP 701: C API for tilde > substitution in paths > > > > https://core.tcl-lang.org/tips/doc/trunk/tip/701.md > > > > TIP 602 removed the implicit tilde substitution from Tcl's handling of > file paths. The file home and file tildeexpand commands made equivalent > functionality explicitly available to scripts. However, no comparable C API > was made available to extensions. This TIP remedies the oversight. > > > > Please review. CFV in 2 weeks. > I'm (more than) OK with this TIP. Thanks! Jan Nijtmans |
From: Steve L. <st...@di...> - 2024-10-07 01:44:59
|
I can’t speak for the entire TCT either but I endorse what Kevin said: there are no plans to retire 8.6 and in fact there was a priority made on getting 8.6.15 out just before 9.0. FWIW we kept 8.5 going long after it should have been retired, and it is likely that 8.* will be kept going for longer. -- Steve On 7 Oct 2024 at 2:42 AM +0800, Kevin Walzer <kw...@co...>, wrote: > I can't speak for the entire TCT, but 8.6.15 was just released, and > there has been no discussion of setting an EOL date for 8.6. 8.4 and 8.5 > were supported long after the next point upgrade, and I'm sure that 8.6 > will still get maintenance releases until there's a consensus to move to > end of life. > > On 10/6/24 1:14 AM, Adrian Ho wrote: > > Thanks much for the new major release, but I can’t find any information on the support status of the Tcl 8 line. Will new releases still be cut for this line, and if so, how long will it continue to be supported? Thanks much! > > > > Best Regards, > > Adrian > > > > > > > > _______________________________________________ > > Tcl-Core mailing list > > Tcl...@li... > > https://lists.sourceforge.net/lists/listinfo/tcl-core > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core |
From: Steve L. <st...@di...> - 2024-10-07 00:02:09
|
A reminder that the October Tcl virtual meetup will be held Tuesday October 8th 2024 at [clock format 1728435600] - Tuesday 6pm US West, 8pm US Central, 9pm US East, Wednesday 1am UTC, 2am UK, 3am Western Europe, 6:30am India, 9am Australia West / Singapore / China, 10am Japan, 12pm Australia East, 2pm New Zealand. Details (including how to connect) are available via https://wiki.tcl-lang.org/page/Monthly+Virtual+Meetup -- Steve |
From: Kevin W. <kw...@co...> - 2024-10-06 18:41:08
|
<div><img width="1" height="1" src='https://fedbdhd.r.af.d.sendibt2.com/tr/op/shraG_LH-2CIY7IJ-C2rCa3pMAs3KqxYbxx7O-QSjsnYBFuULf8gtiFVJmooKpoVehn8rGcEbG_dNlkO0fmT-umdW_DCemxZMk8y89e-q-agKJVIrBgCCrliE26Vz65HvR0HCqnZG26jXox_5mZnqGdUJ7mb89LktpfCjwWMLndl0SaPBLo2euhv4sYyT8IT0R4Dd_CqFc9AsMNU__vVBDjPQfqVMPO_' /></div>I can't speak for the entire TCT, but 8.6.15 was just released, and <br/>there has been no discussion of setting an EOL date for 8.6. 8.4 and 8.5 <br/>were supported long after the next point upgrade, and I'm sure that 8.6 <br/>will still get maintenance releases until there's a consensus to move to <br/>end of life.<br/><br/>On 10/6/24 1:14 AM, Adrian Ho wrote:<br/>> Thanks much for the new major release, but I can’t find any information on the support status of the Tcl 8 line. Will new releases still be cut for this line, and if so, how long will it continue to be supported? Thanks much!<br/>><br/>> Best Regards,<br/>> Adrian<br/>><br/>><br/>><br/>> _______________________________________________<br/>> Tcl-Core mailing list<br/>> Tcl...@li...<br/>> https://lists.sourceforge.net/lists/listinfo/tcl-core<br/> |
From: Adrian Ho <ml+...@03...> - 2024-10-06 05:53:01
|
Thanks much for the new major release, but I can’t find any information on the support status of the Tcl 8 line. Will new releases still be cut for this line, and if so, how long will it continue to be supported? Thanks much! Best Regards, Adrian |
From: <apn...@ya...> - 2024-10-04 13:33:37
|
Proudly announcing the first TIP post 9.0 😊 TIP 701: C API for tilde substitution in paths https://core.tcl-lang.org/tips/doc/trunk/tip/701.md TIP 602 removed the implicit tilde substitution from Tcl's handling of file paths. The file home and file tildeexpand commands made equivalent functionality explicitly available to scripts. However, no comparable C API was made available to extensions. This TIP remedies the oversight. Please review. CFV in 2 weeks. /Ashok |
From: Steve L. <st...@di...> - 2024-10-03 03:17:04
|
So far everything is working for me on Sequoia but the error messages you reported are still being displayed. Annoying at worst. -- Steve On 20 Aug 2024 at 4:09 AM +0800, Marc Culler <cul...@gm...>, wrote: > I installed the beta version of macOS Sequioa, along with XCode 16.1beta and I built and tested the main branch of Tk. > > There were new test failures. The failing tests are: > WnixWm-59.2-59.3 and window-2.5-2,11 > > I think that all of them are caused by messages which Apple prints to stderr. These messages also appear in the terminal when you run wisn. There are two of them. They seem to only occur when an interpreter is created. They look like this: > > +[IMKClient subclass]: chose IMKClient_Legacy > +[IMKInputSession subclass]: chose IMKInputSession_Legacy > > I believe that this is related to the fact that Aqua Tk implements the NSTextInputClient protocol, which is the thing that causes a pop-up menu with accented versions of a letter to appear when you hold down the key for the letter in a Text or Entry widget. > > I don't know of any Tk code which chooses a legacy subclass, and I don't know why this message is being printed. If we are lucky the message will go away when the OS is actually released. But Apple tends to forget to remove these things. They did finally remove the annoying message that would be printed to stderr whenever a file dialog was opened. That took a year and a new OS release before it happened. It was reported as a bug, and Apple never responded to the report or acknowledged the bug, as is typical for them. If someone would like to report this to Apple, that would be great. (I have stopped bothering to do that, after many bug reports that were completely ignored.) > > - Marc > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core |
From: Gustaf N. (sslmail) <ne...@wu...> - 2024-10-01 16:38:05
|
Great news, great work! There is now also a version of OpenACS based on Tcl 9.0.0, which passes its regression test (40855 tests) [1]. For all not familiar with OpenACS, it is essentially a component based web community system developed in Tcl over the last 20+ years. Although it contains a substantial amount of Tcl code, only a few changes were needed for OpenACS 5.10.1 (released a month ago). all the best -g [1] https://openacs.org/forums/message-view?message_id=6728802 §----------------------------------------------------------------- Language files blank comment code ------------------------------------------------------------------ … Tcl/Tk 2315 66944 65858 320853 SQL 1846 48461 46288 215038 … > On 26.09.2024, at 20:20, Donald G Porter via Tcl-Core <tcl...@li...> wrote: > > > Tcl 9.0.0 Release Announcement > ============================== > > September 26, 2024 > > The Tcl Core Team is pleased to announce the release of Tcl 9.0.0. > This is the first stable release of Tcl 9.0. This should replace all > prior alpha or beta releases. > > 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 here. > > > [Tcl Ticket Tracker](https://core.tcl-lang.org/tcl/ticket) > > We ask that you log in (anonymous if you wish) to create tickets. > This deters abuse of the ticketing system: > > > [Tcl Contributor Login](https://core.tcl-lang.org/tcl/login) > > Where to get the new releases > ============================= > > Tcl 9.0.0 sources are freely available as open source from the Tcl > SourceForge project's file distribution area: > > > [Tcl Source Distribution](https://sourceforge.net/projects/tcl/files/) > > The Tcl 9.0.0 distribution is source code only. We keep links to some > third parties offering pre-built binaries for various systems here: > > > [Tcl Binary Distribution](https://www.tcl-lang.org/software/tcltk/bindist.html) > > 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 9 Release Summary > ===================== > > This is a new major version of Tcl. When compared with the prior release > Tcl 8.6, there are new features to be enjoyed. There are incompatibilities > to be considered. A summary of the most noteworthy changes is found below. > > We believe many Tcl programs written for Tcl 8 will run unchanged in Tcl 9. > We believe many more Tcl programs can be modified in small and simple ways > to produce a new program that runs in both Tcl 8 and Tcl 9. We expect that > extensions and applications using Tcl's public C APIs will involve more > effort, but that it is still within reasonable reach to produce source code > supporting both Tcl 8 and Tcl 9 while both releases remain in widespread use. > > The experiences of Tcl 8 users adapting their code to Tcl 9 will determine > the need for possible Tcl 8.7 releases that might supply additional lifecycle > and migration support. Please use the Ticket Tracker to share your experiences > and difficulties. > > See the following links for an accumulation of migration advice: > > [Migrating C extensions to Tcl 9] > (https://core.tcl-lang.org/tcl/wiki?name=Migrating+C+extensions+to+Tcl+9) > > [Migrating scripts to Tcl 9] > (https://core.tcl-lang.org/tcl/wiki?name=Migrating+scripts+to+Tcl+9) > > There has been much progress already porting many known applications, > extensions, and packages in the Tcl world to compatibility with Tcl/Tk 9: > > [Apps confirmed to work with Tcl 9] > (https://wiki.tcl-lang.org/page/Apps+confirmed+to+work+with+Tcl+9) > > [Porting extensions to Tcl 9] > (https://wiki.tcl-lang.org/page/Porting+extensions+to+Tcl+9) > > 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. See the full collection here: > > > [TIP Index](https://tip.tcl-lang.org/) > > Tcl 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 at > > > [Tcl Source Code](https://core.tcl-lang.org/tcl/timeline) > > Release Tcl 9.0.0 arises from the check-in with tag `core-9-0-0`. > > Highlighted differences between Tcl 9.0 and Tcl 8.6 are summarized below, > with focus on changes important to programmers using the Tcl library and > writing Tcl scripts. > > # Major Features > > ## 64-bit capacity: Data values larger than 2 GB > - Strings can be any length (that fits in your available memory) > - Lists and dictionaries can have very large numbers of elements > > ## Internationalization of text > - Full Unicode range of codepoints > - New encodings: `utf-16`/`utf-32`/`ucs-2`(`le`|`be`), `CESU-8`, etc. > - `encoding` options `-profile`, `-failindex` manage encoding of I/O. > - `msgcat` supports custom locale search list > - `source` defaults to `-encoding utf-8` > > ## Zip filesystems and attached archives > - Packaging of the Tcl script library with the Tcl binary library, > meaning that the `TCL_LIBRARY` environment variable is usually not required. > - Packaging of an application into a virtual filesystem is now a supported > core Tcl feature. > > ## Unix notifiers available using `epoll()` or `kqueue()` > - This relieves limits on file descriptors imposed by legacy `select()` and fixes a performance bottleneck. > > # Incompatibilities > > ## Notable incompatibilities > - Unqualified varnames resolved in current namespace, not global. > Note that in almost all cases where this causes a change, the change is actually the removal of a latent bug. > - No `--disable-threads` build option. Always thread-enabled. > - I/O malencoding default response: raise error (`-profile strict`) > - Windows platform needs Windows 7 or Windows Server 2008 R2 or later > - Ended interpretation of `~` as home directory in pathnames. > (See `file home` and `file tildeexpand` for replacements when you need them.) > - Removed the `identity` encoding. > (There were only ever very few valid use cases for this; almost all uses > were systematically wrong.) > - Removed the encoding alias `binary` to `iso8859-1`. > - `$::tcl_precision` no longer controls string generation of doubles. > (If you need a particular precision, use `format`.) > - Removed pre-Tcl 8 legacies: `case`, `puts` and `read` variant syntaxes. > - Removed subcommands [`trace variable`|`vdelete`|`vinfo`] > - Removed `-eofchar` option for write channels. > - On Windows 10+ (Version 1903 or higher), system encoding is always utf-8. > - `%b`/`%d`/`%o`/`%x` format modifiers (without size modifier) for `format` > and `scan` always truncate to 32-bits on all platforms. > - `%L` size modifier for `scan` no longer truncates to 64-bit. > - Removed command `::tcl::unsupported::inject`. > (See `coroinject` and `coroprobe` for supported commands with significantly > more comprehensible semantics.) > > ## Incompatibilities in C public interface > - Extensions built against Tcl 8.6 and before will not work with Tcl 9.0; > ABI compatibility was a non-goal for 9.0. In _most_ cases, rebuilding > against Tcl 9.0 should work except when a removed API function is used. > - Many arguments expanded type from `int` to `Tcl_Size`, a signed integer type > large enough to support 64-bit sized memory objects. > The constant `TCL_AUTO_LENGTH` is a value of that type that indicates that > the length should be obtained using an appropriate function (typically `strlen()` for `char *` values). > - Ended support for `Tcl_ChannelTypeVersion` less than 5 > - Introduced versioning of the `Tcl_ObjType` struct > - Removed macros `CONST*`: Tcl 9 support means dropping Tcl 8.3 support. > (Replaced with standard C `const` keyword going forward.) > - Removed registration of several `Tcl_ObjType`s. > - Removed API functions: > - `Tcl_Backslash()` > - `Tcl_*VA()` > - `Tcl_*MathFunc*()` > - `Tcl_MakeSafe()` > - `Tcl_(Save|Restore|Discard|Free)Result()` > - `Tcl_EvalTokens()` > - `Tcl_(Get|Set)DefaultEncodingDir()` > - `Tcl_UniCharN(case)cmp()` > - `Tcl_UniCharCaseMatch()` > - Revised many internals; beware reliance on undocumented behaviors. > > # New Features > > ## New commands > - `array default` — Specify default values for arrays (note that this alters the behaviour of `append`, `incr`, `lappend`). > - `array for` — Cheap iteration over an array's contents. > - `chan isbinary` — Test if a channel is configured to work with binary data. > - `coroinject`, `coroprobe` — Interact with paused coroutines. > - `clock add weekdays` — Clock arithmetic with week days. > - `const`, `info const*` — Commands for defining constants (variables that can't be modified). > - `dict getwithdefault` — Define a fallback value to use when `dict get` would otherwise fail. > - `file home` — Get the user home directory. > - `file tempdir` — Create a temporary directory. > - `file tildeexpand` — Expand a file path containing a `~`. > - `info commandtype` — Introspection for the kinds of commands. > - `ledit` — Equivalent to `lreplace` but on a list in a variable. > - `lpop` — Remove an item from a list in a variable. > - `lremove` — Remove a sublist from a list in a variable. > - `lseq` — Generate a list of numbers in a sequence. > - `package files` — Describe the contents of a package. > - `string insert` — Insert a string as a substring of another string. > - `string is dict` — Test whether a string is a dictionary. > - `tcl::process` — Commands for working with subprocesses. > - `*::build-info` — Obtain information about the build of Tcl. > - `readFile`, `writeFile`, `foreachLine` — Simple procedures for basic working with files. > - `tcl::idna::*` — Commands for working with encoded DNS names. > > ## New command options > - `chan configure ... -inputmode ...` — Support for raw terminal input and reading passwords. > - `clock scan ... -validate ...` > - `info loaded ... ?prefix?` > - `lsearch ... -stride ...` — Search a list by groups of items. > - `regsub ... -command ...` — Generate the replacement for a regular expression by calling a command. > - `socket ... -nodelay ... -keepalive ...` > - `vwait` controlled by several new options > - `expr` string comparators `lt`, `gt`, `le`, `ge` > - `expr` supports comments inside expressions > > ## Numbers > - <code>0<i>NNN</i></code> format is no longer octal interpretation. Use <code>0o<i>NNN</i></code>. > - <code>0d<i>NNNN</i></code> format to compel decimal interpretation. > - <code>NN_NNN_NNN</code>, underscores in numbers for optional readability > - Functions: `isinf()`, `isnan()`, `isnormal()`, `issubnormal()`, `isunordered()` > - Command: `fpclassify` > - Function `int()` no longer truncates to word size > > ## TclOO facilities > - private variables and methods > - class variables and methods > - abstract and singleton classes > - configurable properties > - `method -export`, `method -unexport` > > # Known bugs > - [changed behaviour wrt command names, namespaces and resolution](https://core.tcl-lang.org/tcl/tktview/f14b33) > - [windows dos device paths inconsistencies and missing functionality](https://core.tcl-lang.org/tcl/tktview/d8f121) > - [zlib-8.8, zlib-8.16 fail on Fedora 40, gcc 14.1.1](https://core.tcl-lang.org/tcl/tktview/73d5cb) > - [Temporary folder with file "tcl9registry13.dll" remains after "exit"](https://core.tcl-lang.org/tcl/tktview/6ce3c0) > > For additional information: > =========================== > > Please visit the Tcl Developer Xchange web site: > > > [Tcl Developer Xchange](https://www.tcl-lang.org/) > > 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 > > -- > | Don Porter Applied and Computational Mathematics Division | > | don...@ni... Information Technology Laboratory | > | http://math.nist.gov/~DPorter/ NIST | > |______________________________________________________________________| > > > > _______________________________________________ > Tcl-Core mailing list > Tcl...@li... > https://lists.sourceforge.net/lists/listinfo/tcl-core |
From: Paul O. <pa...@po...> - 2024-09-30 19:32:57
|
Dear Tcl/Tk community. The new major version 2.0.0 of Img is ready. The major changes compared to the 1.4 version are: - Support for image metadata as introduced with Tk 8.7 and 9.0. - Image subcommand "data" now returns binary strings as does Tk. - Extended and corrected test suites and documentation. - Lots of security and stability fixes. A more detailed change list is available at https://tkimg.sourceforge.net/history.html Get the source code release as single file from https://sourceforge.net/projects/tkimg/files/tkimg/2.0/tkimg%202.0.0 Provide feedback either via the SourceForge ticket system or via mail. Paul |
From: Andreas K. <and...@gm...> - 2024-09-30 16:40:33
|
> I am pleased to announce TclYAML 0.6 supporting Tcl 9. Something I forgot to put in all the announcements and was nicely reminded of today is that I did not explain what the package actually is for: The TclYAML package is a binding to the libyaml library, the reference implementation of the YAML configuration language, providing the ability to parse and generate YAML document to Tcl scripts. > For details see > > https://core.tcl-lang.org/akupries/tclyaml/technote?name=404ac856a79faa65036d98 > 968f5028c0134084bb -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Andreas K. <and...@gm...> - 2024-09-30 16:40:33
|
> Hi all. > > I am pleased to announce Kettle 1.1. Something I forgot to put in all the announcements and was nicely reminded of today is that I did not explain what the package actually is for: Kettle is an opinionated application supporting developers in building, testing, (un)installing, etc. of Tcl packages and applications. Given a `build.tcl` script/specification file like ``` #!/bin/sh # -*- tcl -*- \ exec ./kettle -f "$0" "${1+$@}" kettle tcl kettle tclapp kettle ``` running `build.tcl install` automatically searches the directory for Tcl packages and the `kettle` application and installs them. Documentation too, if found. This simplicity of course comes on the other side with the developer having to follow the patterns the Kettle looks for to detect packages, documentation, testsuites, benchmarks, etc. > For details see > https://core.tcl-lang.org/akupries/kettle/technote/3bd52e1e35f1e31c9f1bb60ea191 > 91f4895661ac -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Andreas K. <and...@gm...> - 2024-09-30 16:40:33
|
> I am pleased to announce AnKH 1.1 supporting Tcl 9. Something I forgot to put in all the announcements and was nicely reminded of today is that I did not explain what the package actually is for: AnKH stands for Andreas Kupries Hashes. Written in CriTcl it is a binding to a multitude of cryptographic hashes provided by the RHash project. With it Tcl scripts have the ability to compute all the supported hashes for strings, channels, and files. > For details see > > https://core.tcl-lang.org/akupries/ankh/technote?name=d7a15a19375ce78bd73ece8f1 > d1d48e69fe7c108 -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Andreas K. <and...@gm...> - 2024-09-30 16:40:17
|
> Hi all. > > I am pleased to announce the release of Critcl 3.3. Something I forgot to put in all the announcements and was nicely reminded of today is that I did not explain what the package actually is for: CriTcl is the C Runtime (in) Tcl, enabling the mixing and use of Tcl and C code together. While the package by itself supports only dynamically compiling the C parts of a package at runtime, and thus requiring a proper C compiler in the installation/production, the adjunct Tcl application, also caled `critcl` enables the ahead-of-time compilation of such packages into propers extension mixing Tcl and a binary shared libraries. -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Andreas K. <and...@gm...> - 2024-09-30 16:40:13
|
> Hi all. > > I am pleased to announce the release of Tcllib 2.0, supporting Tcl 9.0. > > Details about download, changes, etc. can be found at the technote > > https://core.tcl-lang.org/tcllib Something I forgot to put in all the announcements and was nicely reminded of today is that I did not explain what the package actually is for: Tcllib is a large bundle of a bit over 400 utility packages for many occasions. Note that the number would not be that high if we there counting the families strongly related packages as single. See https://core.tcl-lang.org/tcllib/doc/trunk/embedded/md/toc.md for a comprehensive table of contents. -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Andreas K. <and...@gm...> - 2024-09-28 16:25:54
|
I am pleased to announce TclYAML 0.6 supporting Tcl 9. For details see https://core.tcl-lang.org/akupries/tclyaml/technote?name=404ac856a79faa65036d98 968f5028c0134084bb -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Andreas K. <and...@gm...> - 2024-09-28 15:44:16
|
I am pleased to announce AnKH 1.1 supporting Tcl 9. For details see https://core.tcl-lang.org/akupries/ankh/technote?name=d7a15a19375ce78bd73ece8f1 d1d48e69fe7c108 -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Konstantin K. <ch...@gm...> - 2024-09-27 15:01:51
|
Hi Everyone! I am pleased to announce version 2.2.0 of cookit - tclkit-like Tcl runtime environment with Tcl 8.6.15 and Tcl 9.0.0 with a focus on a balance between functionality and executable size Homepage and downloads are on github: https://github.com/chpock/cookit Here is just a basic description of it. All details can be found on the website home page. Please feel free to check/build/use it. Any feedback is welcome! ===================================================================== Cookit is a Tcl/Tk runtime environment similar to tclkit with a focus on a balance between functionality and executable size. It allows using Tcl/Tk in both console mode and graphical mode to run Tcl scripts, as well as packaging applications into a single executable without external dependencies. Cookit is a single executable file that contains: * Tcl/Tk version 8.6.15 (with Threads enabled) or 9.0.0 * Statically linked packages: cookfs, tclvfs, Threads, tclmtls, tdom, twapi (for Windows platform) * Other packages: tkcon Supported platforms: * Linux x86 / x86_64 * Windows x86 / x86_64 * macOS x86_64 This means that Cookit can be easily and simply used to develop both console and GUI applications, which can be multi-threaded, send HTTPS requests to third-party services, process the received JSON/XML response with tdom. For debugging in GUI mode a convenient and uniform on all platforms console tkcon is available. After development, the application can be packaged into a single executable file without dependencies and used in other environments as a standalone application. It can also be used as a replacement for tclsh/wish. At the same time, the executable file has minimal size. * for Linux platform: executable file without Tk - about 1.1MB, executable file with Tk - about 1.7MB * for Windows platform: executable without Tk - about 1.5MB, executable with Tk - about 2MB. This is an amazing size considering the ability to create GUI applications with support for SSL/TLS connections, work with JSON/XML documents, extensive access to WinAPI using twapi on Windows platform. In normal installations, only the size of the OpenSSL library will be 2 times larger. As a use case, consider an internal installer that works in both console and GUI mode and contains the same code for all platforms. This installer uses the REST GitHub API via HTTPS to get information about the latest available release, uses tdom to parse the JSON response, downloads a platform-appropriate tar.gz archive from GitHub releases using HTTPS, mounts the resulting tar.gz archive using tclvfs and extracts the necessary files to the destination directory. -- Best regards, Konstantin Kushnir |
From: Andreas K. <and...@gm...> - 2024-09-27 06:47:20
|
Hi all. I am pleased to announce Kettle 1.1. For details see https://core.tcl-lang.org/akupries/kettle/technote/3bd52e1e35f1e31c9f1bb60ea191 91f4895661ac -- Happy Tcling, Andreas Kupries <and...@gm...> <https://core.tcl-lang.org/akupries/> <https://akupries.tclers.tk/> Developer @ SUSE Software Solutions Germany GmbH ------------------------------------------------------------------------------- |
From: Zaumseil R. <RZa...@kk...> - 2024-09-27 06:36:38
|
Congratulations and many thanks to all involved people. Rene -----Ursprüngliche Nachricht----- Von: Donald G Porter via Tcl-Core <tcl...@li...> Gesendet: Donnerstag, 26. September 2024 20:45 An: Tcl List Core <tcl...@li...> Betreff: [Ext] [TCLCORE] Happy Birthday! A birth is a joyful occasion, yet also one where we expect... ... there will be screaming ... there will be crying ... and someone will get slapped Happy Birthday anyway. Let's see what this baby can do. -- | Don Porter Applied and Computational Mathematics Division | | don...@ni... Information Technology Laboratory | | http://math.nist.gov/~DPorter/ NIST | |______________________________________________________________________| _______________________________________________ Tcl-Core mailing list Tcl...@li... https://lists.sourceforge.net/lists/listinfo/tcl-core |