Skip to content

Releases: EdJoPaTo/website-stalker

v0.23.0

14 May 11:10
d079039
Compare
Choose a tag to compare

Added

  • Show used HTTP version in the output (HTTP/1.1, HTTP/2.0, …)
  • http1_only option to force usage of HTTP/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 use git 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

13 Feb 15:24
6d8a0b8
Compare
Choose a tag to compare

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

05 Sep 20:08
eaf89b9
Compare
Choose a tag to compare

Changed

  • Files are sorted into folders of their domains (#187)

v0.20.0

11 Apr 15:52
Compare
Choose a tag to compare

Added

  • new editor: html_sanitize
  • headers site options to supply additional headers on requests
  • filename 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 and check --print-yaml

v0.19.0

11 May 08:03
Compare
Choose a tag to compare

Added

  • ignore_error site option to only warn on pages that fail regularly
  • Generate deb/rpm packages

Changed

  • systemd files are now meant for packages (no …/local/… anymore)

Fixed

  • CLI: correct autocompletion with ValueHint

v0.18.1

02 Feb 08:26
Compare
Choose a tag to compare
  • fix(css_remove): prevent removing wrong content e459bc6

v0.18.0

01 Feb 10:08
Compare
Choose a tag to compare

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 classes 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.

eeb020f 4a40826

support URL queries

Some websites are server generated based on the queries used. Different queries for the same domain/path are now possible.

05c4dc8

Minor changes

housekeeping, dependency updates, …

v0.17.0

25 Nov 07:27
Compare
Choose a tag to compare

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.

5b6d971

Minor Changes

  • feat: improve 5sec between domain logic 722bf5f
  • perf: dont recreate regular expressions 836ad78
  • docs(readme): fix typos and backticks in README (#47) 84d8b45

v0.16.0

11 Nov 10:24
Compare
Choose a tag to compare

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

a6ba06f 01afa7f

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.

3caf39e d9bfff9 3b7c82d

Minor Changes

  • feat(config): allow loading via environment variable 94e4bd4
  • fix: dont prefix sites in message with M or A 6959978

v0.15.0

21 Oct 14:25
Compare
Choose a tag to compare

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

0921233

Minor Changes

  • fix(rss): error when no items are selected 408f0b0
  • fix: use actual url for editors f0136b1