You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Restock - No need to extract the text because it's not used anyway by @dgtlmoon in #3951
Content fetching -Better detection of other encodings, Replace/upgrade broken UTF-8 , Ensure rest of retrieved content is UTF-8 for the app by @dgtlmoon in #3954
UI - Price amount is sometimes string or integer by @dgtlmoon in #3950
Adding Ukrainian (uk) translations, rebuilding translations. by @dgtlmoon in #3936
CVE-2026-27696 Small fix - Restricted hostnames can still be added but are only checked at fetch-time (not when rendering lists etc) by @dgtlmoon in #3938
Very large refactor of the datastore backend, instead of all watch data stored in a single JSON DB, splits the info into uuid/watch.json and uuid/tag.json
API - Include missing tags in fetching watch information. #3854 by @dgtlmoon in #3856
API - Import - Ability to set any watch value as HTTP URL Query value for example api/import?processor=restock_diff&time_between_check={'hours':24} Re #3845 by @dgtlmoon in #3857
API - Import use background task to import large lists by @dgtlmoon in #3858
Browser page fetching speedup - Element locking was adding up to 1minute page load time, Element locking 'off' by default (so they dont move when the screenshot scroll happens), only lock top viewport elements. Improve logging. by @dgtlmoon in #3796
Make language selection sticky and provide a way to return back to default auto-detect #3792 by @dgtlmoon in #3795
Use credentials to fetch the web manifest by @ianis in #3790
Use soft delays instead of blocking time sleeps by @dgtlmoon in #3710
Multi-language / Translations Support (#3696)
- Complete internationalization system implemented
- Support for 7 languages: Czech (cs), German (de), French (fr), Italian (it), Korean (ko), Chinese Simplified (zh), Chinese Traditional (zh_TW)
- Language selector with localized flags and theming
- Flash message translations
- Multiple translation fixes and improvements across all languages
- Language setting preserved across redirects
Pluggable Content Fetchers (#​3653)
- New architecture for extensible content fetcher system
- Allows custom fetcher implementations
Image / Screenshot Comparison Processor (#​3680)
- New processor for visual change detection (disabled for this release)
- Supporting CSS/JS infrastructure added
UI Improvements
Design & Layout
- Auto-generated tag color schemes
- Simplified login form styling
- Removed hard-coded CSS, moved to SCSS variables
- Tag UI cleanup and improvements
- Automatic tab wrapper functionality
- Menu refactoring for better organization
- Cleanup of offset settings
- Hide sticky tabs on narrow viewports
- Improved responsive layout (#​3702)
User Experience
- Modal alerts/confirmations on delete/clear operations (#​3693, #​3598, #​3382)
- Auto-add https:// to URLs in quickwatch form if not present
- Better redirect handling on login (#​3699)
- 'Recheck all' now returns to correct group/tag (#​3673)
- Language set redirect keeps hash fragment
- More friendly human-readable text throughout UI
Performance & Reliability
Scheduler & Processing
- Soft delays instead of blocking time.sleep() calls (#​3710)
- More resilient handling of same UUID being processed (#​3700)
- Better Puppeteer timeout handling
- Improved Puppeteer shutdown/cleanup (#​3692)
- Requests cleanup now properly async
History & Rendering
- Faster server-side "difference" rendering on History page (#​3442)
- Show ignored/triggered rows in history
- API: Retry watch data if watch dict changed (more reliable)
API Improvements
- Watch get endpoint: retry mechanism for changed watch data
- WatchHistoryDiff API endpoint includes extra format args (#​3703)
Testing Improvements
- Replace time.sleep with wait_for_notification_endpoint_output (#​3716)
- Test for mode switching (#​3701)
- Test for #​3720 added (#​3725)
- Extract-text difference test fixes
- Improved dev workflow
Bug Fixes
- Notification error text output (#​3672, #​3669, #​3280)
- HTML validation fixes (#​3704)
- Template discovery path fixes
- Notification debug log now uses system locale for dates/times
- Puppeteer spelling mistake in log output
- Recalculation on anchor change
- Queue bubble update disabled temporarily
Dependency Updates
- beautifulsoup4 updated (#​3724)
- psutil 7.1.0 → 7.2.1 (#​3723)
- python-engineio ~=4.12.3 → ~=4.13.0 (#​3707)
- python-socketio ~=5.14.3 → ~=5.16.0 (#​3706)
- flask-socketio ~=5.5.1 → ~=5.6.0 (#​3691)
- brotli ~=1.1 → ~=1.2 (#​3687)
- lxml updated (#​3590)
- pytest ~=7.2 → ~=9.0 (#​3676)
- jsonschema ~=4.0 → ~=4.25 (#​3618)
- pluggy ~=1.5 → ~=1.6 (#​3616)
- cryptography 44.0.1 → 46.0.3 (security) (#​3589)
Documentation
- README updated with viewport size setup information
Development Infrastructure
- Dev container only built on dev branch
- Improved dev workflow tooling
RSS Reader Mode parser improvements - Pick up all fields from RSS where possible, better auto-detect of the XML encoding if it wasnt set by the browser
Now you can customise your RSS output exactly the same as the Notification Body
Settings/RSS - Choose System default and then set an optional overide of the format, OR set it to Notification Body and it will follow the notification body format across groups/watches.
Notifications - Adding {{diff_full_clean}}, {{diff_removed_clean}}, {{diff_added_clean}}, {{diff_clean}} notification body tokens for using in templates without (added)/(removed) text. by @dgtlmoon in #3580
API - Support optional processor on Watch create to set the restock_diff or text_json_diff mode on watch create. by @dgtlmoon in #3581
Update python-socketio requirement from ~=5.14.2 to ~=5.14.3 by @dependabot[bot] in #3588
Update pytest-flask requirement from ~=1.2 to ~=1.3 by @dependabot[bot] in #3587
Bump actions/download-artifact from 5 to 6 in the all group by @dependabot[bot] in #3585
Update jsonpath-ng requirement from ~=1.5.3 to ~=1.7.0 by @dependabot[bot] in #3586
Notifications - Text and Markdown type was not migrated correctly to the new settings, resulting in possible non-notification, #3572#3559#3558 by @dgtlmoon in #3573
Fixing wrong notification type in that lead to wrong type of notifications (plaintext vs html) being sent #3558 by @dgtlmoon in #3559
OpenAPI specification, fixing enum for notification type, and notification_muted by @dgtlmoon in #3557
Other updates
Update feedgen requirement from ~=0.9 to ~=1.0 by @dependabot[bot] in #3554
Update python-socketio requirement from ~=5.13.0 to ~=5.14.2 by @dependabot[bot] in #3552
Bump the all group with 2 updates by @dependabot[bot] in #3550
Update wtforms requirement from ~=3.0 to ~=3.2 by @dependabot[bot] in #3551
Update brotli requirement from ~=1.0 to ~=1.1 by @dependabot[bot] in #3553
v0.50.32: Mainly fixes to notifications and API tweaks
Compare Source
What's Changed
Color fixes by @dgtlmoon in #3545
Custom exceptions, post:// etc, Catch errors and show where possible by @dgtlmoon in #3543
Preserve whitespace's in HTML style notifications by @dgtlmoon in #3546
Notifications - Keep monospaced layout of history/difference sent to HTML style notifications, Fixes to Markdown #3540 by @dgtlmoon in [#3544](https://redirect.github.com/dgtlmoon/changedete
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR was generated by Mend Renovate. View the repository job log.
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.0
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.1
Feb 8, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.1
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.2
Feb 19, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.2
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.3
Feb 22, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.3
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.4
Mar 13, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.4
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.6
Mar 23, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.6
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.7
Mar 23, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.7
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.8
Mar 26, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.8
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.9
Mar 26, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.9
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.10
Apr 3, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.10
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.11
Apr 3, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.11
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.12
Apr 4, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.12
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.13
Apr 11, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.13
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.14
Apr 16, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.14
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.15
Apr 18, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.15
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.49.16
May 3, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.4
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.5
Jun 29, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.5
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.6
Jul 12, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.6
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.7
Jul 15, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.7
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.8
Jul 30, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.8
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.9
Aug 18, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.9
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.10
Aug 19, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.10
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.11
Aug 31, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.11
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.12
Sep 7, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.12
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.13
Sep 16, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.13
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.14
Sep 17, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.14
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.15
Oct 6, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.15
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.16
Oct 6, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.16
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.18
Oct 9, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.18
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.19
Oct 10, 2025
renovatebot
changed the title
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.19
chore(deps): update ghcr.io/dgtlmoon/changedetection.io docker tag to v0.50.20
Oct 10, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.48.06→0.54.6Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
dgtlmoon/changedetection.io (ghcr.io/dgtlmoon/changedetection.io)
v0.54.6Compare Source
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.54.5...0.54.6
v0.54.5Compare Source
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.54.4...0.54.5
v0.54.4Compare Source
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.54.3...0.54.4
v0.54.3Compare Source
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.54.2...0.54.3
v0.54.2Compare Source
What's Changed
change_datetimenotification token (and adding test) by @dgtlmoon in #3922{{diff_added(lines=5, context=2)}}by @dgtlmoon in #3923Full Changelog: dgtlmoon/changedetection.io@0.54.1...0.54.2
v0.54.1Compare Source
ALLOW_IANA_RESTRICTED_ADDRESSEStotrueto access IANA reserved URLs such as http://169.254.169.254, http://10.0.0.1/, http://127.0.0.1/, etc.Full Changelog: dgtlmoon/changedetection.io@0.53.7...0.54.1
v0.53.7Compare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.53.6...0.53.7
v0.53.6Compare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.53.5...0.53.6
v0.53.5Compare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.53.4...0.53.5
v0.53.4Compare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.53.3...0.53.4
v0.53.3Compare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.53.2...0.53.3
v0.53.2Compare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.53.1...0.53.2
v0.53.1Compare Source
Big changes
uuid/watch.jsonanduuid/tag.jsonWhat's Changed
PAGE_WATCH_LIMITby @dgtlmoon in #3828tagsin fetching watch information. #3854 by @dgtlmoon in #3856api/import?processor=restock_diff&time_between_check={'hours':24}Re #3845 by @dgtlmoon in #3857flask_expects_jsonvalidation, this is covered entirely by OpenAPI, update OpenAPI spec. by @dgtlmoon in #3871New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.52.9...0.53.1
v0.52.9Compare Source
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.52.8...0.52.9
v0.52.8: Memory handling fixes, API validation improvements, small fixesCompare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.52.7...0.52.8
v0.52.7: Improvements and small features extrasCompare Source
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.52.5...0.52.7
v0.52.6: Selenium fetcher fix and small UI updateCompare Source
Full Changelog: dgtlmoon/changedetection.io@0.52.5...0.52.6
v0.52.5: i18n improvements, revert potential CPu hungry brotli sub-processCompare Source
What's Changed
zh_TWtozh_Hant_TW, adding tests #3737 by @dgtlmoon in #3744New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.52.4...0.52.5
v0.52.4: Languages fix for pypi, Fixing Traditional Chinese locale mappingCompare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.52.3...0.52.4
v0.52.3: Important fix for Browsers Steps (from UI), minor UI fixesCompare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.52.2...0.52.3
v0.52.2: Fetcher speedups, UI, and RSS fixesCompare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.52.1...0.52.2
v0.52.1Compare Source
What's Changed
Misc small HTML Validation fixes by @dgtlmoon in #3704
Use soft delays instead of blocking time sleeps by @dgtlmoon in #3710
Multi-language / Translations Support (#3696)
- Complete internationalization system implemented
- Support for 7 languages: Czech (cs), German (de), French (fr), Italian (it), Korean (ko), Chinese Simplified (zh), Chinese Traditional (zh_TW)
- Language selector with localized flags and theming
- Flash message translations
- Multiple translation fixes and improvements across all languages
- Language setting preserved across redirects
Full Changelog: dgtlmoon/changedetection.io@0.51.4...0.52.1
v0.51.4Compare Source
Actually this fixes one very very old bug in xpath filter handling :)
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.51.3...0.51.4
v0.51.3: RSS Reader Mode improvements.Compare Source
RSS Reader Mode parser improvements - Pick up all fields from RSS where possible, better auto-detect of the XML encoding if it wasnt set by the browser
Full Changelog: dgtlmoon/changedetection.io@0.51.2...0.51.3
v0.51.2: RSS Custom Feed Formats!Compare Source
Now you can customise your RSS output exactly the same as the
Notification BodySettings/RSS - Choose
System defaultand then set an optional overide of the format, OR set it toNotification Bodyand it will follow the notification body format across groups/watches.#3640 #327 #2131 https://redirect.github.com/dgtlmoon/changedetection.io/discussions/3639
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.51.1...0.51.2
v0.51.1: RSS Lovers releaseCompare Source
Mainly RSS feeds in Groups and per watch!
What's Changed
New Contributors
Full Changelog: dgtlmoon/changedetection.io@0.50.43...0.51.00
v0.50.43: Data sanity enforcementsCompare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.50.42...0.50.43
v0.50.42: rollback of 0.50.41Compare Source
Full Changelog: dgtlmoon/changedetection.io@0.50.41...0.50.42
v0.50.41: JSON DB Force utf-8 (Should fix loading problems in windows)Compare Source
What's Changed
Full Changelog: dgtlmoon/changedetection.io@0.50.40...0.50.41
v0.50.40: Non critical bug fixes releaseCompare Source
What's Changed
orjsonfor faster saves by @dgtlmoon in #3601Full Changelog: dgtlmoon/changedetection.io@0.50.39...0.50.40
v0.50.39Compare Source
What's Changed
{{diff_full_clean}},{{diff_removed_clean}},{{diff_added_clean}},{{diff_clean}}notification body tokens for using in templates without (added)/(removed) text. by @dgtlmoon in #3580processoron Watch create to set therestock_diffortext_json_diffmode on watch create. by @dgtlmoon in #3581Bug fix - scheduler
Full Changelog: dgtlmoon/changedetection.io@0.50.38...0.50.39
v0.50.38: ImprovedSend test notificationhandling and stronger automated testsCompare Source
What's Changed
Send test notificationhandling and stronger automated tests by @dgtlmoon in #3579Full Changelog: dgtlmoon/changedetection.io@0.50.37...0.50.38
v0.50.37: Fixing title markup in notifications 'title' field (email subject, etc)Compare Source
What's Changed
\n-><br>etc by @dgtlmoon in #3577Full Changelog: dgtlmoon/changedetection.io@0.50.35...0.50.37
v0.50.35: Notification fixesCompare Source
What's Changed
Notifications -
TextandMarkdowntype was not migrated correctly to the new settings, resulting in possible non-notification, #3572 #3559 #3558 by @dgtlmoon in #3573Updating API docs
Full Changelog: dgtlmoon/changedetection.io@0.50.34...0.50.35
v0.50.34: Notification fixes mainly, security updateCompare Source
What's Changed
format=in apprise URLs by @dgtlmoon in #3567Full Changelog: dgtlmoon/changedetection.io@0.50.33...0.50.34
v0.50.33: Fixes to notification types, misc updatesCompare Source
Main fixes