1 # Pleroma: A lightweight social networking server
2 # Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
3 # SPDX-License-Identifier: AGPL-3.0-only
5 defmodule Pleroma.Repo.Migrations.MigrateMissingFollowingRelationships do
9 execute(import_pending_follows_from_activities(), "")
12 defp import_pending_follows_from_activities do
15 following_relationships (
25 activities.data ->> 'state',
26 (activities.data ->> 'published') :: timestamp,
30 JOIN users AS followers ON (activities.actor = followers.ap_id)
31 JOIN users AS following ON (activities.data ->> 'object' = following.ap_id)
33 activities.data ->> 'type' = 'Follow'
34 AND activities.data ->> 'state' = 'pending'
35 ORDER BY activities.updated_at DESC
36 ON CONFLICT DO NOTHING