Skip to main content

feedwerk

Werkzeug used to have an Atom/RSS feed generator, which was pretty great, even if it didn't make the most sense as part of the Werkzeug package.

This repository is a straight-forward extract of the atom code from Werkzeug version 0.16.1, including unit tests.

Test

install & migrate from werkzeug.contrib.atom

$ pip install feedwerk

Rename imports werkzeug.contrib.atom → feedwerk.atom

- from werkzeug.contrib.atom import AtomFeed, FeedEntry
+ from feedwerk.atom         import AtomFeed, FeedEntry

bugs & maintenance

This project exists to help kick the can of migrating atom libraries when upgrading werkzeug, so the only goal is compatibility with 0.16.1 of werkzeug.contrib.atom. No new features will be considered. Bug fixes may be rejected if they might be relied-on by anyone still using old Werkzeug.

On the other hand, if you like the API that Werkzeug used to have for atom feeds, please feel free to fork this project and build and improve on it! I managed (painfully!) to retain the git history for this module and its tests, so I think it's a good starting place :)

changes

v1.2.0 2024-01-28

Python deprecated datetime.datetime.utcnow():

v1.1.0 2022-04-24

Some features we depended on were deprecated in werkzeug 2.0 and removed in 2.1:

  • remove werkzeug.utils.escape in favour of MarkupSafe #2 @mar1ad
  • use Response instead of werkzeug.wrappers.BaseResponse #3 @uniphil

Both changes are backwards-compatible with previous werkzeug back to 1.0. Client code that depends on the return type of AtomFeed.get_response() may need to be updated in rare cases.

work on feedwerk

run tests

$ python -m pytest

lints

$ flake8 --max-line-length=100 *.py tests feedwerk

Acknowledgements

The atom feed generator was written by Werkzeug developers from 2007–2019. The project history affecting this code has been retained in version control; see contributors. The full source and history of Werkzeug is available at palletes/werkzeug. Werkzeug and this project are free to use under the terms of the BSD 3-Clause License.

This project is not affiliated with Werkzeug.

Metadata

Release files for feedwerk 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for feedwerk 1.2.0
File Size Uploaded Provenance Actions
feedwerk-1.2.0.tar.gz 11.5 kB Without provenance Details for feedwerk-1.2.0.tar.gz

Release files / feedwerk-1.2.0.tar.gz

Download URL feedwerk-1.2.0.tar.gz
Size 11.5 kB
Tags Source
SHA-256 checksum
How to use checksums
c38feb4587f81eb37cd32780b1f7c60ece33c930adcd0e76c06cefdaabf077e9
BLAKE2b-256 checksum
How to use checksums
b89fbe749aa9656ec54665e4cc38c6ecabcd1013be13ccc7732688c200feaad6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.12.1

Security for feedwerk 1.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page