Skip to main content

bovine_process

Note: Development of bovine_process will probably be discontinued

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

  • Store object in bovine_store
  • Add reference to outbox
  • Perform side effects
  • Send objects to follower's inbox
  • Enque object for bovine_pubsub

The behavior defined in this package corresponds to 6. Client to Server Interactions and 7. Server to Server Interactions of the ActivityPub specification. However, only a small subset of side effects is implemented.

Implemented Side Effects

  • 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.

Metadata

Release files for bovine-process 0.5.19

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for bovine-process 0.5.19
File Size Uploaded
bovine_process-0.5.19.tar.gz 36.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for bovine-process 0.5.19
File Interpreter ABI Platform
bovine_process-0.5.19-py3-none-any.whl Python 3 none any Details

Total release size: 63.5 kB

Release files / bovine_process-0.5.19.tar.gz

Download URL bovine_process-0.5.19.tar.gz
Size 36.8 kB
Tags Source
SHA-256 checksum
How to use checksums
48c2d5da8fcb316d9dc594a4849e713a500efba788895865605fb9c12ecb87e6
BLAKE2b-256 checksum
How to use checksums
9dd2df65e3949e464f879b15f251cd2c27c082a072d551456a64f2fd2875bc57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.4.2 CPython/3.11.3 Linux/6.12.32+bpo-amd64

Release files / bovine_process-0.5.19-py3-none-any.whl

Download URL bovine_process-0.5.19-py3-none-any.whl
Size 26.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7466d7d08d7b402fc6373466d2482c595fe720fa33bd938be82ad269a19a57ed
BLAKE2b-256 checksum
How to use checksums
ddd7fef2720edd60bfcb33bcd111bde9bc4d2087e49f00f7efb7caa3ddd36c3d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.4.2 CPython/3.11.3 Linux/6.12.32+bpo-amd64

Release history Release notifications | RSS feed

This release

0.5.19 This release

2 release files

0.5.15

2 release files

0.5.14

2 release files

0.5.12

2 release files

0.5.11

2 release files

0.5.10

2 release files

0.5.9

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.2

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.2

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page