A versatile ZODB abstraction layer
sheraf is a wrapper library around ZODB that provides models management and indexation. It aims to make the use of ZODB simple by providing ready-to-use tools and explicit tools. sheraf is currently compatible with ZODB 5.6+ and ZODB 6.x, and python 3.10+.
You can expect sheraf to:
- Do few things, but do them right;
- Be simple enough so beginners can do a lot with a few lines;
- Be powerful enough and tunable for python experts;
- Have a simple and expressive code, that allows you to hack it if needed.
Installation
sheraf is compatible with Python 3.10+
uv add sheraf
# or
pip install sheraf
If you need pytest fixtures for your project check out pytest-sheraf. There are also sheraf fixtures for unittest.
pip install pytest-sheraf
Contributing
Bug reports and pull requests are highly encouraged!
- Test some code :
uv run pytestanduv run tox - Format code :
uvx prek run --all-files - Generate documentation :
uv run tox -e doc
Documentation
You can build it with the following commands, or read it on readthedocs.
uv run tox -e doc
open build/sphinx/html/index.html
Development installation
sheraf uses uv as its main build tool.
uv sync
Release files for sheraf 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| sheraf-0.6.0.tar.gz | 53.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sheraf-0.6.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 119.2 kB
Release files / sheraf-0.6.0.tar.gz
| Download URL | sheraf-0.6.0.tar.gz |
|---|---|
| Size | 53.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
be2485dc908719297e1a9cfcc67045d1fd281e04f9fdb19b1db4489b00ee7d15
|
|
BLAKE2b-256 checksum How to use checksums |
99a2242565399ff1055a5354be62aeaf1eb234502232c43acb5dcc9faf269415
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / sheraf-0.6.0-py3-none-any.whl
| Download URL | sheraf-0.6.0-py3-none-any.whl |
|---|---|
| Size | 66.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
408c37b6428d5afd7274a4a4dffd1f13e9b9f5d539b0907205adddaea58434e4
|
|
BLAKE2b-256 checksum How to use checksums |
b6bbeb1e620caec8cff1a0697b9fb40c6274b8a05c8a41a750f5f028111de94f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|