bagofholding 0.1.2__tar.gz → 0.1.4__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.
- {bagofholding-0.1.2 → bagofholding-0.1.4}/PKG-INFO +5 -5
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/_version.py +16 -3
- {bagofholding-0.1.2/cached-miniforge/my-env/lib/python3.1/site-packages → bagofholding-0.1.4}/bagofholding/retrieve.py +15 -3
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/_version.py +16 -3
- {bagofholding-0.1.2 → bagofholding-0.1.4/cached-miniforge/my-env/lib/python3.1/site-packages}/bagofholding/retrieve.py +15 -3
- {bagofholding-0.1.2 → bagofholding-0.1.4}/docs/README.md +2 -2
- {bagofholding-0.1.2 → bagofholding-0.1.4}/pyproject.toml +2 -2
- {bagofholding-0.1.2 → bagofholding-0.1.4}/.gitignore +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/LICENSE +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/__init__.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/bag.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/content.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/exceptions.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/h5/__init__.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/h5/bag.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/h5/content.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/h5/context.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/h5/dtypes.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/h5/triebag.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/metadata.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/trie.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/bagofholding/widget.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/__init__.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/bag.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/content.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/exceptions.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/__init__.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/bag.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/content.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/context.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/dtypes.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/triebag.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/metadata.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/trie.py +0 -0
- {bagofholding-0.1.2 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/widget.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: bagofholding
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.4
|
|
4
4
|
Summary: bagofholding - browsable, partially-reloadable serialization for pickleable python objects.
|
|
5
5
|
Project-URL: Homepage, https://pyiron.org/
|
|
6
6
|
Project-URL: Documentation, https://bagofholding.readthedocs.io
|
|
@@ -40,14 +40,14 @@ Classifier: Development Status :: 4 - Beta
|
|
|
40
40
|
Classifier: Intended Audience :: Science/Research
|
|
41
41
|
Classifier: License :: OSI Approved :: BSD License
|
|
42
42
|
Classifier: Operating System :: OS Independent
|
|
43
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
43
44
|
Classifier: Programming Language :: Python :: 3.12
|
|
44
45
|
Classifier: Programming Language :: Python :: 3.13
|
|
45
46
|
Classifier: Topic :: Scientific/Engineering
|
|
46
47
|
Requires-Python: <3.14,>=3.11
|
|
47
48
|
Requires-Dist: bidict==0.23.1
|
|
48
49
|
Requires-Dist: h5py<3.15.0,>=3.12.1
|
|
49
|
-
Requires-Dist:
|
|
50
|
-
Requires-Dist: numpy<2.4.0,>=2.1.3
|
|
50
|
+
Requires-Dist: numpy<2.4.0,>=1.26.4
|
|
51
51
|
Requires-Dist: pygtrie<2.6.0,>=2.5.0
|
|
52
52
|
Requires-Dist: pyiron-snippets<=0.2.0,>=0.1.4
|
|
53
53
|
Provides-Extra: widget
|
|
@@ -190,7 +190,7 @@ For a more in-depth look at the above features and to explore other aspects of `
|
|
|
190
190
|
## Object requirements
|
|
191
191
|
|
|
192
192
|
Under-the-hood, we follow the same patterns as `pickle` by explicitly invoking many of the same method (`__reduce__`, `__setstate__`, etc).
|
|
193
|
-
_Almost_
|
|
193
|
+
_Almost_ any object which can be pickled can be stored using `bagofholding`.
|
|
194
194
|
Our requirements are that the object...
|
|
195
195
|
|
|
196
196
|
- Must be pickleable
|
|
@@ -203,4 +203,4 @@ Our requirements are that the object...
|
|
|
203
203
|
- `extend`
|
|
204
204
|
- Must have a valid boolean response to `hasattr` for `__metadata__`, and this attribute must be castable to a string if present
|
|
205
205
|
|
|
206
|
-
If your object satisfies these conditions and fails to "bag", please raise a bug report on the issues page!
|
|
206
|
+
If your object satisfies these conditions and fails to "bag", please raise a bug report on the issues page!
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
3
|
|
|
4
|
-
__all__ = [
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
5
12
|
|
|
6
13
|
TYPE_CHECKING = False
|
|
7
14
|
if TYPE_CHECKING:
|
|
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
|
|
|
9
16
|
from typing import Union
|
|
10
17
|
|
|
11
18
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
12
20
|
else:
|
|
13
21
|
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
14
23
|
|
|
15
24
|
version: str
|
|
16
25
|
__version__: str
|
|
17
26
|
__version_tuple__: VERSION_TUPLE
|
|
18
27
|
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
19
30
|
|
|
20
|
-
__version__ = version = '0.1.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 1,
|
|
31
|
+
__version__ = version = '0.1.4'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 1, 4)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = None
|
|
@@ -4,7 +4,7 @@ Helper functions for managing the relationship between strings and imports.
|
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
import importlib
|
|
8
8
|
from typing import Any
|
|
9
9
|
|
|
10
10
|
from bagofholding.exceptions import StringNotImportableError
|
|
@@ -16,9 +16,21 @@ def import_from_string(library_path: str) -> Any:
|
|
|
16
16
|
module_name, path = split_path[0], ""
|
|
17
17
|
else:
|
|
18
18
|
module_name, path = split_path
|
|
19
|
-
obj = import_module(module_name)
|
|
19
|
+
obj = importlib.import_module(module_name)
|
|
20
20
|
for k in path.split("."):
|
|
21
|
-
|
|
21
|
+
try:
|
|
22
|
+
obj = getattr(obj, k)
|
|
23
|
+
except AttributeError:
|
|
24
|
+
# Try importing as a submodule
|
|
25
|
+
# This can be necessary of an __init__.py is empty and nothing else has
|
|
26
|
+
# referenced the module yet
|
|
27
|
+
current_path = f"{obj.__name__}.{k}"
|
|
28
|
+
try:
|
|
29
|
+
obj = importlib.import_module(current_path)
|
|
30
|
+
except ImportError as e:
|
|
31
|
+
raise AttributeError(
|
|
32
|
+
f"module '{obj.__name__}' has no attribute '{k}'"
|
|
33
|
+
) from e
|
|
22
34
|
return obj
|
|
23
35
|
|
|
24
36
|
|
|
@@ -1,7 +1,14 @@
|
|
|
1
1
|
# file generated by setuptools-scm
|
|
2
2
|
# don't change, don't track in version control
|
|
3
3
|
|
|
4
|
-
__all__ = [
|
|
4
|
+
__all__ = [
|
|
5
|
+
"__version__",
|
|
6
|
+
"__version_tuple__",
|
|
7
|
+
"version",
|
|
8
|
+
"version_tuple",
|
|
9
|
+
"__commit_id__",
|
|
10
|
+
"commit_id",
|
|
11
|
+
]
|
|
5
12
|
|
|
6
13
|
TYPE_CHECKING = False
|
|
7
14
|
if TYPE_CHECKING:
|
|
@@ -9,13 +16,19 @@ if TYPE_CHECKING:
|
|
|
9
16
|
from typing import Union
|
|
10
17
|
|
|
11
18
|
VERSION_TUPLE = Tuple[Union[int, str], ...]
|
|
19
|
+
COMMIT_ID = Union[str, None]
|
|
12
20
|
else:
|
|
13
21
|
VERSION_TUPLE = object
|
|
22
|
+
COMMIT_ID = object
|
|
14
23
|
|
|
15
24
|
version: str
|
|
16
25
|
__version__: str
|
|
17
26
|
__version_tuple__: VERSION_TUPLE
|
|
18
27
|
version_tuple: VERSION_TUPLE
|
|
28
|
+
commit_id: COMMIT_ID
|
|
29
|
+
__commit_id__: COMMIT_ID
|
|
19
30
|
|
|
20
|
-
__version__ = version = '0.1.
|
|
21
|
-
__version_tuple__ = version_tuple = (0, 1,
|
|
31
|
+
__version__ = version = '0.1.4'
|
|
32
|
+
__version_tuple__ = version_tuple = (0, 1, 4)
|
|
33
|
+
|
|
34
|
+
__commit_id__ = commit_id = None
|
|
@@ -4,7 +4,7 @@ Helper functions for managing the relationship between strings and imports.
|
|
|
4
4
|
|
|
5
5
|
from __future__ import annotations
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
import importlib
|
|
8
8
|
from typing import Any
|
|
9
9
|
|
|
10
10
|
from bagofholding.exceptions import StringNotImportableError
|
|
@@ -16,9 +16,21 @@ def import_from_string(library_path: str) -> Any:
|
|
|
16
16
|
module_name, path = split_path[0], ""
|
|
17
17
|
else:
|
|
18
18
|
module_name, path = split_path
|
|
19
|
-
obj = import_module(module_name)
|
|
19
|
+
obj = importlib.import_module(module_name)
|
|
20
20
|
for k in path.split("."):
|
|
21
|
-
|
|
21
|
+
try:
|
|
22
|
+
obj = getattr(obj, k)
|
|
23
|
+
except AttributeError:
|
|
24
|
+
# Try importing as a submodule
|
|
25
|
+
# This can be necessary of an __init__.py is empty and nothing else has
|
|
26
|
+
# referenced the module yet
|
|
27
|
+
current_path = f"{obj.__name__}.{k}"
|
|
28
|
+
try:
|
|
29
|
+
obj = importlib.import_module(current_path)
|
|
30
|
+
except ImportError as e:
|
|
31
|
+
raise AttributeError(
|
|
32
|
+
f"module '{obj.__name__}' has no attribute '{k}'"
|
|
33
|
+
) from e
|
|
22
34
|
return obj
|
|
23
35
|
|
|
24
36
|
|
|
@@ -133,7 +133,7 @@ For a more in-depth look at the above features and to explore other aspects of `
|
|
|
133
133
|
## Object requirements
|
|
134
134
|
|
|
135
135
|
Under-the-hood, we follow the same patterns as `pickle` by explicitly invoking many of the same method (`__reduce__`, `__setstate__`, etc).
|
|
136
|
-
_Almost_
|
|
136
|
+
_Almost_ any object which can be pickled can be stored using `bagofholding`.
|
|
137
137
|
Our requirements are that the object...
|
|
138
138
|
|
|
139
139
|
- Must be pickleable
|
|
@@ -146,4 +146,4 @@ Our requirements are that the object...
|
|
|
146
146
|
- `extend`
|
|
147
147
|
- Must have a valid boolean response to `hasattr` for `__metadata__`, and this attribute must be castable to a string if present
|
|
148
148
|
|
|
149
|
-
If your object satisfies these conditions and fails to "bag", please raise a bug report on the issues page!
|
|
149
|
+
If your object satisfies these conditions and fails to "bag", please raise a bug report on the issues page!
|
|
@@ -8,8 +8,8 @@ description = "bagofholding - browsable, partially-reloadable serialization for
|
|
|
8
8
|
readme = "docs/README.md"
|
|
9
9
|
keywords = [ "pyiron",]
|
|
10
10
|
requires-python = ">=3.11, <3.14"
|
|
11
|
-
classifiers = [ "Development Status :: 4 - Beta", "Topic :: Scientific/Engineering", "License :: OSI Approved :: BSD License", "Intended Audience :: Science/Research", "Operating System :: OS Independent", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13",]
|
|
12
|
-
dependencies = [ "bidict==0.23.1", "h5py>=3.12.1,<3.15.0", "
|
|
11
|
+
classifiers = [ "Development Status :: 4 - Beta", "Topic :: Scientific/Engineering", "License :: OSI Approved :: BSD License", "Intended Audience :: Science/Research", "Operating System :: OS Independent", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.13",]
|
|
12
|
+
dependencies = [ "bidict==0.23.1", "h5py>=3.12.1,<3.15.0", "numpy>=1.26.4,<2.4.0", "pygtrie>=2.5.0,<2.6.0", "pyiron_snippets>=0.1.4,<=0.2.0",]
|
|
13
13
|
dynamic = [ "version",]
|
|
14
14
|
[[project.authors]]
|
|
15
15
|
name = "Liam Huber"
|
|
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
|