Nakon 15 mjeseci razvoja, objavljen je Tcl/Tk 8.6.14, dinamički programski jezik distribuiran s višeplatformskom bibliotekom osnovnih elemenata grafičkog korisničkog sučelja. Tcl se prvenstveno koristi kao platforma za stvaranje korisničkih sučelja i kao ugrađeni jezik, ali je također prikladan za brzu izradu prototipa, web razvoj, razvoj mrežnih aplikacija, administraciju sustava i testiranje. Kod projekta distribuira se pod BSD licencom.
Među promjenama:
- Normalizacija putanja datoteka i rukovanje znakom "~" u putanjama dovedene su u višeplatformski oblik.
- Naziv puta koji počinje s '//' ne zamjenjuje se s '/', uključujući Cygwin i QNX.
- Dopušten je prazan način rada u [chan create] ("[chan create {} $cmd]") kako bi se omogućila refchan verzija [socket -server].
- Poboljšane performanse forka pri korištenju višenitnosti s vfork/spawn.
- Osigurajte da se getsockname(2) poziva u Tcl_MakeFileChannel(3) samo kada je to potrebno.
- Tcl/tclsh je ojačan korištenjem OpenBSD-ove funkcije pledge(2) ili sličnih mehanizama.
- tcltest je prilagođen za podršku Tcl 9 (>= tcltest 2.5.7).
- Osigurana je upotreba zamjenskog znaka prilikom dekodiranja nepotpunih Unicode nizova.
- Dodane su provjere za mknod, tcdrain i uname u skriptama za izgradnju za VxWorks ili druge platforme.
- 32-bitni Cygwin je završen, tako da argument "--enable-64bit" za Cygwin više nije potreban.
- Tcl_VarEval više nije zastario.
- Problem s godinom 2038 riješen je za "[vrijeme ograničenja interp -sekunde]".
- Opcija utf16 je uklonjena iz win/makefile.vc.
- zlib je ažuriran na verziju 1.3.1.
- libtommath je ažuriran na verziju 1.2.1.
- install-sh je ažuriran na verziju 2020-11-14.01.
- Dodana podrška za Unicode 15.1.
- Baza podataka vremenskih zona ažurirana je za izdanje tzdata2024a.
- Metapodaci binarne licence za Windows spominju Sveučilište Kalifornije.
- Ispravljena je greška s netočnim formatiranjem argumenata u stranici priručnika.
- Ispravljena je greška s nedostajućim informacijama o Windows 11 u tcl_platforms.
- Ispravljena je greška s netočnom usporedbom stringova na sustavima s big endian redoslijedom bajtova.
- Ispravljen je pad sustava kada je tcl_precision bio postavljen na 15..18.
- Ispravljeni rijetki rušenja prilikom čišćenja memchan streama.
- Ispravljen je problem s pogreškom ispisa u zip naredbi kada je komentar/naziv datoteke predug ili nije u iso-latin-1 kodiranju.
- Ispravljen problem s vraćanjem usec-a iz Tcl_GetTime u Windows.
- Ispravljen je pad sustava prilikom primjene transformacije kanala na klijentski TCP socket.
- Spriječeno nevažeće čitanje u Tcl_UtfToUniChar.
- В macOS 13 SDK je ukinuo funkciju sprintf().
- Ispravljeno prekoračenje argumenta pozicije u [scan %num$mode].
- Ispravljen rušenje prilikom repnog poziva.
- Ispravljene greške sa skeniranjem sata i dodavanjem sata u pogrešnim slučajevima ili sa skraćenim opcijama.
- Ispravljena je greška s ignoriranjem nepotpunih dvobajtnih kodiranja, na primjer u [encoding convertfrom gb12345 x].
- Ispravljen je pad programa tclvfs tkt prilikom izlaska iz interpretera s učitanim tclvfs-om.
- Ispravljen je problem gdje je Tcl_GetUniChar čitao znakove izvan duljine niza za ASCII nizove.
- Ispravljena greška u MS verziji WindowsDatoteke emojija pronađene su putem globa, ali nisu identificirane putem naredbi "file exists" ili "open".
- Ispravljena greška kompilacije s VC6 verzijom core-8-6-branch: "greška C2065: 'int16_t': nedeklarirani identifikator".
- Ispravljene greške u ClockGetdatefieldsObjCmd(): prekoračenje predznačenog cijelog broja i ponašanje neovisno o platformi.
- Ispravljena je greška s inicijalizacijom fakeObject.refCount u tclOO.c.
- Ispravljena je greška gdje bi korištenje nakon povratka u AddressSanitizeru prekidalo NRE testove i korutine.
- Ispravak lažnih pogrešaka iz [formata sata].
- Ispravljanje realokacije [exec %var%] u MS-u WindowsOvo je zabranjeno u verziji 8.6.13.
- Ispravak dokumentacije za Tcl_PkgRequire: Redak specifikacije verzije odnosi se na "package require".
- Ispravljena greška u [tcl_startOfPreviousWord string end-1].
- Ispravljen je pad sustava koji se dogodio kada je Tcl_ReadChars bio pozvan s Unicode objektima.
- Ispravljena petlja prilikom redefiniranja proc::history.
- Ispravljena petlja kada je ::unknown premješten u imenski prostor.
Izvor: opennet.ru
