|
| 1 | +.. |
| 2 | + This is the feedparser changelog. |
| 3 | +
|
| 4 | + It is managed and updated by scriv during development. |
| 5 | + Please do not edit this file directly. Instead, run |
| 6 | + "scriv create" to create a new changelog fragment file. |
| 7 | + |
| 8 | + |
| 9 | +Changelog |
| 10 | +********* |
| 11 | + |
| 12 | + |
| 13 | +Unreleased changes |
| 14 | +================== |
| 15 | + |
| 16 | +Please see the fragment files in the `changelog.d directory`_. |
| 17 | + |
| 18 | +.. _changelog.d directory: https://github.com/kurtmckee/listparser/tree/develop/changelog.d |
| 19 | + |
| 20 | + |
| 21 | +.. scriv-insert-here |
| 22 | +
|
| 23 | +.. _changelog-0.19: |
| 24 | + |
| 25 | +0.19 - 2022-06-04 |
| 26 | +================= |
| 27 | + |
| 28 | +*"Spring cleaning"* |
| 29 | + |
| 30 | +Added |
| 31 | +----- |
| 32 | + |
| 33 | +* Add ``requests`` as an optional dependency. |
| 34 | +* Add ``lxml`` as an optional dependency. |
| 35 | + This is currently the only way to parse malformed XML files. |
| 36 | +* Add support for Python 3.7 through Python 3.10. |
| 37 | + |
| 38 | +Removed |
| 39 | +------- |
| 40 | + |
| 41 | +* Drop support for CPython 3.6 and lower. |
| 42 | +* Drop support for IronPython. |
| 43 | +* Drop support for Jython. |
| 44 | +* Remove some ancient Jython compatibility code. |
| 45 | +* HTML entities are no longer automatically injected into the DTD. |
| 46 | + |
| 47 | + If ``lxml`` is installed and undeclared HTML entities are encountered, |
| 48 | + they will be ignored. |
| 49 | + |
| 50 | + If lxml is not installed and undeclared HTML entities are encountered, |
| 51 | + Python's ``xml.sax`` parser will fail to parse the document. |
| 52 | + |
| 53 | +Fixed |
| 54 | +----- |
| 55 | + |
| 56 | +* Fix some coverage messages that were output during testing. |
| 57 | +* Fix the combined coverage HTML report's paths. |
| 58 | + |
| 59 | +Changed |
| 60 | +------- |
| 61 | + |
| 62 | +* Migrate to a ``src/``-based directory structure. |
| 63 | +* Migrate to Read the Docs for documentation hosting. |
| 64 | +* ``parse()`` no longer accepts *etag*, *modified*, or *agent* arguments. |
| 65 | +* HTTP response information is no longer available in the return dictionary. |
| 66 | +* The unit tests no longer launch an HTTP server. |
| 67 | +* Coverage data is now erased before the unit tests begin. |
| 68 | +* ``bozo`` is now ``True`` or ``False``, not ``1`` or ``0``. |
| 69 | +* ``bozo_exception`` is guaranteed to exist in the return dict. |
| 70 | +* The RFC 822 parser now returns timezone-aware ``datetime`` objects |
| 71 | + instead of converting to UTC and losing timezone info. |
| 72 | +* Move and split ``lptest.py`` into the ``tests/`` subdirectory |
| 73 | + and into specific ``test_*`` files. |
| 74 | +* Increased test coverage reporting to include test runners. |
| 75 | +* Decreased the number of ``tox`` environments where listparser must be built and installed. |
| 76 | +* Internally rely on ``dict`` key-based lookups instead of ``SuperDict`` attribute-based lookups. |
| 77 | +* Cache XML parsing method lookup results to avoid excessive string formatting. |
| 78 | +* Change the name of the ``ListError`` to ``ListparserError``. |
| 79 | +* Split the codebase into multiple files. |
| 80 | +* Use ``tox`` to automate testing across multiple interpreters and versions. |
| 81 | +* Migrate to ``pytest`` for unit testing. |
| 82 | +* Remove dependence on the ``six`` package. |
| 83 | +* Add type annotations. |
| 84 | +* Remove compatibility code. |
| 85 | +* Migrate to Poetry and ``pyproject.toml`` for project configuration. |
| 86 | +* Change the license from LGPLv3 to MIT. |
| 87 | +* Use scriv to manage the CHANGELOG. |
| 88 | + |
| 89 | + |
| 90 | +0.18 - 2015-04-21 |
| 91 | +================= |
| 92 | + |
| 93 | +* Replace the regex RFC 822 date parser with procedural code. |
| 94 | + |
| 95 | + |
| 96 | +0.17 - 2012-12-16 |
| 97 | +================= |
| 98 | + |
| 99 | +*"Territory expansion"* |
| 100 | + |
| 101 | +* Python 3.3 is now tested and supported! |
| 102 | +* PyPy is now tested and supported! |
| 103 | +* Jython 2.5.2 and 2.5.3 are now tested and supported! |
| 104 | +* Python 2 and 3 are now supported without 2to3 conversion |
| 105 | +* Remove the hack to work around Jython bug 1375. |
| 106 | + (This means that Jython 2.5.1 is no longer supported.) |
| 107 | +* Support single-digit days in RFC822 dates |
| 108 | + |
| 109 | + |
| 110 | +0.16 - 2011-12-17 |
| 111 | +================= |
| 112 | + |
| 113 | +*"Refresh"* |
| 114 | + |
| 115 | +* Python 3.2 is now supported! |
| 116 | +* Made setup.py auto-convert listparser using 2to3 if necessary. |
| 117 | +* Switched to absolute URLs in the HTTP redirect tests. |
| 118 | + |
| 119 | + |
| 120 | +0.15 - 2010-11-15 |
| 121 | +================= |
| 122 | + |
| 123 | +*"A special day"* |
| 124 | + |
| 125 | +* IronPython 2.6.2 is now supported! |
| 126 | + |
| 127 | + |
| 128 | +0.14 - 2010-10-22 |
| 129 | +================= |
| 130 | + |
| 131 | +*"A good year"* |
| 132 | + |
| 133 | +* Added support for LiveJournal FOAF files. |
| 134 | +* Improved the documentation. |
| 135 | +* Improved the code quality. |
| 136 | + |
| 137 | + |
| 138 | +0.13 - 2010-02-01 |
| 139 | +================= |
| 140 | + |
| 141 | +*"Revelations"* |
| 142 | + |
| 143 | +* Fixed an infinite loop bug in Injector. |
| 144 | +* Fixed a threading-related bug in the unit tests. |
| 145 | +* Made Injector inject after the first '>', not '\n'. |
| 146 | +* Overhauled and modularized the unit test code. |
| 147 | +* Increased the code coverage of the unit tests. |
| 148 | + |
| 149 | + |
| 150 | +0.12 - 2010-01-03 |
| 151 | +================= |
| 152 | + |
| 153 | +*"Safety net"* |
| 154 | + |
| 155 | +* Fixed global USER_AGENT behavior. |
| 156 | +* Fixed several crasher bugs. |
| 157 | +* Fixed a 2to3 tool warning in lptest.py. |
| 158 | +* Made lptest.py return a status code to the shell. |
| 159 | + |
| 160 | + |
| 161 | +0.11 - 2009-12-25 |
| 162 | +================= |
| 163 | + |
| 164 | +*"Floodgates"* |
| 165 | + |
| 166 | +* Jython 2.5.1 is now supported! |
| 167 | +* Added support for opening relative and absolute filenames. |
| 168 | + |
| 169 | + |
| 170 | +0.10 - 2009-12-12 |
| 171 | +================= |
| 172 | + |
| 173 | +*"Internet-ready"* |
| 174 | + |
| 175 | +* Python 3 is now supported! |
| 176 | +* Correctly interpret undeclared HTML character entities. |
| 177 | +* Significantly sped up large RDF+FOAF document parsing. |
| 178 | +* Fixed RFC 822 date and time creation bug. |
| 179 | +* Fixed RFC 822 crasher bugs. |
| 180 | +* Fixed iGoogle-related crasher bug. |
| 181 | +* Refreshed and added to documentation. |
| 182 | +* Added many more tests. |
| 183 | + |
| 184 | + |
| 185 | +0.9 - 2009-10-03 |
| 186 | +================ |
| 187 | + |
| 188 | +*"Celery wolves"* |
| 189 | + |
| 190 | +* Support RDF+FOAF! |
| 191 | +* Capture opportunity URLs. |
| 192 | +* Added duplicate URL detection. |
| 193 | +* Added distutils support for easier distribution. |
| 194 | + |
| 195 | + |
| 196 | +0.8 - 2009-09-03 |
| 197 | +================ |
| 198 | + |
| 199 | +*"Three day weekend"* |
| 200 | + |
| 201 | +* Support the iGoogle exported settings format! |
| 202 | +* Support Liferea's version of subscription lists in OPML. |
| 203 | +* Removed ``feeds[i].claims``. |
| 204 | +* Removed almost all of listparser's bozo warnings. |
| 205 | + |
| 206 | + |
| 207 | +0.7 - 2009-08-28 |
| 208 | +================ |
| 209 | + |
| 210 | +*"The Codex"* |
| 211 | + |
| 212 | +* Added documentation! |
| 213 | +* Unified feed and subscription list code. |
| 214 | +* Extended category and tag support to subscription lists. |
| 215 | +* Result dictionary keys are now also attributes (i.e. ``result['meta']['title']`` -> ``result.meta.title``). |
| 216 | +* Feed and list titles are no longer filled with the associated URL if the title is not found. |
| 217 | + |
| 218 | + |
| 219 | +0.6 - 2009-08-07 |
| 220 | +================ |
| 221 | + |
| 222 | +*"Hatchet Hotel"* |
| 223 | + |
| 224 | +* Certain return result elements are now guaranteed. |
| 225 | +* ``bozo_detail`` has been renamed ``bozo_exception``. |
| 226 | +* Better support for Wordpress' wp-links-opml.php output. |
| 227 | +* Added 22 new tests (and modified several others). |
| 228 | + |
| 229 | + |
| 230 | +0.5 - 2009-08-01 |
| 231 | +================ |
| 232 | + |
| 233 | +*"Going green"* |
| 234 | + |
| 235 | +* Send a (configurable) User-Agent header. |
| 236 | +* Support HTTP ETag and Last-Modified headers. |
| 237 | +* Support HTTP redirects and errors. |
| 238 | +* Support parsing of strings and file-like objects (not just URLs). |
| 239 | +* The subscription list title is now stripped of whitespace. |
| 240 | +* Added 11 more tests. |
| 241 | + |
| 242 | + |
| 243 | +0.4 - 2009-07-18 |
| 244 | +================ |
| 245 | + |
| 246 | +*"07/18,29"* |
| 247 | + |
| 248 | +* Support categories and tags specified in ``@category``. |
| 249 | +* Support categorization using nested ``<outline>`` tags. |
| 250 | +* Added 21 more tests. |
| 251 | + |
| 252 | + |
| 253 | +0.3 - 2009-07-03 |
| 254 | +================ |
| 255 | + |
| 256 | +*"...and Recursion for all."* |
| 257 | + |
| 258 | +* The feed key ``name`` is now ``title``. |
| 259 | +* Additional optional attributes supported. |
| 260 | +* Support subscription list inclusions. |
| 261 | +* Added 13 more tests. |
| 262 | + |
| 263 | + |
| 264 | +0.2 - 2009-06-26 |
| 265 | +================ |
| 266 | + |
| 267 | +*"Leveling up"* |
| 268 | + |
| 269 | +* RFC 822 date and time support added (+39 tests). |
| 270 | +* Added more thorough OPML version attribute detection (+5 tests). |
| 271 | +* ``dateModified`` and ``dateCreated`` OPML tags supported (+4 tests). |
| 272 | +* Added test cases for existing functionality (+2 tests). |
| 273 | +* ``<outline>`` ``htmlUrl`` attribute support added (+1 test). |
| 274 | + |
| 275 | + |
| 276 | +0.1 - 2009-06-19 |
| 277 | +================ |
| 278 | + |
| 279 | +*"Achievement unlocked"* |
| 280 | + |
| 281 | +* Initial release. |
0 commit comments