[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master d499abf: Merge branch 'scratch/gnus-mock'
From: |
Eric Abrahamsen |
Subject: |
[elpa] master d499abf: Merge branch 'scratch/gnus-mock' |
Date: |
Thu, 11 Oct 2018 14:14:16 -0400 (EDT) |
branch: master
commit d499abf85802a3fe6c645ca7cf0ac36acbafe85e
Merge: 5b849e3 ee8800c
Author: Eric Abrahamsen <address@hidden>
Commit: Eric Abrahamsen <address@hidden>
Merge branch 'scratch/gnus-mock'
---
packages/gnus-mock/data/.gnus.el | 39 ++++
packages/gnus-mock/data/.newsrc.eld | 11 ++
packages/gnus-mock/data/etc/images/gnus/gnus.png | Bin 0 -> 47709 bytes
packages/gnus-mock/data/fakesendmail.py | 36 ++++
.../.nnmaildir/nov/1539191672.M313936P10717Q0.slip | 1 +
.../gnus-mock/data/test/Welcome/.nnmaildir/num/1 | 0
.../Welcome/cur/1539191672.M313936P10717Q0.slip:2, | 27 +++
.../.nnmaildir/nov/1539195763.M178661P30788Q0.slip | 1 +
.../.nnmaildir/nov/1539195763.M331584P30788Q1.slip | 1 +
.../.nnmaildir/nov/1539195763.M436061P30788Q2.slip | 1 +
.../.nnmaildir/nov/1539195763.M545093P30788Q3.slip | 1 +
.../.nnmaildir/nov/1539195763.M654298P30788Q4.slip | 1 +
.../.nnmaildir/nov/1539195763.M767212P30788Q5.slip | 1 +
.../.nnmaildir/nov/1539195763.M886152P30788Q6.slip | 1 +
.../.nnmaildir/nov/1539195764.M476788P30788Q0.slip | 1 +
.../.nnmaildir/nov/1539195764.M595165P30788Q1.slip | 1 +
.../.nnmaildir/nov/1539195764.M714508P30788Q2.slip | 1 +
.../.nnmaildir/nov/1539195764.M834837P30788Q3.slip | 1 +
.../.nnmaildir/nov/1539195764.M951919P30788Q4.slip | 1 +
.../.nnmaildir/nov/1539195765.M185364P30788Q1.slip | 1 +
.../.nnmaildir/nov/1539195765.M300193P30788Q2.slip | 1 +
.../.nnmaildir/nov/1539195765.M68113P30788Q0.slip | 1 +
.../gnus-mock/data/test/mails/.nnmaildir/num/1 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/10 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/11 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/12 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/13 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/14 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/15 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/16 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/2 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/3 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/4 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/5 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/6 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/7 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/8 | 0
.../gnus-mock/data/test/mails/.nnmaildir/num/9 | 0
.../mails/cur/1539195763.M178661P30788Q0.slip:2, | 44 +++++
.../mails/cur/1539195763.M331584P30788Q1.slip:2, | 83 ++++++++
.../mails/cur/1539195763.M436061P30788Q2.slip:2, | 42 +++++
.../mails/cur/1539195763.M545093P30788Q3.slip:2, | 37 ++++
.../mails/cur/1539195763.M654298P30788Q4.slip:2, | 151 +++++++++++++++
.../mails/cur/1539195763.M767212P30788Q5.slip:2, | 40 ++++
.../mails/cur/1539195763.M886152P30788Q6.slip:2, | 56 ++++++
.../mails/cur/1539195764.M476788P30788Q0.slip:2, | 97 ++++++++++
.../mails/cur/1539195764.M595165P30788Q1.slip:2, | 82 ++++++++
.../mails/cur/1539195764.M714508P30788Q2.slip:2, | 45 +++++
.../mails/cur/1539195764.M834837P30788Q3.slip:2, | 61 ++++++
.../mails/cur/1539195764.M951919P30788Q4.slip:2, | 50 +++++
.../mails/cur/1539195765.M185364P30788Q1.slip:2, | 28 +++
.../mails/cur/1539195765.M300193P30788Q2.slip:2, | 48 +++++
.../mails/cur/1539195765.M68113P30788Q0.slip:2, | 75 ++++++++
packages/gnus-mock/gnus-mock.el | 209 +++++++++++++++++++++
54 files changed, 1277 insertions(+)
diff --git a/packages/gnus-mock/data/.gnus.el b/packages/gnus-mock/data/.gnus.el
new file mode 100644
index 0000000..75df8d9
--- /dev/null
+++ b/packages/gnus-mock/data/.gnus.el
@@ -0,0 +1,39 @@
+;;; Settings for Gnus mock sessions. Do not edit this file, instead
+;;; add further customizations to the file indicated by
+;;; `gnus-mock-settings-file'.
+
+(setq gnus-select-method
+ `(nnmaildir
+ "Test"
+ (directory ,(file-name-as-directory
+ (expand-file-name "test" gnus-home-directory)))
+ (get-new-mail nil)))
+
+(setq user-mail-address "address@hidden"
+ user-full-name "Mock Turtle")
+
+;; `sendmail-program' has already been set to fakesendmail.py in the
+;; init file.
+(setq message-send-mail-function #'message-send-mail-with-sendmail)
+
+(defun gnus-mock-reload ()
+ "Restore the gnus mock data.
+Restores all data in the mock data dir. In some cases it might
+work better simply to kill the mock Emacs process and start over
+again."
+ (interactive)
+ (when (gnus-alive-p)
+ (gnus-group-exit))
+ (if (not gnus-mock-p)
+ (message "Only use this command in a Gnus mock session")
+ (when (y-or-n-p (format "Trash and restore %s? "
+ gnus-home-directory))
+ (delete-directory gnus-home-directory t)
+ (copy-directory gnus-mock-data-dir
+ gnus-home-directory nil nil t)
+ (gnus-read-init-file)
+ (message "Mock Gnus data restored"))))
+
+(add-hook 'gnus-started-hook (lambda ()
+ (unless sendmail-program
+ (message "Python unavailable on this system,
you won't be able to send mail"))))
diff --git a/packages/gnus-mock/data/.newsrc.eld
b/packages/gnus-mock/data/.newsrc.eld
new file mode 100644
index 0000000..1feefc2
--- /dev/null
+++ b/packages/gnus-mock/data/.newsrc.eld
@@ -0,0 +1,11 @@
+;; -*- mode:emacs-lisp; coding: utf-8-emacs; -*-
+;; Gnus startup file.
+;; Never delete this file -- if you want to force Gnus to read the
+;; .newsrc file (if you have one), touch .newsrc instead.
+(setq gnus-newsrc-file-version "Gnus v5.13")
+
+(setq gnus-newsrc-last-checked-date '"Tue, 01 May 2018 12:15:27 -0700")
+
+(setq gnus-newsrc-alist '(("nndraft:queue" 3 nil nil (nndraft "")) ("Welcome"
3 ((1)) nil) ("mails" 3 nil nil) ("incoming" 3 nil nil nil) ("nndraft:drafts" 1
nil nil (nndraft "") ((gnus-dummy (gnus-draft-mode))))))
+
+(setq gnus-server-alist '(("archive" nnfolder "archive" (nnfolder-directory
"REPLACE_ME/archive") (nnfolder-active-file "REPLACE_ME/archive/active")
(nnfolder-get-new-mail nil) (nnfolder-inhibit-expiry t))))
diff --git a/packages/gnus-mock/data/etc/images/gnus/gnus.png
b/packages/gnus-mock/data/etc/images/gnus/gnus.png
new file mode 100644
index 0000000..aea4999
Binary files /dev/null and b/packages/gnus-mock/data/etc/images/gnus/gnus.png
differ
diff --git a/packages/gnus-mock/data/fakesendmail.py
b/packages/gnus-mock/data/fakesendmail.py
new file mode 100755
index 0000000..8307128
--- /dev/null
+++ b/packages/gnus-mock/data/fakesendmail.py
@@ -0,0 +1,36 @@
+#!/usr/bin/env python
+
+import argparse
+import sys
+import os
+import datetime
+
+incoming_dir = os.path.join(sys.path[0], "test/incoming/new")
+message_f_name = "message"
+
+# Arguments set up to match what message-send-mail-with-sendmail uses.
+# Currently all these arguments are ignored except for the message
+# itself.
+parser = argparse.ArgumentParser(description='Pretend that we are sendmail.')
+parser.add_argument('message', default=sys.stdin, nargs='?',
+ type=argparse.FileType("r"), help="Message to send")
+parser.add_argument("-oi", nargs='?', const="nothing",
+ default="nothing", help="Extra args")
+parser.add_argument("-oem", action='store_true', help="Report errors by mail")
+parser.add_argument("-odb", action='store_true', help="Deliver in background")
+parser.add_argument("-f", dest="from", help="From address")
+parser.add_argument("-t", action='store_true',
+ help="Extract To address from message")
+
+args = parser.parse_args()
+
+counter = 0
+while message_f_name in os.listdir(incoming_dir):
+ message_f_name = "%s_%d" % (message_f_name, counter)
+ counter += 1
+
+with open(os.path.join(incoming_dir, message_f_name), "w") as message_file:
+ message_file.write("Received: from Gnus mock fakemail program on %s\n" %
+ datetime.datetime.now().strftime("%c"))
+ for line in args.message:
+ message_file.write(line)
diff --git
a/packages/gnus-mock/data/test/Welcome/.nnmaildir/nov/1539191672.M313936P10717Q0.slip
b/packages/gnus-mock/data/test/Welcome/.nnmaildir/nov/1539191672.M313936P10717Q0.slip
new file mode 100644
index 0000000..0b17532
--- /dev/null
+++
b/packages/gnus-mock/data/test/Welcome/.nnmaildir/nov/1539191672.M313936P10717Q0.slip
@@ -0,0 +1 @@
+[1 1 "<address@hidden>" ["Welcome! Eric Abrahamsen <address@hidden>
Wed, 10 Oct 2018 10:14:23 -0700" " 1065 17" "To: address@hidden" (23486
15390 438409 250000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git a/packages/gnus-mock/data/test/Welcome/.nnmaildir/num/1
b/packages/gnus-mock/data/test/Welcome/.nnmaildir/num/1
new file mode 100644
index 0000000..e69de29
diff --git
a/packages/gnus-mock/data/test/Welcome/cur/1539191672.M313936P10717Q0.slip:2,
b/packages/gnus-mock/data/test/Welcome/cur/1539191672.M313936P10717Q0.slip:2,
new file mode 100644
index 0000000..447bad4
--- /dev/null
+++
b/packages/gnus-mock/data/test/Welcome/cur/1539191672.M313936P10717Q0.slip:2,
@@ -0,0 +1,27 @@
+Received: from Gnus mock fakemail program on Wed Oct 10 10:14:23 2018
+From: Eric Abrahamsen <address@hidden>
+To: address@hidden
+Subject: Welcome!
+Date: Wed, 10 Oct 2018 10:14:23 -0700
+Message-ID: <address@hidden>
+User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux)
+MIME-Version: 1.0
+Content-Type: text/plain
+
+Welcome to Gnus mock, a trashable, restorable testing environment for
+Gnus. Everything you do to this environment will be temporary, and you
+can wipe the slate clean by killing this Emacs process and calling M-x
+gnus-mock-start again, from your main Emacs process.
+
+You can also call M-x gnus-mock-reload at any time to shut down Gnus and
+replace the original data. Depending on what you've done to Gnus in the
+meantime, however, this might not fully restore a clean environment.
+
+All messages sent from this Gnus installation will end up in the
+"incoming" mailbox of the "Test" nnmaildir server.
+
+Email Eric at address@hidden with bug reports and suggestions
+(don't email me from here, obviously!).
+
+Yours,
+Eric
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M178661P30788Q0.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M178661P30788Q0.slip
new file mode 100644
index 0000000..4bae17d
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M178661P30788Q0.slip
@@ -0,0 +1 @@
+[1 2 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Dave Love
<address@hidden> Thu, 14 Sep 2000 11:10:46 +0100" "<address@hidden>
1882 16" "Cc: address@hidden, address@hidden To: Jeff Bailey
<address@hidden>" (23486 17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M331584P30788Q1.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M331584P30788Q1.slip
new file mode 100644
index 0000000..a349e44
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M331584P30788Q1.slip
@@ -0,0 +1 @@
+[1 3 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Sam Steingold
<address@hidden> 14 Sep 2000 10:21:56 -0400" "<address@hidden> 2991 50"
"Cc: address@hidden, address@hidden To: Jeff Bailey <address@hidden>" (23486
17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M436061P30788Q2.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M436061P30788Q2.slip
new file mode 100644
index 0000000..f6bffde
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M436061P30788Q2.slip
@@ -0,0 +1 @@
+[1 4 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Jeff Bailey
<address@hidden> Thu, 14 Sep 2000 09:14:47 -0700" "<address@hidden>
<address@hidden> 1780 15" "Cc: address@hidden, address@hidden To:
address@hidden, Jeff Bailey <address@hidden>" (23486 17512 678023 999000) (To
Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M545093P30788Q3.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M545093P30788Q3.slip
new file mode 100644
index 0000000..5232369
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M545093P30788Q3.slip
@@ -0,0 +1 @@
+[1 5 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Dave Love
<address@hidden> Thu, 14 Sep 2000 18:24:36 +0100" "<address@hidden>
1343 9" "Cc: address@hidden, address@hidden To: Jeff Bailey
<address@hidden>" (23486 17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M654298P30788Q4.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M654298P30788Q4.slip
new file mode 100644
index 0000000..722c0cd
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M654298P30788Q4.slip
@@ -0,0 +1 @@
+[1 6 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Karl Fogel
<address@hidden> 14 Sep 2000 10:37:35 -0500" "<address@hidden>
<address@hidden> 3740 124" "Cc: Jeff Bailey <address@hidden>,
address@hidden, address@hidden To: Dave Love <address@hidden>" (23486 17512
678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M767212P30788Q5.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M767212P30788Q5.slip
new file mode 100644
index 0000000..65c1e43
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M767212P30788Q5.slip
@@ -0,0 +1 @@
+[1 7 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Jeff Bailey
<address@hidden> Thu, 14 Sep 2000 10:55:12 -0700" "<address@hidden>
<address@hidden> <address@hidden> 1687 16" "Cc: Jeff Bailey
<address@hidden>, address@hidden, address@hidden To: address@hidden, Dave
Love <address@hidden>" (23486 17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M886152P30788Q6.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M886152P30788Q6.slip
new file mode 100644
index 0000000..4bd6a0e
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195763.M886152P30788Q6.slip
@@ -0,0 +1 @@
+[1 8 "<address@hidden>" ["Re: [Emacs-devel] Emacs move John Wiegley
<address@hidden> Thu, 14 Sep 2000 12:19:01 -0700" "<address@hidden> 1978
27" "To: address@hidden" (23486 17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M476788P30788Q0.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M476788P30788Q0.slip
new file mode 100644
index 0000000..bee6c0f
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M476788P30788Q0.slip
@@ -0,0 +1 @@
+[1 9 "<address@hidden>" ["Re: [Emacs-devel] Emacs move \"Robert J. Chassell\"
<address@hidden> Thu, 14 Sep 2000 07:33:15 -0400 (EDT)" "<address@hidden>
3046 72" "Cc: address@hidden, address@hidden To: address@hidden" (23486
17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M595165P30788Q1.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M595165P30788Q1.slip
new file mode 100644
index 0000000..d1f9962
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M595165P30788Q1.slip
@@ -0,0 +1 @@
+[1 10 "<address@hidden>" ["Re: [Emacs-devel] Emacs move address@hidden
(William M. Perry) 14 Sep 2000 09:10:25 -0500" "<address@hidden>
<address@hidden> 3104 44" "Cc: address@hidden, address@hidden,
address@hidden To: address@hidden" (23486 17512 678023 999000) (To Newsgroups
Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M714508P30788Q2.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M714508P30788Q2.slip
new file mode 100644
index 0000000..7c42fbf
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M714508P30788Q2.slip
@@ -0,0 +1 @@
+[1 11 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Gerd Moellmann
<address@hidden> Thu, 14 Sep 2000 21:51:05 +0200 (CEST)" "<address@hidden>
<address@hidden> <address@hidden> 1884 6" "Cc: address@hidden,
address@hidden, address@hidden, address@hidden To: address@hidden" (23486
17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M834837P30788Q3.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M834837P30788Q3.slip
new file mode 100644
index 0000000..454d213
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M834837P30788Q3.slip
@@ -0,0 +1 @@
+[1 12 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Gerd Moellmann
<address@hidden> Thu, 14 Sep 2000 21:49:03 +0200 (CEST)" "<address@hidden>
<address@hidden> 2408 24" "Cc: address@hidden, address@hidden,
address@hidden To: address@hidden" (23486 17512 678023 999000) (To Newsgroups
Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M951919P30788Q4.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M951919P30788Q4.slip
new file mode 100644
index 0000000..4d85729
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195764.M951919P30788Q4.slip
@@ -0,0 +1 @@
+[1 13 "<address@hidden>" ["Re: [Emacs-devel] Emacs move \"Robert J.
Chassell\" <address@hidden> Thu, 14 Sep 2000 17:50:01 -0400 (EDT)"
"<address@hidden> <address@hidden> <address@hidden> 1968 23" "Cc:
address@hidden, address@hidden, address@hidden, address@hidden To:
address@hidden" (23486 17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M185364P30788Q1.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M185364P30788Q1.slip
new file mode 100644
index 0000000..de98584
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M185364P30788Q1.slip
@@ -0,0 +1 @@
+[1 14 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Richard
Stallman <address@hidden> Fri, 15 Sep 2000 16:28:12 -0600 (MDT)"
"<address@hidden> <address@hidden> 1288 2" "To: address@hidden,
address@hidden, address@hidden" (23486 17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M300193P30788Q2.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M300193P30788Q2.slip
new file mode 100644
index 0000000..8835f53
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M300193P30788Q2.slip
@@ -0,0 +1 @@
+[1 15 "<address@hidden>" ["[Emacs-devel] Emacs move Jeff Bailey
<address@hidden> Wed, 13 Sep 2000 17:59:43 -0700" " 1661 26" "Cc:
address@hidden To: address@hidden" (23486 17512 678023 999000) (To Newsgroups
Cc)]]
\ No newline at end of file
diff --git
a/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M68113P30788Q0.slip
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M68113P30788Q0.slip
new file mode 100644
index 0000000..fd2f590
--- /dev/null
+++
b/packages/gnus-mock/data/test/mails/.nnmaildir/nov/1539195765.M68113P30788Q0.slip
@@ -0,0 +1 @@
+[1 16 "<address@hidden>" ["Re: [Emacs-devel] Emacs move Jeff Bailey
<address@hidden> Fri, 15 Sep 2000 22:00:12 -0700" "<address@hidden>
<address@hidden> <address@hidden> <address@hidden> 2857 51" "Cc:
address@hidden, address@hidden, address@hidden To: address@hidden,
address@hidden" (23486 17512 678023 999000) (To Newsgroups Cc)]]
\ No newline at end of file
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/1
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/1
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/10
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/10
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/11
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/11
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/12
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/12
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/13
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/13
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/14
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/14
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/15
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/15
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/16
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/16
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/2
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/2
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/3
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/3
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/4
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/4
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/5
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/5
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/6
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/6
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/7
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/7
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/8
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/8
new file mode 100644
index 0000000..e69de29
diff --git a/packages/gnus-mock/data/test/mails/.nnmaildir/num/9
b/packages/gnus-mock/data/test/mails/.nnmaildir/num/9
new file mode 100644
index 0000000..e69de29
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195763.M178661P30788Q0.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195763.M178661P30788Q0.slip:2,
new file mode 100644
index 0000000..ab85ad3
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195763.M178661P30788Q0.slip:2,
@@ -0,0 +1,44 @@
+From address@hidden Thu Sep 14 06:11:17 2000
+Received: from djlvig.dl.ac.uk (djlvig.dl.ac.uk [148.79.112.146])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id GAA00773;
+ Thu, 14 Sep 2000 06:11:14 -0400
+Received: (from address@hidden)
+ by djlvig.dl.ac.uk (8.8.7/8.8.5) id LAA26351;
+ Thu, 14 Sep 2000 11:10:46 +0100
+Date: Thu, 14 Sep 2000 11:10:46 +0100
+Message-Id: <address@hidden>
+X-Authentication-Warning: djlvig.dl.ac.uk: fx set sender to address@hidden
using -f
+To: Jeff Bailey <address@hidden>
+Cc: address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden>
+From: Dave Love <address@hidden>
+In-Reply-To: Jeff Bailey's message of "Wed, 13 Sep 2000 17:59:43 -0700"
+User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/21.0.90
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Lines: 16
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+>>>>> "JB" == Jeff Bailey <address@hidden> writes:
+
+ JB> There are a few clever scripts floating around for changing the root of
+ JB> an already checked-out repository to a new one. If you know of one that
+ JB> works, please post it and cc: me so I can give it to others.
+
+Obviously it's most tasteful to do it in Emacs with M-x grep-find and
+keyboard macros or similar. However this worked for me in the
+top-level of the Emacs tree, doubtless not optimally:
+
+ for i in `find . -name Root`; do echo :pserver:address@hidden:/cvs >$i; done
+ for i in `find . -name Repository`; do echo $i | sed -e
's,^\(.*\)/CVS/Repository,emacs/\1,' >$i; done
+
+I can do checkouts, but I see errors like:
+
+ cvs server: cannot read /cvs/emacs/./src/CVS/fileattr: Permission denied
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195763.M331584P30788Q1.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195763.M331584P30788Q1.slip:2,
new file mode 100644
index 0000000..2860fe0
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195763.M331584P30788Q1.slip:2,
@@ -0,0 +1,83 @@
+From address@hidden Thu Sep 14 10:26:04 2000
+Received: from sanpietro.red-bean.com (sanpietro.red-bean.com [206.69.89.65])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id KAA17597;
+ Thu, 14 Sep 2000 10:26:03 -0400
+Received: from xchange.com (centurion3.exapps.com [12.25.11.194])
+ by sanpietro.red-bean.com (8.9.3/8.9.3/Debian 8.9.3-21) with ESMTP id
JAA07920;
+ Thu, 14 Sep 2000 09:26:01 -0500
+X-Authentication-Warning: sanpietro.red-bean.com: Host centurion3.exapps.com
[12.25.11.194] claimed to be xchange.com
+To: Jeff Bailey <address@hidden>
+Cc: address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden>
+Reply-To: address@hidden
+X-Attribution: Sam
+X-Disclaimer: You should not expect anyone to agree with me.
+Mail-Copies-To: never
+From: Sam Steingold <address@hidden>
+In-Reply-To: Jeff Bailey's message of "Wed, 13 Sep 2000 17:59:43 -0700"
+User-Agent: Gnus/5.0807 (Gnus v5.8.7) Emacs/20.7
+Date: 14 Sep 2000 10:21:56 -0400
+Message-ID: <address@hidden>
+Lines: 50
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+> * In message <address@hidden>
+> * On the subject of "[Emacs-devel] Emacs move"
+> * Sent on Wed, 13 Sep 2000 17:59:43 -0700
+> * Honorable Jeff Bailey <address@hidden> writes:
+>
+> Some of your accounts have still not been setup correctly, if I
+> haven't got them by this weekend, you've probably dropped off my
+> radar. Please remind me.
+
+"cvs login" (:pserver) and "cvs update" are extraordinarily slow.
+is this okay?
+
+> For information on how to access your repository, please look at
+> http://www.gnu.org/software/devel.html#CVS
+
+this page claims that I can use SSH.
+I will have to put .ssh/identity.pub into subversions:~sds, right?
+how do I do this?
+
+> There are a few clever scripts floating around for changing the root
+> of an already checked-out repository to a new one. If you know of one
+> that works, please post it and cc: me so I can give it to others.
+
+-----------------------------------------
+#!/bin/sh
+# change the CVS Root
+# usage:
+# cd /usr/local/src/emacs
+# find . -type d -name CVS -exec chcvsroot {} \;
+
+ROOTO="anoncvs.gnu.org:/gd/gnu/cvsroot";
+ROOT="subversions.gnu.org:/cvs";
+REPOO="/gd/gnu/cvsroot";
+REPO="/cvs";
+
+FF=$1;
+echo " - "${FF}
+sed "s?${ROOTO}?${ROOT}?" ${FF}/Root > ${FF}.tmp
+mv ${FF}.tmp ${FF}/Root
+sed "s?${REPOO}?${REPO}?" ${FF}/Repository > ${FF}.tmp
+mv ${FF}.tmp ${FF}/Repository
+-----------------------------------------
+
+Thanks.
+
+--
+Sam Steingold (http://www.podval.org/~sds)
+Micros**t is not the answer. Micros**t is a question, and the answer is Linux,
+(http://www.linux.org) the choice of the GNU (http://www.gnu.org) generation.
+Our business is run on trust. We trust you will pay in advance.
+
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195763.M436061P30788Q2.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195763.M436061P30788Q2.slip:2,
new file mode 100644
index 0000000..bf1c58e
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195763.M436061P30788Q2.slip:2,
@@ -0,0 +1,42 @@
+From address@hidden Thu Sep 14 12:21:34 2000
+Received: from duke.electric.net (duke.electric.net [216.18.11.193])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with SMTP id MAA10290
+ for <address@hidden>; Thu, 14 Sep 2000 12:21:32 -0400
+Received: (qmail 32519 invoked by uid 1009); 14 Sep 2000 16:14:50 -0000
+Received: from mainsrvr.nisa.net(207.194.212.4), claiming to be
"sparky.nisa.net"
+ via SMTP by duke.electric.net, id smtpdz32410; Thu Sep 14 09:14:46 2000
+Received: (from address@hidden) by sparky.nisa.net (8.9.3/nisa4.7) id
JAA10835; Thu, 14 Sep 2000 09:14:48 -0700
+X-MailHub: mail.nisa.net
+Message-ID: <address@hidden>
+Date: Thu, 14 Sep 2000 09:14:47 -0700
+From: Jeff Bailey <address@hidden>
+To: address@hidden, Jeff Bailey <address@hidden>
+Cc: address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden> <address@hidden>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+X-Mailer: Mutt 0.91
+In-Reply-To: <address@hidden>; from Sam Steingold on Thu, Sep 14, 2000 at
10:21:56AM -0400
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+On Thu, Sep 14, 2000 at 10:21:56AM -0400, Sam Steingold wrote:
+
+> this page claims that I can use SSH.
+> I will have to put .ssh/identity.pub into subversions:~sds, right?
+> how do I do this?
+
+By sending it to me. If you've got lsh we support that too (Just send
+the DSA key).
+
+--
+"It is easy to be blinded to the essential uselessness of computers by
+the sense of accomplishment you get from getting them to work at all."
+ - Douglas Adams
+
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195763.M545093P30788Q3.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195763.M545093P30788Q3.slip:2,
new file mode 100644
index 0000000..a1e3036
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195763.M545093P30788Q3.slip:2,
@@ -0,0 +1,37 @@
+From address@hidden Thu Sep 14 13:25:12 2000
+Received: from djlvig.dl.ac.uk (djlvig.dl.ac.uk [148.79.112.146])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id NAA23692;
+ Thu, 14 Sep 2000 13:25:05 -0400
+Received: (from address@hidden)
+ by djlvig.dl.ac.uk (8.8.7/8.8.5) id SAA26807;
+ Thu, 14 Sep 2000 18:24:36 +0100
+Date: Thu, 14 Sep 2000 18:24:36 +0100
+Message-Id: <address@hidden>
+X-Authentication-Warning: djlvig.dl.ac.uk: fx set sender to address@hidden
using -f
+To: Jeff Bailey <address@hidden>
+Cc: address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden>
+From: Dave Love <address@hidden>
+In-Reply-To: Jeff Bailey's message of "Wed, 13 Sep 2000 17:59:43 -0700"
+User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/21.0.90
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Lines: 9
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+Sorry, my repository-munging loop didn't DTRT in the top-level
+directory. It needs
+
+ echo emacs >CVS/Repository
+
+afterwards.
+
+Also I think the permission error was because I messed up that
+directory's CVS subdir. Things now seem fine.
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195763.M654298P30788Q4.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195763.M654298P30788Q4.slip:2,
new file mode 100644
index 0000000..ffe7d9e
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195763.M654298P30788Q4.slip:2,
@@ -0,0 +1,151 @@
+From address@hidden Thu Sep 14 13:42:15 2000
+Received: from galois.collab.net (address@hidden [24.148.31.194])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id NAA26083;
+ Thu, 14 Sep 2000 13:42:10 -0400
+Received: (from address@hidden)
+ by galois.collab.net (8.10.1/8.10.1/Debian 8.10.1-1) id e8EFbZI14198;
+ Thu, 14 Sep 2000 10:37:35 -0500
+To: Dave Love <address@hidden>
+Cc: Jeff Bailey <address@hidden>, address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden> <address@hidden>
+Reply-to: address@hidden
+Emacs: no job too big... no job.
+From: Karl Fogel <address@hidden>
+Date: 14 Sep 2000 10:37:35 -0500
+In-Reply-To: Dave Love's message of "Thu, 14 Sep 2000 18:24:36 +0100"
+Message-ID: <address@hidden>
+Lines: 124
+X-Mailer: Gnus v5.7/Emacs 20.6
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+Dave Love <address@hidden> writes:
+> Sorry, my repository-munging loop didn't DTRT in the top-level
+> directory. It needs
+> [...]
+
+You may be interested in the `cvschroot.pl' script from the CVSUtils
+suite by Tom Tromey and Pavel Roskin. The entire suite is available
+from:
+
+ http://www.red-bean.com/cvsutils/
+
+But for your convenience, here is cvschroot.pl:
+
+--------------------8-<-------cut-here---------8-<-----------------------
+#! /usr/bin/perl -w
+
+# This script binds the working directory to the given CVS root by
+# storing the new value is the CVS/Root files
+# If CVS/Repository contains the full path, it is adjusted to match
+# the new root
+# The environment variable CVSROOT overrides the contents of CVS/Root
+
+use strict;
+
+Main();
+
+sub Main
+{
+ if (!$ARGV[0] || ($ARGV[0] eq '--help') || ($#ARGV > 0))
+ {
+ usage ();
+ }
+
+ my $root = $ARGV[0];
+ my $cvspath = split_root($root, "New CVS Root");
+ my $old_root = $ENV{"CVSROOT"};
+ my $fixed_root = defined ($old_root);
+
+ open(CVSADM, "cvsu --ignore --find --types C |") ||
+ error ("Cannot read output of cvsu\n");
+
+ while (<CVSADM>) {
+ chomp;
+ my $dir = $_;
+ unless ( $dir =~ m{/$} ) {
+ $dir .= "/";
+ }
+ if ($dir =~ "^\./(.*)") {
+ $dir = $1;
+ }
+
+ unless ($fixed_root) {
+ $old_root = get_line($dir . "Root");
+ }
+
+ my $old_cvspath = split_root($old_root, "Old CVS Root");
+
+ my $repo = get_line($dir . "Repository");
+
+ # if $repo is relative path, leave it as is
+ if ( $repo =~ m{^/} ) {
+ unless ( $repo =~ s{^$old_cvspath}{$cvspath} ) {
+ error ("${dir}Repository doesn't match
${dir}Root\n");
+ }
+
+ put_line ($dir . "Repository", $repo);
+ }
+ put_line ($dir . "Root", $root);
+ }
+}
+
+# print message and exit (like "die", but without raising an exception)
+sub error
+{
+ print STDERR shift(@_);
+ exit 1;
+}
+
+# print usage information and exit
+sub usage
+{
+ print "Usage: cvschroot ROOT\n" .
+ "ROOT is the CVS Root to be written to CVS/Root\n" .
+ "CVS/Repository is also modified if necessary\n";
+ exit 1;
+}
+
+
+# Split CVSROOT into path and everything before it
+sub split_root
+{
+ my $res;
+ if ( shift(@_) =~ m{^([^ ]+:)?(/[^:@ ]+)$} ) {
+ $res = $2;
+ } else {
+ error shift(@_) . " not recognized\n";
+ }
+ return $res;
+}
+
+# Read one line from file
+sub get_line
+{
+ my $file = shift(@_);
+ open (FILE, "< $file")
+ || error ("couldn't open $file\n");
+ if ($_ = <FILE>) {
+ chomp;
+ } else {
+ error ("couldn't read $file\n");
+ }
+ close (FILE);
+ return $_;
+}
+
+# Write one line to file
+sub put_line
+{
+ my $file = shift(@_);
+ open (FILE, "> $file")
+ || error ("couldn't write to $file\n");
+ print FILE shift(@_) . "\n";
+ close (FILE);
+}
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195763.M767212P30788Q5.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195763.M767212P30788Q5.slip:2,
new file mode 100644
index 0000000..b08b409
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195763.M767212P30788Q5.slip:2,
@@ -0,0 +1,40 @@
+From address@hidden Thu Sep 14 13:55:37 2000
+Received: from sparky.nisa.net (address@hidden [207.194.212.4])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id NAA29211;
+ Thu, 14 Sep 2000 13:55:34 -0400
+Received: (from address@hidden) by sparky.nisa.net (8.9.3/nisa4.7) id
KAA29618; Thu, 14 Sep 2000 10:55:13 -0700
+X-MailHub: mail.nisa.net
+Message-ID: <address@hidden>
+Date: Thu, 14 Sep 2000 10:55:12 -0700
+From: Jeff Bailey <address@hidden>
+To: address@hidden, Dave Love <address@hidden>
+Cc: Jeff Bailey <address@hidden>, address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden> <address@hidden> <address@hidden>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+X-Mailer: Mutt 0.91
+In-Reply-To: <address@hidden>; from Karl Fogel on Thu, Sep 14, 2000 at
10:37:35AM -0500
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+On Thu, Sep 14, 2000 at 10:37:35AM -0500, Karl Fogel wrote:
+> Dave Love <address@hidden> writes:
+> > Sorry, my repository-munging loop didn't DTRT in the top-level
+> > directory. It needs
+> > [...]
+>
+> You may be interested in the `cvschroot.pl' script from the CVSUtils
+> suite by Tom Tromey and Pavel Roskin. The entire suite is available
+> from:
+>
+> http://www.red-bean.com/cvsutils/
+>
+
+I looked at this before, but it depends on the rest of cvsutils, which
+has moved. Thanks for giving me the URL.
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195763.M886152P30788Q6.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195763.M886152P30788Q6.slip:2,
new file mode 100644
index 0000000..7343992
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195763.M886152P30788Q6.slip:2,
@@ -0,0 +1,56 @@
+From address@hidden Thu Sep 14 15:19:10 2000
+Received: from localhost.localdomain (IDENT:address@hidden [208.2.167.79])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id PAA01818
+ for <address@hidden>; Thu, 14 Sep 2000 15:19:09 -0400
+Received: (from address@hidden)
+ by localhost.localdomain (8.9.3/8.9.3) id MAA05085;
+ Thu, 14 Sep 2000 12:19:01 -0700
+Date: Thu, 14 Sep 2000 12:19:01 -0700
+Message-Id: <address@hidden>
+X-Authentication-Warning: localhost.localdomain: johnw set sender to
address@hidden using -f
+To: address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden>
+From: John Wiegley <address@hidden>
+X-Home-Page: http://www.emacs.org/~johnw/
+X-Public-Key: http://pgp5.ai.mit.edu:11371/pks/lookup?op=get&search=0xF40524D0
+In-Reply-To: Jeff Bailey's message of "Wed, 13 Sep 2000 17:59:43 -0700"
+User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/21.0.90
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Lines: 27
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+>>>>> On Wed Sep 13, Jeff writes:
+
+> There are a few clever scripts floating around for changing the root
+> of an already checked-out repository to a new one. If you know of
+> one that works, please post it and cc: me so I can give it to
+> others.
+
+I've using this one daily for quite some time. I name it "local", and
+also symlink "remote" to it.
+
+----------------------------------------------------------------------
+
+#!/bin/sh
+
+REMOTE=":ext:address@hidden:/gd/gnu/cvsroot"
+LOCAL=":local:$HOME/src/cvsroot"
+
+if [ $(basename $0) = remote ]; then
+ TEMP=$REMOTE
+ REMOTE=$LOCAL
+ LOCAL=$TEMP
+fi
+
+for i in $(find . -name CVS -type d); do
+ echo Converting $i...
+ perl -i~ -pne "s~$REMOTE~$LOCAL~;" $i/Root
+done
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195764.M476788P30788Q0.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195764.M476788P30788Q0.slip:2,
new file mode 100644
index 0000000..c5211cd
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195764.M476788P30788Q0.slip:2,
@@ -0,0 +1,97 @@
+From address@hidden Thu Sep 14 07:33:19 2000
+Received: from megalith.rattlesnake.com (megalith.rattlesnake.com
[140.186.114.245])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id HAA06883;
+ Thu, 14 Sep 2000 07:33:17 -0400
+Received: by rattlesnake.com
+ via sendmail from stdin
+ id <address@hidden> (Debian Smail3.2.0.102)
+ for address@hidden; Thu, 14 Sep 2000 07:33:15 -0400 (EDT)
+Message-Id: <address@hidden>
+Date: Thu, 14 Sep 2000 07:33:15 -0400 (EDT)
+From: "Robert J. Chassell" <address@hidden>
+To: address@hidden
+CC: address@hidden, address@hidden
+In-reply-to: <address@hidden> (message from Jeff Bailey
+ on Wed, 13 Sep 2000 17:59:43 -0700)
+Subject: Re: [Emacs-devel] Emacs move
+Reply-to: address@hidden
+References: <address@hidden>
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+ For information on how to access your repository, please look at
+ http://www.gnu.org/software/devel.html#CVS
+
+Done. As it happens, emacs is not listed as any of the available
+modules, so perhaps I should not be surprised that I cannot
+access the emacs repository.
+
+I ran the following
+
+ $ cvs -d :pserver:address@hidden:/cvs login
+ (Logging in to address@hidden)
+ CVS password:
+
+but check out failed:
+
+ $ cvs -d :pserver:address@hidden:/cvs checkout emacs
+ cvs server: Updating emacs
+ cvs server: cannot open directory /cvs/emacs: Permission denied
+ cvs server: skipping directory emacs
+
+
+Also, on my machine I changed the name of the archive to
+
+ :pserver:address@hidden:/cvs
+
+in my CVS/Root files but also cannot update emacs.
+
+
+Here are the messages:
+
+ <bob> /usr/local/src/emacs $ cvs login
+ (Logging in to address@hidden)
+ CVS password:
+
+ <bob> /usr/local/src/emacs $ cvs update
+ ? config.log
+ ? Makefile
+ ? config.cache
+ ? config.status
+ ? leim/Makefile
+ ? lib-src/Makefile
+ ? lisp/Makefile
+ ? lwlib/Makefile
+ ? man/Makefile
+ ? oldXMenu/Makefile
+ ? src/Makefile
+ cvs server: Updating .
+ cvs server: cannot open directory /cvs/emacs: Permission denied
+ cvs server: skipping directory
+ no such user bob in CVSROOT/passwd
+ cvs update: authorization failed: server subversions.gnu.org rejected access
+ cvs update: used empty password; try "cvs login" with a real password
+
+
+
+Also I tried, logging in as me,
+
+ :pserver:address@hidden:/cvs
+
+and used the password that had worked with cvs.gnu.org, but that
+failed too.
+
+Also, neither kerberos nor lsh let me log on to subversions, although
+I can log on to melange.gnu.org using kerberos and log on to
+alpha.gnu.org using lsh.
+
+Please help! Thanks!
+
+--
+ Robert J. Chassell address@hidden
+ Rattlesnake Enterprises http://www.rattlesnake.com
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195764.M595165P30788Q1.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195764.M595165P30788Q1.slip:2,
new file mode 100644
index 0000000..79d9c92
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195764.M595165P30788Q1.slip:2,
@@ -0,0 +1,82 @@
+From address@hidden Thu Sep 14 10:10:31 2000
+Received: from mail.rdc1.tn.home.com (address@hidden [24.2.7.66])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id KAA17067;
+ Thu, 14 Sep 2000 10:10:30 -0400
+Received: from megalith.bp.aventail.com ([24.12.70.142])
+ by mail.rdc1.tn.home.com (InterMail vM.4.01.02.00 201-229-116)
+ with ESMTP
+ id <address@hidden>;
+ Thu, 14 Sep 2000 07:10:26 -0700
+Received: (from address@hidden)
+ by megalith.bp.aventail.com (8.11.0/8.11.0/Debian 8.11.0-6) id
e8EEAPa16180;
+ Thu, 14 Sep 2000 09:10:25 -0500
+X-Authentication-Warning: megalith.bp.aventail.com: wmperry set sender to
address@hidden using -f
+To: address@hidden
+Cc: address@hidden, address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden>
+ <address@hidden>
+Reply-to: address@hidden
+X-Face:
O~Rn;(l][/address@hidden:9-"'IR[%;,,!m7</SYF`{vYQ(&RI1&EiH[FvT;address@hidden
+
x_!Y#=y{Uuj9GvUi=cPuajQ(address@hidden,sn$qGr5g/wnb*"*ktI+,CD}1Z'wxrM2ag-r0p5I6\nA
+ [WJopW_J.WY;
+Content-Type: text/plain; charset=us-ascii
+From: address@hidden (William M. Perry)
+Date: 14 Sep 2000 09:10:25 -0500
+In-Reply-To: "Robert J. Chassell"'s message of "Thu, 14 Sep 2000 07:33:15
-0400 (EDT)"
+Message-ID: <address@hidden>
+Lines: 44
+User-Agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.1 (GTK)
+MIME-Version: 1.0
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+"Robert J. Chassell" <address@hidden> writes:
+
+> For information on how to access your repository, please look at
+> http://www.gnu.org/software/devel.html#CVS
+>
+> Done. As it happens, emacs is not listed as any of the available
+> modules, so perhaps I should not be surprised that I cannot
+> access the emacs repository.
+>
+> I ran the following
+>
+> $ cvs -d :pserver:address@hidden:/cvs login
+> (Logging in to address@hidden)
+> CVS password:
+>
+> but check out failed:
+>
+> $ cvs -d :pserver:address@hidden:/cvs checkout emacs
+> cvs server: Updating emacs
+> cvs server: cannot open directory /cvs/emacs: Permission denied
+> cvs server: skipping directory emacs
+>
+>
+> Also, on my machine I changed the name of the archive to
+>
+> :pserver:address@hidden:/cvs
+>
+> in my CVS/Root files but also cannot update emacs.
+
+I used /home/cvs and was able to check it out, but I also used my account
+instead of anoncvs.
+
+But it does not build because src/regex.[ch] are not found. Were these
+symlinks in the old repository or something strange like that? When I do a
+`cvs update' I get:
+
+cvs server: Updating .
+cvs server: nothing known about regex.c
+cvs server: nothing known about regex.h
+cvs server: Updating bitmaps
+cvs server: Updating m
+cvs server: Updating s
+
+-Bill P.
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195764.M714508P30788Q2.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195764.M714508P30788Q2.slip:2,
new file mode 100644
index 0000000..406ed15
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195764.M714508P30788Q2.slip:2,
@@ -0,0 +1,45 @@
+From address@hidden Thu Sep 14 16:00:34 2000
+Received: from mout02.kundenserver.de (mout02.kundenserver.de [195.20.224.133])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id QAA07590;
+ Thu, 14 Sep 2000 16:00:33 -0400
+Received: from [195.20.224.151] (helo=mrelay01.kundenserver.de)
+ by mout02.kundenserver.de with esmtp (Exim 2.12 #2)
+ id 13ZfBG-0006r3-00; Thu, 14 Sep 2000 22:00:22 +0200
+Received: from p3e9c23a7.dip0.t-ipconnect.de ([62.156.35.167]
helo=gerd.segv.de)
+ by mrelay01.kundenserver.de with esmtp (Exim 2.12 #2)
+ id 13ZfBD-0001Cp-00; Thu, 14 Sep 2000 22:00:19 +0200
+Received: (from address@hidden)
+ by gerd.segv.de (8.9.3/8.9.3) id VAA06005;
+ Thu, 14 Sep 2000 21:51:05 +0200 (CEST)
+ (envelope-from address@hidden)
+Date: Thu, 14 Sep 2000 21:51:05 +0200 (CEST)
+Message-Id: <address@hidden>
+X-Authentication-Warning: gerd.segv.de: gerd set sender to address@hidden
using -f
+To: address@hidden
+Cc: address@hidden, address@hidden, address@hidden,
+ address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden>
+ <address@hidden>
+ <address@hidden>
+Reply-To: address@hidden
+From: Gerd Moellmann <address@hidden>
+In-Reply-To: address@hidden's message of "14 Sep 2000 09:10:25 -0500"
+User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/21.0.90
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Lines: 6
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
address@hidden (William M. Perry) writes:
+
+> But it does not build because src/regex.[ch] are not found. Were these
+> symlinks in the old repository or something strange like that?
+
+Yup, we're sorting this out.
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195764.M834837P30788Q3.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195764.M834837P30788Q3.slip:2,
new file mode 100644
index 0000000..5851ea4
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195764.M834837P30788Q3.slip:2,
@@ -0,0 +1,61 @@
+From address@hidden Thu Sep 14 16:00:27 2000
+Received: from mout01.kundenserver.de (mout01.kundenserver.de [195.20.224.132])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id QAA07586;
+ Thu, 14 Sep 2000 16:00:26 -0400
+Received: from [195.20.224.151] (helo=mrelay01.kundenserver.de)
+ by mout01.kundenserver.de with esmtp (Exim 2.12 #2)
+ id 13ZfBB-0002Fl-00; Thu, 14 Sep 2000 22:00:17 +0200
+Received: from p3e9c23a7.dip0.t-ipconnect.de ([62.156.35.167]
helo=gerd.segv.de)
+ by mrelay01.kundenserver.de with esmtp (Exim 2.12 #2)
+ id 13ZfAv-0001Cp-00; Thu, 14 Sep 2000 22:00:07 +0200
+Received: (from address@hidden)
+ by gerd.segv.de (8.9.3/8.9.3) id VAA05998;
+ Thu, 14 Sep 2000 21:49:03 +0200 (CEST)
+ (envelope-from address@hidden)
+Date: Thu, 14 Sep 2000 21:49:03 +0200 (CEST)
+Message-Id: <address@hidden>
+X-Authentication-Warning: gerd.segv.de: gerd set sender to address@hidden
using -f
+To: address@hidden
+Cc: address@hidden, address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden>
+ <address@hidden>
+Reply-To: address@hidden
+From: Gerd Moellmann <address@hidden>
+In-Reply-To: "Robert J. Chassell"'s message of "Thu, 14 Sep 2000 07:33:15
-0400 (EDT)"
+User-Agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/21.0.90
+MIME-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+Lines: 24
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+"Robert J. Chassell" <address@hidden> writes:
+
+> Also I tried, logging in as me,
+>
+> :pserver:address@hidden:/cvs
+
+That's the right root. Anon CVS is currently not available.
+
+> and used the password that had worked with cvs.gnu.org, but that >
+> failed too.
+
+I think Jeff couldn't migrate the pserver passwords to subversions.
+Did you receive a mail from Jeff asking for your access methods and
+password?
+
+> Also, neither kerberos nor lsh let me log on to subversions, although
+> I can log on to melange.gnu.org using kerberos and log on to
+> alpha.gnu.org using lsh.
+
+I think telnet is not allowed on subversions.
+
+But if Jeff has set up Kerberos access to the repository for you, you
+should be able to first kauth, and then check out Emacs with CVSROOT
+`subversions.gnu.org:/cvs'.
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195764.M951919P30788Q4.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195764.M951919P30788Q4.slip:2,
new file mode 100644
index 0000000..c7e45ce
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195764.M951919P30788Q4.slip:2,
@@ -0,0 +1,50 @@
+From address@hidden Thu Sep 14 17:50:04 2000
+Received: from megalith.rattlesnake.com (megalith.rattlesnake.com
[140.186.114.245])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id RAA23171;
+ Thu, 14 Sep 2000 17:50:02 -0400
+Received: by rattlesnake.com
+ via sendmail from stdin
+ id <address@hidden> (Debian Smail3.2.0.102)
+ for address@hidden; Thu, 14 Sep 2000 17:50:01 -0400 (EDT)
+Message-Id: <address@hidden>
+Date: Thu, 14 Sep 2000 17:50:01 -0400 (EDT)
+From: "Robert J. Chassell" <address@hidden>
+To: address@hidden
+CC: address@hidden, address@hidden, address@hidden,
+ address@hidden
+In-reply-to: <address@hidden> (message from Gerd Moellmann
+ on Thu, 14 Sep 2000 21:49:03 +0200 (CEST))
+Subject: Re: [Emacs-devel] Emacs move
+Reply-to: address@hidden
+References: <address@hidden>
+ <address@hidden> <address@hidden>
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+ I think Jeff couldn't migrate the pserver passwords to subversions.
+ Did you receive a mail from Jeff asking for your access methods and
+ password?
+
+Not yet.
+
+As a practical matter, I don't understand security procedures and all
+that. I realize tha I should learn, but I come from an ancient era,
+when the biggest security lapse was the April 1st spoof pretending to
+be a message from `kremvax' in the former Soviet Union.
+
+So please
+tell me in detail, as for a newbie,
+what I should do to get CVS updates for Emacs 21. I have Kerberos
+access to delysid, mescaline, and melange and lsh access to
+alpha.gnu.org.
+
+Thanks!
+
+--
+ Robert J. Chassell address@hidden
+ Rattlesnake Enterprises http://www.rattlesnake.com
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195765.M185364P30788Q1.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195765.M185364P30788Q1.slip:2,
new file mode 100644
index 0000000..3fce36e
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195765.M185364P30788Q1.slip:2,
@@ -0,0 +1,28 @@
+From address@hidden Fri Sep 15 18:28:27 2000
+Received: from pele.santafe.edu (pele.santafe.edu [192.12.12.119])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id SAA05920;
+ Fri, 15 Sep 2000 18:28:26 -0400
+Received: from wijiji.santafe.edu (wijiji [192.12.12.5])
+ by pele.santafe.edu (8.9.1/8.9.1) with ESMTP id QAA07669;
+ Fri, 15 Sep 2000 16:28:12 -0600 (MDT)
+Received: (from address@hidden)
+ by wijiji.santafe.edu (8.9.3+Sun/8.9.1) id QAA20526;
+ Fri, 15 Sep 2000 16:28:12 -0600 (MDT)
+Date: Fri, 15 Sep 2000 16:28:12 -0600 (MDT)
+Message-Id: <address@hidden>
+X-Authentication-Warning: wijiji.santafe.edu: rms set sender to address@hidden
using -f
+From: Richard Stallman <address@hidden>
+to: address@hidden, address@hidden, address@hidden
+In-reply-to: <address@hidden> (address@hidden)
+Subject: Re: [Emacs-devel] Emacs move
+Reply-to: address@hidden
+References: <address@hidden> <address@hidden>
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+Bob should certainly have access to the Emacs repository.
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195765.M300193P30788Q2.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195765.M300193P30788Q2.slip:2,
new file mode 100644
index 0000000..5f05199
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195765.M300193P30788Q2.slip:2,
@@ -0,0 +1,48 @@
+From address@hidden Wed Sep 13 20:59:44 2000
+Received: from sparky.nisa.net (address@hidden [207.194.212.4])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id UAA17218;
+ Wed, 13 Sep 2000 20:59:43 -0400
+Received: (from address@hidden) by sparky.nisa.net (8.9.3/nisa4.7) id
RAA27622; Wed, 13 Sep 2000 17:59:43 -0700
+X-MailHub: mail.nisa.net
+Message-ID: <address@hidden>
+Date: Wed, 13 Sep 2000 17:59:43 -0700
+From: Jeff Bailey <address@hidden>
+To: address@hidden
+Cc: address@hidden
+Mime-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+X-Mailer: Mutt 0.91
+Subject: [Emacs-devel] Emacs move
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+Thanks for all of your help during this move, it has now been completed.
+
+Some of your accounts have still not been setup correctly, if I haven't
+got them by this weekend, you've probably dropped off my radar. Please
+remind me.
+
+For information on how to access your repository, please look at
+http://www.gnu.org/software/devel.html#CVS
+
+There are a few clever scripts floating around for changing the root of
+an already checked-out repository to a new one. If you know of one that
+works, please post it and cc: me so I can give it to others.
+
+Please send any questions you have to address@hidden
+
+Good hacking.
+
+Tks,
+Jeff Bailey
+
+--
+"It is easy to be blinded to the essential uselessness of computers by
+the sense of accomplishment you get from getting them to work at all."
+ - Douglas Adams
+
+
diff --git
a/packages/gnus-mock/data/test/mails/cur/1539195765.M68113P30788Q0.slip:2,
b/packages/gnus-mock/data/test/mails/cur/1539195765.M68113P30788Q0.slip:2,
new file mode 100644
index 0000000..ba327e3
--- /dev/null
+++ b/packages/gnus-mock/data/test/mails/cur/1539195765.M68113P30788Q0.slip:2,
@@ -0,0 +1,75 @@
+From address@hidden Sat Sep 16 01:00:42 2000
+Received: from sparky.nisa.net (address@hidden [207.194.212.4])
+ by mescaline.gnu.org (8.9.1a/8.9.1) with ESMTP id BAA02175;
+ Sat, 16 Sep 2000 01:00:41 -0400
+Received: (from address@hidden) by sparky.nisa.net (8.9.3/nisa4.7) id
WAA04437; Fri, 15 Sep 2000 22:00:13 -0700
+X-MailHub: mail.nisa.net
+Message-ID: <address@hidden>
+Date: Fri, 15 Sep 2000 22:00:12 -0700
+From: Jeff Bailey <address@hidden>
+To: address@hidden, address@hidden
+Cc: address@hidden, address@hidden, address@hidden
+Subject: Re: [Emacs-devel] Emacs move
+References: <address@hidden> <address@hidden> <address@hidden> <address@hidden>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=us-ascii
+X-Mailer: Mutt 0.91
+In-Reply-To: <address@hidden>; from Robert J. Chassell on Thu, Sep 14, 2000 at
05:50:01PM -0400
+Sender: address@hidden
+Errors-To: address@hidden
+X-BeenThere: address@hidden
+X-Mailman-Version: 2.0beta4
+Precedence: bulk
+List-Id: Emacs development (internal use) <emacs-devel.gnu.org>
+
+On Thu, Sep 14, 2000 at 05:50:01PM -0400, Robert J. Chassell wrote:
+> I think Jeff couldn't migrate the pserver passwords to subversions.
+> Did you receive a mail from Jeff asking for your access methods and
+> password?
+>
+> Not yet.
+
+Make sure you talk to Gerd to get you on the mailing list that he's
+created for people with write access to the repository. Otherwise,
+here's the spiel:
+
+Hello and welcome to Subversions, the GNU CVS server with an incredibly
+clever name.
+
+In order to give you access, I will need 2 things from you:
+
+1) Your prefered username.
+
+2) The method by which you will access your repository. We support 3
+methods right now:
+
+i) Kerberos
+ii) pserver
+iii) lsh
+
+If you would like to use Kerberos to access, I need to arrange to send
+you your password. A good way of doing this is to send me a GnuPG key.
+If this is difficult, I can postal mail the password to you, or arrange
+to be near a phone at a particular time to give it to you. If you have a
+`GNU.ORG' kerberos account already, please just send me the name.
+
+If you would like to use pserver, please send me your password encoded with
+`crypt'.
+
+If you would like to use lsh, please send me your DSA key. Sadly, I haven't
+gotten OpenSSH DSA keys to work yet. If you know how to do this, please
+let me know.
+
+These instructions are intentionally brief. If you need the detailed
+version or have any questions, please let me know.
+
+Please send any correspondance to address@hidden
+
+
+
+--
+"It is easy to be blinded to the essential uselessness of computers by
+the sense of accomplishment you get from getting them to work at all."
+ - Douglas Adams
+
+
diff --git a/packages/gnus-mock/gnus-mock.el b/packages/gnus-mock/gnus-mock.el
new file mode 100644
index 0000000..715aa27
--- /dev/null
+++ b/packages/gnus-mock/gnus-mock.el
@@ -0,0 +1,209 @@
+;;; gnus-mock.el --- Mock Gnus installation for testing -*- lexical-binding:
t; -*-
+
+;; Copyright (C) 2018 Free Software Foundation
+
+;; Author: Eric Abrahamsen <address@hidden>
+;; Maintainer: Eric Abrahamsen <address@hidden>
+;; Version: 0.1
+
+;; This program is free software; you can redistribute it and/or modify
+;; it under the terms of the GNU General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; This program is distributed in the hope that it will be useful,
+;; but WITHOUT ANY WARRANTY; without even the implied warranty of
+;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;; GNU General Public License for more details.
+
+;; You should have received a copy of the GNU General Public License
+;; along with this program. If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;; This module provides a reproducible Gnus installation, including
+;; dummy data, that can be used for Gnus development and testing.
+;; Call `gnus-mock-start' from your currently-running Emacs to start a
+;; new Emacs instance, skipping all user init (ie startup as -Q), but
+;; preloading a mock Gnus installation. All normal Gnus startup
+;; commands will begin a session within this mock installation.
+
+;; The developer can also specify a different Emacs executable to
+;; start (for instance, when working on a Git branch checked out in a
+;; worktree). This is controlled by the `gnus-mock-emacs-program'
+;; option.
+
+;; The mock session starts with some predefined servers, as well as
+;; some dummy mail data. At startup, all dummy data is copied into a
+;; temporary directory, which is deleted at shutdown. The environment
+;; can thus be loaded, tweaked, trashed, and re-loaded with impunity.
+;; To fully restore a clean testing environment, simply quit the Emacs
+;; process and restart it from the parent process by running
+;; `gnus-mock-start' again. Alternately it's possible to restart "in
+;; place" by calling `gnus-mock-reload', though, depending on what the
+;; developer has gotten up to, this isn't guaranteed to completely
+;; restore the environment.
+
+;; Users have two options for adding custom configuration to the mock
+;; session:
+
+;; - `gnus-mock-gnus-settings' can be set to a filename, the contents
+;; of which will be appended to the .gnus.el startup file in the
+;; mock session. This code will be executed at Gnus startup.
+
+;; - `gnus-mock-init-setting' should also be a filename, the contents
+;; of which will be appended to the init.el file that is loaded when
+;; the child Emacs process starts.
+
+;; It's possible to compose and send mail in a mock Gnus session; the
+;; mail will be sent using the value of `gnus-mock-sendmail-program'.
+;; If Python is available on the user's system, this option will be
+;; set to a Python program that simply accepts the outgoing mail and
+;; shunts it to the "incoming" mailbox of the pre-defined nnmaildir
+;; server.
+
+;;; Code:
+
+(require 'gnus)
+(require 'message)
+
+(defgroup gnus-mock nil
+ "Options for the mock Gnus installation."
+ :group 'gnus)
+
+(defcustom gnus-mock-gnus-file nil
+ "Path to an additional Gnus config file for mock Gnus.
+The contents of this file will be appended to gnus-mock's Gnus
+init file, which will be loaded when Gnus is started."
+ :group 'gnus-mock
+ :type 'file)
+
+(defcustom gnus-mock-init-file nil
+ "Path to an additional init config file for mock Gnus.
+The contents of this file will be appended to gnus-mock's init
+file, which will be loaded when the child Emacs process is
+started."
+ :group 'gnus-mock
+ :type 'file)
+
+(defcustom gnus-mock-emacs-program "emacs"
+ "Name of the Emacs executable to use for the mock session."
+ :group 'gnus-mock
+ :type 'string)
+
+
+(defcustom gnus-mock-cleanup-p t
+ "When non-nil, delete temporary files after shutdown.
+Each Gnus mock session will create a unique temporary directory,
+so multiple sessions will not conflict if this option is nil."
+ :group 'gnus-mock
+ :type 'boolean)
+
+(defcustom gnus-mock-use-images t
+ "When non-nil, use some cute Gnus-mock-specific images."
+ :group 'gnus-mock
+ :type 'boolean)
+
+(defcustom gnus-mock-sendmail-program
+ (when (executable-find "python") "fakesendmail.py")
+ "Program used as the value of `sendmail-program'."
+ :group 'gnus-mock
+ :type 'string)
+
+(defconst gnus-mock-data-dir
+ (file-name-as-directory (expand-file-name
+ "data"
+ (file-name-directory load-file-name)))
+ "Source directory for Gnus mock data.")
+
+;;;###autoload
+(defun gnus-mock-start ()
+ "Start a new Emacs process, with the Gnus mock setup.
+The new Emacs process will be started as \"-Q\", with the mock
+Gnus settings pre-loaded. Any of the normal Gnus entry points
+will start a mock Gnus session."
+ (interactive)
+ (let* ((mock-tmp-dir (make-temp-file "emacs-gnus-mock-" t))
+ (init-file (expand-file-name "init.el" mock-tmp-dir)))
+ (with-temp-buffer
+ (insert "(setq "
+ (format
+ "gnus-home-directory \"%s\"
+init-file-user \"%s\"
+sendmail-program \"%s\"
+message-directory \"%s\"
+gnus-startup-file \"%s\"
+gnus-init-file \"%s\"
+nndraft-directory \"%s\"
+gnus-agent-directory \"%s\"
+gnus-directory \"%s\"
+"
+ mock-tmp-dir
+ "mockturtle"
+ (expand-file-name gnus-mock-sendmail-program mock-tmp-dir)
+ mock-tmp-dir
+ (expand-file-name ".newsrc" mock-tmp-dir)
+ (expand-file-name ".gnus" mock-tmp-dir)
+ (expand-file-name "drafts/" mock-tmp-dir)
+ (expand-file-name "agent/" mock-tmp-dir)
+ (expand-file-name "News/" mock-tmp-dir))
+ ")\n\n")
+ ;; Constant that can be checked if we need to know it's a mock
+ ;; session.
+ (insert "(defconst gnus-mock-p t)\n")
+ ;; Constant for use in `gnus-mock-reload', which is defined in
+ ;; the .gnus.el startup file.
+ (insert (format "(defconst gnus-mock-data-dir \"%s\")\n"
+ gnus-mock-data-dir))
+ (when gnus-mock-cleanup-p
+ (insert
+ (format
+ "(add-hook 'kill-emacs-hook (lambda () (delete-directory \"%s\"
t)))\n"
+ mock-tmp-dir)))
+ (when gnus-mock-use-images
+ (insert
+ (format "(add-to-list 'load-path \"%s/data\")\n"
+ mock-tmp-dir)))
+ (write-file init-file))
+ ;; Put our data and config in place.
+ (copy-directory
+ gnus-mock-data-dir
+ (file-name-as-directory mock-tmp-dir) nil nil t)
+ ;; Git doesn't let us commit empty directories, so create our
+ ;; necessary empty maildir bits.
+ (mapc (lambda (path) (make-directory path t))
+ (mapcar (lambda (dir)
+ (format "%s/test/%s" mock-tmp-dir dir))
+ '("Welcome/new" "Welcome/tmp" "Welcome/.nnmaildir/marks"
+ "incoming/tmp" "incoming/new" "incoming/cur"
+ "incoming/.nnmaildir/marks" "incoming/.nnmaildir/nov"
+ "mails/tmp" "mails/new" "mails/.nnmaildir/marks")))
+ ;; Possibly insert additional config.
+ (when gnus-mock-init-file
+ (with-temp-buffer
+ (insert-file-contents gnus-mock-init-file)
+ (append-to-file
+ (point-min) (point-max) init-file)))
+ (when gnus-mock-gnus-file
+ (with-temp-buffer
+ (insert-file-contents gnus-mock-gnus-file)
+ (append-to-file
+ (point-min) (point-max)
+ (expand-file-name ".gnus.el" mock-tmp-dir))))
+ ;; There are absolute paths in the .newsrc.eld file, so doctor
+ ;; that file.
+ (with-current-buffer (find-file-noselect
+ (expand-file-name ".newsrc.eld" mock-tmp-dir))
+ (while (re-search-forward "REPLACE_ME" (point-max) t)
+ (replace-match mock-tmp-dir t))
+ (basic-save-buffer))
+ (condition-case nil
+ (make-process :name "gnus-mock" :buffer nil
+ :command (list gnus-mock-emacs-program
+ "-Q" "--load" init-file)
+ :stderr "*gnus mock errors*")
+ (error (when gnus-mock-cleanup-p
+ (delete-directory mock-tmp-dir t))))))
+
+(provide 'gnus-mock)
+;;; gnus-mock.el ends here