<P>This page details the changes which have been made to Netplex since the last released version.</P>
<A NAME="022"><H2>0.22 (05 Sep 1997)</H2></A>
<UL>
<LI>A lot of work had been put into getting the serious error handling correct. Netplex is now significantly better at coping when, for example, the listening socket is forcibly removed.
<LI>'Allow up to' field extended to allow up to 128 connections, as you can have when using the FreeNet stack.
<LI>Connection timeout lower limit reduced to 1 minute. (DaveMac)
<LI>Displays 'Waiting...' in the status window when idle.
<LI>Displays a message in the status window when unconfigured.
<LI>File buffer writable was a byte too small. (DaveMac) Also altered it so that its limits are 4-256K, in 4K steps.
<LI>NpChoices now invokes Interactive Help using Help$Start.
<LI>Some revisions to the messages and message tokens.
<LI>'Wait for' field is now limited to the range 0 to 200cs.
</UL>
<A NAME="021"><H2>0.21 (29 Aug 1997)</H2></A>
<UL>
<LI>CGILibrary's URL-decoder revised by Jimmy Imossi to handle the '+' to space conversion.
<LI>Error handling revised. Should be able to withstand the stack being removed and other natural disasters. ;-)
<LI><I>Host</I> header field is now sent, as required by HTTP/1.1.
<LI>If the web page directory can't be found, then Netplex will now inform the user rather than just aborting as it did before.
<LI>Invalid requests were killing Netplex due to a missing ENDPROC. Thanks to Justin Fletcher for finding that one. :-)
<LI>Location of the temporary directory is now configurable by setting Netplex$TempDir. Netplex will now create the directory itself and store files inside it, rather than just dumping them in Wimp$ScrapDir as before.
<LI>Now automatically adjusts the WimpSlot, so that it won't run out of wimpslot memory, even with lots of connections configured.
<LI>Perl files are now recognised and correctly handled as CGI programs. However, the Perl interpreter must <B>not</B> have been set up to run using a TaskWindow.
<LI>Registered user encoding.
<LI>Server errors now verify all sockets are working as intended. It will <B>not</B> now attempt to send the 'Internal Server Error' report to any connected clients.
<LI>Shades the 'Choices...' menu entry when NetplexChoices is running. Not perfect.
<LI>Small changes to NetplexChoices' windows.
<LI>Sprites aren't contained in the country-specific directories now.
<LI>Support for multitasking CGI programs has been added. The CGI program creates a system variable 'CGI$Active_<connection>' to indiciate that it wishes to multitask. Netplex will defer sending its output until the system variable has been removed. An example multitasking CGI program is included, called 'Velocity'.
<LI>Suspect single-line IF construct (like with the -ve connections) altered in object_locate's RedirectionFiletype handler.
<LI>The 'negative connections' problem has been tracked down and eliminated. Incorrect code caused certain connections get closed <I>twice</I> meaning that the connection count went negative.
<LI>The 'Server:' header field has been altered to identify the host OS version. eg. <CODE>Server: Netplex/v.vv (RISC OS/v.vv)</CODE>.
<LI>The FreeNet stack was causing Netplex to generate 'Bad descriptor' errors due to an incorrect loop check. Fixed.
<LI>Type &FF8 (Absolute) CGI programs are checked to see if they are APCS-compliant binaries. If they are, they are invoked using UNIX-style redirection, allowing them to work properly.
<LI>'Waiting...' readout added to the status window for when the server is idle. This also displays an appropriate message when the server is not yet configured.
<LI>X-Licensee header field added.
</UL>
<HR>
<H2>Thanks</H2>
<P>Thanks are due to :</P>
<UL>
<LI>Alex Howarth (zarni) - for complaining about having to load ArcWeb
<LI>Dave Lomax (DaveyBabe) - for help with testing and finding a bug in cgi-bin.dir
<LI>Dave McCormack - for suggesting improvements and fixes
<LI>Joe Oldak - for helpful comments, suggestions and enthusiasm
<LI>Jon Ribbens (Salmon) - for the excellent <I>SysLog</I>
<LI>Justin Fletcher (Gerph) - for <I>InetServices</I>, <I>WebSize</I>, <I>Imagen</I>, spotting bugs and constructive criticism
<LI>Kaustav Bhattacharya (Kozzey) - for trying to run Netplex with Termite ;-)
<LI>Mark Hoyle (skeeve) - for letting me crash various incarnations of Netplex on his machine
<LI>Thom Stuart (th0m) - it was thom's original suggestion that I write a web server - he was complaining that DeltaNet didn't do POST
<LI>& the other IRC #acorn and #argonet bods for their sage counsel (yeah, right ;-)