From d366114f3fc0d51c2fdf40a208fc5a6064a613af Mon Sep 17 00:00:00 2001 From: Mohamed Ait Oubarka Date: Tue, 10 Mar 2026 06:15:19 +0000 Subject: [PATCH 1/3] fix(run.sh): use strict regex match for language checks --- run.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/run.sh b/run.sh index 8a5117eb..00987f9b 100755 --- a/run.sh +++ b/run.sh @@ -101,13 +101,13 @@ if [ "$language" == "he" ]; then fi # Set font if russian or chinese -if [[ "ru zh-Hant zh-TW" =~ $language ]]; then +if [[ $language =~ ^(ru|zh-Hant|zh-TW)$ ]]; then export BUILD_THEME_FONT_CODE="Noto Sans TC" export BUILD_THEME_FONT_TEXT="Noto Sans TC" fi # Set stylesheet if hebrew or russian or chinese -if [[ "he ru zh-Hant zh-TW" =~ $language ]]; then +if [[ $language =~ ^(he|ru|zh-Hant|zh-TW)$ ]]; then export TRANSLATION_STYLESHEET="assets/stylesheets/lang-$language.css?v=20240410" fi From b7c9006dd4e326eb2f5074b581232895028341a3 Mon Sep 17 00:00:00 2001 From: Mohamed Ait Oubarka Date: Tue, 10 Mar 2026 06:24:12 +0000 Subject: [PATCH 2/3] fix(generate-members.py): correct API URL and f-string syntax - Update default MEMBERS_API_URL to https://privacyguides.org/cache/members.json because the ghost subdomain no longer exists. - Add timeout and raise_for_status() to improve HTTP request reliability and prevent hanging. - Correct f-string syntax to safely reference member dictionary keys (even when using Python 3.12) --- tools/generate-members.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/tools/generate-members.py b/tools/generate-members.py index c8ba19fc..8a6528c5 100644 --- a/tools/generate-members.py +++ b/tools/generate-members.py @@ -1,9 +1,12 @@ + import requests import os # Fetch members from the API -members_api_url = os.getenv('MEMBERS_API_URL', 'https://ghost.privacyguides.org/cache/members.json') -members_response = requests.get(members_api_url) +members_api_url = os.getenv('MEMBERS_API_URL', 'https://privacyguides.org/cache/members.json') +members_response = requests.get(members_api_url, timeout=10) +members_response.raise_for_status() + members_data = members_response.json()[0] members = members_data['members'] @@ -11,7 +14,7 @@ members = members_data['members'] html_output = "" for member in members: username = member['username'] - html_output += f'' + html_output += f'' # Append the count of private members if members_data['unaccounted'] > 0: From 052f0682ad2b59f8354e989aed8160ad7ce54038 Mon Sep 17 00:00:00 2001 From: Mohamed Ait Oubarka Date: Tue, 10 Mar 2026 08:01:33 +0000 Subject: [PATCH 3/3] fix: additional corrections or improvements --- tools/generate-members.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/tools/generate-members.py b/tools/generate-members.py index 8a6528c5..c209e534 100644 --- a/tools/generate-members.py +++ b/tools/generate-members.py @@ -1,4 +1,3 @@ - import requests import os @@ -13,7 +12,6 @@ members = members_data['members'] html_output = "" for member in members: - username = member['username'] html_output += f'' # Append the count of private members