Releases: EdJoPaTo/website-stalker
v0.23.0
Added
- Show used HTTP version in the output (
HTTP/1.1
,HTTP/2.0
, …) http1_only
option to force usage ofHTTP/1
Changed
- Move notifications from environment variables to CLI. Can still be configured via environment variables, but they have different names now. Check --help.
- Document
WEBSITE_STALKER_FROM
in--help
. Also allows for--from
- RSS: remove website-stalker version from the generator field
- Improve error handling by instant panic or cleaner human error message
- Deprecate
init
sub-command. Its more transparent to usegit init && website-stalker example-config > website-stalker.yaml
- Deprecate
check
sub-command.run
also checks the config and additionally runs it when correct which most people probably need.
Breaking Changes
- Environment variable names for notifications differ and can now also be provided via --flags. Check --help.
- Error on notification_template in config. Notification configuration changed and is likely not working anymore, so hard error over a warning.
v0.22.0
Added
- Automatically generated man pages from the cli definition
Changed
rss
uses the first title / heading element as RSS title (was only title before)- Improve error output message on editor error
json_prettify
uses tabs instead of spaces now for better accessibility and smaller file sizes (html_prettify
does the same)- Show warnings for deprecated field usage in notification mustache template
- Show warning on
rss
without title (neither from explicit configuration nor the input HTML)
Fixed
- Correctly detect duplicate hosts for delays between them (to reduce load on the host)
- Systemd service is
Type=oneshot
now and can no longer be installed. The timer is the relevant unit and not the service.
v0.21.0
v0.20.0
Added
- new editor:
html_sanitize
headers
site options to supply additional headers on requestsfilename
option to override the automatically derived file base name from an url- Support URLs with IP addresses
Changed
- Use git executable instead of libgit2
- Improve example-config
- write full words configuration and git repository instead of its short versions on stdout
- Include port in filename when specified
Removed
check --rewrite-yaml
andcheck --print-yaml
v0.19.0
v0.18.1
v0.18.0
html_prettify
attribute improvements
Before this release changes like this occurred regularly:
-<a class="external link">
+<a class="link external">
-<a style="color: white; display: none">
+<a style="display:none;color:white">
This release sorts class
es and formats style
. This reduces the amount of diffs when the host only changes something like the order.
It also fits into the concept of 'pretty' HTML which this editor attempts.
support URL queries
Some websites are server generated based on the queries used. Different queries for the same domain/path are now possible.
Minor changes
housekeeping, dependency updates, …
v0.17.0
HTML parsing improvements
html_markdownify
, html_prettify
and html_textify
received bugfixes and improvements to parsing.
HTML parts aren't escaped anymore 2989f56 and prettify ensures indentation of text contents 952bde3.
html_markdownify
now uses the html2md crate which implements more features and less strange edge cases 1362a4e.
RSS pubDate
It is now attempted to read the datetime
attribute from elements to determine the pubDate
of the RSS item.
The goal of the datetime
element is to provide a machine-readable format. As parsing the date time from various human formats is hard this is probably the simplest way of adding a useful pubDate
when possible while not over-complicating things.
Minor Changes
v0.16.0
Automatically assume file extensions
previously you configured the wanted extension via the config file. This is now automatically assumed based on the Content-Type HTTP Header and the used editors.
- url: "https://edjopato.de"
- extension: md
editors:
- html_markdownify
Notifications
Its now possible to send notifications on changes via pling.
Notification targets (E-Mail, Slack, Telegram, …) are entirely configured via environment variables as they mainly contain secrets. Check the pling documentation about which environment variables can be set.
The sent notification can be changed via the new config key notification_template.
When using GitHub Actions you can check out their Environment variable documentation and the example repo config which configures Telegram notifications into this Telegram channel.
1b1977a 14d3837 24b6cd6 8ad53c1
Improvements to website-stalker check
Check shows more details like configured notifications. This will not show details to prevent leakage of secrets and only the amount of configured notification targets.
Its also possible to print or rewrite the current config as yaml.
This is helpful when migrating older configs or checking if certain environment variables are correctly read.
Minor Changes
v0.15.0
Multiple URLs with same options
You can now specify an URL array to be used for an entry in the config. This way multiple urls will use the same specified options.
This is especially for stalking multiple nearly the same webpages.
To provide an example:
sites:
- url: "https://edjopato.de/"
extension: html
- url: "https://edjopato.de/post/"
extension: html
Can now also be specified like this:
sites:
- url:
- "https://edjopato.de/"
- "https://edjopato.de/post/"
extension: html