feat: Add PeerTube & PieFed auto-update, improve classifier

Add auto-update scripts and review examples for PeerTube and PieFed,
bringing total auto-updating services to three.

The classifier now includes the current and target version in the
prompt so it can correctly evaluate conditional upgrade notes like
"follow v8.1.0 instructions if upgrading from <= v8.0.2". Without
this context the model would conservatively flag patch releases as
manual.

All auto-update wrappers now use `bash -euo pipefail` when calling
remote scripts so failures in upstream deploy/upgrade scripts
propagate correctly instead of silently succeeding.

test_classifier.py now accepts a service name argument and derives
realistic version numbers from the release notes for testing.
This commit is contained in:
Jeena 2026-04-12 23:13:26 +00:00
parent f55f3d8e91
commit 67a9509eaa
13 changed files with 376 additions and 10 deletions

4
services/piefed/auto-update.sh Executable file
View file

@ -0,0 +1,4 @@
#!/bin/bash
set -euo pipefail
ssh jeena@jeena.net 'cd piefed && bash -euo pipefail deploy.sh 2>&1 | tail -5'

View file

@ -0,0 +1,6 @@
action: auto
reason: Minor patch release with a bug fix and a small UI addition. No breaking changes or manual steps required.
---
- Fix post deletion.
- Plus icon on main menu to make a post.

View file

@ -0,0 +1,25 @@
action: auto
reason: Feature release with new functionality like private communities, pronoun flairs, and emoji improvements. No breaking changes or manual migration steps required.
---
- Pronouns - when you put pronouns into Extra Fields on your profile that is used as a flair in all communities where you haven't set a flair yet
- Private communities - no federation, only certain roles (depends on the community) can invite new people
- Plain http web UI (no SSL required) with SSL used during federation - see http://retro.piefed.com. Helpful for development, extremely bad internet connections or very old computers.
- Mastodon can now quote-boost PieFed posts
- Downvotes can be turned off completely in a community, not just instance-wide
- Admins can sticky a post on the home page, not just mods in their communities
- Auto-delete of replies on remote instances when reply author has been blocked by parent content author (only works in PieFed communities due to a ActivityPub limitation)
- On home page when showing number of replies a post has, calculate the sum of the replies on all cross-posts and display that
- New users can only do 3 posts in their first 24h, to reduce floods of posts by that guy who keeps deleting his accounts and making new ones
- Improve emoji federation compatibility
- Change order of emoji in picker to present most-used ones first
- Optional daily time limit on usage to help people use PieFed less. Client-side tracking for privacy.
- A way to report posts that need to be tagged as AI generated
- Better accessibility
- Improved handling of bold and italics in markdown parsing
- Don't accept votes on posts from people the author has blocked
- Admins can resend email address verification email
- Admins can add notes to instances to keep track of defederation reasons, etc
- Search form has been simplified
- Option for admins to disable the em-dash detector
- Multiple minor bugfixes and security enhancements
- Translation updates for 5 languages

View file

@ -0,0 +1,35 @@
action: auto
reason: Major feature release with post relocation, video uploads, and realtime chat. No database migrations or manual admin action required.
---
### Big deals, omg
- Mods can move a post, with replies and votes, to another community. The change federates to other instances (except Lemmy, for now).
- Upload video files while creating a video post - no external host needed. Admin setting to limit who can do this (to save space).
- Realtime chat - conversation immediately updates on screen when a new PM arrives.
### More good stuff
- Author-deleted posts are still visible to them and anyone with the url. No more loss of high-value comments with the OP deletes.
- Search filters - nsfw and minimum post score
- Improve speed of cross-posting form on mobile
- Emoji tokens like `:blush:` can be used in post or comment body. No GUI support yet.
- Admin setting to disable local copies of remote images - good for single-user instances
- Replying to a comment marks associated inbox item as read
- Updated HPT-Fruits theme
- 196 no longer excluded from default community import
- Remove unused community rating feature
- Remove unused instance vote weight feature
- Remove ineffective þ to 'th' replacement
- Improved accessibility - better contrast, fixed many incorrectly-used `aria-label`s
- Updated translations - Basque, Chinese, Japanese
### API:
- Admins can ban/unban users through the API. piefed.world was maintaining custom code for this, hopefully it'll make their version upgrades faster.
### Bugs fixed
- PMs
- Markdown parsing
- Speed up loading of profile pages for admin users
- Friendica post parsing
- Passkeys login UX tweak

View file

@ -0,0 +1,13 @@
action: manual
reason: Database schema change requires running flask db upgrade manually before restarting. Environment variable rename also needs .env update.
---
## Breaking changes
- The `PIEFED_SECRET_KEY` environment variable has been renamed to `SECRET_KEY`. Update your `.env` file before upgrading.
- New database columns have been added. Run `flask db upgrade` before restarting the application.
## Other changes
- Improved federation with Lemmy 0.19.x
- Minor UI tweaks to the community sidebar
- Updated translations for 3 languages