bagofholding 0.1.2__py3-none-any.whl → 0.1.4__py3-none-any.whl
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/_version.py +16 -3
- bagofholding/retrieve.py +15 -3
- {bagofholding-0.1.2.dist-info → bagofholding-0.1.4.dist-info}/METADATA +5 -5
- {bagofholding-0.1.2.dist-info → bagofholding-0.1.4.dist-info}/RECORD +6 -6
- {bagofholding-0.1.2.dist-info → bagofholding-0.1.4.dist-info}/WHEEL +0 -0
- {bagofholding-0.1.2.dist-info → bagofholding-0.1.4.dist-info}/licenses/LICENSE +0 -0
bagofholding/_version.py
CHANGED
|
@@ -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
|
bagofholding/retrieve.py
CHANGED
|
@@ -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,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,10 +1,10 @@
|
|
|
1
1
|
bagofholding/__init__.py,sha256=a8YLAb8TmNVGW-zwWOGBk1iUA4vJLYp92TklXCjV5sw,1314
|
|
2
|
-
bagofholding/_version.py,sha256=
|
|
2
|
+
bagofholding/_version.py,sha256=rLCrf4heo25FJtBY-2Ap7ZuWW-5FS7sqTjsolIUuI5c,704
|
|
3
3
|
bagofholding/bag.py,sha256=tDoPJYTbRc-R5GKM8sHIVxkln-azYsiW23PKwBawi1Y,8626
|
|
4
4
|
bagofholding/content.py,sha256=x3G2An1S0sEzoeVMOb4j8EVS7EwUmLLoMU6CsIZAU3Q,26152
|
|
5
5
|
bagofholding/exceptions.py,sha256=e6Vwc6ok7xXvdFy3k2hE7LytiVn1w0PaHH1Cwv06wu0,939
|
|
6
6
|
bagofholding/metadata.py,sha256=F7Yv6RB1p_BbW3dKSodx7AcMoUWUFX8zWd9iz6owwMg,6866
|
|
7
|
-
bagofholding/retrieve.py,sha256=
|
|
7
|
+
bagofholding/retrieve.py,sha256=xsGn3oq7Hqjo6qWQ62sIpgldQPuHiYIgsIL3tMy82V8,2289
|
|
8
8
|
bagofholding/trie.py,sha256=rAWxR8hITeGZimSsAWp-_A2ymLNbBFLJXEtC_en__S8,6083
|
|
9
9
|
bagofholding/widget.py,sha256=DCsSKxZ855lt5dgoxhT4_YoHbyqygO7D2rJxPaKtyWg,3608
|
|
10
10
|
bagofholding/h5/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -13,7 +13,7 @@ bagofholding/h5/content.py,sha256=xAHfeMsm6c8ZgQ0RvkFrF1ooDA3BhMPSx9e6MfG8FLM,97
|
|
|
13
13
|
bagofholding/h5/context.py,sha256=JT70idJPUF0jEtIpZObTrQ8Xcf595dFSEGyss7dYKR8,1613
|
|
14
14
|
bagofholding/h5/dtypes.py,sha256=7WKR0U-RsM2IAMPWnxDFCKgg9WLabD0j9Py72-fF8MM,1206
|
|
15
15
|
bagofholding/h5/triebag.py,sha256=fyYKweuMLms3wSDFB7_DTVsoMv9I1y8kLwVxxztQcYk,12119
|
|
16
|
-
bagofholding-0.1.
|
|
17
|
-
bagofholding-0.1.
|
|
18
|
-
bagofholding-0.1.
|
|
19
|
-
bagofholding-0.1.
|
|
16
|
+
bagofholding-0.1.4.dist-info/METADATA,sha256=BifDaaM560_7McnOaG44x-VU1jg0o0wN5FGlNv1UHAc,9964
|
|
17
|
+
bagofholding-0.1.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
18
|
+
bagofholding-0.1.4.dist-info/licenses/LICENSE,sha256=bNZX-3pFSnVGhRfng8SbI2FgEKLZb2nGO5jdsbwjEtk,1542
|
|
19
|
+
bagofholding-0.1.4.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|