From fe4df1d41f3935ebe965769eeee66094143b7437 Mon Sep 17 00:00:00 2001 From: dgtlmoon Date: Fri, 28 Nov 2025 16:16:23 +0100 Subject: [PATCH 1/3] 'dev' container should be only built on 'dev' branch --- .github/workflows/containers.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/containers.yml b/.github/workflows/containers.yml index 02dd51c3..67910c45 100644 --- a/.github/workflows/containers.yml +++ b/.github/workflows/containers.yml @@ -95,7 +95,7 @@ jobs: # master branch -> :dev container tag - name: Build and push :dev id: docker_build - if: ${{ github.ref }} == "refs/heads/master" + if: ${{ github.ref }} == "refs/heads/dev" uses: docker/build-push-action@v6 with: context: ./ From 51bb358ea7cba922220757862ba8d281005af4c0 Mon Sep 17 00:00:00 2001 From: dgtlmoon Date: Fri, 28 Nov 2025 16:20:11 +0100 Subject: [PATCH 2/3] Improving dev workflow --- .github/workflows/containers.yml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/containers.yml b/.github/workflows/containers.yml index 67910c45..02c541be 100644 --- a/.github/workflows/containers.yml +++ b/.github/workflows/containers.yml @@ -15,6 +15,7 @@ on: push: branches: - master + - dev jobs: metadata: @@ -92,10 +93,10 @@ jobs: version: latest driver-opts: image=moby/buildkit:master - # master branch -> :dev container tag + # dev branch -> :dev container tag - name: Build and push :dev id: docker_build - if: ${{ github.ref }} == "refs/heads/dev" + if: ${{ github.ref == 'refs/heads/dev' }} uses: docker/build-push-action@v6 with: context: ./ From d7dbc50d70e65ae94dc96c91ec6a8f3f878d7b20 Mon Sep 17 00:00:00 2001 From: dgtlmoon Date: Thu, 11 Dec 2025 16:57:06 +0100 Subject: [PATCH 3/3] UI - Notification error text output fix #3669 #3280 (#3672) --- .../blueprint/watchlist/templates/watch-overview.html | 2 +- changedetectionio/model/Watch.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/changedetectionio/blueprint/watchlist/templates/watch-overview.html b/changedetectionio/blueprint/watchlist/templates/watch-overview.html index 1cb22c67..a37b8eae 100644 --- a/changedetectionio/blueprint/watchlist/templates/watch-overview.html +++ b/changedetectionio/blueprint/watchlist/templates/watch-overview.html @@ -167,7 +167,7 @@ document.addEventListener('DOMContentLoaded', function() { {% endif %}   - + {%- if watch['processor'] == 'text_json_diff' -%} {%- if watch['has_ldjson_price_data'] and not watch['track_ldjson_price_data'] -%}
Switch to Restock & Price watch mode? Yes No
diff --git a/changedetectionio/model/Watch.py b/changedetectionio/model/Watch.py index cd689054..410250bc 100644 --- a/changedetectionio/model/Watch.py +++ b/changedetectionio/model/Watch.py @@ -826,6 +826,7 @@ class model(watch_base): # has app+request context, we can use url_for() if has_app_context: if last_error: + last_error = safe_jinja.render_fully_escaped(last_error) if '403' in last_error: if has_proxies: output.append(str(Markup(f"{last_error} - Try other proxies/location '"))) @@ -835,7 +836,9 @@ class model(watch_base): output.append(str(Markup(last_error))) if self.get('last_notification_error'): - output.append(str(Markup(f""))) + txt = safe_jinja.render_fully_escaped(self.get('last_notification_error')) + result = f'' + output.append(result) else: # Lo_Fi version - no app context, cant rely on Jinja2 Markup