- Moved to reStructuredText for documentation (readme)
- Adhere to PEP8 (flake8)
- Fixed several minor issues
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
This patch makes the feedgen flake8 compatible, fixing some minor issues
along the way. Most noticeable, this switches from tabs to spaces.
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
According to RFC 4287, there is no atom:url element, only atom:uri, so
replace occurrences of atom:url with atom:uri for compliance.
Also rename variables holding atom:uri from email to uri to better
indicate what they actually are.
- Added support for custom extensions
- Updated set-up utils
- Added Torrent extensions
- Added support for multiple ITunes (sub-)categories
- Fixed CDATA content
Thanks to all contributors for doing most of the work!
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
This patch ensures the compatibility of setting categories for itunes
podcasts even though the new API now supports setting multiple
(sub-)categories.
It also fixes the docs and adjusts them to explicitly mark the old
syntax as deprecated.
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
This fixes some minor problems with the pull request from jvanasco so
that it may be included into the next release:
- Only one extension registry is used internally and custom extensions
do not have to be stored two times.
- Fix the bug that entry extensions were loaded for feeds.
- Do not fail if there is only a feed extension.
- Extensions for entries do not need a feed extension class.
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
When piping to stdout the special handling for Pthon 3 will cause
problems in Python 2 and produce an Unicode encoding error. This commit
separates the output handling of both Python versions.
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
- Syndication extension
- Remove six dependency
- Fix typo, schema to scheme
- Fixed Localized Time Formatting Issues
- Added Support for XML Declaration
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
All XML generation methods now have an optional argument
`xml_declaration` which, set to True, will add an XML declaration to the
output. By default, the argument is set to True.
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
- Fixed several minor bugs
- Code cleanup of extensions (API change!)
- Added unit tests
Thanks to all contributors!
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
This merges in a pull request by Shekhar, adding support for CDATA
content:
---
If type specified CDATA content won't be escaped. This makes it easier
for RSS publishers and readers. Also adheres CDATA recommendation at
http://www.rssboard.org/rss-profile#element-channel-item-description
---
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
This fixes some small issues with the unit tests and adding a test case
to the Makefile so that all tests can easily be invoked by running:
make test
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
This merges in a pull request by snipem brining in some unit tests and
bug fixes:
---
Unit tests
I've created unit tests for the module, especially for feeds and
entries. Whilst entry tests aren't fully implemented yet, unit test
cases for feed creation are complete and working. They cover the
creation of a full blown feed in Atom and RSS.
Bugs fixed
Thanks to the unit test cases, I was able to discover three bugs
concerning the fields domain, ttl and skipHours. According to the
lastest test results, they are resolved and working with both Python 2
and Python 3.
Travis support
Additionally, I've added Travis support. Which is a Continuous
Integration platform powering Github.
---
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
In the context of RSS cloud domain was spelled incorrectly as ‚donain‘
which resulted in an error while unit testing. Additionally, also in
RSS ttl (Time to live) wasn’t transformed to a string.
The introduced way of printing things in python3 would work for byte
arrays but not for simple strings. This patch fixes this issue.
Signed-off-by: Lars Kiesow <lkiesow@uos.de>
Fixes traceback
lib/python2.7/site-packages/feedgen/feed.py", line 447, in lastBuildDate
return updated( lastBuildDate )
NameError: global name 'updated' is not defined
Now the content element now supports the type attribute and the content
is encoded accordingly:
- text and html are escaped
- xhtml is surrounded with a div and then included as XML
- XML is directly included
- base64 support was *not* added. Please file a bug if you need it