- From: Henrik Frystyk Nielsen <frystyk@w3.org>
- Date: Sun, 07 Feb 1999 14:18:33 -0500
- To: www-lib@w3.org
It all started by trying to make a new "tiny" web browser and see how small it could get using plain libwww. This caused some rearrangements and other stuff which is listed below and which you also can find at http://db.w3.org/Library/latest.sql and get from cvs as described in http://www.w3.org/Library/cvs.html#update The result is that when I compile stripped on linux, the tiny browser which contains the following: * Full HTTP/1.1 implementation except - authentication - persistent caching - redirection * Fully event based with support for multiple simultaneous downloads and user input * A rudimentary HTML parser without a renderer (presents parsed HTML both no layout) * A rudimentary user interface similar to the line mode browser. (you select a link by typing a number) is just less than 200K. Note that this is *NOT* a new GUI browser or anything like that - it is an attempt to see how small a somewhat functional browser can get using libwww. The current number, however, includes a *huge* amount of libwww debug messages compiled in and without any further optimization. If these messages are taken out and things are looked at more carefully, then I think a browser can be made very small. CHANGES ------- * Added the tiny application which is a minimalist browser with support for HTML and HTTP only * For some reason HText_registerBuildCallback wasn't ever written * Synchronized the various hash tables in libwww and made then tunable in wwwsys.h. This makes it easier to build a small libwww, for example with less memory requirements than the normal build. Also fixed the hash generator in HTBind so that it can handle suffic insentive searches * Selected the include files more carefully to avoid unnecessary linking to modules that are not directly used * Moved the subclasses of the basic HTFWriter stream out to a new module called HTFSave as this often involves a lot of stuff that doesn't (or shouldn't be included if only the basic file writer stream is needed. * Made the default 'save and execute' stream in HTFormat a variable that can be set as not as it was hard-coded. This allows applications to register their own save and execute stream for example for calling external programs * Added the default HTSaveLocally and HTSaveAndExecute streams to the default initialization of libwww (based on profiles) * Removed the suffix bindings from the code and added them to the local file set of interfaces as this doens't really belong in the core * Updated HTTP to use the more normal DEBUG define and not HTTP_DUMP for enabling saving requests and responses asis to wwwhttp.out * Added HTFSave to makefile * Updated the windows DLL to reflect the changes. You can get the updated msvc make files at http://www.w3.org/INSTALL.html#Windows Henrik -- Henrik Frystyk Nielsen, World Wide Web Consortium http://www.w3.org/People/Frystyk
Received on Sunday, 7 February 1999 14:18:38 UTC