farcasterxyz / hub-monorepo

Implementation of the Farcaster Hub specification and supporting libraries for building applications on Farcaster
https://www.thehubble.xyz
MIT License
708 stars 404 forks source link

feat: support bulk message RPC #2313

Closed CassOnMars closed 2 months ago

CassOnMars commented 2 months ago

Why is this change needed?

Reconciliation of messages historically from off-hub sources is achieved via submitMessage, which incurs a performance penalty when many of these calls are made in rapid succession. This change introduces a new submitBulkMessages RPC which allows many of the to-be reconciled messages to be submitted at once and handle via the more efficient rust mergeMany underlying call.

Merge Checklist

Choose all relevant options below by adding an x now or at any time before submitting for review


PR-Codex overview

This PR adds a new gRPC method SubmitBulkMessages for submitting multiple messages at once and updates related proto files and service implementations.

Detailed summary

The following files were skipped due to too many changes: packages/hub-web/src/generated/request_response.ts, packages/hub-nodejs/src/generated/request_response.ts, packages/core/src/protobufs/generated/request_response.ts

✨ Ask PR-Codex anything about this PR by commenting with /codex {your question}

vercel[bot] commented 2 months ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
hub-monorepo ✅ Ready (Inspect) Visit Preview 💬 Add feedback Sep 17, 2024 5:34am
changeset-bot[bot] commented 2 months ago

🦋 Changeset detected

Latest commit: f71136fc42ba9fe57dbc84ca6ce9c69f465e1c60

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 4 packages | Name | Type | | --------------------- | ----- | | @farcaster/hub-nodejs | Patch | | @farcaster/hub-web | Patch | | @farcaster/core | Patch | | @farcaster/hubble | Patch |

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR