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.3.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5fec733ec9324fe919519ce2d5b857ecb1b25eb89f399155d92906c3a77b67eb |
|
MD5 | e4058149b84cfc820509788ef98c6857 |
|
BLAKE2b-256 | 4a3745a6b2bfe22e14c36b8f4083d6ab0248b150dc8d2d2879d37ed34eb02116 |