This file was started after the 2.0.1 release.
------------
Fixed handling of large amounts of post data.

Folded in 1.1 and keep-alive support, thanks to Steve Uhler.

Added support for Tcl/HTML templates (foo.tml) where the result is cached in
a regular HTML file.  The templates also support searching up the
URL tree for templates library files (.tml).  See the information in the
templates directory.

Increased HTTP timeout from 40 to 120 seconds.

Added /mail/forminfo Direct URL, which uses /usr/lib/sendmail

Updated mime.types:
 application/octet-stream       sun4 i86pc
 application/x-tcl-template    tml
 application/mac-binhex40	hqx

Removed load of Cisco cat1900.mib from snmp.tcl

Added CGI ident support (Steve Ball).
Fixed env(SCRIPT_NAME)to not include document root.
Fixed env(SERVER_PROTOCOL) to be HTTP/1.0
Change directory to CGI script location before execution.
Cleaned up Cgi_SetEnv so it handles all uses.

The server records referrer information on document not found.

Allow registration of a content type for a direct URL.  Define the type
with a global variable that has the same name as the direct URL procedure.

Enhanced the status/doc direct URL to take pattern and sort parameters.
You can sort by number or by name.  The string match pattern selects a
subset of documents.

If fixed setuid extension so the type is right and does not cause
a segfault on Linux.

Fixed the torture.tcl script to work with fcopy

Fixed Http stack to handle leading http://servername/ in request URLs.

Added Mail_Url, Status_Url, and Admin_Url to register the url prefix
for these application-direct URLs.

Added Url_RedirectSelf for redirecting within the same server.

Moved redirect stuff to admin.tcl

Fixed "not found" page so it returns 404 and not 200.

--- 2.1 released, running on sunscript.sun.com ---

Removed error logging for normal shutdown of keepalive connections.

Append URL to error log record, if possible.

Added template library directory to support a library of tcl
support scripts in the document tree (separate from server implementation).
Put sunscript.sun.com templates into htdocs/libtml and htdocs/.tml

Added lots to template.tcl module, and moved this from the server's
script library to the htdocs/libtml directory

Fix error handling bug in Url_Dispatch.
Add special case to preserve Url Redirect information in the UrlCache -
this was getting cleared on errors so redirects were getting forgotten.

Changed Tcl Powered logo's file names to match Tk library,
pwrdLogo150.gif etc.  The 150 image changed size slightly.

---- released 2.1.1 12/24/97 -----

Added HTTP_COOKIE to the environment set by Cgi_SetEnv.

Changed dates to be GMT.

Fixed (old-fashioned) server side includes to handle spaces in file names.

Fixed error handling in cgi.tcl for two many cgi processes.

Tweaked directory listing display.

Added boolean function to convert strings like "true" to 1

Added Log_Configure and a switch to log names or just ip addresses.

Updated handling of Accept: headers to properly deal with (i.e., discard)
quality of service parameters.

Set up the environment with Cgi_SetEnv before processing templates.

Tweaked template handling such that if a template sets the global
page(dynamic)
variable to 1, then the .tml result is not cached in the parallel .html file.
This gives the flavor of a .subst file but with all the .tml machinery.

Fixed catch of "too many open files"

Fixed typo in authentication logging.

Moved base64.tcl from the auth package to its own base64 package.

Fixed typo in status.tcl for non-unix platforms.

Added /debug/package direct URL to reload a package - useful for
packages used in the .libtml directories.

Renamed lassign to lassign-brent and added a new lassign that
is compatible with the TclX version of lassign.  See utils.tcl

---- released 2.1.2 2/26/97 -----

cgi.tcl
    Increased CGI timeout from 60 seconds to 300 seconds.

    Fixed conflict over "env" variable in Cgi_SetEnvAll that
    meant you always were settting the env variable instead of
    the passed in variable name.

    Fixed broken call to CgiCancel so that hung CGI scripts
    do get cleaned up properly.

counter.tcl
    Changed Counter_CheckPoint to write its own file
    instead of polluting the error log.

direct.tcl
    Maintain a map from Tcl prefix to URL prefix so you can
    reconstruct pathnames using $Direct($cmdprefix)

    Map ?number,number into x=number&y=number so
    direct URLs can handle imagemaps.

    Added "cache hit" counters to direct URLS so they show
    up in the /status/doc display

    Added the ability to do redirects by throwing an error
    with code 302:
	return -code 302 $newurl

doc.tcl
    Added Doc_ExcludePat to register pathname suffixes you do
    not want found by DocFallback (like .bak and .swp files)

    Eliminated fallback when the file name has nothing before
    the suffix: like /mumble/.abc

    The DocFallback code generates URL redirects to the new path
    so that spelling errors like john.osterhoot are not
    cached and propagated back to folks browsers.

    Doc(errorUrl) is set after an error so that the /error.html
    page template can use it.

    Template caching traps the case where the cached .html file
    cannot be written to disk.

httpd.tcl
    Improved pattern on initial command to avoid totally bogus clients.

    Added Httpd_SelfUrl that maps /a/b/c into
    http://$Httpd(name):$Httpd(port)/a/b/c
    only including port if it is != 80

log.tcl
    Added support for Log(compressProg) so you can compress
    the nightly log file.  This is /usr/local/bin/gzip by default.

    Eliminated duplicate IP address in the log, which was totally broken:		A.B.C.DA.B.C.D, groan

mail.tcl
    Improved auto-mail bug reports

    Added "href", and "label" args  to /mail/forminfo so you
    can display a link in the acknowledgement page.

    Added Mail_FormInfo that is designed to be embedded into .tml pages.
    It assumes there is are sendto and subject form elements that
    direct the mailing.

srvui.tcl
    Added WM_DELLETE_WINDOW protocol handler

status.tcl
    Moved all the Debug routines into debug.tcl

    Eliminated the link to /status/notfound/reset from the
    /status/notfound page.  The URL is still there, just no link.

    Fixed missing <title> from /status/all

url.tcl
    Improved URL dispatch so you can have conflicting domain
    prefixes like "/tcl" and "/tclhttpd".  Previously a domain
    prefix like "/tcl" would mask the file "/tclhttpd" in the / domain.

    Added even more general support for URL redirections.  Any
    URL implementation can raise an error and set the global
    errorCode variable to
    [list HTTPD_REDIRECT $newurl]
    this is because subst masks all error codes, so the return -code 302
    trick for direct URLS doesn't work inside .tml files.

    Added Url_Encode so you can create URLs that have funny characters
    properly encoded as %xx

utils.tcl
    Beefed up File_List and added an "open" wrapper so we can track
    what files are opened.  Useful when plugging file descriptor leaks.

mime.types
    application/msword            doc
    application/ms-powerpoint     ppt

open.tcl
    Created wrapper for open command used by File_List

---- 2.1.3 Released for the Tcl Blast! CD-ROM

auth.tcl
	Added REMOTE_USER and AUTH_TYPE environment variable settings
	Fixed handling of .htaccess files in the root directory

cgi.tcl
	Improvements to work under Windows - including a filter on
	what environment variables must be preserved,  plus the server
	watches the reply so CGI scripts can return MIME headers
	and 302 return codes, etc.
	Added explicit handling of .tcl, .pl, and .cgi files

httpd.tcl
	Added GMT to HttpdDate

utime.c
	New file to implement the utime() system call

doc.tcl, url.tcl
	Added Steve Ball's parser for multipart/form-data

---- 2.1.4 released, sources put up on netCVS ---
---- see http://www.scriptics.com/software/netcvs.html ----

(This may not be entirely accurate.  2.1.4 had a short life and
some features in 2.1.5 may be earlier in this file.)

cgi.tcl
	Refined the windows CGI support.  You can define shells to
	handle files with different extensions.  So you can now handle
	Perl CGI scripts :-/
doc.tcl, url.tcl
	Refined Steve Ball's parser for multipart/form-data

----------------- released 2.1.5 October 6, 1998 ------------------

Added command line arguments to httpd, including -port.  Try
	httpd -help
For a complete list of options.  Feature contributed by Gerald Lester.

The global variables used by the startup script are now collected into
the Config array.

Added configuration file, the default is tclhttpd.rc.  This has most
of the package requires and the various calls to initialization procs.
You can specify alternate config with the -config command line argument.

The startup sequence now adds $Httpd(library)/Binaries/$tcl_platform(os)
and $Httpd(library)/Binaries/$tcl_platform(os)/$tcl_platform(osVersion)
to the auto_path so you have a good place to put those .so files (DLLs).
You can also add to the auto_path with the -library command line argument.

auth.tcl
	Fixed to handle (i.e., ignore) extra password fields

dirlist.tcl
	Fixed to handle URL tree's added with Doc_AddRoot
	Cleaned up the display of they hypertext links.

doc.tcl
	Fixes to handle document domains that are not the root domain.
	Fixes to DocTemplate to avoid using Doc(templateInterp), which
		was already passes as the paramter value.

mail.tcl
	Changed Mail/forminfo to Base64_Encode values that get an
	explosion of backslashes when using the list command.  Instead
	of a "Data" command you get a "Data64" command in the mail message.

session.tcl
	Added "isSafe" parameter to Session creation.

url.tcl
	Tweaked Url_DecodeQuery_application/x-www-urlencoded to ensure there
	are evenly matched name-value list pairs even in the face of
	mal-formed query data.
----------------- released 2.1.6 December 6, 1998 ------------------

Quick release to fix a number of quirks in the new 2.1.6 startup configuration

----------------- released 2.1.7 December 7, 1998 ------------------

auth.tcl	Added Auth_VerifyCallback to make it easier to add
	new authorization schemes.

base64.tcl	Removed harmless extra ]

cgi.tcl		Added env(REQUEST_URI)

debug.tcl	Added env argument to /debug/errorInfo form handler
		Removed lint found by procheck

direct.tcl	Added Cgi_SetEnv call so application direct handlers
		have the standard environment.

dirlist.tcl	Added sorting by size.  (Modified contributed patch.)

doc.tcl		Added Doc_Dynamic for use in .tml pages.  This sets
		page(dynamic) to 1 so the html cache file is not generated.

		Added Doc_Cookie and Doc_SetCookie, which a page can
		use to query and set a cookie value, respectively.

		Added Doc_IsLinkToSelf to see if a given URL corresponds
		to the current page.

		Fixed template processing to work in "non root"
		file systems (things added with Doc_AddRoot)

		Removed lint found by procheck

lib/httpd.tcl	Fix broken call to Log in Httpd_Shutdown

		Moved Httpd(library) definition into this file, away
		from bin/httpd.tcl

		Added data(uri) element, which is the complete request.

		Added Httpd_SetCookie, which you can use to set a cookie
		during a subsequent Httpd_ReturnFile, Httpd_ReturnData.

		Fixed bug in HTTP/1.1 handling with Expect: header
		and the Continue response.

		Added some procedure header comments.

log.tcl		Made it possible to not log anything if you never call
		Log_SetFile.  You can still call Log and Log_Flush.

mail.tcl	Added env array to /mail/bugreport form handler

snmp.tcl	Removed lint

srvui.tcl	Fixed WM_DELLETE_WINDOW typo

url.tcl		Removed lint.
		Added guard against bogus Content-Types for post data

utils.tcl	Fixed lassign to work with no input values.

bin/crypt.tcl	Added this little expect script that uses the crypt.so
		library to encrypt passwords.  You still need to
		update your htaccess password files by hand.

bin/httpd.tcl	Removed Httpd(library) definition, added Config(lib)
		instead.

htdocs/guestbook	Added simple guestbook example.

.htaccess, .tclaccess	Oops, added all these missing files to the distribution.

htdocs/book	Added HTML version of book chapter on TclHttpd.

----------------- released 2.2 June 18, 1999 ------------------
