Tcl Library Source Code

Bounty program for improvements to Tcl and certain Tcl packages.

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

50 check-ins occurring around 5d1a1e2063c05cd9.

Added fix for when udpcluster is run on machines with not network cards check-in: e56ae7f5ca user: hypnotoad tags: hypnotoad
Fixed a bug in service resolution on localhost check-in: bc336a76dd user: hypnotoad tags: hypnotoad
Fixed the broadcast mask for the localhost network in the udpcluster package check-in: 21c7620e26 user: hypnotoad tags: hypnotoad
Hack for cases with no network card check-in: dc5d4c68e3 user: hypnotoad tags: hypnotoad
Updating httpd with fixes to ensure utf-8 encoding is enforced over sockets and using direct channel copy for larger small files. Event manager removed from the core of the clay framework implementation, that is now a module in claylib check-in: cbbe501be4 user: hypnotoad tags: hypnotoad
New version of udpcluster 0.4. Requires tcl 8.6. The ping command now listens for replies on a separate port. Replies to pings are addressed directly to the address that made the request, instead of sending the data across broadcast. check-in: b0f0c2104c user: hypnotoad tags: hypnotoad
Closing a fork check-in: ef509437f2 user: hypnotoad tags: hypnotoad
Updated versions of clay, httpd, and practcl brought over from the clay library. clay - Added support for singletons httpd - Fixes lock ups with small files stored in zipfs practcl - Numerous bug fixes and tweaks to support sobyk check-in: 07665874d9 user: hypnotoad tags: hypnotoad
Add new functions (incomplete Beta, regularized incomplete Beta and digamma) to the special functions package. Also require at least Tcl 8.5 - was 8.3 - because of the use of the exponentiation operation. check-in: ef7469632a user: arjenmarkus tags: trunk
Correct wording of two procedures in geometry man page check-in: f6bca4d9d2 user: arjenmarkus tags: trunk
Correct the math::geometry package: missing exports and missing descriptions check-in: 0ddcf92b82 user: arjenmarkus tags: trunk
Continued work on release 1.20. Ticket [138d56dbaf]. Extended module aggregator with code to detect a tcllibc and register it it as installable package. Extended set of install actions with one placing the entire module into the installation directory. Fixed localdoc code to supply the `distribution` variable the new detection code requires to exist. Extended the installation guide with the note that building tcllibc now also causes it to be installed. Bumped the bundle version to 1.20. check-in: 4b2ffb42f2 user: aku tags: tcllib-1-20-rc
Continued work on release 1.20. Updated READMEs: - Deprecated packages, stages of deprecation - change commentary Fixed mismatched version numbers: - html - math::calculus Minor fixes in docs and other files. check-in: f522abfcbb user: aku tags: tcllib-1-20-rc, tcllib-1-20-rc-1
Begin work on release 1.20. Draft READMEs. check-in: 18b4428d0f user: aku tags: tcllib-1-20-rc
struct - struct::graph - B - Integrated work on tickets [6db9fe84d1] and [5edaf187fa] Bumped version to 2.4.3. Regenerated documentation. check-in: 58497fb09e user: aku tags: trunk
struct - graph - Tkt [5edaf187fa] - Followup on commit [bb9e30207b]. That commit fixed the Tcl implementation, failed to fix the C implemention. Fixed the C implementation now, completing the ticket. Closed-Leaf check-in: f47dac9903 user: aku tags: ak-tkt-6db9fe84d1-struct-graph-crash
struct - graph - Tkt [6db9fe84d1] - Fixed C implementation, added checks. check-in: 4326f5a2d8 user: andreask tags: ak-tkt-6db9fe84d1-struct-graph-crash
struct - graph - Tkt [6db9fe84d1] - Fixed Tcl implementation, added checks. check-in: c60e75c07f user: andreask tags: ak-tkt-6db9fe84d1-struct-graph-crash
struct - graph - Tkt [6db9fe84d1] - New test cases for troubled operations. Confirmed crashing for C implementation. Confirmed failing (i.e. missing checks) for Tcl implementation. check-in: 6b926d6dea user: andreask tags: ak-tkt-6db9fe84d1-struct-graph-crash
pki - Tkt [f8e09da9dc] - T, D - No version bump. - Moved all test asset files into a separate directory, and switched access to the `asset-get` helper command from the test utilities. Further moved large test results into asset files as well. - Added clarifications on the interaction between `sign` and `verify` with respect to the specification of the hash algorithm. Regenerated docs. check-in: 3f868874e7 user: andreask tags: trunk
textutil - textutil::wcswidth - I, Bumped to 35.1 Tweaked the implementation a bit, using `split`+ `foreach` now, instead of `for` + `string index`. Regenerated from the changed build script. check-in: d0dee3f3fe user: andreask tags: trunk
Integrated tkt [bf65cfc1c7]. New package `patch` check-in: 8a8694814d user: aku tags: trunk
textutil - patch - Tkt [bf65cfc1c7]. Documentation for the new package. Closed-Leaf check-in: 33e28e6068 user: andreask tags: textutil-bf65cfc1c7
Tkt [c030b5bc75] - Merged hypnotoad work check-in: 5625cabbd1 user: aku tags: trunk
textutil - patch - New package. Version 0.1. Apply `diff -ruN` output to a directory tree. Handles git and fossil diff output as well. Basic tests. Documentation to come. check-in: 89be287714 user: andreask tags: textutil-bf65cfc1c7
Merged latest from trunk. check-in: 5d1a1e2063 user: aku tags: hypnotoad
Also restored the database this textutil/build script consults check-in: 52f299deb6 user: hypnotoad tags: hypnotoad
Restoring build.tcl which was lost in the Great Turmult of 2018-2019 check-in: abedb451d5 user: hypnotoad tags: hypnotoad
Integrated fix for ticket [baa334cfef]. check-in: 978d2acbdf user: aku tags: trunk
struct - struct::record - Tkt [baa334cfef], B, I, T Version 1.2.2 Fixed broken deletion of record instances. The old code tried to perform a quick deletion by command list, and somewhere it went of the rails so that a nested instance lost the alias yet kept the field values around. The new code does it by the numbers, the reverse of creation, by iterating over the list of member and unsetting or recursively deleting each, per their definition. Additional cleanup using `upvar 0` to import state from record namespaces, reducing quoting hell. Further fixed the semi-broken implementation of `exists`. The first condition in each branch was completely broken and it somewhat worked only because of the second condition checking for (alias) commands. I suspect that this was also the cause of the issue with deletion. Replaced with much simpler code checking the relevant package state variables where this information is directly accessible. The broken conditions sort of tried that, except they missed importing the proper variable into the scope, looked at the wrong variable, and got confused in the quoting hell. Version bump to 1.2.2 (B). Closed-Leaf check-in: 3ac985da01 user: aku tags: srecord-baa334cfef
struct::record - D - Clean up check-in: 4b706ae7b6 user: aku tags: srecord-baa334cfef
Regen math docs. check-in: ca57dd6079 user: aku tags: trunk
Fix fork check-in: b90299f2c4 user: aku tags: trunk
Add procedures for triangular distributions and an estimation procedure for exponential distributions. check-in: 82cc6d4413 user: arjenmarkus tags: trunk
html - Tkt [1146362fff] EF, T, D html::submit extended to allow specification of title. - Tkt [a4680273cf] EF, T, D html::meta support extended for charset and http-equiv attributes. - Tkt [1076403fff] EF, T, D New convenience command `html::wrapTag`. Tests extended and updated. Documentation updated, regenerated. Version bump to 1.5 (EF). check-in: 6a75d04948 user: aku tags: trunk
simulation::random - Regenerated docs. check-in: d41bb0e17f user: aku tags: trunk
fileutil - Fixed two typos in code comment. check-in: 8524181fda user: aku tags: trunk
Integrated profiler enhancement for ticket [0dd4b31bb8]. check-in: 1e56dce90c user: aku tags: trunk
profiler - Tkt [0dd4b31bb8] EF, D bumped to 0.4 Changed profiler leaveHandler to return command result. This enables use by subsequent non-profiler trace handlers. Closed-Leaf check-in: eb9ea6260d user: andreask tags: profiler-0dd4b31bb8
profiler - Tkt [0dd4b31bb8] T More testsuite cleanup, and fix. Moved all the common setup/teardown into a helper procedure and updated all tests Further fixed the package initialization done by the helper as the original code was able to use the wrong implementation. Now explicitly sourcing the code under test. check-in: 6e55e6721e user: andreask tags: profiler-0dd4b31bb8
Integrated logger fixes for ticket [e4d5ef01e7]. check-in: 4955240acf user: aku tags: trunk
profiler - Tkt [0dd4b31bb8] T New test demonstrating the missing result from the profiler leave handler. check-in: 3cb2719df9 user: andreask tags: profiler-0dd4b31bb8
profiler - Tkt [0dd4b31bb8] T cleanup check-in: 28f62f3f32 user: andreask tags: profiler-0dd4b31bb8
Add procedures to generate random numbers that have a triangular distribution function (this is in response to ticket [cc77e167bf]). check-in: 233f6a741b user: arjenmarkus tags: trunk
log - logger::utils - Tkt [e4d5ef01e7] D regenerated Closed-Leaf check-in: c9d061ae7f user: andreask tags: logger-e4d5ef01e7
Integrated ncgi fixes for tkt [1f900bdf6b]. check-in: 2adb057376 user: aku tags: trunk
log - logger::utils - Tkt [e4d5ef01e7] T, B - bumped to version 1.3.1. More cleanup, plus test case for handling of %M in a TclOO context. Fixed handling of %M in TclOO context. check-in: 8f954a97c2 user: andreask tags: logger-e4d5ef01e7
log - Tkt [e4d5ef01e7] T General cleanup in testsuite for logger::utils. check-in: b1e5c4e0a8 user: andreask tags: logger-e4d5ef01e7
ncgi - Tkt [1f900bdf6b] - B, T Bumped to version 1.4.4. Regenerated docs. Applied patch to improvde handling of 1-byte encodings. This is the second of two. Thanks to Updated test case ncgi-3.10. His explanation: In practice www-url-encoded POST params can use encodings other than UTF-8 (think of legacy Tcl applications that use one of the ISO-8859-x charsets). In this case URL parameters can contain references to 8-bit code points (in the form of `%[A-F0-9][A-F0-9]`) that are not valid UTF-8 code points. For example, `%DC` can be used as a percent encoding for the german umlaut `Ü` (if a Tcl application is based on ISO-8859-1). Currently, the `decode` procedure does not decode `%DC` as all one byte UTF-8 code points must start with `[0-7]`. This commit improves the handling of one byte percent encoded non-ASCII characters. It allows to use ncgi in application contexts that do not use UTF-8 as the base encoding. Closed-Leaf check-in: b65597a91b user: andreask tags: ncgi-1f900bdf6b
ncgi - Tkt [1f900bdf6b] - I Applied patch shortening a few regex pattern by making use of `-nocase` option for `regsub`. This is the first of two. Thanks to check-in: 61a9c3db15 user: andreask tags: ncgi-1f900bdf6b