Crate rss2email_lib

source ·

Modules

Constructs and sends emails from different providers.
This file contains wrapper macros for the env_logger crate. I specifically wanted to wrap around warn as I wanted all warnings to panic if they occured in the Github Actions workflow.
Parses web feeds according to the RSS and Atom specifications and constructs Blogs and Posts.

Macros

Calls log::warn! if executed outside of Github Actions. If it is executed inside of GA, it instead panics. This is done to make sure that no warnings are missed during a workflow run. GA sets an environment variable CI=TRUE which is how I determine if this should panic or not.

Structs

Internal representation of a web feed.
Internal representation of a web feed post.

Enums

Represents anything that could go wrong when dealing with web feeds.

Functions

Downloads all the web feeds specified in feeds.txt and converts them to Blogs.
Helper function for downloading the contents of a web page.
Generates the HTML contents corresponding to the given Blog collection.
Parses links from feeds.txt.
Helper function that times and prints the elapsed execution time of F if ran in debug mode.