matelab-python-sdk 0.2.0a3__py3-none-any.whl → 0.2.0a4__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.
@@ -0,0 +1,69 @@
1
+ Metadata-Version: 2.5
2
+ Name: matelab-python-sdk
3
+ Version: 0.2.0a4
4
+ Summary: Reusable async Python client for the Matelab Integration Contract
5
+ Author: CMPDC, Institute of Physics, Chinese Academy of Sciences
6
+ License-Expression: Apache-2.0
7
+ License-File: LICENSE
8
+ License-File: NOTICE
9
+ Keywords: asyncio,electronic-lab-notebook,eln,matelab,sdk
10
+ Classifier: Development Status :: 3 - Alpha
11
+ Classifier: Framework :: AsyncIO
12
+ Classifier: Operating System :: OS Independent
13
+ Classifier: Programming Language :: Python :: 3
14
+ Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
17
+ Classifier: Programming Language :: Python :: 3.13
18
+ Classifier: Programming Language :: Python :: 3.14
19
+ Classifier: Topic :: Scientific/Engineering
20
+ Classifier: Topic :: Software Development :: Libraries :: Python Modules
21
+ Classifier: Typing :: Typed
22
+ Requires-Python: >=3.11
23
+ Requires-Dist: httpx2>=2.13.1
24
+ Requires-Dist: jsonschema>=4.26.0
25
+ Requires-Dist: pydantic>=2.13.5
26
+ Requires-Dist: typing-extensions>=4.16.0
27
+ Description-Content-Type: text/markdown
28
+
29
+ # matelab-python-sdk
30
+
31
+ Async Python client for the Matelab Integration Contract, with typed interfaces for authentication,
32
+ notebooks, records, attachments, cloud files, templates, and literature. Requires Python 3.11 or newer.
33
+
34
+ ## Installation
35
+
36
+ ```bash
37
+ uv add matelab-python-sdk
38
+ ```
39
+
40
+ Or use `python -m pip install matelab-python-sdk`.
41
+
42
+ ## Quick start
43
+
44
+ Replace the example credentials with your own:
45
+
46
+ ```python
47
+ import asyncio
48
+
49
+ from matelab import AsyncMatelab
50
+
51
+
52
+ async def main() -> None:
53
+ async with AsyncMatelab() as client:
54
+ await client.authenticate("user@example.org", "password")
55
+ notebooks = await client.notebooks.list()
56
+ for notebook in notebooks.owned:
57
+ print(notebook.ref)
58
+
59
+
60
+ asyncio.run(main())
61
+ ```
62
+
63
+ `AsyncMatelab()` uses `https://matelab.iphy.ac.cn/api` by default. Pass another API root as its first argument.
64
+
65
+ ## Documentation
66
+
67
+ - [API reference](https://github.com/tiannianzhu/matelab-python-sdk/blob/main/docs/api.md): Session persistence, errors, examples, and Provider limits.
68
+ - [Operation coverage](https://github.com/tiannianzhu/matelab-python-sdk/blob/main/docs/operation-coverage.yaml): supported operations.
69
+ - [Development and releases](https://github.com/tiannianzhu/matelab-python-sdk/blob/main/docs/development.md): checks, Provider smoke, versioning, and builds.
@@ -19,8 +19,8 @@ matelab/domains/records.py,sha256=n-YfsBbGZOjj1j2keqjHyckHAJ6ZLfYB9J1bto__q9g,92
19
19
  matelab/domains/templates.py,sha256=AsnayIc72J9pPTgcFpo8IfaM2a2C-acL6k8sdRH3rt8,17386
20
20
  matelab/domains/uploads.py,sha256=J9YveZIHq03YQuWwRZwayP1-tz7cE0F17RIgWByLcvc,7368
21
21
  matelab/domains/users.py,sha256=ZhlLzC_AadwYqNqxQrqkUBgIUqL7MJ6FgMyxwq-az8s,1445
22
- matelab_python_sdk-0.2.0a3.dist-info/METADATA,sha256=wdiO0RLndPd6fjQHtHo7WfW63JYLQYtey1BiVvZ4yeo,1086
23
- matelab_python_sdk-0.2.0a3.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
24
- matelab_python_sdk-0.2.0a3.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
25
- matelab_python_sdk-0.2.0a3.dist-info/licenses/NOTICE,sha256=Hc4scCJTof5VL3JCPI2aaewnnzCejIHUGuBVYBf-klc,98
26
- matelab_python_sdk-0.2.0a3.dist-info/RECORD,,
22
+ matelab_python_sdk-0.2.0a4.dist-info/METADATA,sha256=kXm5Sl6QKkYZLnKtuIPRsrg_pN9s18VKYWYEE5Aitg4,2436
23
+ matelab_python_sdk-0.2.0a4.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
24
+ matelab_python_sdk-0.2.0a4.dist-info/licenses/LICENSE,sha256=z8d0m5b2O9McPEK1xHG_dWgUBT6EfBDz6wA0F7xSPTA,11358
25
+ matelab_python_sdk-0.2.0a4.dist-info/licenses/NOTICE,sha256=Hc4scCJTof5VL3JCPI2aaewnnzCejIHUGuBVYBf-klc,98
26
+ matelab_python_sdk-0.2.0a4.dist-info/RECORD,,
@@ -1,26 +0,0 @@
1
- Metadata-Version: 2.5
2
- Name: matelab-python-sdk
3
- Version: 0.2.0a3
4
- Summary: Reusable async Python client for the Matelab Integration Contract
5
- Author: CMPDC, Institute of Physics, Chinese Academy of Sciences
6
- License-Expression: Apache-2.0
7
- License-File: LICENSE
8
- License-File: NOTICE
9
- Keywords: asyncio,electronic-lab-notebook,eln,matelab,sdk
10
- Classifier: Development Status :: 3 - Alpha
11
- Classifier: Framework :: AsyncIO
12
- Classifier: Operating System :: OS Independent
13
- Classifier: Programming Language :: Python :: 3
14
- Classifier: Programming Language :: Python :: 3 :: Only
15
- Classifier: Programming Language :: Python :: 3.11
16
- Classifier: Programming Language :: Python :: 3.12
17
- Classifier: Programming Language :: Python :: 3.13
18
- Classifier: Programming Language :: Python :: 3.14
19
- Classifier: Topic :: Scientific/Engineering
20
- Classifier: Topic :: Software Development :: Libraries :: Python Modules
21
- Classifier: Typing :: Typed
22
- Requires-Python: >=3.11
23
- Requires-Dist: httpx2<3,>=2.13.1
24
- Requires-Dist: jsonschema<5,>=4.26.0
25
- Requires-Dist: pydantic<3,>=2.13.5
26
- Requires-Dist: typing-extensions<5,>=4.16.0