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)
| File | Size | Uploaded | |
|---|---|---|---|
| bovine_process-0.5.19.tar.gz | 36.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| 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
|