bagofholding 0.1.3__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.3 → bagofholding-0.1.4}/PKG-INFO +3 -4
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/_version.py +16 -3
- {bagofholding-0.1.3/cached-miniforge/my-env/lib/python3.1/site-packages → bagofholding-0.1.4}/bagofholding/retrieve.py +15 -3
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/_version.py +16 -3
- {bagofholding-0.1.3 → bagofholding-0.1.4/cached-miniforge/my-env/lib/python3.1/site-packages}/bagofholding/retrieve.py +15 -3
- {bagofholding-0.1.3 → bagofholding-0.1.4}/docs/README.md +2 -2
- {bagofholding-0.1.3 → bagofholding-0.1.4}/pyproject.toml +1 -1
- {bagofholding-0.1.3 → bagofholding-0.1.4}/.gitignore +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/LICENSE +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/__init__.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/bag.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/content.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/exceptions.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/h5/__init__.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/h5/bag.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/h5/content.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/h5/context.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/h5/dtypes.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/h5/triebag.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/metadata.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/trie.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/bagofholding/widget.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/__init__.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/bag.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/content.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/exceptions.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/__init__.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/bag.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/content.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/context.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/dtypes.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/h5/triebag.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/metadata.py +0 -0
- {bagofholding-0.1.3 → bagofholding-0.1.4}/cached-miniforge/my-env/lib/python3.1/site-packages/bagofholding/trie.py +0 -0
- {bagofholding-0.1.3 → 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
|
|
@@ -47,7 +47,6 @@ Classifier: Topic :: Scientific/Engineering
|
|
|
47
47
|
Requires-Python: <3.14,>=3.11
|
|
48
48
|
Requires-Dist: bidict==0.23.1
|
|
49
49
|
Requires-Dist: h5py<3.15.0,>=3.12.1
|
|
50
|
-
Requires-Dist: mpi4py<4.2.0,>=4.0.1
|
|
51
50
|
Requires-Dist: numpy<2.4.0,>=1.26.4
|
|
52
51
|
Requires-Dist: pygtrie<2.6.0,>=2.5.0
|
|
53
52
|
Requires-Dist: pyiron-snippets<=0.2.0,>=0.1.4
|
|
@@ -191,7 +190,7 @@ For a more in-depth look at the above features and to explore other aspects of `
|
|
|
191
190
|
## Object requirements
|
|
192
191
|
|
|
193
192
|
Under-the-hood, we follow the same patterns as `pickle` by explicitly invoking many of the same method (`__reduce__`, `__setstate__`, etc).
|
|
194
|
-
_Almost_
|
|
193
|
+
_Almost_ any object which can be pickled can be stored using `bagofholding`.
|
|
195
194
|
Our requirements are that the object...
|
|
196
195
|
|
|
197
196
|
- Must be pickleable
|
|
@@ -204,4 +203,4 @@ Our requirements are that the object...
|
|
|
204
203
|
- `extend`
|
|
205
204
|
- Must have a valid boolean response to `hasattr` for `__metadata__`, and this attribute must be castable to a string if present
|
|
206
205
|
|
|
207
|
-
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!
|
|
@@ -9,7 +9,7 @@ readme = "docs/README.md"
|
|
|
9
9
|
keywords = [ "pyiron",]
|
|
10
10
|
requires-python = ">=3.11, <3.14"
|
|
11
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", "
|
|
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
|