forked from rss2email/rss2email
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
262 lines (227 loc) · 14.8 KB
/
CHANGELOG
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
UNRELEASED
* Support sending mail via LMTP
v3.14 (2022-08-26)
* New `digest-type` configuration adds optional more widely supported `multipart/mixed` format
* New argument `--only-new` on the `add` command to ignore entries in feed
when added, so only new entries will be sent.
* Fix exception when parsing a feed with a linebreak in its title
* Add a new `subject-format` setting, customise the subject line
* Removed '$' interpolation in config file to allow URLs containing dollar signs. Interpolation was not fully supported, and the placeholder would not survive a second save. Config files with ${...} placeholders will need to be manually edited after upgrading, or a save forced by adding and removing a fake feed before upgrading.
* Fix default HTTP User-Agent to use `rss2email` instead of `feedparser`, and fix `user-agent` setting to consistently apply to both outgoing emails and HTTP requests. This introduces a couple of potentially breaking changes:
o Configurations that came to rely on the `feedparser` UA string should adjust to the updated UA string going forward.
o Configurations that came to rely on the unintended behaviour, that configuring the User-Agent header in emails does not affect HTTP requests, should use a custom `post-process` hook instead.
v3.13.1 (2021-05-15)
* Fix crash on html-mail entries with no URL
v3.13 (2021-04-03)
* Switch to feedparser 6
* Switch to poetry instead of requirements.txt
* Make the `verbose` flag in the config file actually have an impact, and have it default to `info
* Improve log messages
* Remove documentation of `smtp-ssl-protocol` as this option was dropped in 2016
* Stop forging SMTP and sendmail envelope sender (#134)
* Add sendmail_config option
* Upgraded to feedparser v6.0 (https://github.com/kurtmckee/feedparser/)
* Drop support for Python 3.5, add support for Python 3.9
* Log sendmail output
* Support multipart/alternative emails with both HTML and plain text parts with option `multipart-html`
* Add inline-links option, allowing links to be sent to the bottom of the
paragraph
* Add wrap-links option, preventing links from be wrapped over multiple lines
* Stop looking in $XDG_DATA_DIRS for the database, and only look in
$XDG_DATA_HOME
* Warnings about HTTP content-type being unexpected now properly display
* Make the proxy parameter also affect https connections
* Add a --clean argument on the run command to reduce the database size
* Set body element attribute dir=auto in HTML mail
* Store the lock file in XDG_RUNTIME_DIR instead of /tmp
v3.12.3 (2021-03-19)
* Make dependency on feedparser have an upper bound so that `pip install`
works again
v3.12.2 (2020-08-31)
* Fix bug `AttributeError: 'NoneType' object has no attribute 'close'` (#126)
v3.12.1 (2020-08-02)
* Fix calling opmlexport without arguments
v3.12 (2020-08-02)
* Drop support for EOL Python 3.4, add support for Python 3.8
* Add List_ID and List_Post headers to the generated emails
* Add a new `reply-changes` setting
* Improve configurability of text wrapping for the emails
* Use `platform.node()` instead of "dev.null.invalid" in "Message-ID" header
* Improve locking support for when multiple rss2email instances are run in parallel
* Fix handling of __VERSION__ and __URL__ in user-agent strings
* Fix opmlexport
v3.11 (2019-10-26)
* Add new `user-agent` attribute for configuring email User-Agent
v3.10 (2019-09-01)
* Catch and warn for invalid Content-Types
* Add a manually extracted list of config options to r2e.1
* Add a redirect post-process module
* Follow symlinks of datafiles
* Add zsh completion
* Add support for maildir
* Fix `r2e new` overwriting an existing config
* Add new `feed-name` and `feed-url` attributes for the `name-format` setting
* Change logging format
* Allow multiple SMTP recipients
* Fix SMTP security issues
* Fix test suite
* Drop support for Python 3.2 and 3.3
* Remove `__contributors__` from the `rss2email` module
* Stop using deprecated `html2text.unescape`
* Fix locking issues when data file is on NFS
* Add `same-server-fetch-interval` setting for rate-limiting fetches to a server
* Update setup.py to setuptools
v3.9 (2014-09-01)
* Catch and error out if a user adds a feed with a duplicate name
* Split sender into both sendmail's -F and -f
* Fix an error with SMTPConnectionError inheritance order ("does not take keyword arguments")
* Add a new `smtp-ssl-protocol` setting, to select acceptable protocols for SMTP connections
* Fix non-compliant User-Agent header for HTTP/1.1
* Fix an error in the NoToEmailAddress invocation
* Add a new `trust-link` setting, to prefer the `link` attribute over the `id` attribute for identifying entries
v3.8 (2014-01-18)
* Sluggify feed names on opmlimport
* Allow Unicode letters and digits in feed names, instead of just ASCII letters and digits
v3.7 (2013-10-11)
* Fix fallback for titles that contain malformed HTML
* Fix atomic saves to avoid garbling config and data files if the disk is full
* Convert the `friendly-name` boolean to the new `name-format` setting. This allow users to customize how the friendly name is constructed
* Demote guessed encodings logs from 'error' to 'warning'
v3.6 (2013-09-09)
* Fix missing port argument for IMAPAuthenticationError
* Fix `<div id="entry>` syntax error in HTML mail
v3.5 (2013-06-05)
* Added digest generation and post-processing hooks
* Fix html2text configuration (ignored since 2012-10-04)
* Fix opmlexport crash due to orphaned feed data
* Use feed names in OPML 'text' attributes
v3.4 (2013-05-14)
* Added post-processing hooks for user-specified message manipulation
* 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`
v3.3 (2013-04-13)
* Fix SMTP message submission logic
* Fix error inheritance (super() calls)
* Convert html2text parsing errors to `ProcessingError`s
* Cleanup html2text error handling
* Drop Google Reader rel-via manipulation
* Drop the wrapping <table> elements from HTML mail
v3.2 (2013-03-13)
* Use extended interpolation in configuration files, to allow percent signs (%)
* Added .as_string() fallback to email flattening (only used if `use-smtp = False` and `use-8bit = True`)
* Added sendmail configuration option. Change this if you want to use an alternative, sendmail-compatible mailer
v3.1 (2013-02-14)
* Import __url__, __author__, and __email__ in rss2email.error, which fixes bugs in formatting a number of errors
v3.0 (2013-02-13)
* Changed project email ([email protected]) and homepage (http://github.com/wking/rss2email)
* 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)
* Use the XDG Base Directory Specification for standardized configuration and data file locations
* Converted the command line interface to argparse, with some restructuring along the way
* Added the r2e.1 man page (based on one from the Debian package)
* Added setup.py and a PyPI page for simpler installation (http://pypi.python.org/pypi/rss2email)
* Added Message-ID headers to outgoing email
* Added a test suite
* Upgraded to Python 3.2 to take advantage of cleaner Unicode handling and argparse
* Require Signed-off-by lines in new commit messages, following the Linux and Git projects
v2.71 (2011-03-04)
* Upgraded to feedparser v5.01! (http://code.google.com/p/feedparser/)
* Upgrade to html2text v3.01! (https://github.com/aaronsw/html2text)
* Potentially safer method for writing feeds.dat on UNIX
* Handle via links with no title attribute
* Handle attributes more cleanly with OVERRIDE_EMAIL and DEFAULT_EMAIL
v2.70 (2010-12-21)
* Improved handling of given feed email addresses to prevent mail servers rejecting poorly formed Froms
* Added X-RSS-TAGS header that lists any tags provided by an entry, which will be helpful in filtering incoming messages
v2.69 (2010-11-12)
* Added support for connecting to SMTP server via SSL, see SMTP_SSL option
* Improved backwards compatibility by fixing issue with listing feeds when run with older Python versions
* Added selective feed email overrides through OVERRIDE_EMAIL and DEFAULT_EMAIL options
* Added NO_FRIENDLY_NAME to from from address only without the friendly name
* Added X-RSS-URL header in each message with the link to the original item
v2.68 (2010-10-01)
* Added ability to pause/resume checking of individual feeds through pause and unpause commands
* Added ability to import and export OPML feed lists through importopml and exportopml commands
v2.67 (2010-09-21)
* Fixed entries that include an id which is blank (i.e., an empty string) were being resent
* Fixed some entries not being sent by email because they had bad From headers
* Fixed From headers with HTML entities encoded twice
* Compatibility changes to support most recent development versions of feedparser
* Compatibility changes to support Google Reader feeds
v2.66 (2009-12-21)
* Complete packaging of all necessary source files (rss2email, html2text, feedparser, r2e, etc.) into one bundle
o Included a more complete config.py with all options
o Default to HTML mail and CSS results
* Added 'reset' command to erase history of already seen entries
* Changed project email to '[email protected]' and project homepage to 'http://www.allthingsrss.com/rss2email/'
* Made exception and error output text more useful
* Added X-RSS-Feed and X-RSS-ID headers to each email for easier filtering
* Improved enclosure handling
* Fixed MacOS compatibility issues
v2.65 (2009-01-05)
* Fixed warnings caused by Python v2.6 (using hashlib, removing mimify, etc.)
* Deprecated QP_REQUIRED option as this is more than likely no longer needed and part of what triggered Python warnings
* Fixed unicode errors in certain post headers
* Attempted to incorporate Debian/Ubuntu patches into the mainstream release
* Support img type enclosures
* No file locking for SunOS
v2.64 (2008-10-21)
* Bug-fix version
o Gracefully handle missing charsets
o Friendlier and more useful message if sendmail isn't installed
o SunOS locking fix
v2.63 (2008-06-13)
* Bug-fix version and license change:
o Licensed under GPL 2 & 3 now
o Display feed number in warning and error message lines
o Fix for unicode handling problem with certain entry titles
v2.62 (2008-01-14)
* Bug-fix version:
o Simplified SunOS fix
o Local feeds (/home/user/file.xml) should work
v2.61 (2007-12-07)
* Bug-fix version:
o Now really compatible with SunOS
o Don't wrap long subject headers
o New parameter CHARSET_LIST to override or supplement the order in which charsets are tried against an entry
o Don't use blank content to generate id
o Using GMail as mail server should work
v2.60 (2006-08-25)
* Small bug-fix version:
o Now compatible with SunOS
o Correctly handle international character sets in email From
v2.59 (2006-06-09)
* Finally added oft-requested support for enclosures. Any enclosures, such as a podcast MP3, will be listed under the entry URL
* Made feed timeout compatible with Python versions 2.2 and higher, instead of v2.4 only
* 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.
* Improved empty feed checking
* Improved invalid feed messages
* 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.
v2.58 (2006-05-11)
* Total rewrite of email code that should fix encoding problems
* Added configurable timeout for nonresponsive feeds
* Fixed incorrectly using text summary_detail instead of html content
* Fixed bug with deleting feed 0 if no default email was set
* Print name of feed that is being deleted
v2.57 (2006-04-07)
* Integrated Joey Hess's patches
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
o Next a patch that avoids a backtrace if there's no email address defined, and outputs a less scary error message.
o Next, a simple change to the usage; since the "email" subcommand always needs a parameter, don't mark it as optional.
o And, avoid a backtrace if the email subcommand does get run w/o a parameter.
o And also avoid backtraces if delete is run w/o a parameter. Also adds support for --help.
o Simple change, make a comment match reality (/usr/sbin/sendmail)
o This avoids another backtrace, this time if there's no feed file yet. [load()]
o Add a handler for the AttributeError exception, which feedparser can throw. Beats crashing..
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.
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".
* add() catches error case on first feed add and no email address is set
* Made "emailaddress" consistent param label throughout
* Error message improvements
* Deleted problematic "if title" line
* Deleted space in front of SMTP_USER
* Only logs into SMTP server once
* Added exception handling around SMTP server connect and login attempt
* Broke contributors across multiple lines
v2.56 (2006-04-04)
* SMTP AUTH support added
* Windows support
* Fixed bug with HTML in titles