Skip to content
  • 6 Votes
    8 Posts
    59 Views
    julianJ

    @[email protected] right. I think functionally I'll never encounter a Delete, check the origin, and find that the note hasn't actually been deleted, but stranger things have happened!

  • A forum for New_ Public?

    Uncategorized
    1
    1 Votes
    1 Posts
    4 Views
    julianJ

    @[email protected] I'm curious to see whether your team evaluated forums as a viable means to communicate and comment re: news stories.

    The forums of yesteryear are done and dusted, a future of federated forum softwares await...

  • 7 Votes
    2 Posts
    51 Views
    julianJ

    Technical stuff ahead 🚨...

    This is merely exposing the frontend UI to the already established backend logic.

    We have two methods internally that are used for this:

    Notes.assert, which when given a object url or id, parses it and attempts to resolve the parent chain all the way to the top-level post. It then creates a topic to house all of those posts. Actors.assert, which when given an object url, id, or handle, creates a local representation of the user. How come "query"/etc. didn't show up?

    For both user and post searching, if the passed-in url does not resolve or does not resolve to a processable object, then we do not proceed. It's important to realize that while in an ideal world, we'd all be passing immutable identifiers everywhere, the real world is just a bit messier.

    Search queries could be a post or user URL, or a webfinger handle, so additional logic was required to handle those use cases. Most ActivityPub-enabled software I've encountered handle these vanity URLs when queried via ActivityPub — it returns the appropriate representation for processing. Some do not, and so in those cases, those items will not show up in the search results.

  • 16 Votes
    2 Posts
    25 Views
    mike@flipboard.socialM

    @julian @snarfed.org it's both.

    Love that you noticed that!

  • 7 Votes
    1 Posts
    48 Views
    julianJ

    As of today, the NodeBB-ActivityPub implementation now supplies both context and audience properties with every post.

    N.B. When I say context and audience, these are also terms used by the ForumWG that refer to "topic" and "category", in NodeBB parlance.

    Early indications from the last ForumWG meeting indicate movement towards the inclusion of context in a low-level as:Note object (a federated NodeBB post), resolvable as an as:Collection or as:OrderedCollection. The latter is what NodeBB will send, ordered by post time.

    Discussions with @[email protected] also suggest that Discourse has the ability to parse an as:OrderedCollection context if provided, but currently does not if encountered as a property in a Note.

    A minor change today also updates the audience property, which used to erroneously point to the context/topic, but now points to the audience/category. This change aligns usage of this property with FEP-1b12's expectations.

    This change should allow other implementors to:

    automatically group objects together given a the provided context, and more thoroughly backfill a given object's context, without relying on inReplyTo traversal
  • 17 Votes
    42 Posts
    925 Views
    nutomic@socialhub.activitypub.rocksN
    Thats how FEP-1b12 works, its necessary if you want to federate activities such as voting, deletions or mod actions and not only post creations. But Lemmy doesnt support arbitrarily wrapped activities, only specific hardcoded ones like Announce/Create/Note, Announce/Like or Announce/Delete.
  • 8 Votes
    5 Posts
    317 Views
    julianJ

    This user story deals with expected behaviour when encountering a topic/context/first-order collection.

    Perhaps it is discovered when declared as the context for an Object. The collection can then be used as the canonical source for content for that context, and it's members queued for asynchronous processing.

    A scaling issue exists here in that a collection could be massive and cause an undue delay in processing a new Note if every other member of the collection needs to be processed first. Implementors should take care to not require the full context during processing of an Object.

  • 0 Votes
    1 Posts
    110 Views
    julianJ

    Hey @[email protected], how can I add events to the SWICG calendar? I notice there's a little button to include "Task Forces" in the listing, so I think listing our meetings would be helpful, now that we've settled on a more consistent time/day-of-week.

    cc @[email protected] (unrelatedly, do you get notified if I mention your SocialHub handle?)

  • 8 Votes
    11 Posts
    169 Views
    rimu@mastodon.nzoss.nzR

    @julian Ooo good point about adding the ? back on.

    If you're interested in a non-regex solution, here's what I have - https://codeberg.org/rimu/pyfedi/src/branch/main/app/utils.py#L247

  • 1 Votes
    4 Posts
    21 Views
    blakmarkit@mograph.socialB

    @julian hmm... there must have been something else I did the last time this happened.

  • 27 Votes
    32 Posts
    1k Views
    julianJ

    @[email protected] said in Article vs. Note vs. Page:

    Since then WordPress has joined the Fediverse, and now Ghost is about to join as well. I think the ability to display rich content may soon become a serious competitive advantage.

    Completely agreed. The best time to consider a different approach is now, so I am hoping we can make some headway here at the WG meeting. Stay tuned...

    cc @[email protected] @[email protected]

  • 15 Votes
    5 Posts
    145 Views
    risottobias@tech.lgbtR

    @julian @pfefferle note to self, offer more friendly shared hosting

  • 5 Votes
    26 Posts
    472 Views
    scott@authorship.studioS
    @julian
    For example, let's say I link out to Evan's profile here. If NodeBB knew that this link had an alternative AP endpoint, then we could redirect the user instead to the local representation of his profile

    Wouldn't Evan's AP endpoint be the same as his HTML endpoint?

    Most platforms are going to send you to the authoritative profile, which is the one at the user's server.

    And if you wanted to redirect a link to a local profile instead of his official profile, you don't need an endpoint to do that. You could simply parse the post and swap out the URL, since you should have data about the user in your database anyway from when you first detected the user.

    Maybe I am misunderstanding the use case here, but I am not sure why a platform would send you to a different platform to view the profile or channel.
  • 4 Votes
    4 Posts
    132 Views
    trwnh@mastodon.socialT

    @julian @rimu i think that was rimu actually, although i can probably give a summary

  • 2 Votes
    2 Posts
    116 Views
    julianJ

    Ah it looks like this was covered by Angus' post over on SocialHub

  • 11 Votes
    40 Posts
    552 Views
    trwnh@mastodon.socialT

    @devnull

    infinite love â´³ (@[email protected])

    @[email protected] brevity

    favicon

    Mastodon (mastodon.social)

    infinite love â´³ (@[email protected])

    @[email protected] more specifically, the examples use `audience` instead of to/cc, but you can use any of the three (to/cc/audience)

    favicon

    Mastodon (mastodon.social)

  • 0 Votes
    13 Posts
    320 Views
    Jay MoonahJ

    @omega well I do pride myself on a well stocked fridge but maybe not that well stocked :rofl:

  • 15 Votes
    7 Posts
    495 Views
    crazycellsC

    @julian I am not sure but I guess so...

    when I clicked the link on the first post of this topic: https://community.nodebb.org/topic/cd43b9f3-c032-44cc-adc8-f32e7ee91901/our-next-meeting/

    it takes me here but gives error:

    https://socialhub.activitypub.rocks/ap/object/1899f65c062200daec50a4c89ed76dc9

  • 2 Votes
    4 Posts
    139 Views
    Jay MoonahJ

    @[email protected] hello! Unfortunately I'm busy this coming Tuesday but would be interested to chat about doing something in the future. Something I should be clear about first though is that I'm not involved in Podcamp Toronto or really in the podcasting community at all these days. I ended my last podcast around 2010, so most of my direct experience really is "historical" lol.

  • 2 Votes
    12 Posts
    341 Views
    julianJ

    @[email protected] Yes, I think that's what @oplik0 and I ended up agreeing on. If we normalize all incoming requests so that any requests containing a full object on a different domain is just reduced down to its id, then you'd safeguard yourself from most edge cases. Applying FEP-8b32 would be handy to save yourself a few network calls but is optional.

    The cost is you might have to make a couple extra calls, but it's probably worth it in order to keep the logic simple, predictable, and easily auditable.