rss2email: Fix "Python 3.2 or newer" typo
[rss2email.git] / CHANGELOG
1 v3.10 (unreleased)
2     * Catch and warn for invalid Content-Types.
3     * Add a manually extracted list of config options to r2e.1.
4     * Add a redirect post-process module.
5
6 v3.9 (2014-09-01)
7     * Catch and error out if a user adds a feed with a duplicate name.
8     * Split sender into both sendmail's -F and -f.
9     * Fix an error with SMTPConnectionError inheritance order ("does not take keyword arguments").
10     * Add a new `smtp-ssl-protocol` setting, to select acceptable protocols for SMTP connections.
11     * Fix non-compliant User-Agent header for HTTP/1.1.
12     * Fix an error in the NoToEmailAddress invocation.
13     * Add a new `trust-link` setting, to prefer the `link` attribute over the `id` attribute for identifying entries.
14
15 v3.8 (2014-01-18)
16     * Sluggify feed names on opmlimport.
17     * Allow Unicode letters and digits in feed names, instead of just ASCII letters and digits.
18
19 v3.7 (2013-10-11)
20     * Fix fallback for titles that contain malformed HTML.
21     * Fix atomic saves to avoid garbling config and data files if the disk is full.
22     * Convert the `friendly-name` boolean to the new `name-format` setting.  This allow users to customize how the friendly name is constructed.
23     * Demote guessed encodings logs from 'error' to 'warning'.
24
25 v3.6 (2013-09-09)
26     * Fix missing port argument for IMAPAuthenticationError.
27     * Fix `<div id="entry>` syntax error in HTML mail.
28
29 v3.5 (2013-06-05)
30     * Added digest generation and post-processing hooks.
31     * Fix html2text configuration (ignored since 2012-10-04).
32     * Fix opmlexport crash due to orphaned feed data.
33     * Use feed names in OPML 'text' attributes.
34
35 v3.4 (2013-05-14)
36     * Added post-processing hooks for user-specified message manipulation.
37     * Added settings for IMAP delivery.  The old `use-smtp` boolean has been replaced by a new `email-protocol` setting.  Non-IMAP users should adjust their configuration to set `email-protocol` to either `sendmail` or `smtp`.
38
39 v3.3 (2013-04-13)
40     * Fix SMTP message submission logic.
41     * Fix error inheritance (super() calls).
42     * Convert html2text parsing errors to `ProcessingError`s.
43     * Cleanup html2text error handling.
44     * Drop Google Reader rel-via manipulation.
45     * Drop the wrapping <table> elements from HTML mail
46
47 v3.2 (2013-03-13)
48     * Use extended interpolation in configuration files, to allow percent signs (%).
49     * Added .as_string() fallback to email flattening (only used if `use-smtp = False` and `use-8bit = True`).
50     * Added sendmail configuration option.  Change this if you want to use an alternative, sendmail-compatible mailer.
51
52 v3.1 (2013-02-14)
53     * Import __url__, __author__, and __email__ in rss2email.error, which fixes bugs in formatting a number of errors.
54
55 v3.0 (2013-02-13)
56     * Changed project email (rss2email@tremily.us) and homepage (http://github.com/wking/rss2email).
57     * Split static configuration parameters into a ConfigParser-read config file (rss2email.cfg).  Data that depends on the feed state is recorded using JSON (rss2email.json).
58     * Use the XDG Base Directory Specification for standardized configuration and data file locations.
59     * Converted the command line interface to argparse, with some restructuring along the way.
60     * Added the r2e.1 man page (based on one from the Debian package).
61     * Added setup.py and a PyPI page for simpler installation (http://pypi.python.org/pypi/rss2email).
62     * Added Message-ID headers to outgoing email.
63     * Added a test suite.
64     * Upgraded to Python 3.2 to take advantage of cleaner Unicode handling and argparse.
65     * Require Signed-off-by lines in new commit messages, following the Linux and Git projects.
66
67 v2.71 (2011-03-04)
68     * Upgraded to feedparser v5.01! (http://code.google.com/p/feedparser/)
69     * Upgrade to html2text v3.01! (https://github.com/aaronsw/html2text)
70     * Potentially safer method for writing feeds.dat on UNIX
71     * Handle via links with no title attribute
72     * Handle attributes more cleanly with OVERRIDE_EMAIL and DEFAULT_EMAIL
73
74 v2.70 (2010-12-21)
75     * Improved handling of given feed email addresses to prevent mail servers rejecting poorly formed Froms
76     * Added X-RSS-TAGS header that lists any tags provided by an entry, which will be helpful in filtering incoming messages
77
78 v2.69 (2010-11-12)
79     * Added support for connecting to SMTP server via SSL, see SMTP_SSL option
80     * Improved backwards compatibility by fixing issue with listing feeds when run with older Python versions
81     * Added selective feed email overrides through OVERRIDE_EMAIL and DEFAULT_EMAIL options
82     * Added NO_FRIENDLY_NAME to from from address only without the friendly name
83     * Added X-RSS-URL header in each message with the link to the original item
84
85 v2.68 (2010-10-01)
86     * Added ability to pause/resume checking of individual feeds through pause and unpause commands
87     * Added ability to import and export OPML feed lists through importopml and exportopml commands
88
89 v2.67 (2010-09-21)
90     * Fixed entries that include an id which is blank (i.e., an empty string) were being resent
91     * Fixed some entries not being sent by email because they had bad From headers
92     * Fixed From headers with HTML entities encoded twice
93     * Compatibility changes to support most recent development versions of feedparser
94     * Compatibility changes to support Google Reader feeds
95
96 v2.66 (2009-12-21)
97     * Complete packaging of all necessary source files (rss2email, html2text, feedparser, r2e, etc.) into one bundle
98         o Included a more complete config.py with all options
99         o Default to HTML mail and CSS results
100     * Added 'reset' command to erase history of already seen entries
101     * Changed project email to 'lindsey@allthingsrss.com' and project homepage to 'http://www.allthingsrss.com/rss2email/'
102     * Made exception and error output text more useful
103     * Added X-RSS-Feed and X-RSS-ID headers to each email for easier filtering
104     * Improved enclosure handling
105     * Fixed MacOS compatibility issues
106
107 v2.65 (2009-01-05)
108     * Fixed warnings caused by Python v2.6 (using hashlib, removing mimify, etc.)
109     * Deprecated QP_REQUIRED option as this is more than likely no longer needed and part of what triggered Python warnings
110     * Fixed unicode errors in certain post headers
111     * Attempted to incorporate Debian/Ubuntu patches into the mainstream release
112     * Support img type enclosures
113     * No file locking for SunOS
114
115 v2.64 (2008-10-21)
116     * Bug-fix version
117         o Gracefully handle missing charsets
118         o Friendlier and more useful message if sendmail isn't installed
119         o SunOS locking fix
120
121 v2.63 (2008-06-13)
122     * Bug-fix version and license change:
123         o Licensed under GPL 2 & 3 now
124         o Display feed number in warning and error message lines
125         o Fix for unicode handling problem with certain entry titles
126
127 v2.62 (2008-01-14)
128     * Bug-fix version:
129         o Simplified SunOS fix
130         o Local feeds (/home/user/file.xml) should work
131
132 v2.61 (2007-12-07)
133     * Bug-fix version:
134         o Now really compatible with SunOS
135         o Don't wrap long subject headers
136         o New parameter CHARSET_LIST to override or supplement the order in which charsets are tried against an entry
137         o Don't use blank content to generate id
138         o Using GMail as mail server should work
139
140 v2.60 (2006-08-25)
141     * Small bug-fix version:
142         o Now compatible with SunOS
143         o Correctly handle international character sets in email From
144
145 v2.59 (2006-06-09)
146     * Finally added oft-requested support for enclosures. Any enclosures, such as a podcast MP3, will be listed under the entry URL
147     * Made feed timeout compatible with Python versions 2.2 and higher, instead of v2.4 only
148     * Added optional, configurable CSS styling to HTML mail. Set USE_CSS_STYLING=1 in your config.py to enable this. If you want to tweak the look, modify STYLE_SHEET.
149     * Improved empty feed checking
150     * Improved invalid feed messages
151     * Unfortunately, rss2email is no longer compatible with Python v2.1. Two of the most serious lingering issues with rss2email were waiting forever for non-responsive feeds and its inability to properly handle feeds with international characters. To properly fix these once and for all, rss2email now depends on functionality that was not available until Python v2.2. Hopefully this does not unduly inconvenience anyone that has not yet upgraded to a more current version of Python.
152
153 v2.58 (2006-05-11)
154     * Total rewrite of email code that should fix encoding problems
155     * Added configurable timeout for nonresponsive feeds
156     * Fixed incorrectly using text summary_detail instead of html content
157     * Fixed bug with deleting feed 0 if no default email was set
158     * Print name of feed that is being deleted
159
160 v2.57 (2006-04-07)
161     * Integrated Joey Hess's patches
162        o First, a patch that makes delete more reliable, so it no longer allows you to remove the default email address ('feed' 0) and thereby hose your feed file, or 'remove' entries that don't exist without warning; and so it only says IDs have changed when they really have. Originally from http://bugs.debian.org/313101
163        o Next a patch that avoids a backtrace if there's no email address defined, and outputs a less scary error message.
164        o Next, a simple change to the usage; since the "email" subcommand always needs a parameter, don't mark it as optional.
165        o And, avoid a backtrace if the email subcommand does get run w/o a parameter.
166        o And also avoid backtraces if delete is run w/o a parameter. Also adds support for --help.
167        o Simple change, make a comment match reality (/usr/sbin/sendmail)
168        o This avoids another backtrace, this time if there's no feed file yet. [load()]
169        o Add a handler for the AttributeError exception, which feedparser can throw. Beats crashing..
170        o Next, four hunks that make it more robust if no default email address is set and feeds are added w/o an email address. This patch originally comes from http://bugs.debian.org/310485 which has some examples.
171        o Finally, this works around a bug in mimify that causes it to add a newline to the subject header if it contains very long words. Details at http://bugs.debian.org/320185. Note that Tatsuya Kinoshita has a larger patch toward the end of that bug report that deals with some other problems in this area, Aaron has seen that patch before and said it "looks pretty reasonable".
172     * add() catches error case on first feed add and no email address is set
173     * Made "emailaddress" consistent param label throughout
174     * Error message improvements
175     * Deleted problematic "if title" line
176     * Deleted space in front of SMTP_USER
177     * Only logs into SMTP server once
178     * Added exception handling around SMTP server connect and login attempt
179     * Broke contributors across multiple lines
180
181 v2.56 (2006-04-04)
182     * SMTP AUTH support added
183     * Windows support
184     * Fixed bug with HTML in titles