Fix mentioning punycode domains when using Markdown

This commit is contained in:
tusooa 2023-07-29 12:55:43 -04:00
parent 340c881296
commit b748efe66a
No known key found for this signature in database
GPG Key ID: 42AEC43D48433C51
3 changed files with 14 additions and 1 deletions

View File

@ -0,0 +1 @@
Fix mentioning punycode domains when using Markdown

View File

@ -124,7 +124,7 @@ def mentions_escape(text, options \\ []) do
end
def markdown_to_html(text) do
Earmark.as_html!(text, %Earmark.Options{compact_output: true})
Earmark.as_html!(text, %Earmark.Options{compact_output: true, smartypants: false})
end
def html_escape({text, mentions, hashtags}, type) do

View File

@ -843,6 +843,18 @@ test "quote posting visibility" do
{:ok, _} = CommonAPI.post(user, %{status: "nice", quote_id: public.id})
{:ok, _} = CommonAPI.post(another_user, %{status: "nice", quote_id: public.id})
end
test "it properly mentions punycode domain" do
user = insert(:user)
_mentioned_user =
insert(:user, ap_id: "https://xn--i2raa.com/users/yyy", nickname: "yyy@xn--i2raa.com")
{:ok, activity} =
CommonAPI.post(user, %{status: "hey @yyy@xn--i2raa.com", content_type: "text/markdown"})
assert "https://xn--i2raa.com/users/yyy" in Object.normalize(activity).data["to"]
end
end
describe "reactions" do