Skip to content

Piero Bosio Social Web Site Personale Logo Fediverso

Social Forum federato con il resto del mondo. Non contano le istanze, contano le persone

Deleting a post vs deleting an entire comment tree

Technical Discussion
23 11 0

Gli ultimi otto messaggi ricevuti dalla Federazione
  • I fail to see what the fundamental difference is. If you are unsure about the target with Delete/Object, you can also resolve the context of Object to figure that out. Anyway the instance where the Group is hosted is always the authority, so the state there is the correct one.

    Actually I would rather think of this from a different perspective, namely from the perspective of the mod who clicks the remove button. That would happen when a post is offtopic or violates the rules, and then the intent clearly is to remove all replies as they are not useful. It wouldnt make sense to leave up a single reply two levels deep just because it wasnt included in the context for some reason.

    read more

  • I'm sure that approach works as well. This would have been worth discussing 4 or 5 years ago when I was just implementing federation in Lemmy for the first time. By now FEP-1b12 is already an established standard which is used by various platforms, and it would be completely unfeasible to replace it with something else.

    read more

  • I do agree that with_replies, or similar, would be the easiest approach, but I don't think it is the most specific.

    The bool suggests that all replies to a given object are deleted. However, you do not know whether your idea of what the reply tree is matches that of the originating server (which replies are included, etc.?)

    Remove(Context), on the other hand does imply both that the container is deleted, and all of its replies, which are dereferenceable by resolving the context directly. It also has the benefit of being able to provide a pointer to where it was removed from, which is useful.

    So to me it's not just a matter of preference, but that there are additional benefits to Remove

    I will of course concede that it is more work to deliver Remove.

    cc thisismissem

    read more

  • @julian @jdp23 well, a Delete can be operated on an array of objects. :D

    Send one with all the objects that are affected from the local instance (and probably you must keep in mind that not all replies might be).

    read more

  • thisismissem seems I misspoke, as Nutomic's reply above clarifies: the tree stays but is effectively orphaned. Lemmy v1.0 will allow the reply tree to be accessed post-deletion.

    The original query does still remain the same: what would be the best way forward to explicitly signal the deletion (or technically, the removal) of an entire reply tree?

    cc jdp23@neuromatch.social mariusor@metalhead.club

    read more

  • mariusor@metalhead.club that works too!

    read more

  • Thanks! I will do just that... mostly since I don't feel like hosting my own context just for this one property.

    This feature is now implemented and should ship with the next minor version of NodeBB — v4.8.0.

    read more

  • @nutomic I realize this explanation probably skips a lot of information that's clear to me from my context, but I'll try to answer if anyone has any questions.

    read more
Post suggeriti
  • 0 Votes
    1 Posts
    7 Views
    Week in Fediverse 2025-11-14Servers- PieFed v1.3.0- ActivityPub for WordPress v7.6.0- Ktistec v3.2.0- Mastodon v4.5.1- Mitra v4.13.0- tootik v0.19.9- Merp Relay v0.4.0- shops v0.1.4- Trunk & Tidbits, October 2025 (Mastodon)Clients- Tangerine UI for Mastodon v2.5.2- Voyager v2.40.3- Phanpy changelog- NeoComment: NeoDB ClientTools and Plugins- Event Bridge for ActivityPub v1.2.0 (WordPress plugin)- FIRES Server v0.5.0For developers- Schemas one can use to validate objects used in the FediverseProtocol- FEP-22b6: Linking an ActivityPub Object to a HTML page and backArticles- Fediverse Report – #142-----#WeekInFediverse #Fediverse #ActivityPubPrevious edition: https://mitra.social/objects/019a6010-28f6-7425-c378-064738e621a6
  • 0 Votes
    1 Posts
    14 Views
    Z veseljem sporočamo, da so #fediverse projekti spet dobro pokriti z #NGI0 financiranjem. Med 29 projekti, ki so bili izbrani na 6. sklicu #NGI0 Skupnostnega fonda jih je 5 povezanih s fedimirjem:- #flohmarkt - federiran samogostiteljski spletni bolšji sejem- GoActivityPub - zbirka orodij za razvoj #ActivityPub aplikacij v #go programskem jeziku- #Drupal ActivityPub recepti- #Mirlo - platforma za podporinje umetnikov dobiva AP podporo- #Hubzilla Vsi projektihttps://nlnet.nl/news/2025/20251016-selection-NGI0CommonsFund.html
  • 0 Votes
    1 Posts
    15 Views
    We were excited to see the recent release of Ghost 6 with ActivityPub features. The Ghost team have been an active participant in our Long-form Text project. John O’Nolan, founder and CEO of Ghost.org, was kind enough to answer our questions about the software and its community.SWF: For our readers who don’t know Ghost, how would you describe the platform?JO: Ghost is an independent publishing platform for people who take writing seriously. We’re open source, non-profit, and built to give creators complete ownership of their content and their audience. We’ve helped indie publishers generate over $100 million in revenue from sustainable modern media businesses like 404Media, Platformer and Tangle News.SWF: Tell us about your user community. Can you paint a picture of them with a broad brush? What kind of people choose Ghost?JO: Ghost attracts people who care about owning their home on the internet, rather than having another profile on a social media platform. Our publishers range from solo journalists and creators, to established news outlets and large businesses. They value independence, and they’re willing to do the work to maintain control of their brand, distribution, data, and relationship with readers.SWF: What is it like to be a Ghost user in 2025? What kind of problems are your users facing today?JO: The big challenge today is the same one that’s haunted independent publishers for two decades: discovery. You can own your platform and serve your audience beautifully, but if people can’t find you, none of it matters. Email newsletters have been a solid answer, but they’re still dependent on deliverability and inbox placement. Algorithms on social platforms actively suppress links now, so sharing your work there is like shouting into a hurricane.SWF: Tell us about your experience with ActivityPub. Why did you decide to add ActivityPub support to your software?JO: Ghost has had support for delivering content by email newsletters for a number of years, and email has remained an unassailable distribution platform for publishers because it’s an open protocol. No company controls your email list except you, so it’s one of the best investments you can make. ActivityPub is now doing the same thing for social technology. It allows publishers to own and control a distribution channel that allows their work to spread and be discovered by others. For the first time, you can publish independently and grow faster than ever before.SWF: What stack is Ghost built on? What development tools does your team use?JO: Ghost is all built in modern JavaScript; mainly Node and React. Our ActivityPub service is built on Fedify, and everything we build is released under an open source MIT license. Our development tools are constantly evolving, and now more quickly than ever before with the advent of AI tools, which seem to change on a near weekly basis.SWF: What was the development process like?JO: Challenging, honestly. ActivityPub is beautifully designed but the spec leaves room for interpretation, and when you’re building something new, there’s no roadmap. Building interoperability between other platforms, who’ve all interpreted the spec in their own unique ways, has been a real challenge. The approach we took was to ship early versions as quickly as possible to beta testers so we could learn as we go, using real-world data and issues to guide our process. We’re in a good spot, now, but there’s still a lot to do!SWF: Ghost produces long-form blog posts, articles and newsletters. How was the experience adapting Ghost articles to the microblogging interfaces of Mastodon and Threads?JO: In some ways really easy, and in other ways quite tricky. We’re at a pretty early stage for long-form content on ActivityPub, and the majority of other products out there don’t necessarily have interfaces for supporting it yet. The easy part is that we can provide fallbacks, so if you’re scrolling on Mastodon you might see an article title and excerpt, with a link to read the full post – and that works pretty well! The dream, though, is to make it so you can just consume the full article within whatever app you happen to be using, and doing that requires more collaboration between different platforms to agree on how to make that possible.SWF: You’ve been an active participant in the ActivityPub community since you decided to implement the standard. Why?JO: ActivityPub is a movement as much as a technology protocol, and behind it is a group of people who all believe in making the web a weird, wonderful open place for collaboration. Getting to know those humans and being a part of that movement has been every bit as important to the success of our work as writing the code that powers our software. We’ve received incredible support from the Mastodon team, AP spec authors, and other platforms who are building ActivityPub support. Without actively participating in the community, I don’t know if we would’ve gotten as far as we have already. SWF: Ghost has implemented not only a publishing interface, but also a reading experience. Why?JO: The big difference between ActivityPub and email is that it’s a 2-way protocol. When you send an email newsletter, that’s it. You’re done. But with ActivityPub, it’s possible to achieve what – in the olden days – we fondly referred to as ‘the blogosphere’. People all over the world writing and reading each other’s work. If an email newsletter is like standing on a stage giving a keynote to an audience, participating in a network is more like mingling at the afterparty. You can’t just talk the whole time, you have to listen, too. Being successful within the context of a network has always involved following and engaging with others, as peers, so it felt really important to make sure that we brought that aspect into the product.SWF: Your reader is, frankly, one of the most interesting UIs for ActivityPub we’ve seen. Tell us about why you put the time and effort into making a beautiful reading experience for Ghost.JO: We didn’t want to just tick the “ActivityPub support” checkbox – we wanted to create something that actually feels great to use every day. The idea was to bring some of the product ideas over from RSS readers and kindles, where people currently consume long-form content, and use them as the basis for an ActivityPub-native reading experience. We experimented with multiple different approaches to try and create an experience with a mix of familiarity and novelty. People intuitively understand a list of articles and a view for opening and reading them, but then when you start to see inline replies and live notifications happening around those stories – suddenly it feels like something new and different. SWF: If people want to get a taste of the kind of content Ghost publishers produce, what are some good examples to follow?JO: Tough question! There are so many out there, and it really depends on what you’re into. The best place to start would be on ghost.org/explore – when you can browse through all sorts of different categories of creators and content, and explore the things that interest you the most. SWF: If I’m a Fediverse enthusiast, what can I do to help make Ghost 6 a success?JO: Follow Ghost publishers and engage with their content – likes, replies, reposts all help! Most importantly, help us spread the word about what’s possible when platforms collaborate rather than compete. And if you’re technical, our ActivityPub implementation is entirely open source on GitHub – contributions, bug reports, and feedback make the whole ecosystem stronger.
  • 0 Votes
    3 Posts
    50 Views
    @julian@activitypub.space It seems that NodeBB doesn't support the Mastodon API for polls. Since ActivityPub doesn't seem to support Poll natively, there needs to be an ActivityPub standard for poll voting. Otherwise, I suggest adopting the Mastodon API to improve compatibility with posts containing polls.