bovine_process consists of the side effect logic of Activity objects. This means it contains the code, the logic that for an incoming object, one executes:
Store object in bovine_store
Add reference to inbox
Perform side effects
Enque object for bovine_pubsub
And a similar list of effects for outgoing objects, i.e
Create, Update, Delete on objects, i.e. basic crud
Like, Dislike, EmojiReact -> add to likes collection; Undo removes
Announce -> add to share collection; Undo removes
The same person can Like, Announce, etc.. multiple times
Create with inReplyTo -> add to replies collection; Delete removes
Follow and Accept
Outgoing Accept of Follow adds to followers
Incoming Accept of Follows adds to following
Specify Update checks
Authority checks.
Refactor for easier customization / extension. Adding a new side effect currently requires publishing a new package. This should not be the case.
Tests
The folder tests/data contains test cases what side effects happen in the database for certain cases.
FAQs
Processing of Side Effects of ActivityPub Activities for an ActivityPub Server
We found that bovine-process demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago.It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.