summaryrefslogtreecommitdiffstats
path: root/Lib/rfc822.py
Commit message (Collapse)AuthorAgeFilesLines
* Whitespace normalization.Tim Peters2001-01-151-83/+83
|
* Duh. Instead of string.whitespace and string.digits, use isspace()Guido van Rossum2001-01-021-6/+5
| | | | and isdigit() methods.
* Get rid of string functions. References to string.whitespace,Guido van Rossum2000-12-151-63/+57
| | | | string.digits are left.
* Implement the suggestion of bug_id=122070: surround tell() call withGuido van Rossum2000-11-091-1/+5
| | | | try/except.
* AddrlistClass.getdomainliteral(): rfc822 requires that the domainBarry Warsaw2000-09-251-1/+1
| | | | | | literal be wrapped in square brackets. This fix replaces the square brackets that were previously being stripped off. Closes SF bug #110621.
* Support for augmented assignment in the UserList, UserDict, UserString andThomas Wouters2000-08-241-0/+14
| | | | | | rfc822 (Addresslist) modules. Also a preliminary testcase for augmented assignment, which should actually be merged with the test_class testcase I added last week.
* Spelling fixes supplied by Rob W. W. Hooft. All these are fixes in eitherThomas Wouters2000-07-161-1/+1
| | | | | | | | | | comments, docstrings or error messages. I fixed two minor things in test_winreg.py ("didn't" -> "Didn't" and "Didnt" -> "Didn't"). There is a minor style issue involved: Guido seems to have preferred English grammar (behaviour, honour) in a couple places. This patch changes that to American, which is the more prominent style in the source. I prefer English myself, so if English is preferred, I'd be happy to supply a patch myself ;)
* Untabify to pass the -tt test.Fred Drake2000-02-101-11/+11
|
* Fix by Nick Russo in processing of timezone in test program; theGuido van Rossum2000-01-171-2/+4
| | | | ParsedDate didn't have the correct day of week.
* Fix PR#3, submitted by Skip Montanaro: if no space appears after theGuido van Rossum1999-10-061-1/+1
| | | | colon, the first character of the value is lost.
* After much hemming and hawing, we decided to roll back Fred's change.Guido van Rossum1999-09-151-5/+5
| | | | | | It breaks Mailman, it was actually documented in the docstring, so it was an intentional deviation from the usual del semantics. Let's document the original behavior in Doc/lib/librfc822.tex.
* Message.__delitem__(): If the key doesn't exist in the dictionary,Fred Drake1999-09-101-5/+5
| | | | raise KeyError instead of failing silently!
* Correct typo in AddressList.__getitem__. By Moshe Zadka.Guido van Rossum1999-09-031-1/+1
|
* AddrlistClass.getaddress(): when parsing `:'s, in the loop, watch outBarry Warsaw1999-07-121-1/+2
| | | | | | for gotonext() pushing self.pos past the end of the string. This can happen if the message has a To field like "To: :" and you call msg.getaddrlist('to').
* Barry Scott writes:Guido van Rossum1999-06-151-1/+1
| | | | | | | | | | | | | | | | | | | Problem: rfc822.py in 1.5.2 final loses the quotes around quoted local-part names. The fix is to preserve the quotes around a local-part name in an address. Test: import rfc822 a = rfc822.AddrlistClass('(Comment stuff) "Quoted name"@somewhere.com') a.getaddrlist() The correct result is: [('Comment stuff', '"Quoted name"@somewhere.com')]
* Message.getheaders(): If there are no matching headers, return anFred Drake1999-06-141-2/+3
| | | | empty list instead of None. (Guido's request.)
* Mike Meyer reports a bug in his patch (several months ago) thatGuido van Rossum1999-04-291-0/+1
| | | | accepts long month names. One essential line was missing. Fixed now.
* Message.getheader(): Fixed grammatical error in docstring.Fred Drake1999-04-281-1/+26
| | | | | Message.getheaders(): Method to get list of all values for each instance of a named header. See docstring for more.
* Utility function that yields a properly formatted time string.Guido van Rossum1999-04-191-0/+10
| | | | | (Idea by Jeff Bauer, code by Jeremy, renamed and "Date:" constant stripped from return value by GvR.)
* Message.getaddrlist(): This now handles multiple occurances of theBarry Warsaw1999-01-141-12/+21
| | | | | | | | | | | | | | | | | | named header, so that if a message has, e.g. multiple CC: lines, all will get returned by the call to getaddrlist(). It also correctly handles addresses which show up in continuation lines. AdderlistClass.__init__(): Added \n to self.CR which fixes a bug that sometimes, an address would contain a bogus trailing newline. Message.getaddress(): In final else clause, added a test for the character we're at being in self.specials. Without this, such characters never get consumed and we infloop. Case in point (as posted to c.l.py): To: <[smtp:dd47@mail.xxx.edu]_at_hmhq@hdq-mdm1-imgout.companay.com> ----------------------------^ otherwise we'd infloop here
* Patch by Mike Meyer:Guido van Rossum1998-12-231-5/+19
| | | | | | | | Extended the rfc822 parsedate routines to handle the cases they failed on in an archive of ~37,000 messages. I believe the changes are compatible, in that all previously correct parsing are still correct. [I still see problems with some messages, but no showstoppers.]
* Avoid crash in parsedate_tz() on certain invalid dates -- when theGuido van Rossum1998-12-231-1/+3
| | | | | | field assumed to be the time is in fact the year, the resulting list doesn't have enough items, and this isn't checked for. Return None instead.
* Don't use calculations on values gotten from tell(). Also use aGuido van Rossum1998-07-211-4/+11
| | | | slightly different way to test for the existence of unread.
* Bugfix to ESR's code reported by himself: should use hasattr() to testGuido van Rossum1998-06-221-1/+1
| | | | for presence unread, not getattr()!
* Add __getitem__ to AddressList object, to make it a sequence.Guido van Rossum1998-06-161-0/+4
|
* Some extra comments and docstrings, and a new class (AddressList), all by ESR.Guido van Rossum1998-06-161-1/+48
|
* Support new overridable method, isheader() (ESR).Guido van Rossum1998-06-111-24/+48
| | | | Also implement __setitem__(), more-or-less correctly (GvR).
* Some changes suggested/provided by Eric Raymond:Guido van Rossum1998-06-101-7/+52
| | | | | | | | | | | | | - explain seekable - when seekable==1, test fp.tell() and set it to 0 if that fails - support overridable method iscomment(line) to weed out comments - check for unread() method on file object before trying to seek And one of my own: - Add a get() method which behaves like a dictionary's get(); this is actually implemented by giving getheader() an optional second argument to specify the default, and aliasing get to getheader.
* Neatify the _timezones table and remove a misleading comment aboutGuido van Rossum1998-05-181-12/+5
| | | | inaccuracies in mktime_tz().
* Added a __delitem__ to the Message class.Guido van Rossum1998-04-021-0/+22
| | | | (Still no __setitem__, until I get a request to add it!)
* Mass check-in after untabifying all files that need it.Guido van Rossum1998-03-261-17/+17
|
* Initialize adlist variable in getrouteaddr(), so an illegal addressGuido van Rossum1998-03-031-0/+1
| | | | doesn't cause a traceback.
* Feature added by Bill van Melle: when no timezone is present, assumeGuido van Rossum1998-02-191-7/+14
| | | | local time -- that's better than failure.
* Fix sign reversal in mktime_tz discovered by Bill van Melle.Guido van Rossum1998-02-181-1/+1
|
* Remove unneeded "import re".Guido van Rossum1997-12-111-1/+0
|
* Doc strings and reformatting with 4 spaces bty Mitch Chapman.Guido van Rossum1997-12-101-609/+661
| | | | Untabified and minor tweaks by me.
* New address parser by Ben Escoto replacesGuido van Rossum1997-11-221-125/+247
| | | | Sjoerd Mullender's parseaddr()
* Convert all remaining *simple* cases of regex usage to re usage.Guido van Rossum1997-10-221-5/+4
|
* Entirely rewritten parseaddr() function by Sjoerd Mullender.Guido van Rossum1997-09-151-53/+92
| | | | (Includes a patch he sent me a few days later.)
* Tweaks by Lars Wirzenius to parse some more forms of illegal dates:Guido van Rossum1997-07-251-2/+5
| | | | | | | | the comma after the day name is optional if it is a recognized day name; and the date and month may be swapped. Thus, the following two test dates will now be parsed correctly: Thu, Feb 13 12:16:57 1992 Thu Feb 13 12:16:57 1992
* Added support for RFC 850 style dates, as used by some HTTP serversGuido van Rossum1996-12-271-0/+4
| | | | | | | | (such as Netscape-Commerce and CERN). An example of a RFC 850 date: 'Wednesday, 18-Dec-96 21:00:00 GMT' From: Chris Lawrence <quango@themall.net>
* Add mktime_tz() which turns a date_tz 10-tuple into a standard Unix timestamp.Guido van Rossum1996-12-121-0/+11
|
* Added support for timezone in date field. getdate_tz() andGuido van Rossum1996-11-201-6/+57
| | | | | parsedate_tz() return a 10-tuple, the last field is the tz offset in seconds (e.g. -18000 or -5 hours for EST).
* New, improved parseaddr() by Sjoerd.Guido van Rossum1996-07-301-30/+83
|
* optimization of getheader() using a dictionaryGuido van Rossum1996-05-281-45/+33
|
* added seekable option; save unix from lines; speed up islast()Guido van Rossum1995-06-221-12/+24
|
* Removed >From stuffJack Jansen1995-06-161-2/+1
|
* Skip old-style 'From name time' lines at beginning of message.Jack Jansen1995-06-131-0/+6
|
* mhlib.py: delay opening of sequences file so we don't overwrite it whenGuido van Rossum1994-09-091-1/+8
| | | | | | putsequences is called with a bad argument rfc822.py: better handling of dates with no or bad timezones uu.py: contributed by Lance -- uu{en,de}code
* * Lib/rfc822.py: fix two bugs: error in readheaders interpretingGuido van Rossum1994-08-121-5/+5
| | | | | regex.match() result, and wrong logic in getfirstmatchingheader() when the same header occurs twice consecutively