**Fedify 2.0.0 is here!**
-
Fedify 2.0.0 is here!
This is the biggest release in Fedify's history. Here are the highlights:
- Modular architecture — The monolithic
@fedify/fedifypackage has been broken up into focused, independent packages:@fedify/vocab,@fedify/vocab-runtime,@fedify/vocab-tools,@fedify/webfinger, and more. Smaller bundles, cleaner imports, and the ability to extend ActivityPub with custom vocabulary types. - Real-time debug dashboard — The new
@fedify/debuggerpackage gives you a live dashboard at/__debug__/showing all your federation traffic: traces, activity details, signature verification, and correlated logs. Just wrap yourFederationobject and you're done. - ActivityPub relay support — First-class relay support via
@fedify/relayand thefedify relayCLI command. Supports both Mastodon-style and LitePub-style relay protocols (FEP-ae0c). - Ordered message delivery — The new
orderingKeyoption solves the “zombie post” problem where aDeletearrives before itsCreate. Activities sharing the same key are guaranteed to be delivered in FIFO order. - Permanent failure handling —
setOutboxPermanentFailureHandler()lets you react when a remote inbox returns 404 or 410, so you can clean up unreachable followers instead of retrying forever.
Other changes include content negotiation at the middleware level,
@fedify/lintfor shared linting rules,@fedify/createfor quick project scaffolding, CLI config files, native Node.js/Bun CLI support, and many bug fixes.This release includes significant contributions from Korea's OSSCA participants. Huge thanks to everyone involved!
This is a major release with breaking changes—please check the migration guide before upgrading.
Full release notes: https://github.com/fedify-dev/fedify/discussions/580
#Fedify #ActivityPub #fediverse #fedidev #TypeScript
- Modular architecture — The monolithic
-
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
#Fedify #ActivityPub #fediverse #fedidev #TypeScript
- 모듈형 아키텍처 — 기존의 단일
-
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
#Fedify #ActivityPub #fediverse #fedidev #TypeScript
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
#Fedify #ActivityPub #fediverse #fedidev #TypeScript
- 모듈형 아키텍처 — 기존의 단일
-
@fedify
Modular architecture — The monolithic @fedify/fedify package has been broken up into focused, independent packages:
woo! that's excellent news! i had a handful of (not currently maintained or used) libraries i wrote myself (codeberg.org/outpost/ts-libs) because all the alternatives either did too much (fedify before this) or weren't that great (the existing http signature library does not do typescript from what i can tell)
having these building blocks without the opinionated framework on top is a great step in enabling flexibility in system design without making everyone reinvent the wheel and get it wrong, excited to see this! -
R ActivityRelay shared this topicR AodeRelay shared this topic
-
-
@fedify Very cool, congratulations on the launch, @hongminhee!
-
@fedify Very cool, congratulations on the launch, @hongminhee!