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.11-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f5471f1a345012178e94ddc58f78856617efe34e74d4f5589f8efe6e7dafb632 |
|
MD5 | c46e23043d2e862601d69877f84832ec |
|
BLAKE2b-256 | fb0d32020ff339d6d2a5f07f01a8435d8ca7c6ec32f1e88d5249b87f3716fbd1 |