Redesign packaging to break up the monolithic core. There isn't very
authorChris Hanson <org/chris-hanson/cph>
Sat, 1 Jul 2000 04:10:39 +0000 (04:10 +0000)
committerChris Hanson <org/chris-hanson/cph>
Sat, 1 Jul 2000 04:10:39 +0000 (04:10 +0000)
much cross-reference between these files.

v7/src/imail/imail.pkg
v7/src/imail/todo.txt

index 077b58a54478ec8995d1776d7ab3b80da87e13c9..f4b289b33143df4bed45121cceab49d9d0852476 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;; $Id: imail.pkg,v 1.70 2000/06/30 19:05:46 cph Exp $
+;;; $Id: imail.pkg,v 1.71 2000/07/01 04:10:38 cph Exp $
 ;;;
 ;;; Copyright (c) 2000 Massachusetts Institute of Technology
 ;;;
          url:string-encoded?
          url:substring-encoded?))
 
+(define-package (edwin imail)
+  (files "imail-util"
+        "imail-core")
+  (parent (edwin)))
+
+(define-package (edwin imail file-folder)
+  (files "imail-file")
+  (parent (edwin imail))
+  (export (edwin imail)
+         file-folder-pathname
+         file-folder?
+         file-message?
+         file-url?
+         message-time))
+
+(define-package (edwin imail rmail-folder)
+  (files "imail-rmail")
+  (parent (edwin imail file-folder))
+  (export (edwin imail)
+         make-rmail-url
+         rmail-folder?
+         rmail-message?
+         rmail-url?))
+
+(define-package (edwin imail umail-folder)
+  (files "imail-umail")
+  (parent (edwin imail file-folder))
+  (export (edwin imail)
+         make-umail-url
+         umail-folder?
+         umail-message?
+         umail-url?)
+  (export (edwin imail rmail-folder)
+         read-umail-message
+         umail-delimiter?))
+
 (define-package (edwin imail imap-syntax)
   (files "imap-syntax")
   (parent (edwin imail))
-  (export (edwin imail)
+  (export (edwin imail imap-folder)
+         imap:parse:enc-mailbox
+         imap:server-parser
+         imap:string-may-be-quoted?
+         imap:universal-time->date-time
+         imap:write-literal-string-body
+         imap:write-literal-string-header
+         imap:write-quoted-string)
+  (export (edwin imail imap-response)
          imap:atom-char?
          imap:char-set:atom-char
          imap:char-set:tag-char
          imap:char-set:text-char
          imap:match:tag
-         imap:parse:enc-mailbox
          imap:parse:section
          imap:quoted-char?
-         imap:quoted-special?
-         imap:server-parser
-         imap:string-may-be-quoted?
-         imap:universal-time->date-time
-         imap:write-literal-string-body
-         imap:write-literal-string-header
-         imap:write-quoted-string))
+         imap:quoted-special?))
 
 (define-package (edwin imail imap-response)
   (files "imap-response")
          imap-transcript-write-char
          imap-transcript-write-string
          imap-transcript-write-substring
+         start-imap-transcript
+         stop-imap-transcript)
+  (export (edwin imail imap-folder)
          imap:bind-fetch-body-part-port
          imap:read-literal-progress-hook
          imap:read-server-response
          imap:response:search?
          imap:response:status-response?
          imap:response:status?
-         imap:response:tag
-         start-imap-transcript
-         stop-imap-transcript))
+         imap:response:tag))
 
-(define-package (edwin imail)
-  (files "imail-util"
-        "imail-core"
-        "imail-file"
-        "imail-rmail"
-        "imail-umail"
-        "imail-imap"
-        "imail-top"
-        "imail-summary")
-  (parent (edwin))
+(define-package (edwin imail imap-folder)
+  (files "imail-imap")
+  (parent (edwin imail))
+  (export (edwin imail)
+         imap-folder?
+         imap-message?
+         imap-trace-port
+         imap-url?
+         make-imap-url
+         start-imap-trace
+         stop-imap-trace))
+
+(define-package (edwin imail front-end)
+  (files "imail-top")
+  (parent (edwin imail))
   (export (edwin)
          edwin-command$imail
          edwin-command$imail-add-flag
          edwin-command$imail-save-mime-entity
          edwin-command$imail-search
          edwin-command$imail-select-message
-         edwin-command$imail-summary
-         edwin-command$imail-summary-by-flags
-         edwin-command$imail-summary-by-recipients
-         edwin-command$imail-summary-by-regexp
-         edwin-command$imail-summary-by-topic
-         edwin-command$imail-summary-select-message
          edwin-command$imail-toggle-header
          edwin-command$imail-toggle-message
          edwin-command$imail-toggle-mime-entity
          edwin-command$imail-undelete-forward
          edwin-command$imail-undelete-previous-message
          edwin-mode$imail
-         edwin-mode$imail-summary
          edwin-variable$imail-auto-wrap
          edwin-variable$imail-body-cache-limit
          edwin-variable$imail-default-dont-reply-to-names
          edwin-variable$imail-pass-phrase-retention-time
          edwin-variable$imail-primary-folder
          edwin-variable$imail-reply-with-re
+         edwin-variable$imail-update-interval
+         edwin-variable$imail-use-original-mime-boundaries)
+  (export (edwin imail)
+         imail-ui:body-cache-limit
+         imail-ui:call-with-pass-phrase
+         imail-ui:delete-stored-pass-phrase
+         imail-ui:message-wrapper
+         imail-ui:present-user-alert
+         imail-ui:progress-meter
+         imail-ui:prompt-for-yes-or-no?))
+
+(define-package (edwin imail front-end summary)
+  (files "imail-summary")
+  (parent (edwin imail front-end))
+  (export (edwin)
+         edwin-command$imail-summary
+         edwin-command$imail-summary-by-flags
+         edwin-command$imail-summary-by-recipients
+         edwin-command$imail-summary-by-regexp
+         edwin-command$imail-summary-by-topic
+         edwin-command$imail-summary-select-message
+         edwin-mode$imail-summary
          edwin-variable$imail-summary-highlight-message
          edwin-variable$imail-summary-mode-hook
          edwin-variable$imail-summary-pop-up-message
          edwin-variable$imail-summary-show-date
-         edwin-variable$imail-summary-subject-width
-         edwin-variable$imail-update-interval
-         edwin-variable$imail-use-original-mime-boundaries))
\ No newline at end of file
+         edwin-variable$imail-summary-subject-width)
+  (export (edwin imail front-end)
+         write-imail-summary-line!))
\ No newline at end of file
index d0abeb3365fdbdd444981597a12e036c4aa31651..ac51d174a4b64ebcb14dbd09be799caf4c8bf66a 100644 (file)
@@ -1,5 +1,5 @@
 IMAIL To-Do List
-$Id: todo.txt,v 1.107 2000/06/30 19:05:50 cph Exp $
+$Id: todo.txt,v 1.108 2000/07/01 04:10:39 cph Exp $
 
 Bug fixes
 ---------
@@ -49,9 +49,6 @@ Design changes
 
 * Move pathname-completion code into the runtime system.
 
-* Repackage the code so that each file now in the core is in a
-  separate package.
-
 * Implement something closer to the IMAP COPY operation, e.g.
   APPEND-MESSAGES.  Use this to make folder copying faster.