Tcl Library Source Code

Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 ancestors of [e889e36583]

Fix installer breaking on empty doc directories of excluded packages. check-in: e889e36583 user: andreask tags: trunk
Commit [c7f07ac148] forgot to update the package index, causing a mismatch. Fixed, likewise the Tcl requirement. check-in: 32ee5178ac user: andreask tags: trunk
Move many-* wrapper to before its usage. Bumped version to 1.3.2. v1.3.1 is broken. check-in: 09ed31fbfc user: andreask tags: trunk
See ticket [6efa4f571af052]. Worked around issues with the critcl v2 application the Tcllib C code is geared towards. Bumped json version to 1.3.1, jsonc to 1.1.1, and tcllibc to 0.3.13. check-in: 2d0b61da55 user: andreask tags: trunk
See ticket [6efa4f571af052]. Reworked the Json/C code to use a bison-pased parser provided by Mikhail. No separate data structures to convert, just direct generation of Tcl structures. Changes compared to the original submission: - Use List, not Dict operations for objects, i.e. be Tcl 8.4 compatible. - Do not generate Int/Double objects, only strings. Conversion to actual int is lazy, when actually needed. Also ensures that compile-time Tcl version does not restrict range of integers, only runtime Tcl version. - Allow all values as toplevel json, not just array and object. - Currently no shared objects for the fixed values (null, true, false). Note that the RE-based json validation is still faster on even moderatly sized strings, even when just using a stripped C lexer not generating token values. Bumped jsonc to version 1.1 and tcllibc to version 0.3.12. check-in: 11390a7baa user: andreask tags: trunk
Re-join split trunk check-in: dfdc7799cc user: andreask tags: trunk
Added special case for coincident points in spatial interpolation check-in: de82c45509 user: markus tags: trunk
Regenerated embedded documentation. check-in: 6ac9af25d2 user: aku tags: trunk
Merged pt work. check-in: 37f7976d5a user: aku tags: trunk
Fixed various documentation files. - Added missing requirements of the package itself, throwing off the validate command of sak. - Added some missing documentation files. check-in: b71e7a1a19 user: andreask tags: trunk
Fixed various documentation files. - Added missing requirements of the package itself, throwing off the validate command of sak. - Added some missing documentation files. check-in: 1435afdcde user: andreask tags: trunk
Reworked the input system, now matches pt::rde (snit). Implemented the super instructions, was able to copy/paste the snit code over. Closed-Leaf check-in: b8b6220b66 user: andreask tags: pt-rde-oo-fixup
Start fixing the pt::rde::oo code. Apparently I abandoned it in a very unfinished state. :( Basic generation now working. Runtime incomplete, missing all the si:* super-instruction methods. check-in: 8a87e457e2 user: andreask tags: pt-rde-oo-fixup
Integrated work on a first C parser for JSON. json 1.3, tcllibc 0.3.11. See ticket [6efa4f571a]. check-in: df814df3ab user: andreask tags: trunk
Finalized integration. Bumped to version 1.3. Closed-Leaf check-in: 0b57c2407c user: andreask tags: ak-bug-6efa4f571af052-jsonc
Switched validation from the C parser back to a shared Tcl implementation, regexp based. It is consistently faster. No overhead creating irrelevant data structures is main suspected cause. check-in: 5a645be338 user: andreask tags: ak-bug-6efa4f571af052-jsonc
Added synthetic benchmarks constructing larger json structures. check-in: f8b84da1d4 user: andreask tags: ak-bug-6efa4f571af052-jsonc
Fixed bug in json::dict2json. Nobody seems to have used this before. check-in: 05d128bcc8 user: andreask tags: ak-bug-6efa4f571af052-jsonc
Sort tests by name in the data arrays check-in: 9b736e1cfc user: andreask tags: ak-bug-6efa4f571af052-jsonc
Small test simplification check-in: 942a650535 user: andreask tags: ak-bug-6efa4f571af052-jsonc
Fixed buglets which slipped through in previous commit. check-in: 1c1271bd98 user: andreask tags: ak-bug-6efa4f571af052-jsonc
Moved the larger test cases and data into separate files, less quoting that way. Added test case for the escape-able characters. Added test cases for invalid json. Shifted the json generating procedures to the common file, making them shared between Tcl and C implementations. Added a benchmark suite, using the test cases in the files as input. check-in: af6919a548 user: andreask tags: ak-bug-6efa4f571af052-jsonc
Implemented many-json2dict and validate over json-c. Test cases for many-json2dict reactivated, passing. New cases for validate, passing. Should add test cases for invalid json input. check-in: 08ac1421ee user: andreask tags: ak-bug-6efa4f571af052-jsonc
Integrated additional MI work on a Tcl_ObjType for lazier construction of the Tcl structures from the json C structures. Notes - Modified the Tcl parser to return 0|1 for boolean values, to match the new C parser. Updated testsuite. - Supplied my own definition of assert to fit in with Tcl (Tcl_Panic). - Modified the C conversion of json null to match the Tcl parser, is now 'null', not the empty string. - Changed Tcl_Dict* uses to equivalent Tcl_List* to keep the code usable for Tcl 8.4 - Moved the code handling the deferral/laziness into lazy_value2obj and applied it to array elements as well, not just object fields. - Moved the variables in value2obj into the switch branches. - Changed the Tcl_ObjType structure initialization to regular C. Code as provided (see ticket attachment json2.c) looked like some GCC-ism. Open question - Why does the json2string function not just generate the string rep, but takes the int.rep as well, shimmering the Tcl_Obj*. Seems to presume that the string generation is immediately followed by Tcl code forcing a shimmer anyway ?! Reduced testsuite passes. check-in: 8fc03c91fd user: andreask tags: ak-bug-6efa4f571af052-jsonc
Initial work on a critcl json parser based on json-c. Issues: many-json2dict has no C equivalent, nor the *2dict commands. Boolean is 0/1 vs true/false in C vs. Tcl, this should be fixable in the testsuite. Basics are working. check-in: c51875a02a user: andreask tags: ak-bug-6efa4f571af052-jsonc
Regenerated online documentation. check-in: 4f43ea48be user: aku tags: trunk
Fixed doc typo. check-in: c3973cc954 user: andreask tags: trunk
Ticket [444358b66e]. Documented option --. check-in: 0c20ebf4b6 user: andreask tags: trunk
Ticket [01afa9345d]. Added note about method 'expand' pushing a new and empty context while running. check-in: e53cad73ec user: andreask tags: trunk
Ticket [5030721806]: Applied the supplied diff, removed 'domain' flag from defaults for a Type 1 greeting message. Updated testsuite. Bumped version to 1.1.2 check-in: 50f29c21a3 user: andreask tags: trunk
Ticket [cfb76ff94]: (::uri::split, ::uri::resolve): Modified split so that a missing scheme for http(s), ftp urls treats remainder as having a leading host part. Extended testsuite. Updated 'resolve' to run the relative url through split with a proper scheme prefix to prevent misintepretation of the path as host-part. Bumped version number to 1.2.4 check-in: aaa37775e4 user: andreask tags: trunk
Ticket [b8f35b9883]. Added references for SCRAM mechanism and package. Fixed missing cleanup of test variable. New package SASL::SCRAM and testsuite, provided by <[email protected]>. check-in: 38a2ed086c user: andreask tags: trunk
Ticket [f5155519e7]. Dropped use of bash. Generally switched the application to an easier to read invokation without all the shell tricks and magic. check-in: 540921a9bc user: andreask tags: trunk
Get tar fixes back. check-in: 2917507b22 user: andreask tags: trunk
Update to head of trunk. Closed-Leaf check-in: 93aa26ab06 user: andreask tags: pyk-tar
Bumped package version, updated logs, ready to merge. Fixed ticket [6b7aa0aecc]. check-in: 4a2f75b5da user: andreask tags: pyk-tar
The issue with the skip code was not the limit to 64K, but how the code (a) assumed the wrong type for the result of 'read' (number of bytes, but is the read data), and (b) mis-handled short reads. Using 'string length' to convert the result type into what was needed, and using the proper condition was what fixed the issue, and not getting rid of the limit. I have now re-instated the limit, with in-code explanation of why it makes sense, and verified that this still passes the testsuite. I further changed the variable names to be much more self-documenting as well. check-in: 8de453c348 user: andreask tags: pyk-tar
Fixed the testsuite up somewhat. (1) Moved helper code into separate file. (2) Replaced helper code blocks in variables with proper procedures. (3) Simplified setup1, cleanup1 No need to search for and create lots of temp dirs in setup, just remove the directory in cleanup. Now use single temp dir, fixed name. (4) Fixed setup of tests in general (4a) Added emacs mode marker to get proper Tcl mode. (4b) Added missing Tcl 8.5 requirement (4c) Use canonical 'use' command for access to local package (memchan). (5) Constrained the one test requiring Tcl 8.6 (zlib) It is not yet clear to me why the 'stream' helper (to create a large file) is so complex. check-in: 624a1ee7b8 user: andreask tags: pyk-tar
Merging Mime Modifications. check-in: c2829102b5 user: andreask tags: trunk
(PoorYorick): general cleanup. use expr operators like eq instead of string commands. (AK Notes): Version bumped to 1.6, requirement bumped to Tcl 8.5. (AK) Updated testsuite and doc Tcl requirements. Fixed the creative writing problem of the initialization code, present before PY cleanup. Closed-Leaf check-in: c7f07ac148 user: andreask tags: pyk-mime-cleanup
(Events): Ticket [864a0c83e3]. Do not suppress readable events at end of the channel. Needed to signal the eof condition. Like for regular files, always readable. Affected channels memchan, string, and variable. Versions bumped to 1.0.3, 1.0.2, and 1.0.3 respectively. check-in: fc756af785 user: andreask tags: trunk
Revert Tcl 8.5 dependency introduced by an unlogged rewrite [c80b6fffde]. check-in: 941966a233 user: andreask tags: trunk
Fix trunk split. check-in: d233d12198 user: andreask tags: trunk
revert bad change to quoting in ctrl.tcl check-in: 2cafc97e62 user: pooryorick tags: trunk
add support for default arguments to term::ansi::send fix documentation types quoting cleanup check-in: c80b6fffde user: pooryorick tags: trunk
fix setup1 script for tar.test so that tests don't pollute each other check-in: cecf9adb75 user: pooryorick tags: pyk-tar
add a test suite for tar module fix for bug 6b7aa0aecca6fdce12589884c3c9ea2b50c92ad4, tar::skip silently truncates at 65536 check-in: 165e7adf41 user: pooryorick tags: pyk-tar
Regenerated embedded documentation (new man.macros, exclusion of deprecated exif module). check-in: fdbe5cb1bc user: andreask tags: trunk
[Ticket 7c7f946046]: Pull in exclusion information from the installer configuration, and use it to exclude the associated man-pages from generation. check-in: 0951505185 user: andreask tags: trunk
[Ticket dc50cc65ea]: Accept schema names case-insensitively. Report and patch by Harald Oehlmann. Version bumped to 1.2.3. Extended testsuite (uri-11.0). check-in: a85537aeae user: andreask tags: trunk
[Ticket 369f67aeee] Updated to newest man.macros from Tcl/Tk. check-in: 082d009051 user: andreask tags: trunk