clay

Timeline
Login
Become a Patron!

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

50 most recent check-ins

2021-12-03
16:43
Repairs to the GCC build system following the rennovations brought on by MSVC Leaf check-in: 29cd351dc4 user: swoods tags: practcl-1-0
14:18
Refactored the classes somewhat. Most varieties of things built by Practcl are now a practcl::object that gets some other behavior mixed in. The only exceptions are projects which are now standalone objects to hold the top level of a make system. These changes are *mostly* backwards compadible. The notation for distribution mixins has changed, with backward compadabile hooks to read old make systems. Distributions can now indicate multiple alternative sources. check-in: 909b0cce56 user: SeanWoods tags: practcl-1-0
2021-11-23
18:06
Fix to download tcllib when bootstrapping kits Leaf check-in: 7bf4e4146f user: SeanWoods tags: mistake
2021-10-28
20:22
Practcl improvements. Properly implemented kit building under Microsoft Visual Studio. Addressed longstanding bugs in the snapshot download feature. Snapshot downloads now support zip files. MSVC kits only build from release code snapshots. check-in: 844e91942d user: SeanWoods tags: practcl-1-0
2021-01-05
22:17
Adding proper handling for Tcl_ObjectContextObject in practcl. New TclOO methods will include 2 new variables: ooskip and oobjc. The parser looks for these variables to be called in the body, and does not calculate them if they are not requested. (Otherwise we'd get a lot of "variable not used" warnings.) Leaf check-in: d7fe4e4684 user: hypnotoad tags: trunk
2020-11-13
16:12
Trunk development is now tracking with the version 0.10 branch check-in: 2fc7524947 user: hypnotoad tags: trunk
15:52
Pulling bug fixes from trunk Leaf check-in: 3a3e8ae106 user: hypnotoad tags: version-0-10
15:47
Added dispatch handler for json check-in: a24ed92f7e user: hypnotoad tags: version-0-10
2020-09-18
17:28
Typo fix. Point bump to clean up old versions in the environment Leaf check-in: f9c143188d user: hypnotoad tags: version-0-9
2020-09-03
17:34
Fixed a hard-coded path in the kit generator check-in: de00c3b002 user: hypnotoad tags: trunk
2020-08-06
10:29
Added handlers for registered URLs to note that a URI is pointing to a file system of static content on the disk, and that the dispatcher for that file system needs to determine the class that will respond. Formalized that all template processing is now performed by the cuneiform document object itself. Added several forwards to reply methods to allow existing content to continue working. Added a public version of FormData (formdata) to allow the document object access to the reply object's form data. Formalized that the Dispatch method is intended to be replaced by the content mixin. Removed the dispatching and templating behaviors from the httpd::reply.file method. It's now strictly about delivering files. Added a new mechanism for the dispatcher to communicate to the reply via the CONTENT block of the reply dict. Added sqlite based session handling to server objects check-in: dcb02fcabb user: hypnotoad tags: version-0-10
2020-08-02
12:13
Replaced the process of monkey patching the Dispatch method for the server with a public method that allows an outside script to designate an objects that will intercept dispatches Cuneiform's XML processor no longer forces all tags to be lower case Integrated the black hole from toadhttpd into the internals of the httpd module Added an sqlite backend to the httpd module, with the server itself functioning as an sqlite dispatcher. If no logdir is specified, the server simply maintains in-memory databases. check-in: a6a180d14d user: hypnotoad tags: version-0-10
2020-07-31
23:55
Added Cache-Control handling to all replies Restored the custom Dispatch method for httpd::reply.file check-in: d9cfb68b22 user: hypnotoad tags: version-0-10
20:06
Minor bug fixes to clay. Httpd reworked to include the concept that the reply object is sheparding a "document" delegate which is constructing a document object model (DOM). Three DOM implementations are provided: Cunieform (Pure TclOO), TDOM, and "null". The Null is the case where there really isn't a DOM and we need the underlying document to simply be a serial stream of data. check-in: e1c99efa2c user: hypnotoad tags: version-0-10
2020-07-30
14:48
Cuneiform was not storing children in the clay/yggdrasil standard location, and thus had stopped working Fixed how non-clay .info files are treated in httpd check-in: 8654b68942 user: hypnotoad tags: version-0-10
2020-07-29
18:38
Modifications to restore functionality to the httpd server check-in: ac0a5eb6b9 user: hypnotoad tags: version-0-10
17:53
Moving code from modules/clay/build/event.tcl to modules/clay/build/init.tcl because something screwy is preventing checkouts from getting event.tcl check-in: 329af0b8d9 user: hypnotoad tags: version-0-10
17:31
Fixing cases in practcl where no targets have been defined check-in: 6e03b5e229 user: hypnotoad tags: trunk
14:06
Typoe fix for method preambles check-in: 23732e450d user: hypnotoad tags: version-0-10
13:54
Converted the metadata stored for method ensembles to match the format now used in tool Fixed handling of custom ensemble dispatchers check-in: 3d08509b96 user: hypnotoad tags: version-0-10
11:21
Added a copy of the cron module from tcllib, as Clay depends on a future version of it that hasn't been integrated into a release yet check-in: f2af756e1e user: hypnotoad tags: version-0-10
11:19
Codified that canonical leaf nodes in Clay need to conform to the oo::meta standard of have a : suffix Stripped out the embedded event manager in favor of a new framework neutral system packaged in the latest version of tcllib's cron module check-in: 8c490f7fa1 user: hypnotoad tags: version-0-10
2020-07-09
18:57
Pulling bugfix from trunk check-in: c66fa97c6b user: hypnotoad tags: version-0-10
18:57
bugfix: Options which are ephemeral should not be set on initialize public check-in: 1aad23c5db user: hypnotoad tags: trunk
2020-07-07
18:24
Formalizing that expected leaf nodes in clay should have fields that end with : check-in: 54d221e7bc user: hypnotoad tags: version-0-10
2020-07-01
14:51
Moved metadata storage out of classes and into a global dictionary accessible by the new clay::Info command. Designed to handle strange cases like singletons and also allow clay's framework to interact with (and annotate) classes outside the framework check-in: 106bbc6ff7 user: hypnotoad tags: version-0-10
2020-06-10
14:21
Move the implementation of the clay method for classes to the metaclass in oo/clay dialect. Added an explicit routine to rebuild method ensemble dispatchers Found some tests that had broken over time for oo::dialect are working once more check-in: 13b15c8d41 user: hypnotoad tags: version-0-10
2020-06-08
13:06
Removing a few vestages from code ported over from Tool check-in: 4a1ad09052 user: hypnotoad tags: version-0-10
2020-04-30
17:09
Yggdrasil children are now a stored as a type of link. Replaced direct access to the children and links variables with accessor methods. Internally those variables are now stored as dicts instead of arrays Added regression tests for yggdrasil interactions Promoted events.test to a standalone test in the clay directory Rebuilt documentation Added command primitives for the clay::event namespace equivilent to all commands in the ::cron namespace Practcl no longer implements its own relationship tree. It utilizes yggdrasil. Fixed some long simmering typos check-in: 912435e964 user: hypnotoad tags: version-0-10
12:27
Adding missing files from httpd check-in: ef2a91b7e3 user: hypnotoad tags: version-0-10
2020-04-29
18:47
Adding a pet "cron" implementation into clay check-in: eba6b1dbac user: hypnotoad tags: version-0-10
2020-04-22
13:47
Formally splitting the embedded clay implementation from practcl module. Added a mechanism for practcl to load clay from an adjacent file Eliminating child::organ, replacing with calls to child::delegate As a library practice, utilizing private methods instead of making the ensemble dispatcher route local calls. Packaging link, css, and config as ensembles. check-in: d1bb11120d user: hypnotoad tags: version-0-10
11:03
Removing the embedded "clay" library from Practcl. It's a big enough boy that it can invoke a package. Adding the ability to name an ensemble method as a list {foo bar} instead of the namespace notation foo::bar Promoting cuneiform to version 0.2 check-in: 20fd43796e user: hypnotoad tags: version-0-10
10:19
Started work on httpd version 4.4 and clay 0.10 Consolidated the clay-yggdrasil and clay-event packages into the core of clay. check-in: 556245a1d3 user: hypnotoad tags: version-0-10
2020-02-17
20:37
Bug fix for httpd to try to keep throwing an error while recovering from corrupt headers in a request. Fixes to Practcl to allow it to properly handle the static loading of binary packages such as the tdbc family, which require stub tables and pre-loading a script in the interpreter before activating the C loader. check-in: cdd2d0dcd8 user: hypnotoad tags: trunk
2019-12-31
11:49
Integrating cuneiform support from Toadhttpd. (Toadhttpd was having to hotpatch httpd::reply and was getting horribly out of date.) Minor tweaks to fix utf-8 content check-in: 62a4bbc00e user: hypnotoad tags: trunk
2019-12-19
16:05
Added an unsolicited event handler to clay-pidgin Repairs to argument specification parsing for dictargs style procedures as well as clay methods. check-in: 0aca826c36 user: hypnotoad tags: trunk
2019-12-18
09:13
Restructuring clay-pidgin server's components to act as a secondary package with a user-controllable startup, rather than assuming it will always be the sole process in a thread. check-in: c170f6d818 user: hypnotoad tags: trunk
2019-12-12
16:50
Slight Re-org of the pidgin build process Leaf check-in: ccc63f61ea user: hypnotoad tags: pidgin
16:10
Starting a new branch for in-depth pidgin development. To properly integrate its workings into clay is requiring some serious code-reorganization check-in: 43bda3aaf0 user: hypnotoad tags: pidgin
2019-12-09
16:13
Adding a local implementation of knuth soundex to eliminate a dependency on a rather trivial module in tcllib Adding a trivial text-to-hash function for clay to fall back on to eliminate a hard dependency on sha1 or md5 check-in: 2af740626d user: hypnotoad tags: trunk
2019-12-07
19:45
Clay pidgin: Broke up the public API into a few functional chunks. Added a rudimentary mailbox system for a best-effort RPC system check-in: f06a78cd1b user: hypnotoad tags: trunk
12:12
Removed leading 0x from Mac hardware IDs Added a directory service to allow pidgin clients to hunt for open ports and advertise services Packing all of the extra data for a session into a single dictionary that is passed to commands check-in: 4337ec0814 user: hypnotoad tags: trunk
03:06
clay-pidigin: Moved the ipaddr public API call into a new session introspection tool check-in: a841a10b1e user: hypnotoad tags: trunk
2019-12-06
21:47
Fixing a goof in the UUID implementation for clay that was coming up a few digits short check-in: bc8a122cb0 user: hypnotoad tags: trunk
21:05
Added a new module clay-os to take the part of the older nettool module from tcllib Revamped the internals of clay-pidgin, the file method for listeners now takes the command for the ensemble as an argument instead of a dictarg The "method" and "Method" keywords in Clay are now synonimous, and both now take a variable number of arguments. Each method can now take no args, traditional positional arguments, dictargs, or positional and dictargs (or Cyan's parseargs) Changed the namespace for the clay-pidgin module to clay::pidgin check-in: f2dfa08a9c user: hypnotoad tags: trunk
20:51
Adding hook to allow clay-os to be used instead of nettool when auto-determining ports in httpd check-in: a14b09efc1 user: hypnotoad tags: trunk
2019-12-04
20:44
Added the concept of a table where the key/value dictionary is stored in a single colum Added handling for complex deleted (i.e. where we are deleting more than one record at a time) check-in: 186e071e9a user: hypnotoad tags: trunk
17:07
Added option handling to all clay objects when the clay-event package is loaded. Removed the dependency on clay-yggdrasil for clay-event (the dependency is the other way.) Added a cross-thread mode of operation for clay-pidgin utilizing thread::send instead of sockets. Simplified the thread startup procdure for clay-pidgin All clay-pidgin servers are now assumed to run in their own thread with their own global variables. Adding provisions in clay-pidgin for a server to support more than one database schema (not to mention databases) loaded at a time. Clay pidgin listener now longer try to launch their own server. Somebody in the process should know to launch the server explicitly, and possibly send onto the listener that the server is accessible either as another thread or through a socket Clay piding listeners will now mix in different behaviors depending on whether it was configured to communicated across threads or a socket check-in: 87be42ef3b user: hypnotoad tags: trunk
17:01
Removed a debugging puts statement from practcl check-in: 7f900811d5 user: hypnotoad tags: trunk