mit-scheme.git
16 years agoFix package name comment.
Taylor R. Campbell [Sat, 13 Sep 2008 09:31:36 +0000 (09:31 +0000)]
Fix package name comment.

16 years agoIn SIGNAL-IO-THREAD-EVENTS, we may not always find a dentry for all
Taylor R. Campbell [Fri, 12 Sep 2008 10:26:18 +0000 (10:26 +0000)]
In SIGNAL-IO-THREAD-EVENTS, we may not always find a dentry for all
the descriptors and modes listed.  Don't assume that we shall.

This case arises particularly when there is no thread blocked in
BLOCK-ON-IO-DESCRIPTOR and someone invokes the PROCESS-WAIT primitive.
This should fix the random (%RECORD-REF #F 3) error that I have seen
when gunzipping MIT Scheme's Info reference manual and it isn't in the
operating system's disk buffer cache, which led to a losing race.

16 years agoFix bug in updating folder orders after a message is expunged.
Taylor R. Campbell [Thu, 11 Sep 2008 17:49:09 +0000 (17:49 +0000)]
Fix bug in updating folder orders after a message is expunged.

16 years agoFix mistake in previous commit: COMPILE-DATA-FROM-FILE must pay
Taylor R. Campbell [Thu, 11 Sep 2008 01:15:28 +0000 (01:15 +0000)]
Fix mistake in previous commit: COMPILE-DATA-FROM-FILE must pay
attention to the name of the output file; other parts of the system
rely on it.

16 years agoFix compilation of non-expression data files, broken by the recent
Taylor R. Campbell [Wed, 10 Sep 2008 19:32:48 +0000 (19:32 +0000)]
Fix compilation of non-expression data files, broken by the recent
change to non-file scode compilation.

16 years agoChange COMPILE-SCODE/INTERNAL/HOOK into three separate hooks:
Taylor R. Campbell [Wed, 10 Sep 2008 15:12:07 +0000 (15:12 +0000)]
Change COMPILE-SCODE/INTERNAL/HOOK into three separate hooks:
COMPILE-SCODE/FILE/HOOK, COMPILE-SCODE/NO-FILE/HOOK, and
COMPILE-SCODE/RECURSIVE/HOOK.  Use this in the C back end to fix
compilation of scode not from files.  Handle temporary files more
carefully in the C back end.  Remove vestiges of support for keeping
debugging info in the C back end, which depends on such operations as
SET-COMPILED-CODE-BLOCK/DEBUGGING-INFO! not available in the C code
generator.  The info should perhaps be returned in the compiler
output, and applied in FINISH-C-COMPILATION to the compiled code
block, but this is trickier than it sounds.  For now we'll just not
pretend to support keeping debugging info.

16 years agoAdd an optional argument to TEMPORARY-FILE-PATHNAME for a procedure
Taylor R. Campbell [Wed, 10 Sep 2008 14:55:49 +0000 (14:55 +0000)]
Add an optional argument to TEMPORARY-FILE-PATHNAME for a procedure
that transforms the generated pathname before trying to allocate a
temporary file.  Implemented only on Unix because that's all I can
test, and the only user of it at the moment will be liarc, which runs
only on Unix anyway.

16 years agoImplement FLUSH-OUTPUT and DISCRETIONARY-FLUSH-OUTPUT operations for
Taylor R. Campbell [Tue, 9 Sep 2008 18:30:21 +0000 (18:30 +0000)]
Implement FLUSH-OUTPUT and DISCRETIONARY-FLUSH-OUTPUT operations for
wrapped notification output ports.

16 years agoFix typo in WRITE-DECODED-TIME-AS-CTIME.
Chris Hanson [Tue, 9 Sep 2008 16:30:47 +0000 (16:30 +0000)]
Fix typo in WRITE-DECODED-TIME-AS-CTIME.

16 years agoRename DECODED-TIME->GMT to DECODED-TIME->UTC.
Chris Hanson [Tue, 9 Sep 2008 16:28:19 +0000 (16:28 +0000)]
Rename DECODED-TIME->GMT to DECODED-TIME->UTC.

16 years agoUse the IMAIL-SEARCH prompt history for IMAIL-SEARCH-SUMMARY.
Taylor R. Campbell [Tue, 9 Sep 2008 15:37:03 +0000 (15:37 +0000)]
Use the IMAIL-SEARCH prompt history for IMAIL-SEARCH-SUMMARY.

16 years agoFix thinko in PARSER:HOSTPORT.
Chris Hanson [Tue, 9 Sep 2008 07:23:49 +0000 (07:23 +0000)]
Fix thinko in PARSER:HOSTPORT.

16 years agoImplement CONDITION-TYPE:DECODE-BASE64.
Chris Hanson [Tue, 9 Sep 2008 06:36:20 +0000 (06:36 +0000)]
Implement CONDITION-TYPE:DECODE-BASE64.

16 years agoClarify IMAP MIME body sections, which are confusing because every
Taylor R. Campbell [Tue, 9 Sep 2008 06:13:43 +0000 (06:13 +0000)]
Clarify IMAP MIME body sections, which are confusing because every
message body is treated as a multipart body by the IMAP's indexing
scheme.  This makes IMAIL never fetch TEXT body parts, except when
the user views a message raw with `C-c C-t C-m' (eventually, which
will also view arbitrary MIME bodies raw), and rather use numbered
parts, which will cause IMAIL to refill existing disk caches, even
though they already have mostly the same data in them.  IMAIL will
also now show MIME bodies in IMAP and file folders more uniformly,
especially complex nesting of message/rfc822 and multipart bodies.

16 years agoAdjustments to help support HTTP. Deleted these procedures:
Chris Hanson [Tue, 9 Sep 2008 05:23:53 +0000 (05:23 +0000)]
Adjustments to help support HTTP.  Deleted these procedures:

    DECODED-TIME->HTTP-STRING
    FILE-TIME->HTTP-STRING
    UNIVERSAL-TIME->HTTP-STRING

and added these:

    DECODED-TIME->GMT
    WRITE-DECODED-TIME-AS-CTIME
    WRITE-DECODED-TIME-AS-HTTP
    WRITE-DECODED-TIME-AS-ISO8601
    WRITE-DECODED-TIME-AS-RFC2822
    WRITE-TIME-ZONE

16 years agoImplement STRUCTURE-PARSER-VALUES.
Chris Hanson [Tue, 9 Sep 2008 04:43:48 +0000 (04:43 +0000)]
Implement STRUCTURE-PARSER-VALUES.

16 years agoFix typo in RFC 850 date parser.
Chris Hanson [Tue, 9 Sep 2008 04:33:56 +0000 (04:33 +0000)]
Fix typo in RFC 850 date parser.

16 years agoWhen walking the body of a message/rfc822 body to insert the latter
Taylor R. Campbell [Mon, 8 Sep 2008 22:27:02 +0000 (22:27 +0000)]
When walking the body of a message/rfc822 body to insert the latter
in-line, add BODY to the selector to disambiguate the message/rfc822
body from its own body.  MIME selectors as used by the front end
continue to diverge from IMAP sections, which appear to make little
sense (although this requires further testing with more IMAP server
implementations).

16 years agoEnsure a blank line before each boundary. Don't break the line after
Taylor R. Campbell [Mon, 8 Sep 2008 20:40:59 +0000 (20:40 +0000)]
Ensure a blank line before each boundary.  Don't break the line after
every MIME body.

16 years agoAdd DISQUALIFY keyword.
Chris Hanson [Mon, 8 Sep 2008 18:19:54 +0000 (18:19 +0000)]
Add DISQUALIFY keyword.

16 years agoImplement MATCH keyword: like QUOTE but generates a value.
Chris Hanson [Mon, 8 Sep 2008 04:44:45 +0000 (04:44 +0000)]
Implement MATCH keyword: like QUOTE but generates a value.

16 years agoRefactor MIME support,
Taylor R. Campbell [Mon, 8 Sep 2008 03:55:18 +0000 (03:55 +0000)]
Refactor MIME support,

- to make sense,
- to be more robust,
- to better reflect the terminology of the RFCs,
- to simplify code that uses MIME bodies,
- to move all generic MIME code into imail-mime.scm, and
- to fix a number of small bugs.

The documentation will need to be updated, since some user-visible
commands are now named with the word `body' rather than `entity'.

Undoubtedly, refactoring added many small bugs, too, still to be
weeded out.

16 years agoRebind forward/backward-paragraph to same commands as Emacs.
Chris Hanson [Mon, 8 Sep 2008 00:09:50 +0000 (00:09 +0000)]
Rebind forward/backward-paragraph to same commands as Emacs.

16 years agoRewrite of LIST-PARSER to be more general. Now there are three
Chris Hanson [Sun, 7 Sep 2008 04:33:13 +0000 (04:33 +0000)]
Rewrite of LIST-PARSER to be more general.  Now there are three
variants: OBJECT-PARSER, LIST-PARSER, and VECTOR-PARSER.  There are
corresponding OBJECT, LIST, and VECTOR keywords for switching between
the different modes.  And the optimizer is considerably smarter.

16 years agoImplement kludges to incrementally expand and contract summary buffers
Taylor R. Campbell [Thu, 4 Sep 2008 21:55:20 +0000 (21:55 +0000)]
Implement kludges to incrementally expand and contract summary buffers
as messages are added to and expunged from the corresponding folders.

16 years agoBack out earlier changes concerning a phantom race condition with
Taylor R. Campbell [Wed, 3 Sep 2008 19:36:59 +0000 (19:36 +0000)]
Back out earlier changes concerning a phantom race condition with
the GC daemon (of course the access to the uncompressed file list
locks the GC daemon out), and instead avoid storing entries in it
before the uncompressor has returned normally.  Also, handle file
errors in FASLOAD-LOADER, since they aren't all signalled as bad-
range-argument errors by the microcode.

16 years agoRename FILTER to QUALIFY.
Chris Hanson [Wed, 3 Sep 2008 15:33:08 +0000 (15:33 +0000)]
Rename FILTER to QUALIFY.

16 years agoImplement FILTER keyword in parser language.
Chris Hanson [Wed, 3 Sep 2008 09:14:17 +0000 (09:14 +0000)]
Implement FILTER keyword in parser language.

16 years agoImplement LIST->LIST-PARSER-VALS and MAP-LIST-PARSER-VALS. Simplify
Chris Hanson [Wed, 3 Sep 2008 07:00:25 +0000 (07:00 +0000)]
Implement LIST->LIST-PARSER-VALS and MAP-LIST-PARSER-VALS.  Simplify
implementation of LIST-PARSER-VALS->LIST.

16 years agoImplement LIST-PARSER-VALS-REF and LIST-PARSER-VALS-LENGTH.
Chris Hanson [Wed, 3 Sep 2008 06:08:19 +0000 (06:08 +0000)]
Implement LIST-PARSER-VALS-REF and LIST-PARSER-VALS-LENGTH.

16 years agoImplement WRAP-LIST-PARSER. Implement VALUES parser expression.
Chris Hanson [Wed, 3 Sep 2008 05:53:47 +0000 (05:53 +0000)]
Implement WRAP-LIST-PARSER.  Implement VALUES parser expression.

16 years agoAdd optional argument to control whether to authenticate using a
Chris Hanson [Wed, 3 Sep 2008 04:10:34 +0000 (04:10 +0000)]
Add optional argument to control whether to authenticate using a
keytab (needed for cron access).

16 years agoImplement LIST-PARSER macro.
Chris Hanson [Wed, 3 Sep 2008 02:49:09 +0000 (02:49 +0000)]
Implement LIST-PARSER macro.

16 years agoEliminate unused parameter to DIFF-BUFFER.
Taylor R. Campbell [Tue, 2 Sep 2008 22:46:04 +0000 (22:46 +0000)]
Eliminate unused parameter to DIFF-BUFFER.

16 years agoWhen parsing address lists, disregard all-whitespace entries.
Taylor R. Campbell [Tue, 2 Sep 2008 22:22:07 +0000 (22:22 +0000)]
When parsing address lists, disregard all-whitespace entries.

16 years agoWhen diffing with a buffer, ignore whether it is modified or not. The
Taylor R. Campbell [Tue, 2 Sep 2008 21:31:59 +0000 (21:31 +0000)]
When diffing with a buffer, ignore whether it is modified or not.  The
user may want to see how a file has changed on disk even if the buffer
in memory has not been touched.

16 years agoUse the term `dynamic', not `ephemeral', for parts of a message that
Taylor R. Campbell [Tue, 2 Sep 2008 17:19:10 +0000 (17:19 +0000)]
Use the term `dynamic', not `ephemeral', for parts of a message that
are subject to change on the server and should not be cached on disk,
to match the RFC's terminology.

16 years agoIf, when resynchronizing the mapping between sequence numbers and
Taylor R. Campbell [Mon, 1 Sep 2008 01:24:47 +0000 (01:24 +0000)]
If, when resynchronizing the mapping between sequence numbers and
UIDs with the server, the folder's length has not changed and all
the UIDs match, don't signal an INCREASE-LENGTH event.

16 years agoTighten synchronization with the server:
Taylor R. Campbell [Mon, 1 Sep 2008 00:31:15 +0000 (00:31 +0000)]
Tighten synchronization with the server:

- Record a somewhat finer approximation of the status of our
  synchronization with the server, which lets us be more careful
  about deleting caches for expunged messages: only if our mapping
  between sequence numbers to UIDs is synchronized with the server
  is it sensible to delete caches for expunged messages.

- If our length is desynchronized with the server when we update the
  folder's length because of an EXISTS response, and if all the UIDs
  that we know about are synchronized with the server, then no
  messages have been expunged from the folder, and its length has
  only increased.  In this case, signal anINCREASE-LENGTH event,
  rather than a SET-LENGTH event.  This avoids regenerating summary
  buffers when reconnecting if no messages have been expunged by
  another client.

16 years agoNew generic procedure MESSAGE-PERMANENT-FLAGS returns the flags that
Taylor R. Campbell [Sun, 31 Aug 2008 23:02:17 +0000 (23:02 +0000)]
New generic procedure MESSAGE-PERMANENT-FLAGS returns the flags that
remain permanently and are therefore useful to retain when appending
messages to other folders.  All %APPEND-MESSAGE methods now use this
rather than MESSAGE-FLAGS.  This will keep `recent' flags from being
stored in file folders as an artefact of the IMAP.

16 years agoWhen computing from strings in summaries, avoid empty matches between
Taylor R. Campbell [Sun, 31 Aug 2008 19:32:09 +0000 (19:32 +0000)]
When computing from strings in summaries, avoid empty matches between
parentheses: `From: foo@mumble.bar ()'.

16 years agoImplement new *parser forms ENCAPSULATE* and TRANSFORM* that call
Chris Hanson [Sun, 31 Aug 2008 07:53:07 +0000 (07:53 +0000)]
Implement new *parser forms ENCAPSULATE* and TRANSFORM* that call
their procedure with the values spread out as arguments.  TRANSFORM*
additionally expects the procedure to return multiple values.

16 years agoImplement WRITE-MIME-TYPE.
Chris Hanson [Sun, 31 Aug 2008 07:36:21 +0000 (07:36 +0000)]
Implement WRITE-MIME-TYPE.

16 years agoImplement new mechanism to simplify initialization during cold load.
Chris Hanson [Sun, 31 Aug 2008 07:33:07 +0000 (07:33 +0000)]
Implement new mechanism to simplify initialization during cold load.

16 years agoImplement new mechanism to simplify initialization during cold load.
Chris Hanson [Sun, 31 Aug 2008 07:28:05 +0000 (07:28 +0000)]
Implement new mechanism to simplify initialization during cold load.

16 years agoSimplify previous change.
Taylor R. Campbell [Sat, 30 Aug 2008 19:55:59 +0000 (19:55 +0000)]
Simplify previous change.

16 years agoIn expansion of VALUES, number the local variables to distinguish
Taylor R. Campbell [Sat, 30 Aug 2008 19:54:37 +0000 (19:54 +0000)]
In expansion of VALUES, number the local variables to distinguish
them visibly.

16 years agoUse an RFC 2822 header object, rather than a list of a symbol and a
Taylor R. Campbell [Sat, 30 Aug 2008 19:48:20 +0000 (19:48 +0000)]
Use an RFC 2822 header object, rather than a list of a symbol and a
string, per the new HTTP client.

16 years agoIn IOTA, multiply the index by the increment, rather than adding
Taylor R. Campbell [Sat, 30 Aug 2008 19:33:25 +0000 (19:33 +0000)]
In IOTA, multiply the index by the increment, rather than adding
adding the increment repeatedly.

16 years agoFix fencepost error in parsing of months.
Chris Hanson [Fri, 29 Aug 2008 23:20:04 +0000 (23:20 +0000)]
Fix fencepost error in parsing of months.

16 years agoChange EXPUNGE folder modification event so that it includes the
Taylor R. Campbell [Fri, 29 Aug 2008 20:14:50 +0000 (20:14 +0000)]
Change EXPUNGE folder modification event so that it includes the
message object and its mapped index.  This is necessary to find
information about the message by identity, which will be needed by
future implementation of incremental updates to summary buffers.

16 years agoIn `imail-browser-view-container', if no resource is selected, prompt
Taylor R. Campbell [Fri, 29 Aug 2008 20:03:45 +0000 (20:03 +0000)]
In `imail-browser-view-container', if no resource is selected, prompt
the user for a URL, rather than signalling an error.  This allows the
IMAIL browser to be an entry point into IMAIL.

16 years agoIn `vc-version-diff', ask to save the file only if we are diffing
Taylor R. Campbell [Thu, 28 Aug 2008 19:39:19 +0000 (19:39 +0000)]
In `vc-version-diff', ask to save the file only if we are diffing
against the current revision.  If we are diffing two specified
revisions, there is no need to save changes in the buffer.

Fix the CVS method for LOCKING-USER in the case when FILE-ATTRIBUTES
returns #F.

16 years agoWhen stringifying data, declare data objects after they are defined,
Taylor R. Campbell [Thu, 28 Aug 2008 19:28:29 +0000 (19:28 +0000)]
When stringifying data, declare data objects after they are defined,
since the declaration is not a C forward declaration but a fragment of
C code that refers to the defined object and therefore must follow its
definition.  This fixes compilation of source files that contain only
a literal datum (including empty source files, such as one finds in
scmutils).

16 years agoWhen reading Info files into buffers, don't visit the files. This
Taylor R. Campbell [Thu, 28 Aug 2008 15:26:51 +0000 (15:26 +0000)]
When reading Info files into buffers, don't visit the files.  This
prevents Edwin from trying to write over the Info files if something
goes wrong and the editor tries to save the file.

16 years agoImplement a preliminary `imail-search-summary' command. This is like
Taylor R. Campbell [Wed, 27 Aug 2008 14:55:48 +0000 (14:55 +0000)]
Implement a preliminary `imail-search-summary' command.  This is like
`imail-search', but produces a buffer summarizing all search results
rather than selecting only the first search result.

16 years agoDon't cache message flags on disk.
Taylor R. Campbell [Wed, 27 Aug 2008 14:22:09 +0000 (14:22 +0000)]
Don't cache message flags on disk.

Do meter the progress of caching folder contents, so that IMAIL does
not appear to be hung during the long sequence of lstat(2)s and body
structure traversals if the cache has many items already in it.

Also report a message when connecting to the IMAP server.

16 years agoPut bci files in the library directory, not in the SRC/ subdirectory
Taylor R. Campbell [Wed, 27 Aug 2008 14:16:36 +0000 (14:16 +0000)]
Put bci files in the library directory, not in the SRC/ subdirectory
of the library directory.

16 years agoImplement simple parser for RFC 850 date strings (needed for HTTP).
Chris Hanson [Wed, 27 Aug 2008 05:31:16 +0000 (05:31 +0000)]
Implement simple parser for RFC 850 date strings (needed for HTTP).

16 years agohttpio.scm, runtime.pkg: Rename HTTP-URI to HTTP-REQUEST-URI for
Chris Hanson [Wed, 27 Aug 2008 04:58:09 +0000 (04:58 +0000)]
httpio.scm, runtime.pkg: Rename HTTP-URI to HTTP-REQUEST-URI for
clarification.  Change definition of HTTP-REQUEST-URI to match RFC
2616.

url.scm, runtime.pkg: Eliminate PARSE-URI-NO-AUTHORITY, create and
export PARSE-URI-AUTHORITY and PARSE-URI-PATH-ABSOLUTE for use in
"httpio.scm".

16 years agoFix bug: HTTP status codes are arbitrary three-digit numbers.
Chris Hanson [Wed, 27 Aug 2008 03:59:47 +0000 (03:59 +0000)]
Fix bug: HTTP status codes are arbitrary three-digit numbers.

16 years agoRewrite date parsers to use *PARSER and export them. Rename standard
Chris Hanson [Tue, 26 Aug 2008 08:33:35 +0000 (08:33 +0000)]
Rewrite date parsers to use *PARSER and export them.  Rename standard
->STRING procedures to ->RFC2822-STRING to emphasize their meaning.

16 years agoAdd guarantors for DECODED-TIME? and TIME-ZONE?.
Chris Hanson [Tue, 26 Aug 2008 05:57:18 +0000 (05:57 +0000)]
Add guarantors for DECODED-TIME? and TIME-ZONE?.

16 years agoMake sure that user-agent string is an HTTP token.
Chris Hanson [Tue, 26 Aug 2008 04:21:54 +0000 (04:21 +0000)]
Make sure that user-agent string is an HTTP token.

16 years agoBehave as before with no prefix given to INPUT-PORT->PARSER-BUFFER;
Taylor R. Campbell [Mon, 25 Aug 2008 21:11:12 +0000 (21:11 +0000)]
Behave as before with no prefix given to INPUT-PORT->PARSER-BUFFER;
don't spin endlessly trying to double 0 until it exceeds the minimum
length.

16 years agoExport character sets for HTTP text and token.
Chris Hanson [Mon, 25 Aug 2008 20:53:33 +0000 (20:53 +0000)]
Export character sets for HTTP text and token.

16 years agoRename HTTP-ENTITY to HTTP-MESSAGE.
Chris Hanson [Mon, 25 Aug 2008 08:48:33 +0000 (08:48 +0000)]
Rename HTTP-ENTITY to HTTP-MESSAGE.

16 years agoUse hyphens rather than underscores in user-agent string.
Chris Hanson [Mon, 25 Aug 2008 08:44:26 +0000 (08:44 +0000)]
Use hyphens rather than underscores in user-agent string.

16 years agoAdd support for generating the HTTP date strings: required use of
Chris Hanson [Mon, 25 Aug 2008 08:37:35 +0000 (08:37 +0000)]
Add support for generating the HTTP date strings: required use of
"GMT" time zone marker.  Also export the parser for iso8601 time.

16 years agoChange definition of HTTP version to that from RFC 2616.
Chris Hanson [Mon, 25 Aug 2008 08:23:32 +0000 (08:23 +0000)]
Change definition of HTTP version to that from RFC 2616.

16 years agoWhen resynchronizing message UIDs with the server, stop if we find a
Taylor R. Campbell [Mon, 25 Aug 2008 01:29:02 +0000 (01:29 +0000)]
When resynchronizing message UIDs with the server, stop if we find a
message whose UID is uninitialized.  This arises if the previous
attempt to read the UIDs from the server was interrupted.

16 years agoEliminate FILENAME->COMPILED-OBJECT and the call to it in
Taylor R. Campbell [Sun, 24 Aug 2008 23:34:31 +0000 (23:34 +0000)]
Eliminate FILENAME->COMPILED-OBJECT and the call to it in
LOAD-PACKAGE-SET.  LOAD will do the right thing when a built-in
object is available, and will also update debugging pathnames.

16 years agoIn FASLOAD-UPDATE-SUB-BLOCKS, use DEBUG-INFO-PATHNAME?, rather than
Taylor R. Campbell [Sun, 24 Aug 2008 23:31:07 +0000 (23:31 +0000)]
In FASLOAD-UPDATE-SUB-BLOCKS, use DEBUG-INFO-PATHNAME?, rather than
PATHNAME?.

16 years agoIgnore errors while trying to read the uidvalidity file. If there is
Taylor R. Campbell [Sun, 24 Aug 2008 21:27:05 +0000 (21:27 +0000)]
Ignore errors while trying to read the uidvalidity file.  If there is
a problem reading the file, this means that we will delete the cache,
rather than signal an error to the user.  This may be the wrong
behaviour in some obscure cases -- e.g., perhaps a networked file
system where the network fails after checking that the cache directory
is in fact a directory --, but this is useful for cases where the
cache directory was just set up wrong, perhaps because Scheme was
interrupted.

16 years agoChange to use new http-client support.
Chris Hanson [Sun, 24 Aug 2008 07:21:03 +0000 (07:21 +0000)]
Change to use new http-client support.

16 years agoReplace http-client.scm with new HTTP support. The new mechanism is
Chris Hanson [Sun, 24 Aug 2008 07:20:12 +0000 (07:20 +0000)]
Replace http-client.scm with new HTTP support.  The new mechanism is
slightly lower level than the old, but it provides support for servers
and is slightly smarter about encoding.

THIS WILL BREAK EXISTING USERS OF HTTP-CLIENT

16 years agoRename XML->STRING to XML->OCTETS; define alias for compatibility.
Chris Hanson [Sun, 24 Aug 2008 06:27:20 +0000 (06:27 +0000)]
Rename XML->STRING to XML->OCTETS; define alias for compatibility.

16 years agoWorkaround for (what looks like) a bug in XQuartz on MacOS.
Chris Hanson [Sat, 23 Aug 2008 21:08:27 +0000 (21:08 +0000)]
Workaround for (what looks like) a bug in XQuartz on MacOS.

16 years agoTrim whitespace surrounding addresses in
Taylor R. Campbell [Sat, 23 Aug 2008 17:44:54 +0000 (17:44 +0000)]
Trim whitespace surrounding addresses in
RFC822:STRING->SPLIT-ADDRESS-TOKENS.

16 years agoDefine __ppc64__ to 1, not just to an empty token sequence, for
Taylor R. Campbell [Fri, 22 Aug 2008 22:08:23 +0000 (22:08 +0000)]
Define __ppc64__ to 1, not just to an empty token sequence, for
consistency.

16 years agoIf __powerpc__ or __powerpc64__ is defined, define __ppc__ or
Taylor R. Campbell [Fri, 22 Aug 2008 22:07:19 +0000 (22:07 +0000)]
If __powerpc__ or __powerpc64__ is defined, define __ppc__ or
__ppc64__, repsectively.  This comes up on NetBSD; why GCC uses
different cpp symbols for different operating systems on a common
machine architecture, I haven't the faintest clue.

16 years agoName and export standard hash-table types.
Chris Hanson [Thu, 21 Aug 2008 01:00:46 +0000 (01:00 +0000)]
Name and export standard hash-table types.

16 years agoImplement HASH-TABLE/TYPE.
Chris Hanson [Wed, 20 Aug 2008 09:01:35 +0000 (09:01 +0000)]
Implement HASH-TABLE/TYPE.

16 years agoMake TEXT line ending be the more generic XML-1.0 on input; behavior
Chris Hanson [Tue, 19 Aug 2008 05:03:29 +0000 (05:03 +0000)]
Make TEXT line ending be the more generic XML-1.0 on input; behavior
on output is unchanged.  When speaking of generic text this will
support all the standard line endings for input.

16 years agoChange DETERMINE-CODING to use the new prefix mechanism of the parser
Chris Hanson [Mon, 18 Aug 2008 06:59:42 +0000 (06:59 +0000)]
Change DETERMINE-CODING to use the new prefix mechanism of the parser
buffer.

16 years agoAdd optional argument to INPUT-PORT->PARSER-BUFFER so that a prefix
Chris Hanson [Mon, 18 Aug 2008 06:56:14 +0000 (06:56 +0000)]
Add optional argument to INPUT-PORT->PARSER-BUFFER so that a prefix
string can be specified.  This is needed for injecting readahead from
a previous process -- for example, character coding detection.

16 years agoin PROVIDE-INPUT-FEATURES, don't advertise operations that aren't
Chris Hanson [Mon, 18 Aug 2008 06:40:18 +0000 (06:40 +0000)]
in PROVIDE-INPUT-FEATURES, don't advertise operations that aren't
supported.

16 years agoSimplify DETERMINE-CODING.
Chris Hanson [Mon, 18 Aug 2008 00:19:46 +0000 (00:19 +0000)]
Simplify DETERMINE-CODING.

16 years agoUse UTF-16 surrogate support.
Chris Hanson [Mon, 18 Aug 2008 00:15:17 +0000 (00:15 +0000)]
Use UTF-16 surrogate support.

16 years agoExport procedures for managing UTF-16 surrogate pairs.
Chris Hanson [Mon, 18 Aug 2008 00:12:53 +0000 (00:12 +0000)]
Export procedures for managing UTF-16 surrogate pairs.

16 years agoFix fencepost error in UNICODE-CODE-POINT?.
Chris Hanson [Sun, 17 Aug 2008 09:42:29 +0000 (09:42 +0000)]
Fix fencepost error in UNICODE-CODE-POINT?.

16 years agoRevert previous change to close I/O ports of subprocesses when they
Taylor R. Campbell [Sat, 16 Aug 2008 17:57:11 +0000 (17:57 +0000)]
Revert previous change to close I/O ports of subprocesses when they
exit.

16 years agoUse MAKE-INITIALIZED-MAIL-BUFFER rather than MAKE-MAIL-BUFFER.
Taylor R. Campbell [Fri, 15 Aug 2008 22:46:42 +0000 (22:46 +0000)]
Use MAKE-INITIALIZED-MAIL-BUFFER rather than MAKE-MAIL-BUFFER.
Initialization is separate from selection.

16 years agoNew procedure MAKE-INITIALIZED-MAIL-BUFFER creates a mail buffer and
Taylor R. Campbell [Fri, 15 Aug 2008 20:46:12 +0000 (20:46 +0000)]
New procedure MAKE-INITIALIZED-MAIL-BUFFER creates a mail buffer and
initializes it with a user-supplied initialization procedure, after it
is created or after confirmation to discard the contents of any
existing mail buffer.

16 years agoSplit COMPUTE-MIME-MESSAGE-OUTLINE's method on <MIME-BODY> into one on
Taylor R. Campbell [Fri, 15 Aug 2008 17:08:10 +0000 (17:08 +0000)]
Split COMPUTE-MIME-MESSAGE-OUTLINE's method on <MIME-BODY> into one on
<MIME-BODY> and one on <MIME-BODY-ONE-PART>, so that the method on the
more general <MIME-BODY> will not accidentally call procedures
applicable only to <MIME-BODY-ONE-PART> instances.

16 years agoRearrange MIME part parsing entry points so that MIME:PARSE-PART can
Taylor R. Campbell [Fri, 15 Aug 2008 15:44:37 +0000 (15:44 +0000)]
Rearrange MIME part parsing entry points so that MIME:PARSE-PART can
be used to parse parts with and without headers, rather than embedding
that logic in MIME:PARSE-PARTS.

16 years agoWhen making new cache entries, write them to a file in a temporary
Taylor R. Campbell [Tue, 12 Aug 2008 01:46:53 +0000 (01:46 +0000)]
When making new cache entries, write them to a file in a temporary
directory first, and move the file to its permanent location only
after it has been fully written.  This prevents C-g from leaving
half-written cache entries.  (File folders should perhaps do this too,
but it is not clear where the temporary directory should be located,
and using /tmp or /var/tmp is not appropriate, since those directories
may reside on another file system, rendering rename(2) useless.)

16 years agoRemove or ignore the now unused variables since the last commit.
Taylor R. Campbell [Tue, 12 Aug 2008 01:36:52 +0000 (01:36 +0000)]
Remove or ignore the now unused variables since the last commit.

16 years agoRemove vestige of progress metering in CACHE-FOLDER-CONTENTS. The
Taylor R. Campbell [Tue, 12 Aug 2008 00:49:03 +0000 (00:49 +0000)]
Remove vestige of progress metering in CACHE-FOLDER-CONTENTS.  The
procedures that fetch the body parts already indicate their progress
with the message indices, and would overwrite a meter of the cache's
progress anyway except for fractions of seconds between messages.

16 years agoRetain names with addresses when replying to mail.
Taylor R. Campbell [Mon, 11 Aug 2008 22:48:50 +0000 (22:48 +0000)]
Retain names with addresses when replying to mail.