Store for ActivityPub activities, actors and objects
Project description
bovine_store
bovine_store
is meant to be the module handling storing of
local ActivityPub objects and caching of remote ActivityPub
objects.
Usage
bovine_store assumes that a database connection is initialized using tortoise-orm. See examples/basic_app.py
for how to do this in the context of a quart app.
TODO
- When properties of actor are updated, send an update Activity
- Doesn't fit into the current bovine framework ... bovine_store doesn't know how to send activities
- Generally rework the actor properties mechanism. It is currently not possible to emulate say Mastodon featured collection with it.
- bovine_store.models.BovineActorKeyPair needs renamings; and work, e.g. a future identity column should have a uniqueness constraint.
- Generally the code quality is not as high as it should be.
Examples
A demonstration webserver can be seen using
poetry run python examples/basic_app.py
Note this is a very basic example. Instructions what the example does are printed to the command line after start.
Note: This example creates two files db.sqlite3
, which contains the
database and context_cache.sqlite
, which contains the cache of json-ld
contexts.
Running tests
For sqlite3
poetry run pytest
For postgres
BOVINE_DB_URL=postgres://postgres:secret@postgres:5432/postgres poetry run pytest
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for bovine_store-0.5.6-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ab90770f010a0738d826b78af49cf63613bd9b98ff88f667b81a086052f82e69 |
|
MD5 | 8b5a286d47bf059bc39ddd53a1ca7b96 |
|
BLAKE2b-256 | 4080062e241ba9c0592c787c1c0a9ab0acaf8cde51ae562886bcffefd611e95c |