Fedify: ActivityPub server framework
@fedify@hollo.social · Reply to Fedify: ActivityPub server framework's post
Fedify 2.0.0をリリースしました!
Fedify史上最大のリリースです。主な変更点をご紹介します:
- モジュラーアーキテクチャ — これまでのモノリシックな
@fedify/fedifyパッケージを、@fedify/vocab、@fedify/vocab-runtime、@fedify/vocab-tools、@fedify/webfingerなど、独立したパッケージに分割しました。バンドルサイズの削減、インポートの整理に加え、カスタム語彙型によるActivityPubの拡張も可能になりました。 - リアルタイムデバッグダッシュボード — 新しい
@fedify/debuggerパッケージにより、/__debug__/パスにライブダッシュボードを表示できます。連合トラフィックのトレース、アクティビティの詳細、署名検証、ログまで一目で確認できます。既存のFederationオブジェクトをラップするだけで使えます。 - ActivityPubリレーサポート —
@fedify/relayパッケージとfedify relayCLIコマンドで、リレーサーバーをすぐに立ち上げることができます。Mastodon方式とLitePub方式の両方に対応しています(FEP-ae0c)。 - 順序保証メッセージ配信 — 新しい
orderingKeyオプションにより、「ゾンビ投稿」問題を解決しました。DeleteがCreateより先に到着してしまう問題がなくなります。同じキーを共有するアクティビティはFIFO順序が保証されます。 - 永続的な配信失敗の処理 —
setOutboxPermanentFailureHandler()で、リモートのインボックスが404や410を返した際に対応できるようになりました。到達不能なフォロワーの整理などが可能です。
その他にも、ミドルウェアレベルでのコンテンツネゴシエーション、@fedify/lint、@fedify/create、CLI設定ファイル、ネイティブNode.js/Bun CLIサポート、多数のバグ修正などが含まれています。
今回のリリースには、韓国のOSSCA(オープンソースコントリビューションアカデミー)参加者の皆さんからの多大な貢献が含まれています。ご協力いただいた全ての方に感謝いたします!
破壊的変更を含むメジャーリリースです。アップグレード前にマイグレーションガイドを必ずご確認ください。
リリースノート全文: https://github.com/fedify-dev/fedify/discussions/580