abysshub 0.1.1.dev5__tar.gz → 0.1.1.dev6__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.
Files changed (22) hide show
  1. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/PKG-INFO +3 -3
  2. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/README.md +1 -1
  3. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/pyproject.toml +2 -2
  4. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/_run.py +4 -3
  5. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/.gitignore +0 -0
  6. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/LICENSE +0 -0
  7. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/__init__.py +0 -0
  8. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/_async_client.py +0 -0
  9. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/_client.py +0 -0
  10. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/_error.py +0 -0
  11. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/_files.py +0 -0
  12. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/_http.py +0 -0
  13. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/_types.py +0 -0
  14. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/src/abysshub/py.typed +0 -0
  15. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/caller.py +0 -0
  16. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/fake_server.py +0 -0
  17. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/test_client.py +0 -0
  18. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/test_files.py +0 -0
  19. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/test_http.py +0 -0
  20. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/test_package.py +0 -0
  21. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/test_replay.py +0 -0
  22. {abysshub-0.1.1.dev5 → abysshub-0.1.1.dev6}/tests/test_timeout.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: abysshub
3
- Version: 0.1.1.dev5
3
+ Version: 0.1.1.dev6
4
4
  Summary: The official Python library for the Abyss API.
5
5
  Project-URL: Homepage, https://abysshub.com
6
6
  Project-URL: Source, https://github.com/Abysshub/abysshub-sdk
@@ -9,7 +9,7 @@ License-Expression: MIT
9
9
  License-File: LICENSE
10
10
  Classifier: Programming Language :: Python :: 3
11
11
  Classifier: Typing :: Typed
12
- Requires-Python: >=3.10
12
+ Requires-Python: >=3.9
13
13
  Requires-Dist: httpx<1,>=0.27
14
14
  Provides-Extra: dev
15
15
  Requires-Dist: pytest; extra == 'dev'
@@ -35,7 +35,7 @@ except AbyssError as error:
35
35
 
36
36
  `run()` presses the Widget and waits for the run to end, however long it takes, then returns the succeeded run. A refusal or a failed run raises `AbyssError`.
37
37
 
38
- It runs on Python 3.10+, with one dependency, `httpx`. From async code, use `AsyncAbyss` (see [Async](#async)):
38
+ It runs on Python 3.9+, with one dependency, `httpx`. From async code, use `AsyncAbyss` (see [Async](#async)):
39
39
 
40
40
  ```python
41
41
  async with AsyncAbyss() as abyss:
@@ -18,7 +18,7 @@ except AbyssError as error:
18
18
 
19
19
  `run()` presses the Widget and waits for the run to end, however long it takes, then returns the succeeded run. A refusal or a failed run raises `AbyssError`.
20
20
 
21
- It runs on Python 3.10+, with one dependency, `httpx`. From async code, use `AsyncAbyss` (see [Async](#async)):
21
+ It runs on Python 3.9+, with one dependency, `httpx`. From async code, use `AsyncAbyss` (see [Async](#async)):
22
22
 
23
23
  ```python
24
24
  async with AsyncAbyss() as abyss:
@@ -4,12 +4,12 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "abysshub"
7
- version = "0.1.1.dev5"
7
+ version = "0.1.1.dev6"
8
8
  description = "The official Python library for the Abyss API."
9
9
  readme = "README.md"
10
10
  license = "MIT"
11
11
  license-files = ["LICENSE"]
12
- requires-python = ">=3.10"
12
+ requires-python = ">=3.9"
13
13
  dependencies = ["httpx>=0.27,<1"]
14
14
  classifiers = [
15
15
  "Programming Language :: Python :: 3",
@@ -7,18 +7,19 @@ from collections.abc import Awaitable, Callable
7
7
  from concurrent.futures import ThreadPoolExecutor
8
8
  from dataclasses import dataclass, field
9
9
  from pathlib import Path
10
- from typing import Any, Generic, Literal, TypeVar
10
+ from typing import Any, Generic, Literal, Optional, TypeVar
11
11
 
12
12
  from ._error import AbyssError
13
13
 
14
- Download = Callable[[str, str | None], tuple[int, Callable[[], bytes]]]
14
+ # An alias is evaluated at import, where Python 3.9 has no `X | None`: hence Optional.
15
+ Download = Callable[[str, Optional[str]], tuple[int, Callable[[], bytes]]]
15
16
  """Opens a URL in storage, with a ``Range`` header or none: answers its status, and a call
16
17
  that reads its content."""
17
18
 
18
19
  Reread = Callable[[str], dict[str, Any]]
19
20
  """Reads a run again with ``GET /v1/runs/{id}``."""
20
21
 
21
- AsyncDownload = Callable[[str, str | None], Awaitable[tuple[int, Callable[[], Awaitable[bytes]]]]]
22
+ AsyncDownload = Callable[[str, Optional[str]], Awaitable[tuple[int, Callable[[], Awaitable[bytes]]]]]
22
23
  AsyncReread = Callable[[str], Awaitable[dict[str, Any]]]
23
24
 
24
25
  RANGED_FROM = 64 * 1024 * 1024
File without changes
File without changes