This is our biggest release yet, including more finished tasks than any of our previous ones. Below is a summary of the highlights:

What’s new

Posts & communities can be labelled as AI-generated and people can choose to hide all posts tagged that way. Very similar to how NSFW works.

Comments can be marked as an Answer, like on StackOverflow.

React to posts and comments with an emoji.

Hide an individual post from yourself, without blocking the author.

PieFed is now in the Yunohost app store, making initial setup easier.

When banned from a remote instance you cannot make local-only posts in their communities.

Honeypot to automatically IP ban badly-behaved crawlers.

https://lemmy-federate.com/ integration, making PieFed communities get more exposure.

“Share on Mastodon” menu item on posts.

Vastly improve docs for new developers, see https://codeberg.org/rimu/pyfedi/src/branch/main/docs/developer_docs.

Language selection is more visible during post creation.

Tag clouds can also be viewed as a list of tags.

View post/comment markdown.

Bot accounts are not included in community statistics.

Footnote support in markdown.

Polish translation.

Better HTTP caching, which reduces dependence on Cloudflare.

Bugs

Passkey fixes.

Polls can now have up to 15 options.

User profile performance improved.

Don’t allow bypassing minimum username length and post title with whitespace.

Polls and Events can no longer be posted into Lemmy communities.

API

Additional user settings can be set through the api, including Extra Fields.

Fetch url metadata.

Sort comments by controversial.

Comment search now works.

Hashtags.

Events.

Polls.

Emoji reactions on posts and comments.

See https://piefed.social/c/piefed_api for more details.

To upgrade

To upgrade from 1.3.x:

git pull  
git checkout v1.4.x  
./deploy.sh or ./deploy-docker.sh  

There is a big database migration that will take a few minutes to run. How long will vary depending on how old your instance is - older instances will have more content to process. It took ~25 minutes on piefed.social so expect it to be less than that.

Donations

PieFed is free and open-source software while operating without any advertising, monetization, or reliance on venture capital. Your donations are vital in supporting the PieFed development effort, allowing us to expand and enhance PieFed with new features.

Donations can be made via Patreon, Liberapay or Ko-fi.

  • Raphael@communick.news
    link
    fedilink
    English
    arrow-up
    3
    ·
    edit-2
    1 hour ago

    It’s this kind of thinig that makes me think of PieFed as just a pile of hacks with no serious consideration for the Fediverse

    Designating which comment is an answer involves federating a new Activity:

    {  
             "id": "https://piefed.social/activities/answer/hgb4iO4b8UAFRTn", 
             "type": "ChooseAnswer",  
             "actor": "https://piefed.socialz/u/rimu", 
             "object": "https://piefed.ngrok.app/comment/224",  
             "@context": ["https://www.w3.org/ns/activitystreams", "https://w3id.org/security/v1"],  
             "audience": "https://crust.piefed.social/c/linux_questions",  
             "to": ["https://www.w3.org/ns/activitystreams#Public"],  
             "cc": ["https://crust.piefed.social/c/linux_questions"]  
    }  
    

    There are at least three different ways to implement this in a way compatible with ActivityPub:

    1. Send an “as:accept” activity with the comment as the object.
    2. Add an attribute for the comment indicating that it has been selected.
    3. Create a collection for chosen answers, add to the post object.

    And even if this type of new activity was a necessity, they could add their own extensions via a proper JSON-LD context definition. But they completely disregard JSON-LD, which means that they expect other servers to either (1) adopt their ad-hoc vocabulary or (2) ignore it completely and keep this idea that “Only PieFed has these features”.

      • Raphael@communick.news
        link
        fedilink
        English
        arrow-up
        3
        ·
        edit-2
        38 minutes ago

        This is not a matter of “opening a PR”. The fact that they are adding features in this completely ad-hoc manner shows that they are prioritizing features for piefed over interoperability with the wider Fediverse. If my job was to go around convincing every AP developer that their approach is flawed and to fix their mistakes, I’d be doing nothing else with my life.

        What I can do though is to create a framework that makes it easy to work with JSON-LD and occasionally file bug reports.


        An aside: this “feel free to open a PR” - without any justification or discussion about the merit of issue at hand - is the standard passive-aggressive response from every developer who is not interested in making the change. It’s sad to see that it’s also becoming the go-to retort for the project cheerleaders…

        • Blaze (he/him)@piefed.zip
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          6 minutes ago

          How is creating a new Activity type preventing compatibility with the rest of the Fediverse? Is there any other Fediverse platform that has a similar feature that Piefed could have been replicated?

          When you’re the first one doing something with ActivityPub, you have to create it yourself. This is not perfect, and you raise valid points, hence my suggestion to engage on the Codeberg.

          On the other hand, for other Piefed features inspired by existing implementations such as the emoji reactions, the feature is compatible with those platforms which already supported the feature.

          Regarding your last paragraph, picking the one feature for which the implementation can be improved and saying “It’s this kind of thinig that makes me think of PieFed as just a pile of hacks with no serious consideration for the Fediverse” while it’s clearly not true seems fully aggressive.

  • Aids@lemmy.ml
    link
    fedilink
    English
    arrow-up
    14
    arrow-down
    1
    ·
    12 hours ago

    I’m on voyager app signed in to Lenny.ml how would I go about using this ? Or would this have to be incorporated by the admins if Leyte.ml ?

    • Agent_Karyo@piefed.world
      link
      fedilink
      English
      arrow-up
      3
      ·
      3 hours ago

      I use Piefed on Voyager, they don’t really support any of the major features of Piefed.

      I still use the mobile WebUI mostly.

    • Skavau@piefed.social
      link
      fedilink
      English
      arrow-up
      36
      arrow-down
      1
      ·
      12 hours ago

      Piefed is an entirely different software. You would have to sign up to a piefed instance.

    • SatyrSack@quokk.au
      link
      fedilink
      English
      arrow-up
      14
      ·
      11 hours ago

      These also mostly look like things that Voyager would also need to add support for on their side as well. Voyager definitely supports signing into a PieFed account, browsing, commenting, and other basic features, but not all PieFed features currently work.

  • flamingos-cant (hopepunk arc)@feddit.uk
    link
    fedilink
    English
    arrow-up
    2
    ·
    7 hours ago

    Comments can be marked as an Answer, like on StackOverflow.

    Was anything changed about how this federates? If no, what protections are in place against someone just patching their instance software to always return an "answer": true on Notes?

    • Rimu@piefed.social
      link
      fedilink
      English
      arrow-up
      7
      ·
      5 hours ago

      That won’t have any effect unless the author of the Note is the same as the author of the original post. You’re welcome to try it.

      The json structure used during federation does not limit the kind of access control checks we can do.

    • wjs018@piefed.wjs018.xyz
      link
      fedilink
      English
      arrow-up
      6
      ·
      6 hours ago

      I don’t think so, but I wasn’t working on it. Tagging @rimu@piefed.social for awareness.

      To do this, they would need to be an admin running a modified version of the software no? If that was really happening with any kind of regularity, it would surely be grounds for defederation.

      In any case, if this were to become an issue, then I am sure we can change it. We have already had to change how community flair federates a few times to try to keep up with lemmy’s PRs on the feature to try to make sure it is compatible.

  • jankforlife@lemmy.ml
    link
    fedilink
    English
    arrow-up
    3
    arrow-down
    21
    ·
    10 hours ago

    Oh look the anti-commie software made by the fediverse’s #1 cryptofash got updated 🥱

    • cm0002@mander.xyz
      link
      fedilink
      English
      arrow-up
      7
      ·
      7 hours ago

      Oh no, a .ml’r accusing something of being “anti communist” when they take a stance against authoritarianism, how shocking lmao

      • jankforlife@lemmy.ml
        link
        fedilink
        English
        arrow-up
        3
        arrow-down
        3
        ·
        6 hours ago

        What ive gatherd, piefed dev is very anti-communist and hates the lemmy devs because they’re outspoken marxists and created piefed out of spite

        • Skavau@lemmy.world
          link
          fedilink
          English
          arrow-up
          1
          ·
          4 hours ago

          And where did you gather any of this? You think Rimu’s sole and only motivation for Piefed is that and nothing else?

        • LibertyLizard@slrpnk.net
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          2
          ·
          6 hours ago

          I mean the Lemmy devs are objectively assholes. You don’t gotta be anti-communist to recognize that.

          But if there’s more to this story than just vibes I’d be interested to read about it. Did they make some statement or where did you hear this? Because I’ve never heard anything about this.

          • wjs018@piefed.wjs018.xyz
            link
            fedilink
            English
            arrow-up
            6
            arrow-down
            1
            ·
            6 hours ago

            As a contributor to PieFed (by my count, 7 of those bullet points in rimu’s post were done by me)…there is not more to this story as this is just some rando’s perceived grievances. If there was such animosity with the lemmy devs, why would piefed.social remain federated with lemmy.ml? There are definitely ideological differences between the devs of the two platforms, but the working relationship has been cordial and I truly believe everybody involved is aligned in the goal of promoting federated alternatives to corporate social media.

      • NOT_RICK@lemmy.world
        link
        fedilink
        English
        arrow-up
        10
        arrow-down
        1
        ·
        8 hours ago

        A Cryptofascist is a fascist that is hiding the fact that they’re a fascist. Definitely a thing that happens, generally in order to slowly win people over to their line of fascist thinking before they feel comfortable taking off their mask. Other times they just do it to sealion or other types of bad faith bullshit.

        In this context it’s just a way for tankies to accuse people they’re mad at of being nazis without any credible evidence. They’re just pissy that piefed is off doing its own thing and undermining the work of the transphobic authcom Lemmy devs.

        • BrainInABox@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          arrow-down
          1
          ·
          5 hours ago

          it’s just a way for tankies to accuse people they’re mad at of being nazis without any credible evidence.

          The irony.

    • MushuChupacabra@lemmy.world
      link
      fedilink
      English
      arrow-up
      12
      arrow-down
      3
      ·
      9 hours ago

      Oh look the anti-commie software made by the fediverse’s #1 cryptofash got updated

      Oh look, a lemmy.ml user screeching.

      It must suck ass to enter every conversation with that credibility-shredding username.ml kicking you square in the groin the instant you pipe up.

      • BrainInABox@lemmy.ml
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        4
        ·
        5 hours ago

        Not our fault that .worlders have been programmed like Pavlovian dogs to have an emotional melt down everytime they see “.ml”. You people literary cannot help but robotically post the exact the same thing everytime. It’s apparently a compulsion

      • jankforlife@lemmy.ml
        link
        fedilink
        English
        arrow-up
        2
        arrow-down
        2
        ·
        6 hours ago

        Ha yeahh screeching trying to correct empire propaganda, brainwashing and numerous other walls to getting communism off the ground. O just another zionist lib .world user anyways, so its pointless

        • MushuChupacabra@lemmy.world
          link
          fedilink
          English
          arrow-up
          3
          arrow-down
          1
          ·
          6 hours ago

          Ha yeahh screeching trying to correct empire propaganda, brainwashing and numerous other walls to getting communism off the ground. O just another zionist lib .world user anyways, so its pointless

          I want you to be honest:

          Did your response sound very clever to you as you composed it? Subjectively, do you feel you’ve made a good account of yourself,or your cause?

          Lemmy.ml is to communism as is PETA is to veganism: your function appears to be to get people to really hate communism.

          You may not grasp terms like marketing, but the truth of the matter is that you’re fucking terrible for the brand.

        • MushuChupacabra@lemmy.world
          link
          fedilink
          English
          arrow-up
          6
          arrow-down
          2
          ·
          9 hours ago

          〉reddit.world acting like they have any credibility

          There is zero special about me being on lemmy.world.

          Belonging to just about any instance other than lemmy.ml automatically gives you more credibility than a lemmy.ml user.

          That’s just how things are; I don’t make the rules.

            • jankforlife@lemmy.ml
              link
              fedilink
              English
              arrow-up
              2
              arrow-down
              2
              ·
              edit-2
              6 hours ago

              I love this thread. It’s like a quick list for who to block.

              Yeah I rly should just block the lib instance of .world and just get it done and over with LMBO

        • NOT_RICK@lemmy.world
          link
          fedilink
          English
          arrow-up
          5
          arrow-down
          3
          ·
          9 hours ago

          If it sucks so bad why are you on a .world comm? I think ml sucks so I stay away from it. See how easy that is?