forked from jasontibbitts/majordomo
-
Notifications
You must be signed in to change notification settings - Fork 1
/
README.UPGRADE
378 lines (277 loc) · 14.7 KB
/
README.UPGRADE
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
Notes on upgrading from previous versions of Majordomo 2
2004.10.18 (CVS):
Previously, the lists-aux command show information about regular lists
and auxiliary lists together. Now, it only shows information about
auxiliary lists.
2003.05.29 (CVS):
Previously, messages sent to the Majordomo server which matched a
pattern in the block_headers setting were forwarded to the domain
owners. Now, those messages will be discarded.
2003.01.18 (CVS):
The format of the address in a bounce probe has changed. As a result,
the address that causes a bounce may be misindentified in a few cases
after Majordomo is upgraded. Upgrading during a quiet time should
minimize the effect of the format change.
2002.11.28 (CVS):
Instead of using syslog, debugging information for the mj_shell program
is now stored in the mj_shell.debug file. That file is located in the
same directory as the debugging files for the other interfaces.
2002.08.09 (CVS):
For security reasons, the tokeninfo-replace-part command will require
an administrative password by default if a "confirm" token is being
changed.
2002.06.04 (CVS):
The "accept" and "reject" format files used the NOTIFY substitution from
2002-05-27 to 2002-06-04. That substitution has been replaced with the
NOTIFIED substitution. If you customized any of the accept or reject
format files, you will need to edit them (using the get-edit and put
commands) and correct this substitution.
2002.05.25 (CVS):
Formerly, the CGIDATA substitution for the wwwadm format files included
the list name; now it does not. If you customized any of the wwwadm
format files that use the CGIDATA substitution, in particular the
foot, foot_global, head, and head_global format files, you will need
to edit them (using the get-edit and put commands) and correct this
substitution. The text "&list=$LIST" should be added to each URL that
contains the CGIDATA substitution.
2002.04.08 (CVS):
The "showtokens" command has a new syntax. If a command mode specifies
a particular token type, no other types will be displayed by default.
For example, the "showtokens-delay" command formerly showed all confirm,
consult, and delay tokens. Now, it only shows delay tokens.
2002.03.27 (CVS):
The "digests" configuration setting has a new, more readable format.
Existing values will be converted to the new format automatically.
2001.10.15 (CVS):
For files in the "format" directory, the CMDPASS substitution is
now used instead of the PASSWORD substitution (see "help variables"
for a description of substitution variables). If you have customized
files in the format directories (text, wwwadm, and wwwusr), they will
have to be edited to take this change into account.
2001.09.20 (CVS):
The attachment_rules configuration setting has been split into two
settings. The attachment rules setting will continue to support rules
that affect whether the message is accepted, held for moderation, or
denied entirely. If you wish to continue using rules that change
the contents of a message, you must change the attachment_filters setting
for each applicable list.
2001.09.18 (CVS):
A "msgid" field has been included in the archive databases to support
sorting the messages by thread with the archive-thread command. The
msgid field can be added to past databases by using the archive-sync
command for each message archive.
2001.09.12 (CVS):
The optional module Text::Reflow can be used for better results
when the attachment_filters setting causes a plain text body part to be
reformatted. To install Text::Reflow usually requires perl version
5.6.0 or newer. If Text::Reflow is installed, the attachment rules
will make use of it automatically. Text::Reflow 1.04 or newer is
required. The latest version is available from
http://www.dur.ac.uk/~dcs0mpw/martin/software/
If Text::Reflow is not installed, a simpler and cruder method for
breaking long lines will be used.
Previously, no more than one issue of a digest was delivered to
subscribers per hour. With the new "digest-check-repeat" command,
multiple issues can be sent automatically in a given hour. However,
to enable this feature, the "separate" field must be set to zero.
See "help configset_digests" for details on how to change the
"separate" field.
2001.09.03 (CVS):
Two modules, HTML::TreeBuilder and HTML::FormatText, are now required
to enable HTML message processing. Commands issued in HTML-only
messages will be processed, and the attachment_rules configuration
setting has a "format" action that allows text/html, text/enriched,
or text/richtext messages to be converted into plain text.
2001.03.01 (CVS):
The report command uses different semantics. Instead of
report LISTNAME ACTIONS DATES
it is now
report LISTNAME DATES ACTIONS
or
report LISTNAME DATES <<TAG
ACTIONS
TAG
The actions use a form similar to that of the inform setting. See
"help report" for full details.
2001.02.16 (CVS):
All new administrative passwords are converted to SHA-1 message digests
for security purposes. The site and domain master passwords are
converted automatically. The master password for each mailing list
can be converted manually with the configset command. Any existing
clear text administrative passwords will continue to work, so the
manual conversion process is not necessary.
The message checksums now use a 40-character SHA-1 digest. As a result,
the databases that Majordomo uses to determine if two posted messages are
duplicates will not correctly identify a message as a duplicate if
the same message was posted before the upgrade.
2001.01.29 (CVS):
The files in the file space of the GLOBAL pseudo-list are no longer
available automatically to the faq, get, info, and intro commands
for ordinary lists. To make a file available to all mailing lists,
store it, with the put command, in the DEFAULT file space.
2001.01.27 (CVS):
Digest bounces are now numbered, to allow the bounce rules to apply
to digest recipients. The bounce numbers for digests begin with
a zero, to differentiate them from regular bounce numbers.
2001.01.25 (CVS):
All of the mail delivered by Majordomo utilizes the delivery_rules
configuration setting. To configure delivery for server replies,
use the GLOBAL delivery_rules setting.
The installation default configuration settings are now stored
in the GLOBAL:_install and DEFAULT:_install templates. Use
the command
configshow-nocomments DEFAULT:_install
to see the settings. Do not change these settings with the configset
command: the changes will be overwritten when the software is
upgraded. More details may be found in the admin_domain help page.
2000.12.05 (CVS):
The aliases, allowed_flags, default_flags, and nonmember_flags settings
now take an array of full names instead of single-letter abbreviations.
The previous format of each setting is still supported. If these
settings are actually used by Majordomo, the values will be
converted automatically. However, any attempt to change these settings
to use the old format will fail.
2000.08.28 (CVS):
Due to the addition of the "triggers" configuration setting, only
the hourly trigger needs to be run by cron. If the daily trigger cron job
continues to run, the daily triggers will be invoked twice every morning
instead of once.
2000.07.25 (CVS):
Auxiliary lists now use the SubscriberList module instead of the
AddressList module to store addresses. To bring old auxiliary
lists up to date, run the rekey command.
1999.07.17 (CVS):
BerkeleyDB databases accessed through DB_File are now supported. The
configuration process will detect whether or not the module is available
and will prompt if it is.
If you wish to make use of DB databases, your old text databases must be
converted. The convertdb.pl script will take care of this. To use it:
1) Shut your MTA down to ensure that Majordomo doesn't run during the
process. This is vital.
2) If you run in queueing mode, shut any existing Majordomo daemons down
(run mj_shutdown).
3) Back up your lists directory, just in case.
4) As root, run convertdb.pl and give it the path to your list
directory: perl convertdb.pl /path/to/mj/lists
Your databases will be converted. The old text databases will be saved
by appending ".old" to their names.
5) Install the Majordomo upgrade.
6) Turn your MTA back on.
7) Test to verify that your lists were converted without problems.
1999.05.22 (CVS):
The 'whoami_owner' variable is now deprecated; use 'sender' instead.
1999.04.01 (CVS):
Backslashes in help files no longer need to be escaped, only expansion
variables that you don't want expanded.
1999.03.27 (CVS):
If you use /.../ matching in access_rules, you must force the variables to
be reparsed to pick up changes in the parsing code. Do this by setting teh
variables to their current value (perhaps by using configedit, writing back
the file and exiting).
1999.03.13 (CVS):
The FileSpace code is gutted; extended attributes are now contained in
dotfiles. In the directory containing domains, run the convertfs.pl script
(perl /path/to/convertfs.pl) to convert the _filespace.T database to
appropriate dotfiles. Be sure to back up before doing this. You can
delete the _filespace.T files afterwards.
1999.02.27 (CVS):
mj_trigger no longer needs to be called once per domain. Thus the crontab
reduces to calling
/path/to/mj_trigger -t daily
daily and
/path/to/mj_trigger -t hourly
once per hour. Old crontab entries will still work (as the -d option is
now optional), but it's probably best to update them.
The variable 'quote_regexp' has been renamed to 'quote_pattern' since it
takes a generalized pattern, not just a regular expression. If you had set
a non-default falue there, please extract the value before upgrading it and
set the new variable properly after upgrading.
1998.12.10(CVS):
Note that reply_to and subject_prefix are now included in the message
depending on per-user settings. The default flags _now_ include these two
settings, but users which were subscribed before this update will not have
the flags set and thus will not see aubject_prefix and reply_to settings.
The solution is to add the 'replyto' and 'subjectprefix' flags to all
subscribers if you wish for them to have those settings by default.
1998.11.10(CVS):
The names of the generated alias files have changed. The install
regenerates them , so you can delete the old ones. Be sure to redo your
sendmail configuration. If you had to make symlinks by hand to get
sendmail to accept the alias files, you can configure the installer to do
that for you now.
1998.10.16(snapshot):
The format of the 'digests' variable has changed. Nobody should be using
this yet anyway, but if you have it set then read up on the new structure
so that you won't get parsing errors.
1998.09.23(CVS):
The format and arrangement of the archives has changed; for each list that
is archiving, delete all archives and index directories. You may want to
save the archives themselves on some other location; eventually there will
be a tool to incorporate archives.
The format of the logfile has changed; you can convert by doing:
for i in */GLOBAL/_log; do perl -p -i.bak -e 's/\t/\001/g';done
1998.09.20(snapshot):
Makefile.PL prompts for a new configuration variable; be sure to rerun it.
The stock response files are now no longer stored in the doman's global
filespace, so these files must be removed. You can do this by doing the
installation as normal changing to $::LISTDIR and doing the following:
rm -rf */GLOBAL/files/stock
for i in *; do mj_shell -p site_password filesync GLOBAL; done
The mj_shell invocation just cleans the deleted entries from the file
database.
1998.09.18(snapshot):
This version is _incompatible_ with list database created earlier. This
comes from the fact that both the format of databases has changed (tabs are
replaced by \001) and the move to a registration database. To migrate,
first make a backup of $::LISTDIR. Then make temporary directory somewhere
safe and out of the Majordomo directory tree, Then, from that directory,
run the following to get the addresses on each list out into files that can
be imported later:
#!/bin/sh
for i in `mj_shell -p password lists-tiny`;
do
mj_shell -p password who $i | perl -e '<>;$l = ""; while (<>) {$l =~ s/^\s//;print $l; $l=$_}' > $i
done
Then cd to $::LISTDIR (the directory holding all of your domains) and
delete all of the subscriber databases:
find . -name _subscribers.T -print -exec rm {} \;
Then run the following (still in $::LISTDIR) to convert the database field
separators:
find . -name \*.T -print -exec perl -p -i.bak -e 's/\t/\001/g; s/%~%/\002/g' {} \;
Then make certain all of the files have the proper ownership, build and
install in the usual way.
Then cd back to that safe directory and run the following:
for i in *; do mj_shell -p password -f $i subscribe-quiet-noinform $i;done
to rebuild the subscriber databases and construct the registration database
properly. Note that this will not preserve flag settings or other bits of
per-subscriber data. After verifying proper functioning, you can delete
the .bak files; cd to $::LISTDIR and do:
find . -name \*.bak -print -exec rm {} \;
The upgrade should be finished.
Earlier:
postinstall (which is run at the end of the 'make install' step) is now
much less verbose; use 'make install VERBOSE=1 ASK=1' to get the old
behavior. See the README file for more information.
The mail interface has been revamped and now handles all functions that
accept mail through an alias. New aliases are required and a new config
variable must be set properly. Use createlist-force on each list with its
proper owner to do this, and update your aliases from the returned
information.
Before installing, the sessions directory must be moved to its new
location. (This provides a performance improvement.) Rename
GLOBAL/files/sessions to GLOBAL/files in each domain. Then make;make
install and run a filesync GLOBAL in each domain.
There are new Makefile.PL questions; be sure to rerun it and go through the
questions again. Things are likely to misbehave if the proper
configuration options are not defined properly (or at all).
You must answer 'y' to the "Create directories" prompt after make install
in order to create the new lock directory. You can also delete any and all
'.L' files that may exist in your lists directory.
The archiving scheme has changed completely; any archives that may have
been collected using previous versions need to be moved out of the way and
all of the dotfiles need to be deleted. The new archiving scheme will
automatically start if an archive directory exists under public in the
list's filespace. Mj2 will automatically create a .index directory under
that to store the indices. As of yet there is no tool to convert archives
to the new format. The archive-related config variables have also changed;
look over the settings of archive_split and archive_size.