rss-email 0.2.1

First off, thanks to Hugo for submitting a patch implementing asynchronous fetching of RSS feeds for rss-email that sparked the bit of interest I needed to continue working on the project in the first place.

Thanks to this, I decided to prepare rss-email for a 0.2.0 release by replacing Diesel with sqlx, a crate that enables compile-time checked SQL queries. A complete ORM always felt a bit overkill for this, but this was the project I decided to try Diesel on to get familiar with it. Discovering that Diesel is not able to be statically linked was enough of a push to replace it with sqlx.

Besides that, jman, who submitted a patch quite a while ago, replaced OpenSSL with rustls to reduce system dependencies.

In total, not a lot of changes have been made to rss-email, but they should be quite significant nonetheless:

  • Replace OpenSSL with RustTLS
  • Implement async fetching
  • Replace Diesel with sqlx

These changes allow faster execution of rss-email and finally allow rss-email to be run on musl-based Linux distributions!
This also means I can finally run it on my own server running Alpine Linux.

As I introduced a bug where inserting an already existing entry into the database and timestamps not being present on feeds would panic, I promptly released 0.2.1, which fixes these mistakes.
The latter could have easily been avoided by avoiding the use of unwrap in the code (something I made use of heavily while prototyping the project), and fixing unnecessary calls to unwrap is a priority going forward: https://todo.sr.ht/~witcher/rss-email/13. Well, another lesson learned.

Thus far only RSS feeds work with rss-email, but implementing Atom support is planned.
If you feel like contributing, feel free to either close one of the existing tickets or send an E-Mail to the development list discussing your ideas.

Starting now, announcements for new releases will only be published on the dedicated mailing list in order to not spam my personal blog.

Do you have a comment on one of my posts? Feel free to send me an E-Mail: witcher@wiredspace.de
To participate in a public discussion, use my public inbox: ~witcher/public-inbox@lists.sr.ht
Please review the mail etiquette .

Posted on: November 20, 2022