From 69ee4a5ff5eff77ad9712e3920943d533e524ddb Mon Sep 17 00:00:00 2001 From: Sag Date: Thu, 16 Nov 2023 14:50:24 -0300 Subject: [PATCH] =?UTF-8?q?=E2=9C=A8=20Added=20option=20to=20unsubscribe?= =?UTF-8?q?=20in=20one-click=20from=20emails=20(#19032)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit refs https://github.com/TryGhost/Product/issues/4051 - added a "List-Unsubscribe" header to emails, in compliance with the RFC 8058 requirements - Gmail, Apple Mail, Yahoo Mail, and other popular email clients offer an option to unsubscribe in one-click, based on the "List-Unsubscribe" header. Some require an HTTPS endpoint, some a mailto address; both options are provided in the "List-Unsubscribe" header Co-authored-by: Simon Backx Co-authored-by: Djordje Vlaisavljevic --- .../src/components/settings/advanced/labs/AlphaFeatures.tsx | 4 ---- ghost/core/core/shared/labs.js | 4 ++-- .../test/e2e-api/admin/__snapshots__/settings.test.js.snap | 2 +- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/apps/admin-x-settings/src/components/settings/advanced/labs/AlphaFeatures.tsx b/apps/admin-x-settings/src/components/settings/advanced/labs/AlphaFeatures.tsx index 61391067c3..882770b8bb 100644 --- a/apps/admin-x-settings/src/components/settings/advanced/labs/AlphaFeatures.tsx +++ b/apps/admin-x-settings/src/components/settings/advanced/labs/AlphaFeatures.tsx @@ -47,10 +47,6 @@ const features = [{ title: 'Tips & donations', description: 'Enables publishers to collect one-time payments', flag: 'tipsAndDonations' -},{ - title: 'List-Unsubscribe header', - description: 'Set the List-Unsubscribe header in emails', - flag: 'listUnsubscribeHeader' },{ title: 'AdminX Offers', description: 'Enables the new offers UI in AdminX settings', diff --git a/ghost/core/core/shared/labs.js b/ghost/core/core/shared/labs.js index af563e439e..1d6dcff362 100644 --- a/ghost/core/core/shared/labs.js +++ b/ghost/core/core/shared/labs.js @@ -21,7 +21,8 @@ const GA_FEATURES = [ 'announcementBar', 'signupForm', 'recommendations', - 'editorEmojiPicker' + 'editorEmojiPicker', + 'listUnsubscribeHeader' ]; // NOTE: this allowlist is meant to be used to filter out any unexpected @@ -43,7 +44,6 @@ const ALPHA_FEATURES = [ 'tipsAndDonations', 'importMemberTier', 'lexicalIndicators', - 'listUnsubscribeHeader', 'editorEmojiPicker', 'adminXOffers', 'filterEmailDisabled' diff --git a/ghost/core/test/e2e-api/admin/__snapshots__/settings.test.js.snap b/ghost/core/test/e2e-api/admin/__snapshots__/settings.test.js.snap index ace2b6df16..ee1dd5e4da 100644 --- a/ghost/core/test/e2e-api/admin/__snapshots__/settings.test.js.snap +++ b/ghost/core/test/e2e-api/admin/__snapshots__/settings.test.js.snap @@ -758,7 +758,7 @@ exports[`Settings API Edit Can edit a setting 2: [headers] 1`] = ` Object { "access-control-allow-origin": "http://127.0.0.1:2369", "cache-control": "no-cache, private, no-store, must-revalidate, max-stale=0, post-check=0, pre-check=0", - "content-length": "4307", + "content-length": "4338", "content-type": "application/json; charset=utf-8", "content-version": StringMatching /v\\\\d\\+\\\\\\.\\\\d\\+/, "etag": StringMatching /\\(\\?:W\\\\/\\)\\?"\\(\\?:\\[ !#-\\\\x7E\\\\x80-\\\\xFF\\]\\*\\|\\\\r\\\\n\\[\\\\t \\]\\|\\\\\\\\\\.\\)\\*"/,