PyperCache 0.1.0__tar.gz → 0.1.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pypercache-0.1.0 → pypercache-0.1.2}/PKG-INFO +6 -3
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/__init__.py +1 -1
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/models/apimodel.py +4 -2
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/query/json_injester.py +0 -25
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache.egg-info/PKG-INFO +6 -3
- {pypercache-0.1.0 → pypercache-0.1.2}/README.md +3 -1
- {pypercache-0.1.0 → pypercache-0.1.2}/docs/README.md +8 -4
- {pypercache-0.1.0 → pypercache-0.1.2}/pyproject.toml +3 -2
- {pypercache-0.1.0 → pypercache-0.1.2}/LICENSE +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/MANIFEST.in +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/core/__init__.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/core/cache.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/core/cache_record.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/core/request_logger.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/py.typed +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/query/__init__.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/storage/__init__.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/storage/backends.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/storage/base.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/storage/chunked_dictionary.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/storage/factory.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/storage/sqlite_storage.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/__init__.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/collections.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/fs.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/patterns.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/profiling.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/sentinel.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/serialization.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache/utils/typing_cast.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache.egg-info/SOURCES.txt +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache.egg-info/dependency_links.txt +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache.egg-info/not-zip-safe +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache.egg-info/requires.txt +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/PyperCache.egg-info/top_level.txt +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/docs/CACHE.md +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/docs/QUERY.md +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/docs/STORAGE.md +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/pytest.ini +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/setup.cfg +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_apimodel.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_cache.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_cache_record.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_json_injester.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_patterns.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_request_logger.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_sentinel.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_serialization.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_sqlite_storage.py +0 -0
- {pypercache-0.1.0 → pypercache-0.1.2}/tests/test_storage.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyperCache
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Durable file-backed caching for JSON-like data with pluggable storage backends
|
|
5
5
|
Author-email: Brandon Bahret <your.email@example.com>
|
|
6
6
|
Maintainer-email: Brandon Bahret <your.email@example.com>
|
|
@@ -26,7 +26,8 @@ License: MIT License
|
|
|
26
26
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
27
27
|
SOFTWARE.
|
|
28
28
|
Project-URL: Homepage, https://github.com/BrandonBahret/PyperCache
|
|
29
|
-
Project-URL: Documentation, https://github.com/BrandonBahret/PyperCache
|
|
29
|
+
Project-URL: Documentation, https://github.com/BrandonBahret/PyperCache/tree/master/docs
|
|
30
|
+
Project-URL: Source, https://github.com/BrandonBahret/PyperCache
|
|
30
31
|
Project-URL: Repository, https://github.com/BrandonBahret/PyperCache
|
|
31
32
|
Project-URL: Issues, https://github.com/BrandonBahret/PyperCache/issues
|
|
32
33
|
Project-URL: Changelog, https://github.com/BrandonBahret/PyperCache/blob/master/CHANGELOG.md
|
|
@@ -71,7 +72,9 @@ pip install .
|
|
|
71
72
|
|
|
72
73
|
## Quick Start
|
|
73
74
|
|
|
74
|
-
See
|
|
75
|
+
See the full documentation, examples, and API reference on GitHub:
|
|
76
|
+
|
|
77
|
+
https://github.com/BrandonBahret/PyperCache/tree/master/docs
|
|
75
78
|
|
|
76
79
|
## Features
|
|
77
80
|
|
|
@@ -8,14 +8,16 @@ This module provides a light-weight decorator that:
|
|
|
8
8
|
"""
|
|
9
9
|
from __future__ import annotations
|
|
10
10
|
|
|
11
|
-
from typing import Any
|
|
11
|
+
from typing import Any, TypeVar
|
|
12
12
|
|
|
13
13
|
from ..utils.patterns import ClassRepository
|
|
14
14
|
from ..query.json_injester import JsonInjester
|
|
15
15
|
from ..utils.typing_cast import instantiate_type
|
|
16
16
|
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
T = TypeVar("T")
|
|
19
|
+
|
|
20
|
+
def apimodel(cls: T) -> T:
|
|
19
21
|
"""Decorator that makes a simple model from annotated fields.
|
|
20
22
|
|
|
21
23
|
The generated constructor accepts a single positional ``data`` dict.
|
|
@@ -9,31 +9,6 @@ from lark import Lark, Transformer
|
|
|
9
9
|
from ..utils.sentinel import UNSET
|
|
10
10
|
from ..utils.typing_cast import instantiate_type
|
|
11
11
|
|
|
12
|
-
# # ---------------------------------------------------------------------------
|
|
13
|
-
# # Sentinel
|
|
14
|
-
# # ---------------------------------------------------------------------------
|
|
15
|
-
|
|
16
|
-
# class UNSET:
|
|
17
|
-
# """Sentinel type representing a missing or unresolved value.
|
|
18
|
-
|
|
19
|
-
# Used instead of None so that None can be a legitimate return value
|
|
20
|
-
# from a query.
|
|
21
|
-
# """
|
|
22
|
-
|
|
23
|
-
# _instance: Optional[UNSET] = None
|
|
24
|
-
|
|
25
|
-
# def __new__(cls) -> UNSET:
|
|
26
|
-
# # Singleton — there is only ever one UNSET instance.
|
|
27
|
-
# if cls._instance is None:
|
|
28
|
-
# cls._instance = super().__new__(cls)
|
|
29
|
-
# return cls._instance
|
|
30
|
-
|
|
31
|
-
# def __repr__(self) -> str:
|
|
32
|
-
# return "JsonInjest.UNSET"
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
# # Convenience singleton so callers can write `is UNSET` rather than `== UNSET`.
|
|
36
|
-
# UNSET = UNSET()
|
|
37
12
|
|
|
38
13
|
T = TypeVar("T")
|
|
39
14
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: PyperCache
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.2
|
|
4
4
|
Summary: Durable file-backed caching for JSON-like data with pluggable storage backends
|
|
5
5
|
Author-email: Brandon Bahret <your.email@example.com>
|
|
6
6
|
Maintainer-email: Brandon Bahret <your.email@example.com>
|
|
@@ -26,7 +26,8 @@ License: MIT License
|
|
|
26
26
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
27
27
|
SOFTWARE.
|
|
28
28
|
Project-URL: Homepage, https://github.com/BrandonBahret/PyperCache
|
|
29
|
-
Project-URL: Documentation, https://github.com/BrandonBahret/PyperCache
|
|
29
|
+
Project-URL: Documentation, https://github.com/BrandonBahret/PyperCache/tree/master/docs
|
|
30
|
+
Project-URL: Source, https://github.com/BrandonBahret/PyperCache
|
|
30
31
|
Project-URL: Repository, https://github.com/BrandonBahret/PyperCache
|
|
31
32
|
Project-URL: Issues, https://github.com/BrandonBahret/PyperCache/issues
|
|
32
33
|
Project-URL: Changelog, https://github.com/BrandonBahret/PyperCache/blob/master/CHANGELOG.md
|
|
@@ -71,7 +72,9 @@ pip install .
|
|
|
71
72
|
|
|
72
73
|
## Quick Start
|
|
73
74
|
|
|
74
|
-
See
|
|
75
|
+
See the full documentation, examples, and API reference on GitHub:
|
|
76
|
+
|
|
77
|
+
https://github.com/BrandonBahret/PyperCache/tree/master/docs
|
|
75
78
|
|
|
76
79
|
## Features
|
|
77
80
|
|
|
@@ -18,7 +18,9 @@ pip install .
|
|
|
18
18
|
|
|
19
19
|
## Quick Start
|
|
20
20
|
|
|
21
|
-
See
|
|
21
|
+
See the full documentation, examples, and API reference on GitHub:
|
|
22
|
+
|
|
23
|
+
https://github.com/BrandonBahret/PyperCache/tree/master/docs
|
|
22
24
|
|
|
23
25
|
## Features
|
|
24
26
|
|
|
@@ -31,15 +31,19 @@
|
|
|
31
31
|
## Requirements
|
|
32
32
|
|
|
33
33
|
- Python 3.10 or newer
|
|
34
|
-
-
|
|
34
|
+
- Runtime dependencies are installed automatically when you install the package from PyPI.
|
|
35
35
|
|
|
36
|
-
Install
|
|
36
|
+
Install from PyPI:
|
|
37
37
|
|
|
38
38
|
```bash
|
|
39
|
-
pip install
|
|
39
|
+
pip install pypercache
|
|
40
40
|
```
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
Read the full documentation on GitHub:
|
|
43
|
+
|
|
44
|
+
https://github.com/BrandonBahret/PyperCache/tree/master/docs
|
|
45
|
+
|
|
46
|
+
For development, install dev dependencies:
|
|
43
47
|
|
|
44
48
|
```bash
|
|
45
49
|
pip install -r requirements-dev.txt
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "PyperCache"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.2"
|
|
8
8
|
description = "Durable file-backed caching for JSON-like data with pluggable storage backends"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = {file = "LICENSE"}
|
|
@@ -38,7 +38,8 @@ dependencies = [
|
|
|
38
38
|
|
|
39
39
|
[project.urls]
|
|
40
40
|
Homepage = "https://github.com/BrandonBahret/PyperCache"
|
|
41
|
-
Documentation = "https://github.com/BrandonBahret/PyperCache
|
|
41
|
+
Documentation = "https://github.com/BrandonBahret/PyperCache/tree/master/docs"
|
|
42
|
+
Source = "https://github.com/BrandonBahret/PyperCache"
|
|
42
43
|
Repository = "https://github.com/BrandonBahret/PyperCache"
|
|
43
44
|
Issues = "https://github.com/BrandonBahret/PyperCache/issues"
|
|
44
45
|
Changelog = "https://github.com/BrandonBahret/PyperCache/blob/master/CHANGELOG.md"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|