Status Report for Ocamlnet ========================== Date: 9/22/2001 General Status: A proposal for new CGI modules has been made. The signatures of these modules are available for review at: http://www.ocaml-programming.de/web-caml/netstring Send comments or questions to the ocamlnet-devel mailing list. Completed Tasks: - CGI modules: Presented a proposal for new CGI modules to include in netstring. The functionality of the old CGI module has been split into several components to make it easier to maintain and extend. One entirely new feature is support for transactional output channels. This means you can roll back any already produced output when an error or abnormal condition arises, and you can replace the output by a more adequate web page (Gerd). - Object-based channel support: A new module Netchannels includes object based channels as well as transactional channels (Gerd). - PCRE Integration: A new API function needed by Netstring has been added to PCRE version 4.8-1. It corresponds to the 'e' option of the Perl search/replace operator, which allows for arbitrary manipulation of the substrings as replacement text. The new version is available for download at: http://www.ai.univie.ac.at/~markus/ocaml_sources/pcre_ocaml-4.8-1.tar.gz Assigned Tasks: - CGI modules: Finalize interface and begin the implementation and testing effort (Gerd). - PCRE Integration: Write configure script to determine location of PCRE library and checkin modifications to netstring library (Patrick). - Date/Time functions: Implement regression tests, and integrate with the netstring library (Patrick). Unassigned Tasks: - MIME messages: New module to analyze and construct MIME messages. Initial version will include parsing support only. - PCRE/Str compatibility: Explore a PCRE compatibility layer for the Str module based on the efforts to port netstring to use PCRE. Gerd has suggested using the Javacaml regular expression parser as a starting point for translating Str-based regular expressions to Pcre-based regular expressions. - Determine a policy regarding backwards compatibility. How are functions deprecated and changes made over time? This will likely be connected with configuration management conventions that should also be defined.