No project description provided
Project description
diskcache-fernet
how to install
$ pip install diskcache-fernet
how to use
from __future__ import annotations
from pathlib import Path
from pickle import UnpicklingError
from tempfile import TemporaryDirectory
from diskcache import Cache
from diskcache_fernet import FernetDisk
def main(temp: Path) -> None:
origin = Cache(temp)
fernet = Cache(temp, disk=FernetDisk)
# or add fernet key
# fernet = Cache(temp, disk=FernetDisk, disk_fernet=b"some fernet key")
fernet["string"] = "value"
fernet["pickle"] = {"key": "value"}
from_fernet_string = fernet["string"]
from_origin_string = origin["string"]
assert from_fernet_string != from_origin_string
assert from_fernet_string == "value"
print(from_origin_string)
# like:
# gAAAAABlGtPWAPEcYLqu6waiUd551H4jfAvQlulWnfwyWTVtjZyF6AkUCVFQKPpIRz9vu29y1FoduIYoK-mOz5CJt0Kx-pv2zQ==
from_fernet_pickle = fernet["pickle"]
assert from_fernet_pickle == {"key": "value"}
try:
origin["pickle"]
except Exception as exc:
assert isinstance(exc, UnpicklingError)
if __name__ == "__main__":
with TemporaryDirectory() as temp:
main(Path(temp))
License
Apache-2.0, see LICENSE.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
diskcache_fernet-0.1.6.tar.gz
(26.5 kB
view details)
Built Distribution
File details
Details for the file diskcache_fernet-0.1.6.tar.gz
.
File metadata
- Download URL: diskcache_fernet-0.1.6.tar.gz
- Upload date:
- Size: 26.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 436bfd1aad28691e2bbe9ed7c08fc4b94bf10306d49bf1e60edcb1ab5b59de50 |
|
MD5 | 2a549d0902ea365af2189fdd1b741397 |
|
BLAKE2b-256 | 5f09a65f2725a471c05c45feb23b6891c7f60a34fd0c6d9c01908575405dbef4 |
File details
Details for the file diskcache_fernet-0.1.6-py3-none-any.whl
.
File metadata
- Download URL: diskcache_fernet-0.1.6-py3-none-any.whl
- Upload date:
- Size: 16.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b8d027efa3cf4a77479e248f7a515da60702f380d9996f6c32d514a29eade690 |
|
MD5 | bf4373b4cd6137cdb0c30a45a871759c |
|
BLAKE2b-256 | 90d6172eec6c1119e6292bbe03351c19d0f9a690b0db102524a51b67a9e66b04 |