| Commit message (Collapse) | Author | Files | Lines |
|
an attached message/rfc822 part if the message in that part is
multipart/alternative and collapse_alternatives is Yes. Bug #757062.
|
|
We want to keep the headers.
|
|
mitigate Outlook et al 'on behalf of' displays. Bug #736849.
|
|
list-bounces. Bug #714424.
|
|
Bug #705715.
|
|
part with just one sub-part. These should be recast to just the sub-part.
Bug #701558.
|
|
which confuses Outlook (formerly known as FAQ 2.3). See also <http://mail.python.org/pipermail/mailman-developers/2006-July/019040.html>. Bug #266824.
|
|
|
|
a text/html alternative to allow for an inserted '\xA0' before the
password.
|
|
multipart/alternative parts. Bug #576675.
|
|
Approved: and Approve: for pre-approving posts. Bug ##557750.
|
|
digest.mbox throws an exception.
|
|
that precedes Approve (SpamDetect by default) would not have the
Approved: header removed if the held message was approved. Bug #501739.
|
|
|
|
-subscribe and -unsubscribe as requests rather than posts. Bug #427962.
|
|
In addition, Mailman no longer escapes From_ lines in the body of
messages sent to regular list members, although MTA's may do it anyway.
This is to avoid breaking signatures per Bug #265967. Changes include
- Message.py, added a Generator class to avoid header folding and an
as_string() method wirth a mangle_from_ argument.
- Mailbox.py, uses new Message.Generator class.
- SMTPDirect.py, uses as_string(mangle_from_=False) to flatten message.
- Scrubber.py, removed unused ScrubberGenerator class.
|
|
|
|
|
|
|
|
unicode of a header/footer that was already unicode because of interpolating
a unicode value.
Made a minor change to the authentication logic for displaying hidden
members on the roster.
|
|
email packages, convert all the email message get_type() calls to
get_content_type().
|
|
in the To: or Cc: header differed in case from the case-preserved member
address. Bug #297795.
|
|
I've modified the patch to improve some of the stylistic issues.
|
|
and footers to leave a trailing space on a '-- ' signature separator.
|
|
|
|
would insert an extra space between the prefix and the subject.
|
|
message with no part headers for the original body part (1991348).
|
|
or regular_(in|ex)clude_lists.
Handlers/CalcRecips.py - Log and skip any self reference lists in
regular_(in|ex)clude_lists.
Compare To: and Cc: addresses and
regular_(in|ex)clude_lists case insensitively.
Handlers/Moderate.py - Log and skip any self reference lists in
*_these_nonmembers.
|
|
header to go to the options login page instead of the
listinfo page.
options.py - Changed to only issue the "No address given" error if coming
from the page itself so we don't get the error when linking
from another page or the List-Unsubscribe: header.
- Changed to remember the user's language selection when
redisplaying the page after an error.
|
|
obscure circumstances when scanning the message body
for "unprocessed" commands.
Moderate.py - Modified to not try to match "@listname" directly against
the sender address.
|
|
|
|
metadata. Specifically, if the metadata has a 'decoration-data' key, the
value should be a dictionary with extra interpolation keys.
Also fix a bug in the way the 'extradict' default value is passwed to
decorate. This should never be a mutable object.
|
|
lists whose members are exclude or included if they appear in To:
or Cc:. (Patch ID 1347962)
|
|
|
|
Gui/GuiBase.py
Gui/Privacy.py
Handlers/Moderate.py - Patched with a slightly modified version of sf patch
1220144 - allow specifying another list in
accept_these_nonmembers.
|
|
Fixed an issue where an implicit text/plain part without any headers gets
lost.
Moved the cleansing of the filename extension to a place where it is
guaranteed to be a string as opposed to an empty list.
|
|
message that Mailman adds to the admin notification.
|
|
- Handlers/CalcRecips.py - Changed to not process topics if topics
are disabled for the list.
|
|
|
|
lower cased *_filename_extensions. Fixed.
|
|
|
|
previous commit.
- Normalized a couple more 'URL:'.
- Improved handling of None payloads.
- Cleaned up a few charset coercions.
OutgoingRunner.py - Made probe bounce processing and queuing of bounces
conditional on having some permanent failure(s).
|
|
charset="quoted-printable" parameter, quopri_encode can be
called at t = t.encode(charset, 'replace') which throws
an AssertionError. See log message for r. 8213. Caught this.
- Malformed RFC 2047 encoded filename= parameter can have
a null byte or other garbage in the extension. Cleaned this.
- A message with a message/delivery-status part returns
None for the part's payload. Checked for a payload before
attempting unicode/encode.
|
|
before looking for/deleting the Approve(d): line.
|
|
but it looks like thare is a buggy MUA or spammer who declairs like so:
Content-Type: text/plain; charset=base64
:-(
|
|
The email address which forms a part of the various CGI data keys
in the admin membership list is now urllib.quote()ed. This allows
changing options for and unsubbing an address which contains a
double-quote character.
- CGI/admindb.py
Added additional test to not display "Database Updated ..." when
coming from the login page.
- CGI/roster.py, HTMLFormatter.py
Changed to show hidden members when authorization is site or list's
admin or moterator password. Patch 1587651.
- Defaults.py.in, Handlers/Cleanse_DKIM.py
Added a new REMOVE_DKIM_HEADERS Defaults.py/mm_cfg.py setting (default
= No) to control removing dkim/domainkey signatures from posts and
mail to -owner.
- Handlers/Decorate.py, Handlers/Scrubber.py
Changed to preserve format=flowed and delsp=yes in the Content-Type:
of the body when adding header/footer and when scrubbing attachments
and to remove trailing spaces from the header/footer lines so they
won't be flowed. Bug 1495122.
Fixed a scrubber issue where the i18n translated 'next part' separator
can be garbled if the list charset is different from the message.
- Queue/Runner.py. Queue/Switchboard.py
Now that we have .bak queue entries for recovery, it is no longer the
case that an unparseable message is lost. In this case, and in case
of other exceptions when dequeueing, I added a preservation feature
to move the .bak file to qfiles/shunt as a .psv file and write an
appropriate log entry. It is also possible for an attempt to shunt
a message to fail. One example that occurred in practice (bug 1656289)
was caused by a huge message that threw a MemoryError in processing and
then threw another MemoryError in the attempt to pickle the message for
the shunt queue. In this case as well, I log and attempt to preserve
the original queue entry by renaming.
|
|
|
|
yet ready to work from the trunk). Also, get rid of all the obsolete
.cvsignore directories, they're no longer needed.
Almost ready for 2.1.9rc1!
|
|
- In SecurityManager.py, fix the parsecookie() code to work with Python 2.5
generated cookie text. The latter was changed to be more RFC compliant so
it does not output trailing semicolons for each line of cookie text. This
broke the splitting rules, so now first split on newlines, then on ';\s*'.
This should work across all Python versions.
- In Python 2.5, exceptions are new-style, and thus are no longer of
ClassType. The instantiation type test in hold_for_approval() was too
naive. This one is fixed differently here than in the MM trunk because in
Python 2.1, 'type' isn't a type, it's a function and so can't be used as the
second argument to isinstance() directly.
- Raising strings generates deprecation warnings in Python 2.5. Switch the
one weird use of this in Utils.py to use a class exception. Don't call it
"quick exit" though because it's probably not.
|
|
outside the character set of the list's language.
- Utils.py Fixed a security hole which allowed a crafted URI to inject
bogus apparent messages into the error log, possibly inducing an admin to
visit a phishing site.
|