summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaelwenn <contact+git.pleroma.social@hacktivis.me>2020-09-07 08:18:59 +0000
committerHaelwenn <contact+git.pleroma.social@hacktivis.me>2020-09-07 08:18:59 +0000
commit000c315ee7af9110f77e4cbdeb1a66769b1c4695 (patch)
treec5a392250286c1e2ad04d74a41f548204c479d49
parent23932aaf3827182e35f38cf0db3f3a5acd44ab59 (diff)
parent170599c390e7c82bdff0d4180d04b2f0f3906f35 (diff)
Merge branch 'fix/no-rich-media-error' into 'develop'
RichMedia: do not log webpages missing metadata as errors See merge request pleroma/pleroma!2960
-rw-r--r--lib/pleroma/web/rich_media/parser.ex11
-rw-r--r--test/web/rich_media/parser_test.exs4
2 files changed, 9 insertions, 6 deletions
diff --git a/lib/pleroma/web/rich_media/parser.ex b/lib/pleroma/web/rich_media/parser.ex
index e98c743ca..5727fda18 100644
--- a/lib/pleroma/web/rich_media/parser.ex
+++ b/lib/pleroma/web/rich_media/parser.ex
@@ -21,8 +21,13 @@ defmodule Pleroma.Web.RichMedia.Parser do
{:ok, _} <- set_ttl_based_on_image(data, url) do
{:ok, data}
else
+ {:error, {:invalid_metadata, data}} = e ->
+ Logger.debug(fn -> "Incomplete or invalid metadata for #{url}: #{inspect(data)}" end)
+ e
+
error ->
- Logger.error(fn -> "Rich media error: #{inspect(error)}" end)
+ Logger.error(fn -> "Rich media error for #{url}: #{inspect(error)}" end)
+ error
end
end
@@ -90,7 +95,7 @@ defmodule Pleroma.Web.RichMedia.Parser do
end)
end
- defp parse_url(url) do
+ def parse_url(url) do
with {:ok, %Tesla.Env{body: html}} <- Pleroma.Web.RichMedia.Helpers.rich_media_get(url),
{:ok, html} <- Floki.parse_document(html) do
html
@@ -116,7 +121,7 @@ defmodule Pleroma.Web.RichMedia.Parser do
end
defp check_parsed_data(data) do
- {:error, "Found metadata was invalid or incomplete: #{inspect(data)}"}
+ {:error, {:invalid_metadata, data}}
end
defp clean_parsed_data(data) do
diff --git a/test/web/rich_media/parser_test.exs b/test/web/rich_media/parser_test.exs
index 1e09cbf84..21ae35f8b 100644
--- a/test/web/rich_media/parser_test.exs
+++ b/test/web/rich_media/parser_test.exs
@@ -66,9 +66,7 @@ defmodule Pleroma.Web.RichMedia.ParserTest do
end
test "doesn't just add a title" do
- assert Parser.parse("http://example.com/non-ogp") ==
- {:error,
- "Found metadata was invalid or incomplete: %{\"url\" => \"http://example.com/non-ogp\"}"}
+ assert {:error, {:invalid_metadata, _}} = Parser.parse("http://example.com/non-ogp")
end
test "parses ogp" do