From 0c24f4dce204e898fe07f763d48f133214d96017 Mon Sep 17 00:00:00 2001 From: Josh Leeb-du Toit Date: Tue, 20 Oct 2020 02:02:13 +1100 Subject: [PATCH] Add support for Gemini urls (#15013) This PR updates the `valid_url` regex and sanitizer allowlist to provide support for Gemini urls. Closes #14991 --- app/lib/sanitize_config.rb | 1 + config/initializers/twitter_regex.rb | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/app/lib/sanitize_config.rb b/app/lib/sanitize_config.rb index 4ad1199a604..8f700197b27 100644 --- a/app/lib/sanitize_config.rb +++ b/app/lib/sanitize_config.rb @@ -18,6 +18,7 @@ class Sanitize gopher xmpp magnet + gemini ).freeze CLASS_WHITELIST_TRANSFORMER = lambda do |env| diff --git a/config/initializers/twitter_regex.rb b/config/initializers/twitter_regex.rb index f84f7c0cbb6..7f99a000564 100644 --- a/config/initializers/twitter_regex.rb +++ b/config/initializers/twitter_regex.rb @@ -29,7 +29,7 @@ module Twitter ( # $1 total match (#{REGEXEN[:valid_url_preceding_chars]}) # $2 Preceding character ( # $3 URL - ((?:https?|dat|dweb|ipfs|ipns|ssb|gopher):\/\/)? # $4 Protocol (optional) + ((?:https?|dat|dweb|ipfs|ipns|ssb|gopher|gemini):\/\/)? # $4 Protocol (optional) (#{REGEXEN[:valid_domain]}) # $5 Domain(s) (?::(#{REGEXEN[:valid_port_number]}))? # $6 Port number (optional) (/#{REGEXEN[:valid_url_path]}*)? # $7 URL Path and anchor