diff --git a/changedetectionio/blueprint/ui/templates/edit.html b/changedetectionio/blueprint/ui/templates/edit.html index f6e7f6a08..3b90d266a 100644 --- a/changedetectionio/blueprint/ui/templates/edit.html +++ b/changedetectionio/blueprint/ui/templates/edit.html @@ -328,8 +328,9 @@ Math: {{ 1 + 1 }}") }} {{ render_checkbox_field(form.filter_text_replaced) }} {{ render_checkbox_field(form.filter_text_removed) }} Note: Depending on the length and similarity of the text on each line, the algorithm may consider an addition instead of replacement for example.
-  So it's always better to select Added+Replaced when you're interested in new content.
-  When content is merely moved in a list, it will also trigger an addition, consider enabling Only trigger when unique lines appear + So it's always better to select Added+Replaced when you're interested in new content.
+ When content is merely moved in a list, it will also trigger an addition, consider enabling Only trigger when unique lines appear.
+ The full snapshot is still saved (this does not strip added/changed/removed lines), only limits the triggers of the change detection.
{{ render_checkbox_field(form.check_unique_lines) }} diff --git a/changedetectionio/processors/text_json_diff/processor.py b/changedetectionio/processors/text_json_diff/processor.py index b9a33d2b5..d774e68fc 100644 --- a/changedetectionio/processors/text_json_diff/processor.py +++ b/changedetectionio/processors/text_json_diff/processor.py @@ -589,7 +589,12 @@ class perform_site_check(difference_detection_processor): if 'text_for_checksuming' in locals() and text_for_checksuming is not stripped_text: del text_for_checksuming - return changed_detected, update_obj, stripped_text + # When diff filtering is active, return full content for history snapshots + # stripped_text contains only the filtered diff, which would create confusing/broken snapshots + if full_content_for_md5 is not None: + return changed_detected, update_obj, full_content_for_md5 + else: + return changed_detected, update_obj, stripped_text def _apply_diff_filtering(self, watch, stripped_text, text_before_filter): """Apply user's diff filtering preferences (show only added/removed/replaced lines)."""