Quantcast
Channel: feed2exec:edce0e330ba80c078894f81ef691e991822a5008 commits
Browsing latest articles
Browse All 40 View Live

python 3.7 support, default on python:latest now

View Article



wayback machine API change: HEAD not supported anymore

This unfortunately makes the API slower, but there's nothing else I can do. I tried to report this upstream, went unanswered.

View Article

fix strange crash in wayback plugin

Not sure what `extra` was for but it was crashing now.

View Article

include post timestamp in ikiwiki GUIDs

The recent changes page can include multiple posts with the same GUID, as the GUID is simply the URL of the page. In blog posts, that's usually fine because we don't want to act every time a blog post...

View Article

comply with new feedparser deprecation warning

Somewhere after 5.1.3, feedparser started warning about updated_parsed usage, without any possibility of compliance: https://github.com/kurtmckee/feedparser/issues/151 We properly added defaults but...

View Article


switch to logging.warning to comply with deprecation warning

View Article

disable cov which crashes on sqlite3.IntegrityError

see https://github.com/pytest-dev/pytest-cov/issues/215

View Article

correctly switch to get for wayback test

View Article


re-enable coverage tests

We somehow need to tell coveragepy that we're running in parallel even though it's unclear to me that we do: https://github.com/nedbat/coveragepy/issues/702#issuecomment-432016361 Just doing what I'm...

View Article


explain how tests are hooked up together.

View Article

remove unused variable

View Article

fix typo, thanks gagz

View Article

According to RFC5064, change header 'Archive-At' to 'Archived-At'

View Article


Merge branch 'master' into 'master'

According to RFC5064, change header 'Archive-At' to 'Archived-At' See merge request anarcat/feed2exec!4

View Article

ignore more coverage files

View Article


prepare 0.13.0 release

View Article

fix commented out debugging statement, no change

View Article


warn instead of crashing on invalid dates

We used to completely crash when a feed had invalid or missing dates. After reviewing the standards, it turns out this is not quite valid behavior: RSS 0.90 and 0.91, for example, do not have dates at...

View Article

expand and cleanup date validation routines

We used to have a long list of fields. Now we just iterate over the item, then the feed, and look for the fields we want. It's cleaner visually and might even make some feeds validate, as we now look...

View Article

use dateparser module if available

This behaves better than the feedparser date parser in most scenarios. Still needs unit tests and dependency checks. Closes: #6

View Article

handle broken pipe correctly from plugins

Before this, doing "feed2exec parse foo | head" would yield an error message for *every* feed item. This silences the warnings completely.

View Article


add JSON output plugin

This plugin is very simple, if not trivial: it simply dumps all the feed items in a JSON stream. This can be parsed by `jq` on the commandline to diagnose feed problems, do scripting or whatever. This...

View Article


recommend the dateparser module for better dates handling

View Article

bump standards, no change

View Article

prepare 0.14.0 release

View Article


switch to a single channel for all my projects

View Article

play catchup with newer html2text version again

View Article

workaround timezone parsing bug in dateparser

View Article

switch to dateparser for PyPI and tests as well

Because the Debian package recommends dateparser, I had different results running tests natively on Debian and within tox. This harmonizes things and makes use of dateparser everywhere, warts and...

View Article



register properly the special mark we are using

View Article

reduce noise level of 'missing time' problems

It seems like previous versions of feedparser would never trigger that problem, and would fill in the date instead. Now I have feeds that have this on *every* item and it generates a lot of noise in...

View Article

prepare 0.15.0 release

View Article

split large feeds.py into model.py and controller.py

This rearchitecture seems to make sense to me. I would like to keep those files smaller and that naming will force me to follow that model/controller distinction more clearly. Already, the parse/fetch...

View Article


rename FeedCacheStorage to FeedItemCacheStorage

This is, effectively, a per-item cache, not a full feed cache. We want to implement the latter as part of #10 so it makes sense to rename this first. This is an API breaking change.

View Article

factor out getter/setters in the base sqlite class

This should pave the way for reusing this class in a caching backend like cachecontrol.

View Article

use context manager for connexions, inspired by cachecontrol_sqlite

View Article


remove conn member in sqlite to force use of context manager

View Article


split connection cache logic in a separate function, to simplify

View Article

implement thread-level locking

This is not absolutely necessary as we don't do thread-level parallelism. But if we every want to switch back to doing that, this is an elegant way of supporting that. Inspired by cachecontrol-sqlite.

View Article

enforce commit in context manager unless explicitely disabled

This makes sure we never, ever forget to commit unless we *explicitely* disable it. This is also inspired by cachecontrol-sqlite, except the latter uses False as a default for the autocommit, which...

View Article
Browsing latest articles
Browse All 40 View Live




Latest Images