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.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b831507d96128b2091d43023220b4ecfa93dff0109f8599ad4ee2c5646f52c12 |
|
MD5 | 40df97ae0413b70b460c1a3b485c29fa |
|
BLAKE2b-256 | 4c7f3f3e083c5f86c70de6cbf3e7d51c378ffafe6d809ad2ef5bf7ec8d596c37 |