NeoWebScript Release Notes
Updated to all the newest versions of the software
Added NeoWebUserConf directives
Allows for use of standard header and footer files within NeoWebScript handled documents.
Overhauled a lot of the documentation. Cleaned up some of the code and added default headers and footers throughout the docs.
Removed TK and the standard Tcl documentation from the release. They were too big and bloated the package.
Fixed "HTTP/1.1 Continue" bug. Thanks to Will Wagner for this patch.
Backed out the "::safe::interpCreate" method of creating safe interpreters in favor of the "interp create -safe" method which is much faster. This should increase performance of NeoWebScript code by 500%+.
Re-implemented unknown.tcl to compensate for loss of its functionality after the interp change. Acts the same as NeoWebScript 2.3.
Updated some of the documentation to include commands which have been present but undocumented to this point.
Includes Windows NT and Windows 9x versions. License is open source.
Modularized the NeoWebScript application. Including:
Import fix to Sleepycat db-2.4.14 in db/db.c to uninitialized variable. RRK
12/16/98 Fix broken authentication in modules/mod_auth_tcl.c due to interface change. RRK
Integration with Apache 1.3.2 and Tcl 8.0.3. Released on Oct. 12, 1998. Release license shifted to open source on June 11, 1999.
Fixes: All tests and demos now use the
Integration with Apache 1.2.4 and 1.2.5.
NeoWebScript pseudo-safe commands:
Fixes: tests and demos that did not work properly, a smarter install script, lots of bug fixes in the safe interpreter, Neo Forms that now tolerate non-HTML characters.
Integration with Apache 1.2.0 and 1.2.1. This is the major point of this release. Released on June 24, 1997.
Add new command
Add several Tcl procs to allow for authentication to a Postgres database, Berkeley DB file, /etc/passwd, or straight Tcl code. Example .htaccess files included in tests directory (/private/ and /pgprivate/). Note that the postgres library (pg95libpgtcl.tar.gz) in ftp://ftp.neosoft.com/pub/tcl/neowebscript/webtcl/ is compatable with Postgres95, but will work with Postgresql with relatively minor changes.
More tests, and removed some obsolete ones.
Support for file uploads.
New server-side tags
New handler for dynamic GIF generation. Though mostly generic, we have used this code with Thomas Boutell's gd1.2 , along with several new commands to manipulate a server-side image cache. This extension can also accept query strings.
New handler for generating HTML via the Tcl subst command. The referenced file is swallowed whole by a Tcl read command and passed to subst in the slave interpreter. The result is output to the web browser.
New directives to allow Tcl-based authentication policies. Literally any resource (database, files, etc.) that Tcl can access, can be the basis for authentication decisions. Includes demo Postgres95 authentication Tcl procs.
Patch in Apache 1.1.3 security release patches.
Verified to work with Tcl7.6.
Improve slave unknown procedures so that the master interp can resolve unknown procs inside the slave and redesigned the way that slave procs and aliases are defined. Borrowed from Itcl2.1.
Implement package unknown for slave. Will automatically load a package into the slave if statically loaded in the master.
Port to Apache 1.1.1.
C code to fetch and/or create the safe slave interpreter has been isolated into its own procedure, making writing new handlers easier.
Release engineering: Moved more slave-only code to be demand loaded into the slave interpreter from httpd/neoscript-tcl. Cleaned up some bugs from beta release, especially that remote_hostname did not resolve an IP addresses. Make build of Tcl sub-heierarchy more automatic.
Made NeoWeb*Conf configuration directives exactly the same as the Tcl array variable name (ie. trusted interp variables are now NeoWebDirConf instead of neoWebDirConf and NeoWebServerConf instead of neoWebServerConf).
Release June 28, 1996.
Apache code base at latest release level, 1.0.5.
Tcl at current release level, 7.5.
Extended Tcl (TclX) at current release level, 7.5.1. Also moved initialization of Extended Tcl into safe interpreter from to Tcl code using the load command. Allows support of unsafe Tclx commands in supervisor mode.
NeoSoft extensions split out from Extended Tcl to make integrating updates easier.
Now has an interface to Postgres 95, the freely redistributable database management system from Berkeley. (Porting/building Postgres so that you can load in the tcl interface is up to you.)
NeoWebScript writers can now use object-oriented programming techniques thanks to the inclusion of MIT Object Tcl, OTcl. An experimental class definition based on this.
Implementation of unknown procedure (from tcl7.5's init.tcl), and server rooted tcl library (neoscript-tcl) for contributed NeoWebScript procedures.
Set variables into trusted interpreter from httpd.conf using NeoWebServerConf directive.
Per directory configuration of trusted interpreter in access.conf using NeoWebDirConf directive. We have implemented a supervisor mode (creates slave interpreter without -safe), and postgres database security using this.
Several bug fixes that eliminate most of the crashes. If not in the web page, now at least access_log should have some indication of problems serving NeoWebScript pages.
Changed the format of user DB files to work with
On FreeBSD2.1 (and eventually other systems that support it), setproctitle to URL being accessed so these show in ps.
Name changed to NeoWebScript.
Made building and installing eaiser and removed requirement that code be in /usr/devel.
Added "browser-wise" named counters.
Set the users up with their own flat general purpose file area and their own private log areas.
NeoScript capabilities now run out of a copy, basically, of mod_include.c that still supports include, exec, etc, plus several other enhancements, such as C-level counters and random-pick html fragment files.
However you turn on server-side includes, it turns on neoscript. If you do it if for *.html, all of your webpages will (potentially) be NeoScript-enabled, without changing their filenames! (The cost in this case, though, is that the server will incur some extra processing to parse all of the html files, including ones that don't have any sort of server-side functions.) The other way to go us to use .shtml, the standard.
Now up to Tcl 7.5 beta 3.
Now including Safe Extended Tcl commands in the safe interpreter.
Full TclX functionality now available to the Safe Tcl extension writer.