Skip to content

v3.39.0

Latest

Choose a tag to compare

@github-actions github-actions released this 26 Oct 01:26

Reminder

Older Python versions are supported for 3 years after being obsoleted by a new major release. As Python 3.13 was
released on 7 October 2024, the codebase will be streamlined by removing support for Python 3.12 on or after 7
October 2027.

Added

Changed

  • A job selected by URL/command (or name) that matches more than one job is now an error listing the jobs matched,
    instead of silently selecting the first one; select the job by its index number instead.
  • The html2text filter's lynx method (for backward compatibility) no longer fails the job: it runs the default
    method instead (ignoring lynx's options) and prints a deprecation warning.

Fixed

  • A job selected more than once in a joblist (e.g. a new job selected with --prepare-jobs, which also adds the new
    jobs) ran more than once.
  • The debug log reported a negative number of disabled jobs.
  • The ntfy reporter published only the first job of a report, raising
    RuntimeError: Cannot reopen a client instance, once it has been closed. on the second one (or a NameError
    if httpx is not installed). A failed publication no longer prevents the other jobs from being published.
  • The ntfy reporter no longer adds an "Open URL" action to the messages of command jobs.
  • With the same RuntimeError, the ifttt reporter sent only the first job of a report, and the webhook (as
    well as the deprecated slack and mattermost) and discord reporters only the first part of a report too
    long for one message.
  • On the first run, legacy jobs, configuration and hooks files are now also found and copied from the legacy
    platform-specific configuration directory (e.g. ~/.config/urlwatch on Linux), and not only from
    ~/.urlwatch.
  • The deprecated shell reporter (for backward compatibility) crashed with KeyError: 'max_message_length'; it now
    pipes the report to its command's standard input.
  • The deprecated slack reporter (for backward compatibility) was silently ignored; it now runs as a webhook
    reporter.
  • The run_command reporter did not set the documented WEBCHANGES_CHANGED_JOBS_JSON environment variable; it
    now holds the directives of the jobs reported on.
  • The subject (or title) of a report with a single change read "1 changes" instead of "1 change".
  • Jobs with the deprecated navigate directive failed when run with
    "Directive 'navigate' is deprecated with Playwright", although the directive was translated into url and
    use_browser: true.
  • Rewriting the jobs file (with --add, --delete or --change-location) dropped the directives set to false
    or 0, such as enabled: false or contextlines: 0.
  • --delete and --change-location crashed with EOFError at their confirmation prompt when no input was
    available (e.g. --change-location run by cron, or standard input redirected from the null device, which
    Windows reports as a terminal); they now leave the jobs file unmodified.