logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma git clone https://hacktivis.me/git/pleroma.git
commit: 73c4c6d7de6d33c68cf663e65df8525ce8eef4f5
parent 9c0040124a9ea68cedca4959d32105ee6a6c3ee1
Author: Mark Felder <feld@feld.me>
Date:   Tue, 26 Dec 2023 17:12:58 -0500

Revert "Mark instances as unreachable when returning a 403 from an object fetch"

This reverts commit d472bafec19cee269e7c943bafae7c805785acd7.

Diffstat:

Mchangelog.d/handle_object_fetch_failures.change1-
Mlib/pleroma/object/fetcher.ex1-
Mtest/pleroma/object/fetcher_test.exs15---------------
3 files changed, 0 insertions(+), 17 deletions(-)

diff --git a/changelog.d/handle_object_fetch_failures.change b/changelog.d/handle_object_fetch_failures.change @@ -1,3 +1,2 @@ Remote object fetch failures will prevent the object fetch job from retrying if the object has been deleted or the fetch was denied with a 403 due to instance block behavior with authorized_fetch enabled. -Mark instances as unreachable when object fetch is denied due to instance block and authorized_fetch. Skip fetching objects from unreachable instances. diff --git a/lib/pleroma/object/fetcher.ex b/lib/pleroma/object/fetcher.ex @@ -213,7 +213,6 @@ defmodule Pleroma.Object.Fetcher do end {:ok, %{status: 403}} -> - Instances.set_consistently_unreachable(id) {:error, "Object fetch has been denied"} {:ok, %{status: code}} when code in [404, 410] -> diff --git a/test/pleroma/object/fetcher_test.exs b/test/pleroma/object/fetcher_test.exs @@ -25,9 +25,6 @@ defmodule Pleroma.Object.FetcherTest do %{method: :get, url: "https://mastodon.example.org/users/userisgone404"} -> %Tesla.Env{status: 404} - %{method: :get, url: "https://octodon.social/users/cwebber/statuses/111647596861000656"} -> - %Tesla.Env{status: 403} - %{ method: :get, url: @@ -236,18 +233,6 @@ defmodule Pleroma.Object.FetcherTest do ) end - test "handle HTTP 403 response" do - object_id = "https://octodon.social/users/cwebber/statuses/111647596861000656" - Instances.set_reachable(object_id) - - assert Instances.reachable?(object_id) - - assert {:error, "Object fetch has been denied"} == - Fetcher.fetch_object_from_id(object_id) - - refute Instances.reachable?(object_id) - end - test "it can fetch pleroma polls with attachments" do {:ok, object} = Fetcher.fetch_object_from_id("https://patch.cx/objects/tesla_mock/poll_attachment")