2012-02-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.33

2012-02-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[http int] Rewrite ‘http:request’.

	* http.scm: Don't import ‘read-headers’, ‘read-characters’.
	(msg-string-rcode!): New proc.
	(http:request): Rewrite, using ‘send-request’, ‘receive-response’.

2012-02-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Add (www http) procs: ‘send-request’, ‘receive-response’

	* http.scm: Import ‘hsym-proc’, ‘read-headers/get-body’, ‘out!’.
	(msg-headers!, msg-body!): New procs.
	(send-request, receive-response): New procs, exported.

2012-02-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[http int] Decruft: Delete unused internal proc.

	Omission from 2012-02-21, "New internal module: (www crlf)".

	* http.scm: Don't import ‘(www crlf) read-through-CRLF’.
	(http:request through/discarding-CRLF): Delete proc.

2012-02-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Add some support procs to (www crlf).

	* crlf.scm: Import ‘(ice-9 optargs)’, SRFI 1 ‘append-map!’,
	SRFI 4 ‘u8vector?’, ‘u8vector-length’, ‘u8vector-ref’,
	‘u8vector-set!’, SRFI 11 ‘let-values’, SRFI 13 ‘string-suffix?’.
	(CRLF): New string.
	(hsym-proc, read-headers/get-body): New procs, exported.
	(FRONT-FORMAT): New string.
	(pop, x-move): New macros.
	(CHUNKS-DONE/FOOTER): New string.
	(out!): New proc, exported.

2012-02-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Add abstraction: CR

	* crlf.scm (CR): New string.
	(read-through-CRLF): Use ‘CR’.

2012-02-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[http] New (www http) fluid: protocol-version

	* http.scm: Import ‘(srfi srfi-1) car+cdr’.
	(http:version): Delete var.
	(protocol-version): New fluid, init to ‘(1 . 0)’.
	(http:request): Use ‘protocol-version’.

2012-02-25  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[http] Make ‘http:status-ok?’ accept also integer.

	* http.scm (http:status-ok?): Rewrite to test
	numerically; if arg is a string, convert to number first.

2012-02-25  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Rename internal proc w/o "http:" prefix.

	* http.scm (make-message): Rename from ‘http:make-message’.

2012-02-25  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Decruft: Drop ‘http:fetch-header’.

	* http.scm (http:message-header): Use ‘assq-ref’ directly.
	(http:fetch-header): Delete proc.
	(http:request): Use ‘assq-ref’ directly.

2012-02-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Use (ice-9 optargs) more.

	Implicit ∀ files: "Use module ‘(ice-9 optargs)’".
	* http.scm (http:post-form c-type, http:post-form c-disp)
	(http:open, http:request): Use ‘define*’.
	* main.scm (www:http-head-get): Likewise.
	* server-utils/answer.scm (mouthpiece send-reply): Likewise.
	* server-utils/filesystem.scm (upath->filename-proc)
	(filename->content-type): Likewise.
	* server-utils/log.scm (log-http-response-proc): Likewise.

2012-02-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Make ‘(www crlf) read-headers’ handle name normalization.

	* crlf.scm (read-headers): Take arg NORM; call it
	on each header name string to compute result alist keys.
	* http.scm (http:request): Update call to ‘read-headers’.
	* server-utils/parse-request.scm (read-headers):
	Update call to ‘crlf:read-headers’.

2012-02-23  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[http] Accept symbolic METHOD for ‘http:request’.

	* http.scm (http:head, http:get, http:post-form):
	Use symbolic method for ‘http:request’ call.
	(http:request): If ‘method’ is a string, convert to symbol;
	‘error’ if neither string nor symbol; handle symbol internally.

2012-02-22  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] New (www crlf) proc: read-characters

	* crlf.scm (read-characters): New proc, exported.
	* http.scm: Import ‘(www crlf) read-characters’.
	(http:request): Use ‘read-characters’.
	(read-n-chars): Delete proc.
	* server-utils/parse-request.scm: Import ‘(www crlf) read-characters’.
	(read-body): Use ‘read-characters’.

2012-02-22  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Zonk ‘(www server-utils answer) string<-header-components’.

	Announced in Guile-WWW 2.28 (2010-06-22).

	* server-utils/answer.scm (string<-header-components): Delete proc.

2012-02-22  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[http] Fix bug: Don't send CRLF for message body.

	Regression introduced in 2.x series and clumsily backstepped by
	2004-01-22 "(form-hack-regex): New var".  See top-level ChangeLog.

	* http.scm (form-hack-regex): Delete var.
	(http:request): Output body body strings w/o trailing CRLF;
	update ‘Content-Length’ computation accordingly.

2012-02-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[http int] Incorporate ‘display-with-crlf’ into unique caller.

	* http.scm (http:request display/crlf): New proc.
	(http:request): Use ‘display/crlf’.
	(display-with-crlf): Delete proc.

2012-02-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] New internal module: (www crlf)

	* crlf.scm: New file.
	* http.scm: Don't use modules ‘(srfi srfi-13)’, ‘(ice-9 rdelim)’,
	‘(ice-9 regex)’; use modules ‘(www crlf)’ and ‘(srfi srfi-11)’.
	(header-regex): Delete regexp.
	(http:header-parse, parse-status-line): Delete procs.
	(http:request through/discarding-CRLF): Use ‘read-through-CRLF’.
	(http:request): Use ‘read-three-part-line’, ‘read-headers’.
	(sans-trailing-whitespace): Delete proc.
	* server-utils/parse-request.scm: Don't use module
	‘(ice-9 rdelim)’; use modules ‘(www crlf)’ and ‘(srfi srfi-11)’.
	(read-line/CRLF): Delete proc.
	(false-if-eof): New macro.
	(read-first-line): Use ‘false-if-eof’, ‘read-three-part-line’.
	(read-headers): Use ‘crlf:read-headers’.
	(skip-headers): Use ‘false-if-eof’, ‘read-through-CRLF’.

2012-02-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Add abstraction: through/discarding-CRLF

	* http.scm (http:request through/discarding-CRLF): New proc.
	(http:request): Use ‘through/discarding-CRLF’.

2012-02-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Import ‘(ice-9 rdelim) read-line’ explicitly.

	* http.scm: Import ‘(ice-9 rdelim) read-line’;
	remove conditional ‘use-modules’ form.

2011-10-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[inst] Fix bug: Make sure alive.test knows about ‘exec_prefix’.

	Omission from 2011-09-28, "Install under $(GUILE_LIBSITE)".

	* alive.test (exec_prefix): Mine this var from Makefile, too.

2011-09-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[inst] Install under $(GUILE_LIBSITE).

	* Makefile.am (wwwdir): Use $(GUILE_LIBSITE).
	(update-site-module-catalog): Likewise.
	* alive.test: Do ‘s/GUILE_SITE/GUILE_LIBSITE/g’.
	* data/Makefile.am (wwwdir): Use $(GUILE_LIBSITE).
	* server-utils/Makefile.am (wwwdir): Likewise.

2011-09-15  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[cgi] Relax ‘application/x-www-form-urlencoded’ recognition.

	Apparently, under HTTP 1.1 the server can include more than
	a simple MIME type in the ‘Content-Type’ header.  Good slack!
	Reported by Simon Haines.

	* cgi.scm (make-ccc init!): Use ‘string-prefix-ci?’
	for ‘application/x-www-form-urlencoded’, ‘multipart/form-data’.

2011-07-08  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.32

2011-07-07  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[cgi] Fix bug: Handle query-string (e.g., for GET request method).

	Regression introduced 2009-05-26, "Fix bug:
	For (www cgi), don't mix query string and form data".
	Reported by gregory benison.

	This is a regression because we DO want to mix query-string
	and form-data.  Previous to the 2009-05-26, the query-string
	clobbered the form-data.  Still to figure out is whether or
	not it is better to prefix or suffix the query-string pairs.

	* cgi.scm (make-ccc): If ‘QUERY_STRING’ is non-empty,
	parse it and prefix the resulting form variables to the others.

2011-05-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.31

2011-05-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[v] Do partial install; point %load-path there.

	* Makefile.am (check_DATA): New var.
	(.fake, clean-local): New targets.
	* alive.test: Don't create symlink; don't use ‘-L .’;
	instead, mine ‘GUILE_SITE’ out of ./Makefile and use
	‘-L ${GUILE_SITE}’; also, report its value if ‘$debug’.

2011-05-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[uninstall] Fix bug: Do complete "make uninstall".

	* Makefile.am (update-site-module-catalog): New target.
	(install-data-hook): Remove surrounding ‘HAVE_MKPIMMC’;
	do "make update-site-module-catalog" instead.
	(uninstall-hook): New target.

2011-05-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Move module-catalog facilities check to configure time.

	* Makefile.am [HAVE_MKPIMMC] (install-data-hook): New target.

2011-05-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[v] Refine preload: Prioritize "" instead of deleting ".scm".

	The 2011-04-28 change goes too far; it impedes
	loading system modules used by Guile-WWW modules.
	Reported by (Savannah user) vonbecmann:
	<https://savannah.nongnu.org/bugs/?33175>.

	* alive.test: Don't delete ".scm" from ‘%load-extensions’;
	instead, ensure only that "" is at the beginning of the list.

2011-04-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[v] Make alive.test avoid (mis-)loading the .scm files, if possible.

	Reported by Bernardo Ezequiel Contreras:
	<https://savannah.nongnu.org/bugs/?33175>

	* alive.test: If guile has ‘%load-extensions’, create a
	preload file that removes ".scm" from it; use that file for
	all invocations; and delete it when done.  If in debug mode,
	display ponderings, as well as ‘guile --version’ output.

2011-01-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.29

2011-01-24  Neil Jerram  <neil@ossau.uklinux.net>

	Allow big-dishing-loop to set modlisp-ish reply style.

	* server-utils/modlisp.scm (modlisp-hgrok):
	Move definition after ‘modlisp-ish’; include ‘modlisp-ish’.
	* server-utils/big-dishing-loop.scm (http-hgrok):
	Add fourth vector element for congruence with ‘modlisp-hgrok’.
	(make-big-dishing-loop handle-request):
	Specify status-box STYLE in ‘mouthpiece’ construction.

2011-01-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[portability] Fix bug: Don't assume ‘(set! (P OBJ) VAL)’ returns VAL.

	Reported by Neil Jerram.

	* server-utils/answer.scm (tree-flat-length!):
	Ensure that call-time computation of length returns it.
	* server-utils/modlisp.scm (read-headers):
	Ensure return value after ‘set!’.

2010-09-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Decruft: Remove obsoleted autoload.

	* server-utils/filesystem.scm: Remove unused
	autoload of module (www data content-type).

2010-08-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use module (ice-9 curried-definitions), but conditionally.

	* server-utils/answer.scm: Use (ice-9 curried-definitions).
	* server-utils/form-2-form.scm: Likewise.

2010-08-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Make alive.test sensitive to env var ‘GUILE’.

	* alive.test (guile): Init var using env var ‘GUILE’ if set.

2010-08-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Add "make check" support.

	* alive.test: New file.
	* Makefile.am (BUILT_SOURCES): New var.
	(all-modules.list): New target.
	(TESTS): New var.
	(EXTRA_DIST): Add $(TESTS).

2010-08-17  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Use Guile-BAUX for doc maintenance, module munging.

	CC means: "Don't include $(top_srcdir)/build-aux/common.mk;
	instead, include $(top_srcdir)/build-aux/comp.mk";
	SA means: "Replace ‘sig’ option in doc comment ‘args’ option";
	NS means: "Delete ‘sig’ option from doc comment".
	* Makefile.am: CC.
	(www_DATA): Use $(top_leaves).
	* http.scm (http:open, http:request): SA.
	* main.scm (www:http-head-get): SA.

	* data/Makefile.am: CC.
	(www_DATA): Use $(data_leaves).

	* server-utils/Makefile.am: CC.
	* server-utils/answer.scm (CRLF, flat-length): Add doc comment.
	(string<-headers, mouthpiece): NS.
	* server-utils/big-dishing-loop.scm (named-socket):
	Don't list keywords in doc comment; also, NS.
	(make-big-dishing-loop): Use @t for keyword
	args table; add @findex for ‘need-input-port’; NS.
	* server-utils/cookies.scm (rfc2109-set-cookie-string): NS.
	* server-utils/filesystem.scm (upath->filename-proc): SA.
	(filename->content-type): SA.
	* server-utils/log.scm (log-http-response-proc):
	Use more succint meta-variable names; SA.
	* server-utils/modlisp.scm (modlisp-hgrok, modlisp-ish):
	Add doc comment.

2010-06-22  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.28

2010-06-22  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Add EXPERIMENTAL modlisp support.

	* server-utils/answer.scm: Use module (ice-9 optargs);
	don't use module (ice-9 q).
	(ish-ref, ish-status, ish-h-k-end, ish-h-v-end, ish-neck): New procs.
	(http-ish): New vector.
	(tree<-header-proc): New proc.
	(tree<-header-components): Delete proc.
	(string<-headers): Take optional arg ‘style’; use ‘tree<-header-proc’.
	(string<-header-components): Use ‘string<-headers’.
	(mouthpiece): Take optional arg ‘style’; coerce #f ‘status-box’ to '();
	use ‘tree<-header-proc’ to compute local ‘tree<-header’ proc.
	(mouthpiece set-reply-status): Use ‘ish-status’.
	(mouthpiece add-header): Use ‘tree<-header’.
	(mouthpiece send-reply): Use ‘ish-neck’.
	* server-utils/big-dishing-loop.scm (http-hgrok): New vector.
	(make-big-dishing-loop): Take keyword arg #:style;
	use it to compute local procs ‘hgrok-first-line’, ‘hgrok’.
	(make-big-dishing-loop bdlcore): Use ‘hgrok-first-line’.
	(make-big-dishing-loop handle-request): Use ‘hgrok’.
	* server-utils/modlisp.scm: New file.
	* server-utils/Makefile.am (www_DATA): Add modlisp.
	Suggested by Neil Jerram.

2010-06-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Mark ‘(... answer) string<-header-components’ for removal.

	* server-utils/answer.scm (string<-header-components):
	Add "will be removed" notice to pre-form doc-comment.

2010-06-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (... answer) procs: string<-tree, string<-headers

	* server-utils/answer.scm (string<-tree): New proc, exported.
	(string<-headers): Likewise.
	(string<-header-components): Use ‘string<-tree’.

2010-06-21  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build] Use (ice-9 optargs); invert sense of ‘optargs-kw’ kludge.

	* server-utils/big-dishing-loop.scm:
	Use (ice-9 optargs); don't use (ice-9 optargs-kw).
	* server-utils/cookies.scm: Likewise.

2010-06-20  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (... answer) procs: flat-length, tree-flat-length!

	* server-utils/answer.scm: Use module (ice-9 q).
	(flat-length): New object property, exported.
	(tree-flat-length!): New proc, exported.
	(length/tree<-header-components): Delete proc.
	(tree<-header-components): New proc.
	(string<-header-components): Use ‘tree<-header-components’.
	(mouthpiece add-header): Likewise; use ‘tree-flat-length!’.
	(mouthpiece add-content): Use ‘tree-flat-length!’.

2010-06-19  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Use internal abstraction more.

	* server-utils/answer.scm (mouthpiece set-reply-status:success):
	Use internal proc ‘set-reply-status!’ directly.

2010-02-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.27

2010-01-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Drop `make-big-dishing-loop' keyword arg `#:GET-upath'.

	* server-utils/big-dishing-loop.scm
	(make-big-dishing-loop): No longer take #:GET-upath.

2010-01-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Drop (www data http-status) exports `*http-status*', `*http-status*-META'.

	* data/http-status.scm (*http-status*-META): Delete.
	(*http-status*): No longer export.

2010-01-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Drop module (www data content-type).

	* server-utils/filesystem.scm: Update autoload trigger
	for module (www data mime-types) to be `mime-types<-extension'.
	(filename->content-type): No longer seed table on first call.
	(TABLE-OK?): Delete boolean.
	* data/Makefile.am (www_DATA): Remove content-type.
	(install-data-hook): New target.
	* data/content-type.scm: Delete file.

2010-01-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Don't use `return-it'.

	* server-utils/big-dishing-loop.scm
	(make-big-dishing-loop child): Don't use `return-it'.

2009-06-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.26

2009-06-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[build int] Specify Automake options in configure.in, not Makefile.am.

	* Makefile.am (AUTOMAKE_OPTIONS): Delete var.
	* data/Makefile.am (AUTOMAKE_OPTIONS): Likewise.
	* server-utils/Makefile.am (AUTOMAKE_OPTIONS): Likewise.

2009-06-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use SRFI-13 `substring/shared', not `make-shared-substring'.

	* http.scm: Use module (srfi srfi-13).
	(subs): Delete proc alias.
	* server-utils/cookies.scm: Likewise.
	* server-utils/filesystem.scm: From module (srfi srfi-13),
	select also `substring/shared', renaming to `subs'.
	(subs): Delete proc alias.

2009-06-29  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Make `cleanup-filename' handle edge cases more consistently.

	* server-utils/filesystem.scm: Don't use module (ice-9 regex);
	from module (srifi srfi-13), also select `string=', `string-suffix?',
	`string-tokenize', `string-join'; use module (srfi srfi-14).
	(clean-parent-rx): Delete regexp.
	(clean-dot-rx, clean-double-slash-rx): Likewise.
	(+not-slash+): New data structure (charset).
	(cleanup-filename): Rewrite.

2009-06-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Fix bug: Make `access-forbidden?-proc' allow "filename is docroot".

	* server-utils/filesystem.scm: Use module (srfi srfi-13).
	(access-forbidden?-proc): Fix OBOE: Don't fail
	if the filename is exactly the same as the docroot.

2009-06-02  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Consolidate some ChangeLog files.

	* ChangeLog-data: Rename from data/ChangeLog.
	* ChangeLog-server-utils: Rename from server-utils/ChangeLog.
	* Makefile.am (EXTRA_DIST): Also distribute the ChangeLog-foo files.

2009-05-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Release: 2.25

2009-05-28  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Use (srfi srf-13) more.

	* cgi.scm (subs): Delete proc alias.
	(env-extraction-methods): Use `substring/shared' directly.
	(make-ccc): Likewise.  Also, use `string-ci='.

2009-05-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Make `cgi:init' handle optional arg for specifying `uploads-lazy'.

	* cgi.scm: Don't use module (ice-9 regex);
	autoload module (www server-utils form-2-form).
	(fs, updated-alist, parse-form-multipart): Delete procs.
	(make-ccc init!): Keep track of "pre-squeezed" upload file contents
	option; if pre-squeezed, construct backward compatible string w/
	object properties for the uploads collation.
	(make-ccc): For #:init pass args to `init!'.
	(cgi:init): Accept rest-arg `opt'; pass it to `ONE #:init!'.
	(cgi:uploads): Update pre-form doc comment; nfc.

2009-05-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	[int] Make (www cgi) use (www server-utils parse-request).

	* cgi.scm: Autoload module (www server-utils parse-request);
	don't use modules (www url-coding), (ice-9 rw).
	(collate, ws/comma-split): New procs.
	(read-n-bytes, split): Delete procs.
	(env-extraction-methods): Use `ws/comma-split'.
	(parse-form): Delete proc.
	(make-ccc init!): Use `read-body', `alist<-query', `collate'.

2009-05-26  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Fix bug: For (www cgi), don't mix query string and form data.

	This regression was introduced in Guile-WWW 2.1.

	* cgi.scm (make-ccc init!): Ignore query-string.

2009-05-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (www server-utils cookies) proc: simple-parse-cookies

	* cgi.scm: Autoload (www server-utils cookies).
	(get-cookies): Delete proc.
	(make-ccc init!): Use `simple-parse-cookies'.

2009-05-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (www cgi) proc: cgi:cookie-names

	* cgi.scm (cgi:cookie-names): New proc, exported.

2009-05-23  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use `(ice-9 and-let-star) and-let*'.

	* cgi.scm: Use module (ice-9 and-let-star).
	(updated-alist): Use `and-let*'.
	(env-extraction-methods server-sw-info): Likewise.
	(env-extraction-methods server-pr-info): Likewise.
	(parse-form-multipart get-pair): Likewise.
	(make-ccc init!): Likewise.
	(make-ccc uploads): Likewise.

2009-05-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use `string-null?'.

	* http.scm (http:request): Use `string-null?'.

2009-05-11  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Use `zero?'.

	* cgi.scm (make-ccc init!): Use `zero?'.
	* http.scm (http:request): Likewise.

2008-05-27  Thien-Thi Nguyen  <ttn@gnuvola.org>

	New (www http) proc: http:connect.

	* http.scm (connection-table): Delete data structure.
	(add-open-connection!, get-open-connection): Delete procs.
	(http:connect): New proc, exported.
	(http:open): Use `http:connect'.

2008-04-24  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Clean up `socket' calls.

	* http.scm (http:open): Use `protoent:proto',
	`hostent:addr-list' and `PF_INET'.

2008-04-23  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Fix bug introduced in 2.22, change:
	Move scheme files under source/:
	For doc extraction, don't search for module commentary.

	* utcsec.scm: Move commentary to ../doc/guile-info.twerp.

2008-04-18  Thien-Thi Nguyen  <ttn@gnuvola.org>

	Move scheme files under source/.

	Here, $(prev)/foo stands for ../foo.
	* Makefile.am: New file.
	* cgi.scm: Rename from $(prev)/cgi.scm.
	* http.scm: Rename from $(prev)/http.scm.
	* https.scm: Rename from $(prev)/https.scm.
	* main.scm: Rename from $(prev)/main.scm.
	* url-coding.scm: Rename from $(prev)/url-coding.scm.
	* url.scm: Rename from $(prev)/url.scm.
	* utcsec.scm: Rename from $(prev)/utcsec.scm.


Copyright (C) 2010, 2011, 2012 Thien-Thi Nguyen

Copying and distribution of this file, with or without modification,
are permitted provided the copyright notice and this notice are preserved.
