Skip to content

Latest commit

 

History

History
62 lines (43 loc) · 1.47 KB

File metadata and controls

62 lines (43 loc) · 1.47 KB

Installation

Python Version Support

Python 3.10, 3.11, 3.12, and 3.13 are tested in CI. Python 3.8 and 3.9 are not officially tested but may work.

Install from PyPI

pip install json_database

Install from Source

git clone https://github.com/TigreGotico/json_database
cd json_database
pip install -e .

Dependencies

Package Version Purpose
combo_lock >=0.2.1,<1.0.0 Cross-process file locking for safe concurrent access

The lock dependency is mandatory. combo_lock creates a .lock file in the system temp directory alongside each database file.

Optional Encryption Dependency

Encryption features (EncryptedJsonStorage, EncryptedJsonStorageXDG) require a pycryptodome-compatible AES implementation. Install one of:

pip install pycryptodomex   # preferred (Cryptodome namespace)
# or
pip install pycryptodome    # fallback (Crypto namespace)

If neither is installed, constructing an EncryptedJsonStorage succeeds but calling store() or load_local() raises ImportError: run pip install pycryptodomex.

HiveMind Plugin Dependency

The json_database.hpm module (HiveMind plugin) additionally requires:

pip install hivemind-plugin-manager ovos-utils

These are not installed by default and are only needed if you use the hivemind-json-db-plugin entry point.

Verifying the Install

import json_database
print(json_database.__version__)  # e.g. "0.10.2a1"