diff options
author | Haelwenn <contact+git.pleroma.social@hacktivis.me> | 2020-09-07 08:18:59 +0000 |
---|---|---|
committer | Haelwenn <contact+git.pleroma.social@hacktivis.me> | 2020-09-07 08:18:59 +0000 |
commit | 000c315ee7af9110f77e4cbdeb1a66769b1c4695 (patch) | |
tree | c5a392250286c1e2ad04d74a41f548204c479d49 | |
parent | 23932aaf3827182e35f38cf0db3f3a5acd44ab59 (diff) | |
parent | 170599c390e7c82bdff0d4180d04b2f0f3906f35 (diff) | |
download | pleroma-000c315ee7af9110f77e4cbdeb1a66769b1c4695.tar.gz |
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.ex | 11 | ||||
-rw-r--r-- | test/web/rich_media/parser_test.exs | 4 |
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 |