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
    9
    arrow-down
    1
    ·
    edit-2
    3 hours 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
      7
      arrow-down
      2
      ·
      edit-2
      2 hours 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.

      • IndustryStandard@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        edit-2
        8 minutes ago

        Because there is no real need for Piefed to create their own activity type besides it being slightly easier for their devs to do everything exactly the way they want.

        But this is very detrimental to the fediverse because it means that everyone would have to change their software to suit the needs of Piefed.

        This could be warranted if there was no way to do it with existing protocols. But as the other user stated above there is no real need for the way they are doing it. It is very hacky and prevents the rest of the fediverse from viewing this Piefed specific content unless they implement this unnecessary message type.

      • Raphael@communick.news
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        1
        ·
        edit-2
        2 hours ago

        How is creating a new Activity type preventing compatibility with the rest of the Fediverse?

        If they chose to use any of the 3 solutions I described, there would be no changes on the other servers to receive and parse the message. But because it uses a different type, now those serves that want to store the information about an answer being accepted have to write code specifically to handle messages from PieFed.

        It also works in the other direction: if I want to send an “accept” activity for a comment, I could do it from my server and PieFed could easily understand it as well. But because they want to create their own ad-hoc solution, then they won’t be able to.

        When you’re the first one doing something with ActivityPub, you have to create it yourself.

        No, you don’t. The whole point of Linked Data and RDF is that nodes can send data to each other without having to agree on any new protocol

        Piefed features inspired by existing implementations such as the emoji reactions

        You are only making my point. Emojis have already a defined extension, this is why it’s easier to adopt it.

        picking the one feature

        It’s not just that. They also proposed some ad-hoc activities for moderation in the past and their “import community” works by taking posts and rewriting them as if they originated in the piefed instance. These are all signs that the devs either don’t understand or don’t care about JSON-LD as an standard.

        • Skavau@piefed.social
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 minutes ago

          What ad hoc activities?

          And community migration being fully realised has massive fediverse support.

          • cabbage@piefed.social
            link
            fedilink
            English
            arrow-up
            3
            ·
            edit-2
            51 minutes ago

            There are people whose concerns it is worth listening to. I’m sure they will show up eventually.

            Happy holidays!