Tcl Library Source Code

Timeline
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to tclconference@googlegroups.com
or submit via the online form by Sep 9.

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

50 descendants and 50 ancestors of [8436048fee]

2018-09-15
23:15
Added an auto-documenter to the doctools module for use in module that build amalgamations in the same style a practcl, clay, and httpd. Practcl and Httpd now generate their manual page in this new manner. The positive is that every proc, class, and method are now auto-documented with arguments, even if we don't have comments for them yet. check-in: e6100e18d0 user: hypnotoad tags: hypnotoad
14:04
httpd modifications: The manual file for httpd is now generated dynamically during the call to build/build.tcl and is developed by scanning the source files and scraping comments. The test.tcl file generated during httpd.test is now deleted prior to ending the test. Redistributed the hard coded documentation files as comments in front of the methods they describe to be assembled by the manual file generator. check-in: ac0f7f67c2 user: hypnotoad tags: hypnotoad
2018-09-13
15:31
httpd tweak: Proxy replies and file transfers now run in end-of-file mode instead of fixed file size. Keeps from having to read too much into the headers to handle either Content-Size or Chunked encoding replies check-in: 8a1de41126 user: hypnotoad tags: hypnotoad
2018-09-12
20:23
Modifications to httpd: Refactored the ChanCopy method to utilize the yieldto command, per a suggestion from Donal Fellows. check-in: bbdea9cd0c user: hypnotoad tags: hypnotoad
19:31
httpd module: Replaced naked calls to [chan copy] with a new co-subroutine ChanCopy which is part of the metaclass for the httpd module. Using ChanCopy means the coroutine can remain in control for the entire process of processing an http request. For large file transfers we were killing the coroutine and waking the object back up with a fileevent. Added a test for 404 Not Found errors check-in: bb27bb43b4 user: hypnotoad tags: hypnotoad
2018-09-11
18:49
Httpd Module: Servers now pass control off to reply objects via a tailcall. Removed a puts statement in the example httpd app that was logging to stdout check-in: 4b3bc8df0b user: hypnotoad tags: hypnotoad
18:19
Mime: Fixed a wrong version number on the package httpd: The example now uses the uri::direct method where appropriate. Fixed some typos and bugs in the uri::direct method. Fixed places in the code where error pages were asking for the html::header and html::footer methods. They haven't existed for a while. check-in: 05366363a0 user: hypnotoad tags: hypnotoad
17:18
Httpd module: Removed a puts statement injected during debugging. Fixing a typo in logging check-in: c14446b881 user: hypnotoad tags: hypnotoad
17:13
Modifications to the httpd module: httpd::reply object in order to simplify the code inside of httpd::server and give developers more rope to hang themselves. The httpd::reply method now uses one general purpose dispatch public method, with all of the application specific wulu magic now confined to a new private method Dispatch Folded the functions of the former reply::dispatch method into the new public dispatch method, and eliminated reply::dispatch. Replaced http::reply.scgi with a mixin that swaps that one function that is different between them. httpd::server no longer looks for an alternate reply class. It is now assumed that every reply will be httpd::reply, and that the dispatch method will be able to sort out what behaviors get mixed in. Simplified the implementation of ::httpd::plugin.dict_dispatch Added a new method to the Uri ensemble: uri::direct which automates the process of producing simple dynamic content cases. Formalized the arguments for uri::add Moved the headers parsing out of the body of Connect and into a dedicated method ServerHeaders. Added a call to Dispatch_Local to the default dispatch method. check-in: 7b4c25cd6e user: hypnotoad tags: hypnotoad
2018-09-08
18:56
Pulling changes from trunk check-in: 57af8b6c63 user: hypnotoad tags: hypnotoad
18:56
Httpd module: Fixed a goof in redirect handlers. Fixed which headers are accessed for logging. Added a shim for web servers to provide a standard style mixin. Added a shim for servers to participate with their own private methods prior and following mixin dispatch. Added a hook for server to provide a local method for Headers check-in: d20a51f758 user: hypnotoad tags: hypnotoad
2018-09-07
14:27
Shifting standard HTTP fields out of the root of clay, and into the http leaf. Redirecting API calls to not ask directly from clay what it expected as an HTTP header, and instead use the "request" method. Bumped versions of clay and httpd to denote they are fundimentally new versions. Changes to Clay: Changed the "Evolve" method in Clay to the "InitializePublic" to match Tool and what OOmeta expects. While clay itself doesn't utilize options, it's initializers are aware of how they will be annotated by future versions of tool/tao Moved variable, array, and dict annotations out of the public/ branch and into their own roots. Mixin is now a leaf in the clay tree. Added more tests to clay Changes to httpd: Replaced calls to http_info with naked calls to the clay data structure. Explicit requests for HTTP header info now directed at the request method. Request now stores headers with CGI/SCGI comadible names. Changes to practcl: Minor fixups from clay changes. check-in: ab481a1f5b user: hypnotoad tags: hypnotoad
2018-09-06
09:46
Fix namespace resolution for relative namespaces. Add "normalize" and 'strip" commands. check-in: ccd9433cb2 user: pooryorick tags: pooryorick
2018-09-04
19:11
Add several commands to the statistics package: Wasserstein distance, KL divergence, logistic regression. Also documentation and tests for these commands. check-in: 44761b447e user: arjenmarkus tags: pooryorick
2018-09-03
08:19
Replace getheader/setheader with "header". Adapt header commands to work with header parameters. Add "header serialize". Add RFC 2231 support. check-in: 1388f3b7c9 user: pooryorick tags: pooryorick
2018-08-30
12:00
::mime::initialize no longer parses the message. Instead, parsing is performed later as needed. check-in: 16a1a9ac6e user: pooryorick tags: pooryorick
05:57
mime::initialize - make multipart/mixed the default type when -parts is provided. check-in: c55b8ef304 user: pooryorick tags: pooryorick
2018-08-29
19:49
-headers and -parts options to mime::initialize now take a dictionary. Fix for [492563ffff] "hostname" option for parseaddress. check-in: 39e8f7dbb4 user: yorick tags: pooryorick
13:59
Fix for [763669], Problems with qp_encode and encoded_word, no_softbreak check-in: 339212df6a user: yorick tags: pooryorick
09:42
Make it a no-op instead of an error to set a "read-only" header to an identical value, and allow deletion of a "read-only" header. check-in: 5006be5e6a user: yorick tags: pooryorick
04:19
Separate header determination from body generation. check-in: 6bf953d995 user: yorick tags: pooryorick
2018-08-28
17:38
If nothing else, at least indicate whether a file is text or binary check-in: 62cc52d167 user: pooryorick tags: pooryorick
14:15
Updating man pages to reflect change to clay framework check-in: 4aa8790961 user: hypnotoad tags: hypnotoad
14:12
Pulling changes from trunk check-in: c057f36dc1 user: hypnotoad tags: hypnotoad
13:48
fix bug [4adb7c36a3] check-in: 48db90b95b user: pooryorick tags: pooryorick
04:32
Regen docs. check-in: e6c60e96f5 user: aku tags: pooryorick
04:26
And fixes placed on a branch for Sean to look at. Approved. Now integrating. check-in: 671d1f47a3 user: aku tags: pooryorick
04:25
Last fixes. check-in: 269812cf8d user: aku tags: pooryorick
03:29
Series of documentation fixes for problems caught by the experimental doctools parser written as large Marpa/Tcl example. - Removed many superfluous closing brackets. Some converted to proper [rb] markup. - Removed bad cross-references introduced by [c6b17331c9d12697] several years ago. - Removed several bad [para]graph markers placed before the first item of the enclosing list. Regenerated the embedded docs. check-in: 3c9d4bcd85 user: aku tags: pooryorick
03:19
httpd: Renamed doc include files to follow the overall practice of naming them `.inc`. Closed-Leaf check-in: 54eb35fc91 user: aku tags: httpd-docs-move, pooryorick
2018-08-27
20:31
cron manpage: Fixed millisecond typo. <D> check-in: b14633aa2f user: aku tags: pooryorick
20:28
Fixes to cron manpage. Regenerated embedded docs. check-in: 61102fe7dc user: aku tags: pooryorick
2018-08-26
12:15
update comments check-in: 1d13943cd4 user: yorick tags: pooryorick
10:53
remove duplicated code in ::mime::buildmessageaux check-in: 0587b55b96 user: yorick tags: pooryorick
2018-08-21
22:48
Numerous improvements and bug fixes. Updated analyzer script from file-5.34 magic files. check-in: c48961ab8e user: pooryorick tags: pooryorick
2018-08-15
05:23
code cleanup check-in: 6b167d6d17 user: pooryorick tags: pooryorick
04:34
Fix for [063e7a95beef451c], Correct Handling of quotes in quoted strings in parseMimeValue check-in: e4a17a66b1 user: pooryorick tags: pooryorick
2018-08-14
19:39
convert mime.test to utf-8 check-in: 6c21e9dfe4 user: pooryorick tags: pooryorick
19:16
Fix issue [a16b1095974e071d], error in mime.tcl check-in: 074ec6a961 user: pooryorick tags: pooryorick
2018-08-08
14:42
* pt_peg_op.tcl: Sort out correct order of minimization transformations: dechaining must precede unrealizable and unreachable transformations check-in: cfca679384 user: ssoberni tags: pt-peg_op-tests-ssoberni
14:28
* pt_peg_op.tcl: Started work on a proper dechain transformation (dechain2); the current dechain logic is entirely broken; added tests check-in: f71a1db4a8 user: ssoberni tags: pt-peg_op-tests-ssoberni
2018-07-25
12:26
Adding tests for pt::peg::op realizable and reachable check-in: be24b48161 user: ssoberni tags: pt-peg_op-tests-ssoberni
2018-07-22
11:38
Add a package for trigonometric functions that use angles in degrees and additional trigonometric and hyperbolic functions, including their inverses. check-in: 7538200f88 user: arjenmarkus tags: trunk
2018-07-19
19:31
Change the criterium for detecting if two circles touch - use the mean of the two radii check-in: 6124e077a8 user: arjenmarkus tags: trunk
2018-07-16
10:54
Adding tests for pt::peg::op called check-in: 6c7e7ee0de user: ssoberni tags: pt-peg_op-tests-ssoberni
09:25
Create new branch named "pt-peg_op-tests-ssoberni" check-in: 9b2222e1ad user: ssoberni tags: pt-peg_op-tests-ssoberni
2018-07-09
21:41
ldap/ldapx <EF> Tkt [60160205fe] Extensions to the TLS handling of ldap(x) enabling the specification of all TLS options instead of the limited set we had before. check-in: 337c7e5654 user: andreask tags: ldap-60160205fe-tls
21:27
pt::peg::op `drop unrealizable` more conservative, ignore unreachable symbols as realizable. Tests pass. check-in: 4bbe140a79 user: andreask tags: trunk
21:17
Tkt [351b8b2f55]. Work branch integrated. check-in: 3720e40747 user: andreask tags: trunk
21:08
More tests: syntax, drop unreachable. More comments. Noted untested ops. pt::peg::op <B> - Version bump to 1.0.2 Closed-Leaf check-in: d907079d5b user: andreask tags: pt-container-ssoberni
19:49
Some fixes to the new pe transform testing. check-in: 8436048fee user: andreask tags: pt-container-ssoberni
2018-07-04
12:50
Factored out commonalities into a test-case generator: TestTransformation; added tests for discussing suggested fixes (minimize, drop unrealizable) check-in: 9ab6b8023e user: ssoberni tags: pt-container-ssoberni
2018-07-03
16:06
cleanup check-in: f43384e6e9 user: ssoberni tags: pt-container-ssoberni
16:01
Provide test harness for transformation ops on grammars (grammar containers); WIP check-in: 40ed050ddb user: ssoberni tags: pt-container-ssoberni
14:55
pt_peg_op.tcl (minimize): op proc is called 'modeopt', not 'optmodes' check-in: e4323e9e48 user: ssoberni tags: pt-container-ssoberni
2018-06-27
17:16
Update peg container transform work to latest trunk, including peg ffp fixes. check-in: 63282d761b user: aku tags: pt-container-ssoberni
17:07
Merged FFP work by Stefan Sobernig. check-in: 623801c583 user: aku tags: trunk
2018-06-25
23:00
Fixes for the FFP tests - Change test grammar to enforce consummation of all input - Fix error in ok grammar example copied from the fail example. - Fix mis-count in the FFP result for the fail example, and missing closing brace Closed-Leaf check-in: d58dafb114 user: aku tags: ssoberni-ffp-3ed39a451f
2018-06-22
04:30
Brought in trunk work (mostly the doc changes) check-in: 3ec4e74aac user: aku tags: ssoberni-ffp-3ed39a451f
2018-06-20
05:46
doctools doctoc - html formatting - anchors based on section titles and file labels. bump to 1.1.7 docidx - html formatting - anchors based on keywords, ignore non-alphanumeric characters. bump to 1.0.8 dtplite - See doc_auto below. Bump to 1.3.1. Further, factored generator blocks into separate procedures. sak / doc_auto - Ignore leading non-alphanumeric characters for sorting. dicttool <D> Typo fix - dicttool.man Regenerated embedded and other documentation. check-in: fe060af06b user: aku tags: trunk
2018-06-19
18:33
Updated local documentation. check-in: 3a89671277 user: aku tags: trunk
17:50
Merged hypnotoad work over into trunk, mainly for the changes (renames) which help sak.tcl operation. check-in: 5b0076422d user: aku tags: trunk
17:37
Bumped the version for Practcl check-in: 021d5ae879 user: hypnotoad tags: hypnotoad
04:12
mime / smtp <EF> Ticket [83d674b2dd] Extended TLS support to native TLS connections. Bumped to version 1.5. check-in: 9073bd414a user: aku tags: trunk
04:08
mime / smtp <B> Ticket [d9be31a488] Fixed operation of smtp::initialize when both server- and port-list contain more than one element. Bumped to 1.4.6 check-in: f8b74f465b user: aku tags: trunk
2018-06-18
21:27
Pulling changes from trunk check-in: e42366acb6 user: hypnotoad tags: hypnotoad
19:17
Added a number of procedures to the geometry package regarding intersection with circles (implementation in geometry_circle.tcl). Edited several files because of merge conflicts check-in: c3a46560db user: arjenmarkus tags: trunk
2018-06-14
21:11
Fixing an issue in httpd where mime headers to a closed channel were going into an overrun instead of simply terminating check-in: 120c9fa21e user: hypnotoad tags: hypnotoad
14:31
The drop operation should only be permissive on choices (reflecting the realizability condition on choice). New expressions should not be constructed for expressions other than choice. check-in: f70ef61b95 user: ssoberni tags: pt-container-ssoberni
14:02
Kleene star and optionals are better deemed realizable by definition. check-in: 8cd8a7435f user: ssoberni tags: pt-container-ssoberni
09:48
Fix typo in variable use check-in: b08e3a4fd7 user: ssoberni tags: pt-container-ssoberni
09:40
Fix typo in variable use check-in: e3fcb27310 user: ssoberni tags: pt-container-ssoberni
2018-06-13
21:48
Fix order of cleanup operations; dropping unrealizable non-terminals is known to result in new unreachable ones. check-in: 29c5675b36 user: ssoberni tags: pt-container-ssoberni
21:34
Create new branch named "pt-container-ssoberni" check-in: 73a81cc2ca user: ssoberni tags: pt-container-ssoberni
13:48
Preserve farthest-failure path for all *_branch super-instructions. Test included. Prior to this fix, three out of four *_branch si pushed an empty element to the ES, rather than the current FFP. This corresponded to i_error_clear_push, rather than the (documented and) needed i_error_push. check-in: 03e3d184d6 user: ssoberni tags: ssoberni-ffp-3ed39a451f
13:41
Create new branch named "ssoberni-ffp-3ed39a451f" check-in: a3cdfd4c68 user: ssoberni tags: ssoberni-ffp-3ed39a451f
2018-06-12
03:55
oauth / oauth <T> Ticket [20b144d2] Skip tests if TLS is not available. Added base64, sha1 to the set of support packages. check-in: b39206d300 user: aku tags: trunk
2018-06-05
21:50
httpd module changes Added a server plugin which allows local process data to be sent via arguments and memchans instead of sockets. Updated tests to use the dict_dispatch plugin check-in: 93b036eaeb user: hypnotoad tags: hypnotoad
18:04
Adding a sourcefile that was missing to implement plugins check-in: 313dd6aeac user: hypnotoad tags: hypnotoad
2018-05-31
16:21
Pulling changes from trunk check-in: 703dc04479 user: hypnotoad tags: hypnotoad
16:20
Where present, have uuid use /dev/urandom as an entropy source instead of relying on delicate platform specific hacks. check-in: d5e2fcf04b user: hypnotoad tags: trunk
2018-05-26
04:11
Adapted a convention from toadhttpd for Dispatch plugins to the general case. Fixed a typo in practcl check-in: e7c8f0994c user: hypnotoad tags: hypnotoad
2018-05-24
16:46
Added a thread spinning stub to the httpd plugin template ::cron::run should now trigger periodic processes check-in: aafd17983a user: hypnotoad tags: hypnotoad
2018-05-18
17:47
oauth / oauth <B> Ticket [8fd2561785] Fixed missing escape-quoting of an opening brace in a quote-quoted regexp pattern in a proc. The outer {...} of the proc body governs. Fixed bogus variable name in oauth::QuoteValues. Added an empty test file with a no-op placeholder test. This will catch at least the file not loading properly. Version bumped to 1.0.2 check-in: aec286d43d user: aku tags: trunk
17:13
mime / smtp <EF> Ticket [83d674b2dd] New option -tlsimport to support native TLS for smtp. Updated documentation. Version bumped to 1.5 Closed-Leaf check-in: 657782a889 user: aku tags: smtp-tlsimport-tkt-83d674b2dd
04:42
json / json <D> Ticket [868b8ebe79] json / json::write <D> Extended the documentation of both packages to refer to the other. No version changes. Regenerated the online documentation. check-in: e2d7b04944 user: aku tags: trunk
04:31
mime / smtp <B> Ticket [d9be31a488] Simplify how `smtp::initialize` iterates over -servers and -ports. Updated the documentation. Version bumped to 1.4.6. Thanks to boegge for the report of the problem with the old code. Closed-Leaf check-in: 9c0c77acf0 user: aku tags: smtp-init-tkt-d9be31a488
04:15
log / log <EF> Ticket [19607f927b] Merged new `logsubst` command to prevent execution of expensive message construction until actually needed. Version bumped to 1.4. Thanks to Harald for idea and implementation. check-in: ea802e332b user: aku tags: trunk
2018-05-07
17:06
Regenerated web docs. check-in: 2d4eba9c29 user: aku tags: trunk
17:02
Tkt [e72cf5e815] - Merged feature branch check-in: f14ecf1992 user: aku tags: trunk
2018-05-02
23:38
httpd: Fixed a typo (well really an api shift) if the file dispatcher's index page generator. check-in: 3d23a339f7 user: hypnotoad tags: hypnotoad
19:32
Updated the windows platform bodge to compile kits with --enable-symbols check-in: aa12283388 user: hypnotoad tags: hypnotoad
06:42
HTTPD minor tweaks Adding more debugging to header overrun messages. Update the metaclass for httpd to use the proper methods for html templating. HttpdHeaders now uses the variable LIMIT instead of a hard coded constant check-in: 4bb6b80d44 user: hypnotoad tags: hypnotoad
2018-05-01
18:03
Fixed leakage of tls_package between tests. Added setup of twapi for twapi tests. Works for me now. Closed-Leaf check-in: e172652ba4 user: aku tags: autoproxy-twapi-support
17:54
Merged multi-setup of tests into single clause. Does not fix the failures. check-in: 2309be1887 user: aku tags: autoproxy-twapi-support
17:40
http / autoproxy <EF> Ticket [e72cf5e815] Fixes before merge - Tweaked the documentation setup, placed the custom tls notes into the section instead of before it. - Using the in/ni operators means that the package and tests require Tcl 8.5+ Note, still seeing test failures on linux, where tests use twapi commands and are guarded only with have-tls. Still, tests are also described as using tls, so it is likely an issue in the package, not the test itself. This need some more investigation. check-in: e9af4d885f user: aku tags: autoproxy-twapi-support
2018-04-26
15:01
Removing etoyoc.com specific hack from the core implementation check-in: d9110868ee user: hypnotoad tags: hypnotoad
2018-04-24
21:14
Redesigned the "not found" message inside of the httpd dispatcher to spawn off a reply object to handle the template processing for the error message. Added handling for the special case of a browser communicating with localhost. Modern browsers will not send a cookie for localhost, and in that case the session id is marked as a constant string "localhost" to allow the rest of the security system to operate properly. check-in: 1db0d3ebb8 user: hypnotoad tags: hypnotoad
17:50
Added a new method Headers_Process to allow plugins to do their own manipulation of incoming requests prior to dispatch check-in: d8a1dbbf62 user: hypnotoad tags: hypnotoad
16:59
Added a plugin architecture to the httpd core, to allow multiple extensions their own chance to claim and service requests from the httpd dispatch engine. Added a private class Log_Dispatch to be shorthand for writing out to the server object's log with all of the pro-forma data that the developer could care about. check-in: 0188cf4306 user: hypnotoad tags: hypnotoad
2018-04-19
13:07
For twapi TLS, connection does not block until negotiation complete so check for that before updating tls_status element in state array. Note that this element is undocumented anyway. check-in: 56704965b8 user: apnadkarni tags: autoproxy-twapi-support