Skip to content
  • 27 Votes
    32 Posts
    2k 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]

  • 18 Votes
    42 Posts
    1k 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.
  • 9 Votes
    6 Posts
    380 Views
    luceos@socialhub.activitypub.rocksL
    trwnh: Topics can be split In addition to splitting topics, topics or their posts can also be merged into another topic. The UX for this is quite variable; sometimes entire topics can be merged into another, sometimes a certain range of posts within a topic (post 5 .. 10 from 15 posts), and sometimes a selection (post 5 and 10 from 15 posts or just a singular item post 5 from 15 posts). trwnh: Topics exist in a category For #Flarum topics can also not exist in a Category (we call them tags and that extension is optional, like all of our extensions). Even when using a Category, once the Category is deleted, we do not hard delete any topics contained within but unlink them, making them less visible but still existing within the Forum. Regardless, to us, Topics CAN exist in a category, it's not required. trwnh: Users can be followed for posts and topics Users can be messaged directly This sounds as if this is a given, I don't think it's guaranteed in every Forum software. But if can implies optional, then
  • 8 Votes
    11 Posts
    239 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

  • 7 Votes
    8 Posts
    126 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!

  • 7 Votes
    2 Posts
    105 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.

  • 7 Votes
    1 Posts
    226 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
  • 6 Votes
    18 Posts
    166 Views
    C

    @Julian yeah that's a good point - I think tag would work but I always got the impression that they were more of a micro-level part of a specific piece of content vs. macro-level (being the place they're being discussed in). context would be set at the forum level (whatever the forum's owner specified) whereas tags might be decided by the user. So in that sense, context would more about origination of a post.

    Example might be something like this -

    { id: "https://yuforium.com/forums/cars", type: "Service", name: "Example Forum About Cars", context: "https://another-instance.org/topic/cars" }

    Where a POST to that forum's outbox with a Note would result in that note's context defaulting to the one set to the forum. Posting with another context would result in an error. This makes things a little different than a tag which is what would be user specified. In that sense, context is more about where the post was created, vs. what it was created about. In a federated system, where could be an authoritative entity that encompasses multiple instances and is dereferenceable, or where could be defined as a UUID and be completely unauthoritative and ephemeral.

    Given that it's more about the origination of the post, I would agree that the term "Community" is better in this case to define what context relates (instead of "Topic") so in the example, context could be switched to https://another-instance.org/community/cars.

    It's been a while since I wrote that up, and at the time I was considering using "Community" as the terminology for a context so I might update that soon (especially with "Topic" being a frequently used convention in forums meaning something totally different).

    In the Activity Streams docs, the one part about context that got my attention was this - "An example could be all activities relating to a common project or event", meaning that context exists outside of the scope of what a thread would be, and is more indicative of a forum level or federation setting vs. the contents (objects, activities, etc.) of a single thread.

  • 5 Votes
    26 Posts
    505 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.
  • NodeBB 3.8.0

    NodeBB Development
    1
    5 Votes
    1 Posts
    64 Views
    barisB

    Hello Everyone ๐Ÿ‘‹!

    Today we are releasing NodeBB 3.8.0. Please read below for all the changes in this release.

    Moderation Improvements ๐Ÿ”จ

    We made some improvements on the user account info page. Namely:

    Unmutes and Unbans will show up in the user history. If the account is flagged it will show up in the "Latest Flags" section. Moderation notes are editable. Username & email history will show who made the change.

    cfe7c601-f49e-4f16-8341-00ca5dbd0b5e-image.png

    User/Group filter on admin events page ๐Ÿ“…

    dd3b7804-33fd-4ecd-9087-73e26fca9f9e-image.png

    Events in the admin page can be filtered by a single user or a group of users.

    Field selector for user export ๐Ÿ‘ฅ

    export-user-fields.png

    Exporting a list of users in the acp now let's you select which fields to include in the export.

    Docker improvements ๐Ÿ‹

    Thanks to more work by @oplik0 we have more improvements to our docker setup, full PR https://github.com/NodeBB/NodeBB/pull/12335

    Bug fixes & Misc ๐Ÿ›

    As usual there are plenty of bug fixes in this release.

    Full list of closed issues.

    Let us know if you run into any issues in our support thread.

  • 4 Votes
    4 Posts
    161 Views
    trwnh@mastodon.socialT

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

  • 3 Votes
    15 Posts
    165 Views
    tallship@public.mitra.socialT

    @silverpill @julian

    Silverpill wrote:
    > Could you provide an example of such post?

    Here you go bro: Socialhome post w/inline images.

    I'll try to give it a boost from my #Mitra, #Hubzilla, and #Friendica accounts too (if I haven't already) so you can study/compare the various treatment cases ๐Ÿ™‚

    Sadly, I have not yet launched streams yet for study. I know, I'm a lame-O. I'll get to it shortly, prolly just spin up a local VM on Proxmox for that here, I really am anxious to give it a go ๐Ÿ™‚

    #tallship #inline_media

    โ›ต

    .

  • Clustering on two machines

    Solved General Discussion
    7
    1 Votes
    7 Posts
    208 Views
    julianJ

    @mutahar-ali You'd probably want to move the redis server to another machine in that case. Either a separate one, or on the same machine as the Mongo database.

  • 1 Votes
    3 Posts
    111 Views
    julianJ

    @omega Right now in pages where there is a list of topics (e.g. /recent, /popular, etc.) there's a filter for "Uncategorized", which would essentially exclude everything else.

    It's not as clear cut as excluding or only showing local topics, but that sort of achieves what you want. If you only want to see categorized topics, then you needn't select anything at all. By default, uncategorized topics are not shown.

    What I think you're advocating for is a button to filter out ActivityPub topics even if they're categorized. That's where I think I might draw the line, because if a topic is categorized, then it is by that action it is considered (at least by the topic mover) to be related to the overall forum topic.

  • 0 Votes
    28 Posts
    216 Views
    jenniferplusplus@hachyderm.ioJ

    @julian @thisismissem It genuinely never occurs to me to use tags as a means of controlling notifications. In fact, the very idea that the sender has more control over notifications than the recipient is mind boggling.

  • 0 Votes
    22 Posts
    549 Views
    julianJ

    @[email protected] said in Traversing the reply chain when working with topics:

    infinite inReplyTo chain.

    I think this could be solved in part by the chain traversal sanity checking to ensure that the id is not already retrieved, but I'm not naive enough to assuming that that can't be circumvented.

    ... so yes, in that sense a limit makes sense from a security standpoint.

  • 0 Votes
    22 Posts
    728 Views
    oplik0O

    @[email protected] it was actually because of @ in actor IDs - the codepath for choosing a webfinger lookup over just accepting the URL as the ID only checked for its presence, and the code for webfinger lookups was only meant to run for the acct: protocol.

    So yeah, not WP fault at all, just a combination of a bug and missing feature ๐Ÿ™‚ Now both should be fixed.

  • Preview Plugin

    NodeBB Plugins
    14
    0 Votes
    14 Posts
    181 Views
    phenomlabP

    @huige Do you have any headers set which restrict the ability for sites to display the images?

  • 0 Votes
    11 Posts
    294 Views
    N

    In fact, what we want to do is to embed a grafana dashboard into that section to show data from another app that we have for the user. Grafana was using iframe but this latest update changes that to an API.

  • 0 Votes
    9 Posts
    306 Views
    julianJ

    Cheers @[email protected] thanks for making it official.

    @[email protected] hopefully you can subscribe to the recurring event now ๐Ÿ™‚