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.

48 descendants and 50 ancestors of [a4f6ae73f9]

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. Leaf 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. Leaf 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
Integrated work on the test assets into trunk. check-in: 23b8d4b98e user: aku tags: trunk
sak test run - Moved table of timings to separate log file "STEM.timetable". Closed-Leaf check-in: bddd800ca6 user: aku tags: test-assets
Reworked the amazon-s3 test setup to check for and tell about the AWS authentication requirements it has. check-in: c17997785d user: aku tags: test-assets
Move many tests assets into a proper subdir of the module. check-in: af0b003dad user: andreask tags: test-assets
mime - B, T, version bumped to 1.6.2. - Fixed missing export of documented `buildmessage` command through the mime ensemble. - Shifted asset access support in tests to general utilities. check-in: a6f1dc74fe user: andreask tags: trunk
doctools: tests - latex - Fixed static username in expected results to proper placeholder. check-in: a2959d98ee user: andreask tags: trunk
Trunk, clay: Fix bogus `errorCode NONE` in tests. check-in: 4ccd49719e user: andreask tags: trunk
Fix bogus `errorCode NONE`. Closed-Leaf check-in: 6a51e0b0db user: andreask tags: s3-test-work, overcome-by-other-work
Fix access of amazon-s3 tests to their local config file. Still something to do about AWS key setup. check-in: 766586de00 user: andreask tags: s3-test-work, overcome-by-other-work
mime - Fixed two typos in code comments. No functional change. check-in: 0a01095aa0 user: andreask tags: trunk
Fixed error in httpd: FormData was not getting information from GET requests Fixed error in httpd: File based content was looking at REQUEST_URI instead of REQUEST_PATH Fixed problem in practcl: PreInitScript on Windows cannot include a source check-in: 7fda9d9978 user: hypnotoad tags: hypnotoad
Fixed an error with Clay's uuid generator when running with Tcllib's md5 implementation SCGI servers now read the doc_root setting and expose that as the DOCUMENT_ROOT header to scgi application code check-in: 2b1fd1d488 user: hypnotoad tags: hypnotoad
Pulling changes from trunk check-in: 147792792a user: hypnotoad tags: hypnotoad
Integrated last of hypnotoad branch check-in: 8ec2d6ea79 user: aku tags: trunk
Integrated testsuite fixups Merged latest work from trunk Regenerated documentation. - Fixed outdated references to Use `modules/common-text/` now. check-in: e3ae2af3f4 user: aku tags: hypnotoad
Added demonstrations of passing configuration parameters and seeing the data reflected in behavior in httpd Closed-Leaf check-in: 367088a3b3 user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Removing hardcoded path, and registering the paths in the appropriate manner in the httpd tests check-in: 357caec02f user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Adding a DOCUMENT_ROOT to the server headers for scgi servers check-in: a4f6ae73f9 user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Fix for scgi-client-0006 in httpd check-in: 5f4063d387 user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Replace live calls to clock seconds with one single call and a global value used by all tests check-in: fb394194c3 user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Added refcounting safeguards arround common areas where reply objects are waiting and polling. Added a test to ensure that all objects that were supposed to be garbage collected ARE garbage collected after ::clay::cleanup check-in: c3921f3366 user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Finally fixed httpd module's scgi-client-0006 test check-in: 839939e944 user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Added refcounting to clay objects, and replaced the hard-cast clay::destroy calls with invocations of the object's clay refcount_decr method. Tweaks to the httpd test to try to sort out why scgi-client-0006 is still failing check-in: f5ae509e59 user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Added a new channel registration system for httpd replies, instead of forcing developers to manually clean up channels via the old TransferComplete mechanism. Rather than hard-calling destructors for httpd reply objects (and their proxies) added a soft-kill mechanism developed for cuneiform to the httpd module. A new command "clay::destroy" marks and object for death, to be cleaned up at the next call for clay::cleanup. The cleanup is invoked at points in the idle loop where the object is expected to be long done with its toys. When an object wants to deliver its contents now, it can invoke the "close" method. Close will now close ALL channels registered with ChannelRegister, not just the channel in the "chan" variable. Fixes the crashes in scgi test 0006, but now the content is still coming out "wrong" check-in: fb7ab80b6b user: hypnotoad tags: aku-the-big-httpd-testsuite-cleanup
Starting to investigate the issue with `scgi-client-0006` I was unable to help myself and started a cleanup of the tests first. - Fixed up indentation all over the place. - Moved all the various expected replies (404, 200, 500) into constructor procedures. This not only made the individual tests clearer, but also easier to properly indent. - Removed the custom `httpd::test::compare` (HTC). Switched to regular tcltest glob matching, plus string map for basic templating of some expected results (200... variants). - The thing with the `norm-eol` I had to add (*) makes me suspect that HTC hid a possible bug in the proxy coding around the handling of line endings. (Of course, my norm-eol now works around the same thing, if in a different manner). (Ad *) See marker `AKU` in the code. - Moved the cgi helper application into an `assets` directory. No need for dynamic creation and deletion. Just tweak the `path` it is looked for. With all this I can now easy see that `scgi-client-0006` returns a 500 server error to us, instead of the expected file. check-in: 91d4900a3d user: aku tags: aku-the-big-httpd-testsuite-cleanup
Update to clay, practcl, and httpd brought over from the clay project. clay - fixes a typo in the ensemble generator - Removed a call to cron::object_destroy (we don't always run with cron) - Added a tool-like event manager - Removed where the amalgamater was adding dictargs twice - Added a "short" uuid for local projects httpd - updates to clay - Test fixes - Remove CSS templating from the vanilla httpd - Some behind the scenes tweaks to accomodate the cuneiform module when httpd is used in external packages practcl - updates to clay - Static packages are now advertised in the tclpreinitscript, eliminating the need for the master process to throw a bootstrap to new threads check-in: 6ae00eec07 user: hypnotoad tags: hypnotoad
Updated clay to mirror the latest version on (0.8) * Adds support for short UUIDs * Adds support for the embedded md5 generator in odielibc * Integrates dictargs into the clay syntax Update practcl * Embedded clay version is now 0.8 * Fixes a bug in installModule for an empty directory * Fixes a longstanding issue with bootstrapping child interps and threads from kits check-in: 0aa60d1fa8 user: hypnotoad tags: hypnotoad
Version bump and typo fix check-in: cc3e325115 user: hypnotoad tags: hypnotoad
Practcl fixes: Added an optional argument to build-tclsh for the caller to specify the effective path for the build environment. Fixed a spot in auto-detection that was banking on the localsrcdir define being defined... by auto-detection. check-in: fb659ebc12 user: hypnotoad tags: hypnotoad
Closing a fork check-in: f49f632755 user: hypnotoad tags: hypnotoad
Updated branch with trunk work in prep for merge back (zig). Resolves most test issues of the branch. check-in: e7e38ee473 user: aku tags: hypnotoad
Changed the name of the ::kitpkg() array to ::starkit::static_package() to avoid polluting the global namespace check-in: a20ae30353 user: hypnotoad tags: hypnotoad
Doctools: - Extended testsuite, markdown special character example. - Fixed issue in markdown engine with handling of its special characters in verbatim blocks. Should not emit them as quoted, they are not special in such blocks. Regenerated package docs (version bump & fixes making changes) Version bump - doctools 1.5.2 B (markdown) T (markdown) check-in: c74461e613 user: aku tags: trunk
Adding loads for modules that httpd's dependencies have a dependency on check-in: 365742ea93 user: hypnotoad tags: hypnotoad
Doctools: - Extended testsuite, nesting of different list types. - Fixed issues in text/markdown engines with this kind of nesting. (Context creation did not clear inherited type markers, and paragraph handling took def markers over other list markers) Regenerated package docs (version, bump, fixes making changes) Version bump - doctools 1.5.1 B (text, markdown) T (text, markdown) check-in: 3ddb294ff0 user: aku tags: trunk
Brought markdown doctools work into the trunk. check-in: 11efa65aed user: aku tags: trunk
Documentation updated to include Markdown as a possible output format. Regenerated embedded documentation. Version bumps EF (markdown) B (text, html, tmml, nroff, latex, wiki) I (text) T (*) D (*) doctools 1.5 doctoc 1.2 docidx 1.1 Closed-Leaf check-in: 14a3046674 user: aku tags: doc-fixup-and-markdown
More polishing to bring the embedded markdown documentation nearer to par with HTML. Only the styling HTML had is missing, and that is a limit of MD itself. - Markdown: Added support for engine parameter 'header'. Needed for navbar from dtplite. Added missing copyright information (see also HTML). Added character protection to engine, to mark the special command characters. Special characters in the input are quoted at the end, to prevent them from being seen as special by markdown. This required support in the general text engine too, when handling indents. It must not count the protection character (\1). - dtplite: Use HTML entity for the vertical bar in the navbar. This prevents misidentification as special character in the markdown engine, while keeping it usable for the HTML engine. - Removed HTML stylesheet for fossil integration. Unused now with the embedded docs using markdown and fossil doing the render. - Regenerated embedded docs, inserting copyright comment, and navbar. check-in: 67c2cce9ef user: aku tags: doc-fixup-and-markdown
Switched homepage over to markdown. check-in: 2c7245df25 user: aku tags: doc-fixup-and-markdown
Merged localdoc work based on markdown into markdown. check-in: e0d7b4dc8e user: aku tags: doc-fixup-and-markdown
Fixed missing conversion to relative paths for image links. Closed-Leaf check-in: 58be278739 user: aku tags: doc-fixup-and-markdown-localdoc
Switched embedded docs to markdown. Regenerated install docs. check-in: 7cfe8cda34 user: aku tags: doc-fixup-and-markdown-localdoc
Fixed forgotten reset of md comment counter between documents. Fixed missing md extension declaration in the localdoc implementation. check-in: 945b80356c user: aku tags: doc-fixup-and-markdown-localdoc
Merge latest work done on markdown generator (tocs, xrefs). check-in: 945be77637 user: aku tags: doc-fixup-and-markdown-localdoc
Markdown: Implemented document cross references, and added refs to the per-page synopses. check-in: a8b930a4d3 user: aku tags: doc-fixup-and-markdown
Markdown: Implemented section cross references, per-page TOC. Updated test results. check-in: 78d88166a8 user: aku tags: doc-fixup-and-markdown
Markdown: Fixed indenting of example sections (as code blocks) nested in lists. Updated test results. check-in: 5ea283171a user: aku tags: doc-fixup-and-markdown
Markdown: Fixed paragraph counting when nesting lists. Fix for indenting in progress. check-in: d5f39d22eb user: andreask tags: doc-fixup-and-markdown
Text: Fixed paragraph counting when nesting lists check-in: a75ee706ed user: andreask tags: doc-fixup-and-markdown
Continued markdown work. More test cases, nested lists. Demonstrate issues with paragraph counting (text & markdown) and indenting (markdown only). Possibly demonstrate issue with text and markdown when a nested list is the first paragraph of an entry, without preceding text. This looks to lose the outer markup for start of entry. check-in: eaa4c90a8c user: andreask tags: doc-fixup-and-markdown
Tweaks to the narrative tracing check-in: 859f8caed1 user: andreask tags: doc-fixup-and-markdown
Fixed latex user reference in the results check-in: af4cc3338e user: andreask tags: doc-fixup-and-markdown
Switch embedded docs over to markdown. Drop lots of superfluous trailing whitespace. check-in: 56ca2fa4d9 user: andreask tags: doc-fixup-and-markdown-localdoc
Markdown continued polishing. - Hook into generation of copyright block. - Force line break in copyright block. - Use entity for copyright symbol. - Fix missing formatting for various span-level markup. - Fix index references, want links, not anchors. - Made notes of missing things (xref mainly, see HTML) - Fixed test results to match Text - Fixed missing cleanup of current context between pages. - Additional guards to detect contexts early, on emission, instead of final render. check-in: 34f227b45f user: aku tags: doc-fixup-and-markdown
Continued generation of markdown: doctools. check-in: 352aea205e user: aku tags: doc-fixup-and-markdown
Markdown: Updated test results, added index for easier inspection check-in: d6174df5a0 user: aku tags: doc-fixup-and-markdown
Markdown, switched toc and index to new comment commands. check-in: 669184b80b user: aku tags: doc-fixup-and-markdown
Text engine, fixed inverted conditions check-in: baa78c4740 user: aku tags: doc-fixup-and-markdown
Additional narrative tracing in text support. check-in: 7eb9daedd0 user: aku tags: doc-fixup-and-markdown
Better MD comment support. check-in: 10268352a5 user: aku tags: doc-fixup-and-markdown
Fixed comment typo check-in: bced18e56d user: aku tags: doc-fixup-and-markdown
Continued generation of markdown: doctoc. check-in: 61b61eed41 user: aku tags: doc-fixup-and-markdown
Started generation of markdown: docidx. check-in: 0f2ecff317 user: aku tags: doc-fixup-and-markdown
Shuffled the test support files for doctools around for a nicer hierarchy, with fmt, idx, and toc properly segregated. Updated the test suite to match the changes. Furthermore dropped superfluous checks for long-gone `CVS` directories. check-in: 7e7f01191f user: aku tags: doc-fixup-and-markdown
doctools: - `text`: Sliced and diced internals for easier (re)comprehension of the parts. Going towards reuse for a new `markdown` format. Fixed various mis-formattings: - Missing newline at end of output - Superflous newlines at beginning of example sections. - Updated various formatters to not pass initial leading whitespace into the output (See testsuite change, added comments) - `latex`: Fixed handling of paragraph breaks, [nl]. - Extended testsuite, more manpage examples. Also added comments at top with short description. doctoc: - Syntax checker fix, items are allowed before toc end, after the last division. - `text`: Updated to make use of and match the reworked engine. - `html`: Fixed fixed mismanagement of items before first and after last division. Completely new state for tracking levels, items. - `nroff`: Fixed missing indenting of division title - `tmml`: Fixed variable name typo - Extended testsuite with examples for all the generators. docidx: - `nroff`: Fixed unsorted output - Extended testsuite with examples for all the generators. check-in: fae3542632 user: aku tags: doc-fixup-and-markdown
Squashed deprecated `nl` tags, using `para` instead check-in: 4a95b1eebb user: aku tags: trunk
Regenerated documentation. check-in: 08c384a6c3 user: aku tags: trunk
Integrated Andrew Mangogna's and Nathan Coulter's work on namespacex, with thanks. check-in: dc845d0c83 user: aku tags: trunk