@RaccoonForFriendica version 0.4.1-beta11 has been released yesterday and is available for testing.

Its "latest and greatest" are:
- tags in post headers in your timeline (if that post is included due to you following one orore hashtags);
- new post detail layout which makes it easier to view relationships between posts and replies and load more replies on demand.

The initial depth of nesting (higher values imply loading will be less performant, lower values imply you'll see more often the "load more replies" button due to threads being partially downloaded).

It is the best I can do with the current Mastodon APIs but it looks ok-ish and, which is more important to the user who asked for this feature I guess, it makes it easier to follow conversations.

Let me know what you think, and if I accidentally broke anything and in the meantime, as usual, #livefasteattrash

#friendica #friendicadev #androidapp #androiddev #fediverseapp #raccoonforfriendica #kotlin #multiplatform #kmp #compose #cmp #opensource #foss #procyonproject

reshared this

in reply to ๐”ป๐•š๐•–๐•˜๐•  ๐Ÿฆ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป๐Ÿ•

@๐”ป๐•š๐•–๐•˜๐•  ๐Ÿฆ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป๐Ÿ• I'm wondering as a part of loading more replies, does @RaccoonForFriendica also fetching posts from different instances?
Or would it be too much work?
I can see one of my followers posts something interesting, my friendica instance receives replies from people we follow but when visiting his instance there are even more replies.
Perhaps doing this is already possible somehow as most often such posts are available to the public thusadding that instance as an anonymous account in the raccoon app might :help with it to an extend.

RaccoonForFriendica reshared this.

in reply to Peter Vรกgner

@Peter Vรกgner that indeed is some extra work (and it can further worsen performance too), but I see it as hardly possible too. On federated instances posts (in this case the "parent" of replies) change their ID so it is virtually impossible to reconstruct the tree of answers across different instances. I'm sorry to have to say that...

What is weird is: why aren't those "extra replies" in instance B being retrieved on instance A where the post was created? Federation not being mutual (B federates with A whereas A doesn't federate with B)?

@RaccoonForFriendica

RaccoonForFriendica reshared this.

in reply to ๐”ป๐•š๐•–๐•˜๐•  ๐Ÿฆ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป๐Ÿ•

@๐”ป๐•š๐•–๐•˜๐•  ๐Ÿฆ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป๐Ÿ• Okay, so I understand this is not going to happen. I can't explain it better. I think it might be a result how the federation on fediverse is working.
Lets imagine a scenario like this:
User 1 and User 2 are following each other. They both also follow user 3 but only user 2 is following user 4.
User 4 follows User 2 but not User 1 and User 3. User 1 and User 3 are not following User4.
User 2 posts a public message to his timeline. User 1, User 3 and User 4 receive that post as they all are following user 2.
User 3 replies. User 1 User 2 and User 4 will receive the reply.
User 4 replies. User 2 receives the reply but User 1 and User 3 won't receive it as they don't follow User 4. And this is the part where the conversation flow is breaking.

I was hoping it might be somehow possible to compensate for this client side, but if the posts identifiers are different accross instances or different fediverse servers such as friendica / mastodon, then I understand we are screwed and there is no way around this.

Still I believe when viewing a post it might be possible to consider adding an entry to the options menu of that post saying something like fetch from original instance and that would fetch the whole conversation from that instance without logging in to that instance effectivelly allowing doing what we can now do in the browser i.e. open the original post as seen at their site.

Then follow up difficulties might be how to like and boost such a post if my instance may not know that post.

I understand this is complex so perhaps lets keep it for the future and thing about possible difficulties until that time.

RaccoonForFriendica reshared this.

in reply to Peter Vรกgner

@Peter Vรกgner @Dieguito ๐Ÿฆ๐Ÿง‘๐Ÿปโ€๐Ÿ’ป๐Ÿ• How conversations work is not unified all across the Fediverse. Even how connections work is not unified.

Mastodon has taken over the follower/followed principle from Twitter which is always illustrated with arrows with one point. A following B is illustrated with an arrow from A to B. A being followed by B is illustrated with an arrow from B to A. A and B following each other mutually is illustrated with one arrow from A to B and one arrow from B to A.

It appears to me that Friendica has adopted this to become more compatible with Mastodon. But its several descendants, created by Friendica's own creator, starting with Hubzilla, haven't.

Hubzilla, (streams) and Forte still have the bidirectional "connection" or "contact" as the default. It's illustrated with one arrow, but with one point on each end.

Also, all three understand a threaded conversation as an enclosed contruct entirely owned by the conversation starter. Everyone on these three who has the start post on their stream always actually has the whole thread on their stream.

In fact, all three have Conversation Containers implemented. This feature was originally created in the streams repository in 2022. Forte has had it from the get-go as it started out as a fork of (streams). It was eventually turned into FEP-171b and backported to Hubzilla last year.

All three make sure that everyone who has a post on their stream also always has all comments on that post, at least those that are made after they have received the post.

This works on two basic principles:

  • All comments go directly to the original poster because the original poster owns the thread.
  • Those who have the post automatically receive all comments from the original poster.

In a pure Hubzilla/(streams)/Forte system, your above example would look like this:

  • User 1 and User 2 are connected.
  • User 1 and User 3 are connected. (This doesn't even matter.)
  • User 2 and User 3 are connected.
  • User 2 and User 4 are connected.


Much simpler than explaining everything with "following" and "being followed", isn't it?

Now, the conversation works like this.

  • User 2 sends a public post, thus creating a Conversation Container of which they are the owner.
    User 1, User 3 and User 4 receive the post.
  • User 3 comments on User 2's post.
    The comment goes from User 3 to User 2, who is the owner of the conversation, and it is automatically forwarded to User 1 and User 4 who already have User 2's post on their streams.
  • User 4 comments on User 3's comment.
    The comment goes from User 4 past User 3 straight to User 2, who is the owner of the conversation, and it is automatically forwarded to User 1 and User 3 who already have User 2's post on their streams.


The only mentioning that occurs here, if any, is User 4 mentioning User 3. This is not necessary for User 4's post to reach anyone. This is only necessary to make sure on Hubzilla (which doesn't have a tree view) that User 4 is replying to User 3's comment and not to User 2's post.

On Mastodon, for comparison, everything depends on who follows whom, who mentions whom and whose instance knows whose instance.

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Fediverse #Mastodon #Friendica #Hubzilla #Streams #(streams) #Forte #Conversations #FEP_171b #ConversationContainers

in reply to Peter Vรกgner

@Peter Vรกgner Aside note:

As far as I know, you can only send posts to a Friendica forum with an exclamation mark to have them forwarded to all members. But you cannot do that with comments, not in a conversation whose (start) post did not go to that forum.

On Friendica and all its descendants, a reply is never a stand-alone post. It's always a comment on another post.

Thus, mentioning a Friendica forum in a comment with an exclamation mark is futile.

#Long #LongPost #CWLong #CWLongPost #FediMeta #FediverseMeta #CWFediMeta #CWFediverseMeta #Friendica #FediTips

โ‡ง