Problem/Motivation

Despite activitypub specification doesn't mention backfill, and activitypub is taken as mail inbox/outbox, which cannot receive messages before they are created. There are reasons to implement, first of all the silos comparation, it's a common practice among them that when you start following someone its previous messages appear in your timeline.

I think most of the users are expecting it.

To collect some conversations/ideas about it:
- Mastodon: https://github.com/mastodon/mastodon/issues/34
- Pixelfed: https://github.com/pixelfed/pixelfed/issues/1745
- Friendica: backfills pinned statuses

Implementation

There's a setting on the settings screen in the 'Inbox' group where you can toggle the functionality and set the amount of activities to backfill. This is handled by StaticTypes::onActivityPostSave and StaticTypes::doInboxProcess. There's no manual button so far, that can maybe be handled in the UI of the reader module, but we'll see. Other clients don't seem to have this, as far as I can see anyway. Could be an ideal candidate for #3574479: Create a pluggable transport manager too (the doInboxProcess part then)

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

aleix created an issue. See original summary.

swentel’s picture

I like the idea. I can imagine a setting for the amount to get fetch; If 0, nothing comes in. Maybe limit the UI to say maximum 30 or so? (otherwise, we'd have to iterate all pages in the outbox too)

aleix’s picture

Good, that would be great. Maybe it could start with a little amount of 10 (or the number set manually in settings) and a manual button to obtain more activities afterwards.

swentel’s picture

Assigned: Unassigned » swentel
Category: Feature request » Task

This is becoming interesting for the API implementation too. I have a test in the api where a user follows another one, and then I expected to see the posts, which are created before in the test, are appearing, but they aren't available for the timeline items yet.

Setting as task, but not necessarily as a dependency to finish the API, but will move it to the 'other' section to get this in for 1.0.0

swentel’s picture

Issue summary: View changes
swentel’s picture

Issue summary: View changes
swentel’s picture

Issue summary: View changes
swentel’s picture

Issue summary: View changes
swentel’s picture

Issue summary: View changes

swentel’s picture

Status: Active » Fixed

Merged in, woop!

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

swentel’s picture

Status: Fixed » Closed (fixed)