botocore-stubs 1.36.7__tar.gz → 1.40.76__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.
- {botocore_stubs-1.36.7/botocore_stubs.egg-info → botocore_stubs-1.40.76}/PKG-INFO +5 -27
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/__init__.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/args.pyi +14 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/auth.pyi +6 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/awsrequest.pyi +2 -2
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/client.pyi +6 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/compat.pyi +7 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/compress.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/config.pyi +13 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/configprovider.pyi +2 -1
- botocore_stubs-1.40.76/botocore-stubs/context.pyi +33 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/credentials.pyi +22 -6
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/crt/auth.pyi +13 -7
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/discovery.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/bcdoc/restdoc.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/method.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/params.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/shape.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/sharedexample.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/endpoint.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/endpoint_provider.pyi +5 -6
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/errorfactory.pyi +1 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/eventstream.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/exceptions.pyi +3 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/handlers.pyi +10 -4
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/hooks.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/httpchecksum.pyi +3 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/httpsession.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/loaders.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/model.pyi +6 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/monitoring.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/paginate.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/parsers.pyi +17 -1
- botocore_stubs-1.40.76/botocore-stubs/plugin.pyi +24 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/regions.pyi +2 -2
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/response.pyi +3 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/standard.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retryhandler.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/serialize.pyi +31 -6
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/session.pyi +11 -4
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/signers.pyi +3 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/stub.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/tokens.pyi +9 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/useragent.pyi +15 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/utils.pyi +23 -9
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/validate.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/waiter.pyi +2 -1
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76/botocore_stubs.egg-info}/PKG-INFO +5 -27
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore_stubs.egg-info/SOURCES.txt +2 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/pyproject.toml +7 -8
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/LICENSE +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/MANIFEST.in +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/README.md +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/configloader.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/crt/__init__.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/__init__.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/bcdoc/__init__.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/bcdoc/docstringparser.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/bcdoc/style.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/client.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/docstring.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/example.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/paginator.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/service.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/translator.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/utils.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/docs/waiter.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/history.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/py.typed +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/__init__.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/adaptive.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/base.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/bucket.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/quota.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/special.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/retries/throttling.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore-stubs/translate.pyi +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore_stubs.egg-info/dependency_links.txt +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore_stubs.egg-info/requires.txt +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/botocore_stubs.egg-info/top_level.txt +0 -0
- {botocore_stubs-1.36.7 → botocore_stubs-1.40.76}/setup.cfg +0 -0
|
@@ -1,30 +1,9 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: botocore-stubs
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.40.76
|
|
4
4
|
Summary: Type annotations and code completion for botocore
|
|
5
5
|
Author-email: Vlad Emelianov <vlad.emelianov.nz@gmail.com>
|
|
6
|
-
License: MIT
|
|
7
|
-
|
|
8
|
-
Copyright (c) 2022 Vlad Emelianov
|
|
9
|
-
|
|
10
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
11
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
12
|
-
in the Software without restriction, including without limitation the rights
|
|
13
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
14
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
15
|
-
furnished to do so, subject to the following conditions:
|
|
16
|
-
|
|
17
|
-
The above copyright notice and this permission notice shall be included in all
|
|
18
|
-
copies or substantial portions of the Software.
|
|
19
|
-
|
|
20
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
21
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
22
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
23
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
24
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
25
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
26
|
-
SOFTWARE.
|
|
27
|
-
|
|
6
|
+
License-Expression: MIT
|
|
28
7
|
Project-URL: Homepage, https://github.com/youtype/botocore-stubs
|
|
29
8
|
Project-URL: Documentation, https://youtype.github.io/mypy_boto3_builder/
|
|
30
9
|
Project-URL: Repository, https://github.com/youtype/botocore-stubs
|
|
@@ -33,11 +12,9 @@ Project-URL: Issues, https://github.com/youtype/botocore-stubs/issues
|
|
|
33
12
|
Keywords: botocore,type-annotations,pyright,mypy,boto3
|
|
34
13
|
Classifier: Development Status :: 5 - Production/Stable
|
|
35
14
|
Classifier: Environment :: Console
|
|
36
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
37
15
|
Classifier: Natural Language :: English
|
|
38
16
|
Classifier: Operating System :: OS Independent
|
|
39
17
|
Classifier: Programming Language :: Python :: 3
|
|
40
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
41
18
|
Classifier: Programming Language :: Python :: 3.9
|
|
42
19
|
Classifier: Programming Language :: Python :: 3.10
|
|
43
20
|
Classifier: Programming Language :: Python :: 3.11
|
|
@@ -48,12 +25,13 @@ Classifier: Programming Language :: Python :: 3 :: Only
|
|
|
48
25
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
49
26
|
Classifier: Typing :: Stubs Only
|
|
50
27
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
51
|
-
Requires-Python: >=3.
|
|
28
|
+
Requires-Python: >=3.9
|
|
52
29
|
Description-Content-Type: text/markdown
|
|
53
30
|
License-File: LICENSE
|
|
54
31
|
Requires-Dist: types-awscrt
|
|
55
32
|
Provides-Extra: botocore
|
|
56
33
|
Requires-Dist: botocore; extra == "botocore"
|
|
34
|
+
Dynamic: license-file
|
|
57
35
|
|
|
58
36
|
# botocore-stubs
|
|
59
37
|
|
|
@@ -4,12 +4,14 @@ Type annotations for botocore.args module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from collections.abc import Mapping
|
|
7
8
|
from logging import Logger
|
|
8
|
-
from typing import Any,
|
|
9
|
+
from typing import Any, Literal, TypedDict, TypeVar
|
|
9
10
|
|
|
10
11
|
from botocore.client import ClientEndpointBridge
|
|
11
12
|
from botocore.config import Config as Config
|
|
12
13
|
from botocore.configprovider import ConfigValueStore
|
|
14
|
+
from botocore.credentials import Credentials
|
|
13
15
|
from botocore.endpoint import Endpoint
|
|
14
16
|
from botocore.endpoint import EndpointCreator as EndpointCreator
|
|
15
17
|
from botocore.errorfactory import ClientExceptionsFactory
|
|
@@ -21,6 +23,8 @@ from botocore.serialize import BaseRestSerializer
|
|
|
21
23
|
from botocore.signers import RequestSigner as RequestSigner
|
|
22
24
|
from botocore.useragent import UserAgentString
|
|
23
25
|
|
|
26
|
+
_R = TypeVar("_R")
|
|
27
|
+
|
|
24
28
|
logger: Logger = ...
|
|
25
29
|
|
|
26
30
|
VALID_REGIONAL_ENDPOINTS_CONFIG: list[str] = ...
|
|
@@ -28,6 +32,8 @@ LEGACY_GLOBAL_STS_REGIONS: list[str] = ...
|
|
|
28
32
|
USERAGENT_APPID_MAXLEN: int = ...
|
|
29
33
|
VALID_REQUEST_CHECKSUM_CALCULATION_CONFIG: tuple[str, ...] = ...
|
|
30
34
|
VALID_RESPONSE_CHECKSUM_VALIDATION_CONFIG: tuple[str, ...] = ...
|
|
35
|
+
PRIORITY_ORDERED_SUPPORTED_PROTOCOLS: tuple[str, ...] = ...
|
|
36
|
+
VALID_ACCOUNT_ID_ENDPOINT_MODE_CONFIG: tuple[str, ...] = ...
|
|
31
37
|
|
|
32
38
|
class _GetClientArgsTypeDef(TypedDict):
|
|
33
39
|
serializer: BaseRestSerializer
|
|
@@ -86,4 +92,11 @@ class ClientArgsCreator:
|
|
|
86
92
|
endpoint_bridge: ClientEndpointBridge,
|
|
87
93
|
client_endpoint_url: str,
|
|
88
94
|
legacy_endpoint_url: str,
|
|
95
|
+
credentials: Credentials | None,
|
|
96
|
+
account_id_endpoint_mode: Literal["preferred", "disabled", "required"] | None,
|
|
89
97
|
) -> dict[str, Any]: ...
|
|
98
|
+
|
|
99
|
+
class ConfigObjectWrapper: ...
|
|
100
|
+
|
|
101
|
+
class ClientConfigString(str, ConfigObjectWrapper):
|
|
102
|
+
def __new__(cls: type[_R], value: Any = ...) -> _R: ...
|
|
@@ -4,9 +4,10 @@ Type annotations for botocore.auth module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from collections.abc import Iterable, Mapping
|
|
7
8
|
from http.client import HTTPMessage
|
|
8
9
|
from logging import Logger
|
|
9
|
-
from typing import Any
|
|
10
|
+
from typing import Any
|
|
10
11
|
from urllib.parse import SplitResult
|
|
11
12
|
|
|
12
13
|
from botocore.awsrequest import AWSRequest
|
|
@@ -156,6 +157,10 @@ class BearerAuth(TokenSigner):
|
|
|
156
157
|
def add_auth(self, request: AWSRequest) -> None: ...
|
|
157
158
|
|
|
158
159
|
def resolve_auth_type(auth_trait: Iterable[str]) -> str: ...
|
|
160
|
+
def resolve_auth_scheme_preference(
|
|
161
|
+
preference_list: Iterable[str], auth_options: Iterable[str]
|
|
162
|
+
) -> str: ...
|
|
159
163
|
|
|
160
164
|
AUTH_TYPE_MAPS: dict[str, type[BaseSigner]]
|
|
161
165
|
AUTH_TYPE_TO_SIGNATURE_VERSION: dict[str, str]
|
|
166
|
+
AUTH_PREF_TO_SIGNATURE_VERSION: dict[str, str]
|
|
@@ -4,9 +4,9 @@ Type annotations for botocore.awsrequest module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from collections.abc import MutableMapping
|
|
7
|
+
from collections.abc import Iterator, Mapping, MutableMapping
|
|
8
8
|
from logging import Logger
|
|
9
|
-
from typing import IO, Any,
|
|
9
|
+
from typing import IO, Any, TypeVar
|
|
10
10
|
|
|
11
11
|
from botocore.compat import HTTPHeaders as HTTPHeaders
|
|
12
12
|
from botocore.compat import HTTPResponse as HTTPResponse
|
|
@@ -4,8 +4,9 @@ Type annotations for botocore.client module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from collections.abc import Mapping
|
|
7
8
|
from logging import Logger
|
|
8
|
-
from typing import Any,
|
|
9
|
+
from typing import Any, Protocol
|
|
9
10
|
|
|
10
11
|
from botocore.args import ClientArgsCreator as ClientArgsCreator
|
|
11
12
|
from botocore.auth import AUTH_TYPE_MAPS as AUTH_TYPE_MAPS
|
|
@@ -52,6 +53,9 @@ from botocore.waiter import Waiter
|
|
|
52
53
|
logger: Logger = ...
|
|
53
54
|
history_recorder: HistoryRecorder = ...
|
|
54
55
|
|
|
56
|
+
class _AuthTokenResolver(Protocol):
|
|
57
|
+
def __call__(self, *, signing_name: str) -> str: ...
|
|
58
|
+
|
|
55
59
|
class ClientCreator:
|
|
56
60
|
def __init__(
|
|
57
61
|
self,
|
|
@@ -65,6 +69,7 @@ class ClientCreator:
|
|
|
65
69
|
exceptions_factory: ClientExceptionsFactory | None = ...,
|
|
66
70
|
config_store: ConfigValueStore | None = ...,
|
|
67
71
|
user_agent_creator: UserAgentString | None = ...,
|
|
72
|
+
auth_token_resolver: _AuthTokenResolver | None = None,
|
|
68
73
|
) -> None: ...
|
|
69
74
|
def create_client(
|
|
70
75
|
self,
|
|
@@ -7,6 +7,7 @@ Copyright 2025 Vlad Emelianov
|
|
|
7
7
|
import datetime
|
|
8
8
|
from base64 import encodebytes as encodebytes
|
|
9
9
|
from collections import OrderedDict as OrderedDict
|
|
10
|
+
from collections.abc import Iterable, Mapping
|
|
10
11
|
from email.utils import formatdate as formatdate
|
|
11
12
|
from hashlib import _Hash
|
|
12
13
|
from http.client import HTTPMessage
|
|
@@ -14,7 +15,8 @@ from http.client import HTTPResponse as HTTPResponse
|
|
|
14
15
|
from inspect import FullArgSpec
|
|
15
16
|
from itertools import zip_longest as zip_longest
|
|
16
17
|
from logging import Logger
|
|
17
|
-
from
|
|
18
|
+
from re import Pattern
|
|
19
|
+
from typing import Any, Callable, TypeVar
|
|
18
20
|
from urllib.parse import parse_qs as parse_qs
|
|
19
21
|
from urllib.parse import parse_qsl as parse_qsl
|
|
20
22
|
from urllib.parse import quote as quote
|
|
@@ -70,6 +72,10 @@ def get_tzinfo_options() -> tuple[Any, ...]: ...
|
|
|
70
72
|
|
|
71
73
|
HAS_CRT: bool
|
|
72
74
|
disabled: str
|
|
75
|
+
|
|
76
|
+
def has_minimum_crt_version(minimum_version: tuple[int, ...]) -> bool: ...
|
|
77
|
+
def get_current_datetime(remove_tzinfo: bool = ...) -> datetime.datetime: ...
|
|
78
|
+
|
|
73
79
|
IPV4_PAT: str
|
|
74
80
|
IPV4_RE: Pattern[str]
|
|
75
81
|
HEX_PAT: str
|
|
@@ -5,9 +5,10 @@ Copyright 2025 Vlad Emelianov
|
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
7
|
import io
|
|
8
|
+
from collections.abc import Mapping
|
|
8
9
|
from gzip import GzipFile as GzipFile
|
|
9
10
|
from logging import Logger
|
|
10
|
-
from typing import Any, Callable
|
|
11
|
+
from typing import Any, Callable
|
|
11
12
|
|
|
12
13
|
from botocore.compat import urlencode as urlencode
|
|
13
14
|
from botocore.config import Config
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.config module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Mapping
|
|
8
|
+
from typing import Any, Literal, TypedDict, TypeVar
|
|
8
9
|
|
|
9
10
|
from botocore.compat import OrderedDict as OrderedDict
|
|
10
11
|
from botocore.endpoint import DEFAULT_TIMEOUT as DEFAULT_TIMEOUT
|
|
@@ -56,5 +57,16 @@ class Config:
|
|
|
56
57
|
use_fips_endpoint: bool | None = None,
|
|
57
58
|
defaults_mode: bool | None = None,
|
|
58
59
|
tcp_keepalive: bool | None = False,
|
|
60
|
+
request_min_compression_size_bytes: int | None = None,
|
|
61
|
+
disable_request_compression: bool | None = None,
|
|
62
|
+
sigv4a_signing_region_set: str | None = None,
|
|
63
|
+
client_context_params: Mapping[str, Any] | None = None,
|
|
64
|
+
request_checksum_calculation: Literal["when_supported", "when_required"] | None = None,
|
|
65
|
+
response_checksum_validation: Literal["when_supported", "when_required"] | None = None,
|
|
66
|
+
account_id_endpoint_mode: Literal["preferred", "disabled", "required"] | None = None,
|
|
59
67
|
) -> None: ...
|
|
60
68
|
def merge(self: _Config, other_config: _Config) -> _Config: ...
|
|
69
|
+
@property
|
|
70
|
+
def inject_host_prefix(self) -> bool: ...
|
|
71
|
+
@inject_host_prefix.setter
|
|
72
|
+
def inject_host_prefix(self, value: bool) -> None: ...
|
|
@@ -4,8 +4,9 @@ Type annotations for botocore.configprovider module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from collections.abc import Mapping, Sequence
|
|
7
8
|
from logging import Logger
|
|
8
|
-
from typing import Any, Callable,
|
|
9
|
+
from typing import Any, Callable, TypeVar
|
|
9
10
|
|
|
10
11
|
from botocore.session import Session
|
|
11
12
|
from botocore.utils import IMDSRegionProvider
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Type annotations for botocore.context module.
|
|
3
|
+
|
|
4
|
+
Copyright 2025 Vlad Emelianov
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
from collections.abc import Callable, Iterator
|
|
8
|
+
from contextlib import contextmanager
|
|
9
|
+
from contextvars import ContextVar, Token
|
|
10
|
+
from dataclasses import dataclass
|
|
11
|
+
from typing import TypeVar
|
|
12
|
+
|
|
13
|
+
from typing_extensions import ParamSpec
|
|
14
|
+
|
|
15
|
+
_Param = ParamSpec("_Param")
|
|
16
|
+
_R = TypeVar("_R")
|
|
17
|
+
|
|
18
|
+
@dataclass
|
|
19
|
+
class ClientContext:
|
|
20
|
+
features: set[str] = ...
|
|
21
|
+
|
|
22
|
+
_context: ContextVar[ClientContext] = ...
|
|
23
|
+
|
|
24
|
+
def get_context() -> ClientContext | None:
|
|
25
|
+
return _context.get(None)
|
|
26
|
+
|
|
27
|
+
def set_context(ctx: ClientContext) -> Token[ClientContext]: ...
|
|
28
|
+
def reset_context(token: Token[ClientContext]) -> None: ...
|
|
29
|
+
@contextmanager
|
|
30
|
+
def start_as_current_context(ctx: ClientContext | None = ...) -> Iterator[None]: ...
|
|
31
|
+
def with_current_context(
|
|
32
|
+
hook: Callable[[], None] | None = ...,
|
|
33
|
+
) -> Callable[[Callable[_Param, _R]], Callable[_Param, _R]]: ...
|
|
@@ -5,8 +5,9 @@ Copyright 2025 Vlad Emelianov
|
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
7
|
import datetime
|
|
8
|
+
from collections.abc import Mapping
|
|
8
9
|
from logging import Logger
|
|
9
|
-
from typing import Any, Callable,
|
|
10
|
+
from typing import Any, Callable, NamedTuple, TypeVar
|
|
10
11
|
|
|
11
12
|
from botocore.client import BaseClient
|
|
12
13
|
from botocore.compat import compat_shell_split as compat_shell_split
|
|
@@ -34,9 +35,10 @@ _R = TypeVar("_R")
|
|
|
34
35
|
logger: Logger = ...
|
|
35
36
|
|
|
36
37
|
class ReadOnlyCredentials(NamedTuple):
|
|
37
|
-
access_key: str
|
|
38
|
-
secret_key: str
|
|
39
|
-
token: str
|
|
38
|
+
access_key: str | None
|
|
39
|
+
secret_key: str | None
|
|
40
|
+
token: str | None
|
|
41
|
+
account_id: str | None = ...
|
|
40
42
|
|
|
41
43
|
def create_credential_resolver(
|
|
42
44
|
session: Session,
|
|
@@ -56,7 +58,7 @@ class ProfileProviderBuilder:
|
|
|
56
58
|
self, profile_name: str, disable_env_vars: bool = ...
|
|
57
59
|
) -> list[CredentialProvider]: ...
|
|
58
60
|
|
|
59
|
-
def get_credentials(session: Session) ->
|
|
61
|
+
def get_credentials(session: Session) -> Credentials: ...
|
|
60
62
|
def create_assume_role_refresher(client: BaseClient, params: Any) -> Any: ...
|
|
61
63
|
def create_mfa_serial_refresher(actual_refresh: Any) -> Any: ...
|
|
62
64
|
|
|
@@ -67,6 +69,7 @@ class Credentials:
|
|
|
67
69
|
secret_key: str,
|
|
68
70
|
token: str | None = ...,
|
|
69
71
|
method: str | None = ...,
|
|
72
|
+
account_id: str | None = ...,
|
|
70
73
|
) -> None:
|
|
71
74
|
self.access_key: str = ...
|
|
72
75
|
self.secret_key: str = ...
|
|
@@ -74,6 +77,7 @@ class Credentials:
|
|
|
74
77
|
self.method: str = ...
|
|
75
78
|
|
|
76
79
|
def get_frozen_credentials(self) -> ReadOnlyCredentials: ...
|
|
80
|
+
def get_deferred_property(self, property_name: str) -> Callable[[], str | None]: ...
|
|
77
81
|
|
|
78
82
|
class RefreshableCredentials(Credentials):
|
|
79
83
|
method: Any = ...
|
|
@@ -88,6 +92,7 @@ class RefreshableCredentials(Credentials):
|
|
|
88
92
|
time_fetcher: Callable[[], datetime.datetime] | None = ...,
|
|
89
93
|
advisory_timeout: int | None = ...,
|
|
90
94
|
mandatory_timeout: int | None = ...,
|
|
95
|
+
account_id: str | None = ...,
|
|
91
96
|
) -> None: ...
|
|
92
97
|
@classmethod
|
|
93
98
|
def create_from_metadata(
|
|
@@ -110,6 +115,10 @@ class RefreshableCredentials(Credentials):
|
|
|
110
115
|
def token(self) -> str: ... # type: ignore [override]
|
|
111
116
|
@token.setter
|
|
112
117
|
def token(self, value: str) -> None: ...
|
|
118
|
+
@property
|
|
119
|
+
def account_id(self) -> str: ...
|
|
120
|
+
@account_id.setter
|
|
121
|
+
def account_id(self, value: str) -> None: ...
|
|
113
122
|
def refresh_needed(self, refresh_in: int | None = ...) -> bool: ...
|
|
114
123
|
def get_frozen_credentials(self) -> ReadOnlyCredentials: ...
|
|
115
124
|
|
|
@@ -178,6 +187,8 @@ class ProcessProvider(CredentialProvider):
|
|
|
178
187
|
self, profile_name: str, load_config: Callable[..., Any], popen: Callable[..., Any] = ...
|
|
179
188
|
) -> None: ...
|
|
180
189
|
def load(self) -> Credentials | None: ...
|
|
190
|
+
@property
|
|
191
|
+
def profile_config(self) -> dict[str, Any]: ...
|
|
181
192
|
|
|
182
193
|
class InstanceMetadataProvider(CredentialProvider):
|
|
183
194
|
METHOD: str = ...
|
|
@@ -192,6 +203,7 @@ class EnvProvider(CredentialProvider):
|
|
|
192
203
|
SECRET_KEY: str = ...
|
|
193
204
|
TOKENS: list[str] = ...
|
|
194
205
|
EXPIRY_TIME: str = ...
|
|
206
|
+
ACCOUNT_ID: str = ...
|
|
195
207
|
def __init__(
|
|
196
208
|
self, environ: Mapping[str, Any] | None = ..., mapping: Mapping[str, Any] | None = ...
|
|
197
209
|
) -> None:
|
|
@@ -216,6 +228,7 @@ class SharedCredentialProvider(CredentialProvider):
|
|
|
216
228
|
ACCESS_KEY: str = ...
|
|
217
229
|
SECRET_KEY: str = ...
|
|
218
230
|
TOKENS: list[str] = ...
|
|
231
|
+
ACCOUNT_ID: str = ...
|
|
219
232
|
def __init__(
|
|
220
233
|
self,
|
|
221
234
|
creds_filename: str,
|
|
@@ -230,6 +243,7 @@ class ConfigProvider(CredentialProvider):
|
|
|
230
243
|
ACCESS_KEY: str = ...
|
|
231
244
|
SECRET_KEY: str = ...
|
|
232
245
|
TOKENS: list[str] = ...
|
|
246
|
+
ACCOUNT_ID: str = ...
|
|
233
247
|
def __init__(
|
|
234
248
|
self,
|
|
235
249
|
config_filename: str,
|
|
@@ -250,10 +264,11 @@ class BotoProvider(CredentialProvider):
|
|
|
250
264
|
|
|
251
265
|
class AssumeRoleProvider(CredentialProvider):
|
|
252
266
|
METHOD: str = ...
|
|
253
|
-
CANONICAL_NAME: None = ...
|
|
267
|
+
CANONICAL_NAME: str | None = ...
|
|
254
268
|
ROLE_CONFIG_VAR: str = ...
|
|
255
269
|
WEB_IDENTITY_TOKE_FILE_VAR: str = ...
|
|
256
270
|
EXPIRY_WINDOW_SECONDS: int = ...
|
|
271
|
+
NAMED_PROVIDER_FEATURE_MAP: dict[str, str] = ...
|
|
257
272
|
def __init__(
|
|
258
273
|
self,
|
|
259
274
|
load_config: Callable[[], Mapping[str, Any]],
|
|
@@ -323,6 +338,7 @@ class SSOCredentialFetcher(CachedCredentialFetcher):
|
|
|
323
338
|
expiry_window_seconds: float | None = ...,
|
|
324
339
|
token_provider: SSOTokenProvider | None = ...,
|
|
325
340
|
sso_session_name: str | None = ...,
|
|
341
|
+
time_fetcher: Callable[[], datetime.datetime] = ...,
|
|
326
342
|
) -> None: ...
|
|
327
343
|
|
|
328
344
|
class SSOProvider(CredentialProvider):
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.crt.auth module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from typing import Protocol
|
|
8
|
+
|
|
8
9
|
from botocore.auth import SIGNED_HEADERS_BLACKLIST as SIGNED_HEADERS_BLACKLIST
|
|
9
10
|
from botocore.auth import STREAMING_UNSIGNED_PAYLOAD_TRAILER as STREAMING_UNSIGNED_PAYLOAD_TRAILER
|
|
10
11
|
from botocore.auth import UNSIGNED_PAYLOAD as UNSIGNED_PAYLOAD
|
|
@@ -17,16 +18,21 @@ from botocore.compat import urlunsplit as urlunsplit
|
|
|
17
18
|
from botocore.exceptions import NoCredentialsError as NoCredentialsError
|
|
18
19
|
from botocore.utils import percent_encode_sequence as percent_encode_sequence
|
|
19
20
|
|
|
21
|
+
class _Credentials(Protocol):
|
|
22
|
+
access_key: str
|
|
23
|
+
secret_key: str
|
|
24
|
+
token: str | None
|
|
25
|
+
|
|
20
26
|
class CrtSigV4Auth(BaseSigner):
|
|
21
27
|
REQUIRES_REGION: bool = ...
|
|
22
28
|
|
|
23
29
|
def __init__(
|
|
24
30
|
self,
|
|
25
|
-
credentials:
|
|
31
|
+
credentials: _Credentials,
|
|
26
32
|
service_name: str,
|
|
27
33
|
region_name: str,
|
|
28
34
|
) -> None:
|
|
29
|
-
self.credentials:
|
|
35
|
+
self.credentials: _Credentials = ...
|
|
30
36
|
|
|
31
37
|
def add_auth(self, request: AWSRequest) -> None: ...
|
|
32
38
|
|
|
@@ -37,11 +43,11 @@ class CrtSigV4AsymAuth(BaseSigner):
|
|
|
37
43
|
|
|
38
44
|
def __init__(
|
|
39
45
|
self,
|
|
40
|
-
credentials:
|
|
46
|
+
credentials: _Credentials,
|
|
41
47
|
service_name: str,
|
|
42
48
|
region_name: str,
|
|
43
49
|
) -> None:
|
|
44
|
-
self.credentials:
|
|
50
|
+
self.credentials: _Credentials = ...
|
|
45
51
|
|
|
46
52
|
def add_auth(self, request: AWSRequest) -> None: ...
|
|
47
53
|
|
|
@@ -52,7 +58,7 @@ class CrtSigV4AsymQueryAuth(CrtSigV4AsymAuth):
|
|
|
52
58
|
|
|
53
59
|
def __init__(
|
|
54
60
|
self,
|
|
55
|
-
credentials:
|
|
61
|
+
credentials: _Credentials,
|
|
56
62
|
service_name: str,
|
|
57
63
|
region_name: str,
|
|
58
64
|
expires: int = ...,
|
|
@@ -64,7 +70,7 @@ class CrtSigV4QueryAuth(CrtSigV4Auth):
|
|
|
64
70
|
DEFAULT_EXPIRES: int = ...
|
|
65
71
|
def __init__(
|
|
66
72
|
self,
|
|
67
|
-
credentials:
|
|
73
|
+
credentials: _Credentials,
|
|
68
74
|
service_name: str,
|
|
69
75
|
region_name: str,
|
|
70
76
|
expires: int = ...,
|
|
@@ -4,8 +4,9 @@ Type annotations for botocore.discovery module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from collections.abc import Mapping
|
|
7
8
|
from logging import Logger
|
|
8
|
-
from typing import Any, Callable
|
|
9
|
+
from typing import Any, Callable
|
|
9
10
|
|
|
10
11
|
from botocore.client import BaseClient
|
|
11
12
|
from botocore.exceptions import BotoCoreError as BotoCoreError
|
|
@@ -5,8 +5,9 @@ Copyright 2025 Vlad Emelianov
|
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
7
|
import re
|
|
8
|
+
from collections.abc import Iterable, Mapping
|
|
8
9
|
from logging import Logger
|
|
9
|
-
from typing import Any
|
|
10
|
+
from typing import Any
|
|
10
11
|
|
|
11
12
|
DEFAULT_AWS_DOCS_LINK: str = ...
|
|
12
13
|
DOCUMENTATION_LINK_REGEX: re.Pattern[str] = ...
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.docs.method module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Sequence
|
|
8
|
+
from typing import Any
|
|
8
9
|
|
|
9
10
|
from botocore.docs.bcdoc.restdoc import DocumentStructure
|
|
10
11
|
from botocore.hooks import BaseEventHooks
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.docs.params module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Sequence
|
|
8
|
+
from typing import Any
|
|
8
9
|
|
|
9
10
|
from botocore.docs.bcdoc.restdoc import DocumentStructure
|
|
10
11
|
from botocore.docs.shape import ShapeDocumenter
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.docs.shape module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Mapping
|
|
8
|
+
from typing import Any
|
|
8
9
|
|
|
9
10
|
from botocore.docs.bcdoc.restdoc import DocumentStructure
|
|
10
11
|
from botocore.hooks import BaseEventHooks
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.docs.sharedexample module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Iterable, Mapping
|
|
8
|
+
from typing import Any
|
|
8
9
|
|
|
9
10
|
from botocore.docs.bcdoc.restdoc import DocumentStructure
|
|
10
11
|
from botocore.model import OperationModel, Shape
|
|
@@ -4,8 +4,9 @@ Type annotations for botocore.endpoint module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from collections.abc import Mapping, Sequence
|
|
7
8
|
from logging import Logger
|
|
8
|
-
from typing import Any
|
|
9
|
+
from typing import Any
|
|
9
10
|
|
|
10
11
|
from botocore.awsrequest import AWSPreparedRequest
|
|
11
12
|
from botocore.awsrequest import create_request_object as create_request_object
|
|
@@ -5,15 +5,14 @@ Copyright 2025 Vlad Emelianov
|
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
7
|
import logging
|
|
8
|
+
from collections.abc import Iterable, Mapping
|
|
8
9
|
from enum import Enum
|
|
10
|
+
from re import Pattern
|
|
9
11
|
from string import Formatter
|
|
10
12
|
from typing import (
|
|
11
13
|
Any,
|
|
12
14
|
Callable,
|
|
13
|
-
Iterable,
|
|
14
|
-
Mapping,
|
|
15
15
|
NamedTuple,
|
|
16
|
-
Pattern,
|
|
17
16
|
)
|
|
18
17
|
|
|
19
18
|
from botocore.compat import quote as quote
|
|
@@ -120,9 +119,9 @@ class RuleCreator:
|
|
|
120
119
|
def create(cls, **kwargs: Any) -> BaseRule: ...
|
|
121
120
|
|
|
122
121
|
class ParameterType(Enum):
|
|
123
|
-
string =
|
|
124
|
-
boolean =
|
|
125
|
-
stringarray =
|
|
122
|
+
string = ...
|
|
123
|
+
boolean = ...
|
|
124
|
+
stringarray = ...
|
|
126
125
|
|
|
127
126
|
class ParameterDefinition:
|
|
128
127
|
def __init__(
|
|
@@ -4,7 +4,7 @@ Type annotations for botocore.errorfactory module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Mapping
|
|
8
8
|
|
|
9
9
|
from botocore.exceptions import ClientError as ClientError
|
|
10
10
|
from botocore.exceptions import ClientError as _ClientError
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.eventstream module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Iterator
|
|
8
|
+
from typing import Any, Generic, TypeVar
|
|
8
9
|
|
|
9
10
|
from botocore.exceptions import EventStreamError as EventStreamError
|
|
10
11
|
from botocore.model import StructureShape
|
|
@@ -4,7 +4,8 @@ Type annotations for botocore.exceptions module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
from
|
|
7
|
+
from collections.abc import Iterable, Mapping
|
|
8
|
+
from typing import IO, Any, TypedDict
|
|
8
9
|
|
|
9
10
|
import requests
|
|
10
11
|
from urllib3.exceptions import ReadTimeoutError as _ReadTimeoutError
|
|
@@ -632,3 +633,4 @@ class EndpointProviderError(BotoCoreError):
|
|
|
632
633
|
class EndpointResolutionError(EndpointProviderError): ...
|
|
633
634
|
class UnknownEndpointResolutionBuiltInName(EndpointProviderError): ...
|
|
634
635
|
class InvalidChecksumConfigError(BotoCoreError): ...
|
|
636
|
+
class UnsupportedServiceProtocolsError(BotoCoreError): ...
|
|
@@ -4,8 +4,10 @@ Type annotations for botocore.handlers module.
|
|
|
4
4
|
Copyright 2025 Vlad Emelianov
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
+
from collections.abc import Mapping
|
|
7
8
|
from logging import Logger
|
|
8
|
-
from
|
|
9
|
+
from re import Pattern
|
|
10
|
+
from typing import Any
|
|
9
11
|
from urllib.request import Request
|
|
10
12
|
|
|
11
13
|
from botocore.client import BaseClient
|
|
@@ -130,6 +132,12 @@ def remove_lex_v2_start_conversation(
|
|
|
130
132
|
class_attributes: Mapping[str, Any], **kwargs: Any
|
|
131
133
|
) -> None: ...
|
|
132
134
|
def remove_qbusiness_chat(class_attributes: Mapping[str, Any], **kwargs: Any) -> None: ...
|
|
135
|
+
def remove_bedrock_runtime_invoke_model_with_bidirectional_stream(
|
|
136
|
+
class_attributes: Mapping[str, Any], **kwargs: Any
|
|
137
|
+
) -> None: ...
|
|
138
|
+
def enable_millisecond_timestamp_precision(
|
|
139
|
+
serializer_kwargs: Mapping[str, Any], **kwargs: Any
|
|
140
|
+
) -> None: ...
|
|
133
141
|
def add_retry_headers(request: Request, **kwargs: Any) -> None: ...
|
|
134
142
|
def remove_bucket_from_url_paths_from_model(
|
|
135
143
|
params: Mapping[str, Any], model: OperationModel, context: Mapping[str, Any], **kwargs: Any
|
|
@@ -153,8 +161,6 @@ def handle_expires_header(
|
|
|
153
161
|
**kwargs: Any,
|
|
154
162
|
) -> None: ...
|
|
155
163
|
def document_expires_shape(section: DocumentStructure, event_name: str, **kwargs: Any) -> None: ...
|
|
156
|
-
def
|
|
157
|
-
model: OperationModel, params: dict[str, Any], **kwargs: Any
|
|
158
|
-
) -> None: ...
|
|
164
|
+
def get_bearer_auth_supported_services() -> set[str]: ...
|
|
159
165
|
|
|
160
166
|
BUILTIN_HANDLERS: list[tuple[Any, ...]] = ...
|