Corrected the zlib interface.
Increased database engine loading speed (3 times).
Database engine can now write zlib encoded files.
FullPliant is now finished:
can generate an unattended install/recovery bootable CD
Pliant can be upgraded through uploading to file:/boot/pliant.tgz
FullPliant (including Linux kernel) can be upgraded through uploading to file:/boot/fullpliant.tgz
Small details optimized in the code generator that led to a great speed boost.
One more serious redesign in the Pliant DNS server code: now it's ok.
Small improvements in the SMTP server.
Corrected a bug in the mails forwarding code that would lead to mails not beeing forwarded any more as a result of not released ressources.
Moved FullPliant custom files.
Added precompiling capabilities to Pliant HTTP server for instant startup of a complex site.
Default mode for FTP client is now passive.
Added 'selected_definition' in 'Expression' data type in order to keep track of the selected definition when compiling an 'Ident'.
Added 'function_flag_under_construction' in order to try to properly handle interlaced functions definitions.
Uploaded database files will be put online on the fly.
Most of FullPliant is done:
The embedded Debian + custom distribution contains a full system (including Netscape, StarOffice, TkDesk, Gimp, Sketch, Dia, Files sharing and printing).
The embedded Debian + custom distribution can be the same for all computers.
The embedded distribution can be upgraded through uploading to file:/boot/debian.tgz, then rebooting.
Fixed the problem with the undocumented 'mainCRTStartup' function under win32 that would lead to a crash at end under Windows 2000.
A few more small fixes and changes in the DNS server in order to closer match Bind.
Fixed a small bug in the FTP server.
Thomas Bakketun serial port support.
Fixes in the mail forwarder and the SMTP server.
Added 'mail_redirect' function.
Corrected bugs in the forum (Patrice).
Better strong random generator that will avoid stalled OS random generator device.
Some improvements in the FullPliant installation and scripts.
More details in the HTTP server status board under Linux.
Added lazy loading and unloading in the database engine. If should enable to handle very large databases in some cases.
Better DNS server (correctly splits records between answer, authoritative and additional sections, and answers reverse queries).
Corrected the POP3 client.
Added 'generate_id' function.
Added a time protocol client in order to adjust time from the Internet.
Trying to remove a key in an empty dictionary would crash.
Better display of crazy mails in the web mail.
Much better FullPliant install system.
Many small bugfixes in the Pliant forum application.
Various others ... I'll try to better track changes in the futur.
Corrected a huge bug in the new 'NamedSem' data type.
Desabled the '_MEMORY_DECOMMIT_' option which seems to be buggy.
More bug fixes in the new mail system.
Maybe a bug fix in HTTP multipart forms parsing.
Corrected 'listing' instruction for .page format.
Added 'noreload' flag in the .page default style.
Many improvements in the forum application.
Safer handling of action records.
Several improvements and bug fixes in the new mail system.
Changed the encoding of the database data values passed in HTML forms variables names so that they don't get decoded when Netscape 4 submits the form as Mime multipart.
Added GZip support in streams (not perfect), and in the HTTP server.
Renamed module /pliant/language/misc.pli to /pliant/language/ui/console.pli
Applyed various patches submitted on helio.pliant.cx
Solved the long latency problem in the HTTP server due to very poor handling of timeout in tcp.pli.
If a single definition can be accessed twice because it's in two different modules or recorded under two different names, it will not be considered as ambigious (Requested by Patrice).
Contains the probably final (at design level) implementation of Pliant
Added 'ResourceSem' data type.
Added 'NamedSem' data type.
Added 'daemon' instruction.
Finished to bring the mail code (SMTP, POP3, web mail) back.
Finished the database scanning code so that it will recover gracefully if another thread deletes the current record while we are scanning the table.
More complete code for redirecting the output.
Improved Pliant interpreter in the HTTP server.
'part' can now have a second argument for tracing running threads stack.
Better status page in the HTTP server.
Many improvements in the patch browser.
Reordered the threads actions and error records handling (should crash less when a compile error appends).
Corrected a reuse bug in 'file_temporary' (Patrice Ossona de Mendez).
Corrected 'memory_page_release' implementation under Win32.
Corrected 'bulk_free' function that is expected to free all memory when Pliant terminates, so that it be possible to load and stop Pliant in and from the middle of another application.
'Bool' data type is no more defaultly initialized to false, and 'true' and 'false' constants now have type 'Bool' rather then 'CBool'.
Reordered the TCPIP layer and included UDP support.
There is now a Pliant 'ping' utility.
There is now a Pliant DNS server.
Inverted fields in 'List' 'Dictionary' and 'Relation' data types to match the new generic ones.
In 'file_open', changed the handle number from 0 to -1 when opening fails.
Corrected incorrect handling of 'simulate' option in the HTTP server.
Added 'flush' capability to the HTTP server.
Changed the 'execute' function prototype so that we can later add more sophisticated features to it. Now you need only to provide one argument which is the command to be executed, and if you want it to be executed in parallel with the running process, then you add 'detached' keyword as an extra argument.
Extracting the 'Data:xxx' associated with a 'Database:xxx' is now done using 'data' method instead of buggy implicit casting. See
as an axample.
The computer definition has been switched from a complex structure to a more generic one.
The FullPliant distribution installation mechanism has also been completely redesigned.
Corrected a bug in 'nowait_rd_request' of 'Sem' data type.