mypy-boto3-athena 1.33.0__tar.gz → 1.36.0__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.
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/LICENSE +1 -1
- {mypy-boto3-athena-1.33.0/mypy_boto3_athena.egg-info → mypy_boto3_athena-1.36.0}/PKG-INFO +97 -31
- mypy-boto3-athena-1.33.0/PKG-INFO → mypy_boto3_athena-1.36.0/README.md +77 -57
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/__init__.pyi → mypy_boto3_athena-1.36.0/mypy_boto3_athena/__init__.py +3 -0
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/__init__.py → mypy_boto3_athena-1.36.0/mypy_boto3_athena/__init__.pyi +2 -1
- mypy_boto3_athena-1.36.0/mypy_boto3_athena/__main__.py +43 -0
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/client.pyi → mypy_boto3_athena-1.36.0/mypy_boto3_athena/client.py +345 -343
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/client.py → mypy_boto3_athena-1.36.0/mypy_boto3_athena/client.pyi +343 -348
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/literals.pyi → mypy_boto3_athena-1.36.0/mypy_boto3_athena/literals.py +98 -19
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/literals.py → mypy_boto3_athena-1.36.0/mypy_boto3_athena/literals.pyi +96 -21
- mypy_boto3_athena-1.36.0/mypy_boto3_athena/paginator.py +222 -0
- mypy_boto3_athena-1.36.0/mypy_boto3_athena/paginator.pyi +200 -0
- mypy_boto3_athena-1.36.0/mypy_boto3_athena/type_defs.py +1455 -0
- mypy_boto3_athena-1.36.0/mypy_boto3_athena/type_defs.pyi +1266 -0
- mypy_boto3_athena-1.36.0/mypy_boto3_athena/version.py +7 -0
- mypy-boto3-athena-1.33.0/README.md → mypy_boto3_athena-1.36.0/mypy_boto3_athena.egg-info/PKG-INFO +123 -24
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/mypy_boto3_athena.egg-info/requires.txt +1 -1
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/setup.py +10 -12
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/__main__.py +0 -39
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/paginator.py +0 -178
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/paginator.pyi +0 -169
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/type_defs.py +0 -1710
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/type_defs.pyi +0 -1709
- mypy-boto3-athena-1.33.0/mypy_boto3_athena/version.py +0 -5
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/mypy_boto3_athena/py.typed +0 -0
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/mypy_boto3_athena.egg-info/SOURCES.txt +0 -0
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/mypy_boto3_athena.egg-info/dependency_links.txt +0 -0
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/mypy_boto3_athena.egg-info/not-zip-safe +0 -0
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/mypy_boto3_athena.egg-info/top_level.txt +0 -0
- {mypy-boto3-athena-1.33.0 → mypy_boto3_athena-1.36.0}/setup.cfg +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.2
|
|
2
2
|
Name: mypy-boto3-athena
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary: Type annotations for boto3
|
|
3
|
+
Version: 1.36.0
|
|
4
|
+
Summary: Type annotations for boto3 Athena 1.36.0 service generated with mypy-boto3-builder 8.8.0
|
|
5
5
|
Home-page: https://github.com/youtype/mypy_boto3_builder
|
|
6
6
|
Author: Vlad Emelianov
|
|
7
7
|
Author-email: vlad.emelianov.nz@gmail.com
|
|
@@ -9,7 +9,7 @@ License: MIT License
|
|
|
9
9
|
Project-URL: Documentation, https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena/
|
|
10
10
|
Project-URL: Source, https://github.com/youtype/mypy_boto3_builder
|
|
11
11
|
Project-URL: Tracker, https://github.com/youtype/mypy_boto3_builder/issues
|
|
12
|
-
Keywords: boto3 athena type-annotations
|
|
12
|
+
Keywords: boto3 athena boto3-stubs type-annotations mypy typeshed autocomplete
|
|
13
13
|
Classifier: Development Status :: 5 - Production/Stable
|
|
14
14
|
Classifier: Intended Audience :: Developers
|
|
15
15
|
Classifier: Environment :: Console
|
|
@@ -17,53 +17,66 @@ Classifier: License :: OSI Approved :: MIT License
|
|
|
17
17
|
Classifier: Natural Language :: English
|
|
18
18
|
Classifier: Operating System :: OS Independent
|
|
19
19
|
Classifier: Programming Language :: Python :: 3
|
|
20
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
21
20
|
Classifier: Programming Language :: Python :: 3.8
|
|
22
21
|
Classifier: Programming Language :: Python :: 3.9
|
|
23
22
|
Classifier: Programming Language :: Python :: 3.10
|
|
24
23
|
Classifier: Programming Language :: Python :: 3.11
|
|
25
24
|
Classifier: Programming Language :: Python :: 3.12
|
|
26
25
|
Classifier: Programming Language :: Python :: 3.13
|
|
26
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
27
27
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
28
28
|
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
29
|
-
Classifier: Typing ::
|
|
30
|
-
Requires-Python: >=3.
|
|
29
|
+
Classifier: Typing :: Stubs Only
|
|
30
|
+
Requires-Python: >=3.8
|
|
31
31
|
Description-Content-Type: text/markdown
|
|
32
32
|
License-File: LICENSE
|
|
33
|
+
Requires-Dist: typing-extensions; python_version < "3.12"
|
|
34
|
+
Dynamic: author
|
|
35
|
+
Dynamic: author-email
|
|
36
|
+
Dynamic: classifier
|
|
37
|
+
Dynamic: description
|
|
38
|
+
Dynamic: description-content-type
|
|
39
|
+
Dynamic: home-page
|
|
40
|
+
Dynamic: keywords
|
|
41
|
+
Dynamic: license
|
|
42
|
+
Dynamic: project-url
|
|
43
|
+
Dynamic: requires-dist
|
|
44
|
+
Dynamic: requires-python
|
|
45
|
+
Dynamic: summary
|
|
33
46
|
|
|
34
47
|
<a id="mypy-boto3-athena"></a>
|
|
35
48
|
|
|
36
49
|
# mypy-boto3-athena
|
|
37
50
|
|
|
38
|
-
[](https://pypi.org/project/mypy-boto3-athena)
|
|
39
|
-
[](https://pypi.org/project/mypy-boto3-athena)
|
|
40
|
-
[](https://youtype.github.io/boto3_stubs_docs/
|
|
41
|
-
[](https://
|
|
51
|
+
[](https://pypi.org/project/mypy-boto3-athena/)
|
|
52
|
+
[](https://pypi.org/project/mypy-boto3-athena/)
|
|
53
|
+
[](https://youtype.github.io/boto3_stubs_docs/)
|
|
54
|
+
[](https://pypistats.org/packages/mypy-boto3-athena)
|
|
42
55
|
|
|
43
56
|

|
|
44
57
|
|
|
45
|
-
Type annotations for
|
|
46
|
-
[
|
|
47
|
-
service compatible with [VSCode](https://code.visualstudio.com/),
|
|
58
|
+
Type annotations for [boto3 Athena 1.36.0](https://pypi.org/project/boto3/)
|
|
59
|
+
compatible with [VSCode](https://code.visualstudio.com/),
|
|
48
60
|
[PyCharm](https://www.jetbrains.com/pycharm/),
|
|
49
61
|
[Emacs](https://www.gnu.org/software/emacs/),
|
|
50
62
|
[Sublime Text](https://www.sublimetext.com/),
|
|
51
63
|
[mypy](https://github.com/python/mypy),
|
|
52
64
|
[pyright](https://github.com/microsoft/pyright) and other tools.
|
|
53
65
|
|
|
54
|
-
Generated
|
|
55
|
-
[mypy-boto3-builder
|
|
66
|
+
Generated with
|
|
67
|
+
[mypy-boto3-builder 8.8.0](https://github.com/youtype/mypy_boto3_builder).
|
|
56
68
|
|
|
57
69
|
More information can be found on
|
|
58
70
|
[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
|
|
59
71
|
[mypy-boto3-athena docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena/).
|
|
60
72
|
|
|
61
|
-
See how it helps
|
|
73
|
+
See how it helps you find and fix potential bugs:
|
|
62
74
|
|
|
63
|
-

|
|
64
76
|
|
|
65
77
|
- [mypy-boto3-athena](#mypy-boto3-athena)
|
|
66
78
|
- [How to install](#how-to-install)
|
|
79
|
+
- [Generate locally (recommended)](<#generate-locally-(recommended)>)
|
|
67
80
|
- [VSCode extension](#vscode-extension)
|
|
68
81
|
- [From PyPI with pip](#from-pypi-with-pip)
|
|
69
82
|
- [How to uninstall](#how-to-uninstall)
|
|
@@ -75,6 +88,7 @@ See how it helps to find and fix potential bugs:
|
|
|
75
88
|
- [Other IDEs](#other-ides)
|
|
76
89
|
- [mypy](#mypy)
|
|
77
90
|
- [pyright](#pyright)
|
|
91
|
+
- [Pylint compatibility](#pylint-compatibility)
|
|
78
92
|
- [Explicit type annotations](#explicit-type-annotations)
|
|
79
93
|
- [Client annotations](#client-annotations)
|
|
80
94
|
- [Paginators annotations](#paginators-annotations)
|
|
@@ -93,6 +107,21 @@ See how it helps to find and fix potential bugs:
|
|
|
93
107
|
|
|
94
108
|
## How to install
|
|
95
109
|
|
|
110
|
+
<a id="generate-locally-(recommended)"></a>
|
|
111
|
+
|
|
112
|
+
### Generate locally (recommended)
|
|
113
|
+
|
|
114
|
+
You can generate type annotations for `boto3` package locally with
|
|
115
|
+
`mypy_boto3_builder`. Use
|
|
116
|
+
[uv](https://docs.astral.sh/uv/getting-started/installation/) for build
|
|
117
|
+
isolation.
|
|
118
|
+
|
|
119
|
+
1. Run mypy-boto3-builder in your package root directory:
|
|
120
|
+
`uvx --with 'boto3==1.36.0' mypy_boto3_builder`
|
|
121
|
+
2. Select `boto3-stubs` AWS SDK.
|
|
122
|
+
3. Add `Athena` service.
|
|
123
|
+
4. Use provided commands to install generated packages.
|
|
124
|
+
|
|
96
125
|
<a id="vscode-extension"></a>
|
|
97
126
|
|
|
98
127
|
### VSCode extension
|
|
@@ -113,12 +142,10 @@ Install `boto3-stubs` for `Athena` service.
|
|
|
113
142
|
# install with boto3 type annotations
|
|
114
143
|
python -m pip install 'boto3-stubs[athena]'
|
|
115
144
|
|
|
116
|
-
|
|
117
145
|
# Lite version does not provide session.client/resource overloads
|
|
118
146
|
# it is more RAM-friendly, but requires explicit type annotations
|
|
119
147
|
python -m pip install 'boto3-stubs-lite[athena]'
|
|
120
148
|
|
|
121
|
-
|
|
122
149
|
# standalone installation
|
|
123
150
|
python -m pip install mypy-boto3-athena
|
|
124
151
|
```
|
|
@@ -157,16 +184,31 @@ annotations required, write your `boto3` code as usual.
|
|
|
157
184
|
|
|
158
185
|
### PyCharm
|
|
159
186
|
|
|
160
|
-
|
|
187
|
+
> ⚠️ Due to slow PyCharm performance on `Literal` overloads (issue
|
|
188
|
+
> [PY-40997](https://youtrack.jetbrains.com/issue/PY-40997)), it is recommended
|
|
189
|
+
> to use [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/) until
|
|
190
|
+
> the issue is resolved.
|
|
191
|
+
|
|
192
|
+
> ⚠️ If you experience slow performance and high CPU usage, try to disable
|
|
193
|
+
> `PyCharm` type checker and use [mypy](https://github.com/python/mypy) or
|
|
194
|
+
> [pyright](https://github.com/microsoft/pyright) instead.
|
|
195
|
+
|
|
196
|
+
> ⚠️ To continue using `PyCharm` type checker, you can try to replace
|
|
197
|
+
> `boto3-stubs` with
|
|
198
|
+
> [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/):
|
|
161
199
|
|
|
162
200
|
```bash
|
|
163
|
-
|
|
201
|
+
pip uninstall boto3-stubs
|
|
202
|
+
pip install boto3-stubs-lite
|
|
164
203
|
```
|
|
165
204
|
|
|
166
|
-
|
|
167
|
-
annotations **are required**.
|
|
205
|
+
Install `boto3-stubs[athena]` in your environment:
|
|
168
206
|
|
|
169
|
-
|
|
207
|
+
```bash
|
|
208
|
+
python -m pip install 'boto3-stubs[athena]'
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Both type checking and code completion should now work.
|
|
170
212
|
|
|
171
213
|
<a id="emacs"></a>
|
|
172
214
|
|
|
@@ -230,7 +272,7 @@ should work.
|
|
|
230
272
|
- Install `boto3-stubs[athena]` in your environment:
|
|
231
273
|
|
|
232
274
|
```bash
|
|
233
|
-
python -m pip install 'boto3-stubs[athena]'
|
|
275
|
+
python -m pip install 'boto3-stubs[athena]'
|
|
234
276
|
```
|
|
235
277
|
|
|
236
278
|
Type checking should now work. No explicit type annotations required, write
|
|
@@ -247,11 +289,36 @@ your `boto3` code as usual.
|
|
|
247
289
|
python -m pip install 'boto3-stubs[athena]'
|
|
248
290
|
```
|
|
249
291
|
|
|
250
|
-
Optionally, you can install `boto3-stubs` to `typings`
|
|
292
|
+
Optionally, you can install `boto3-stubs` to `typings` directory.
|
|
251
293
|
|
|
252
294
|
Type checking should now work. No explicit type annotations required, write
|
|
253
295
|
your `boto3` code as usual.
|
|
254
296
|
|
|
297
|
+
<a id="pylint-compatibility"></a>
|
|
298
|
+
|
|
299
|
+
### Pylint compatibility
|
|
300
|
+
|
|
301
|
+
It is totally safe to use `TYPE_CHECKING` flag in order to avoid
|
|
302
|
+
`mypy-boto3-athena` dependency in production. However, there is an issue in
|
|
303
|
+
`pylint` that it complains about undefined variables. To fix it, set all types
|
|
304
|
+
to `object` in non-`TYPE_CHECKING` mode.
|
|
305
|
+
|
|
306
|
+
```python
|
|
307
|
+
from typing import TYPE_CHECKING
|
|
308
|
+
|
|
309
|
+
if TYPE_CHECKING:
|
|
310
|
+
from mypy_boto3_ec2 import EC2Client, EC2ServiceResource
|
|
311
|
+
from mypy_boto3_ec2.waiters import BundleTaskCompleteWaiter
|
|
312
|
+
from mypy_boto3_ec2.paginators import DescribeVolumesPaginator
|
|
313
|
+
else:
|
|
314
|
+
EC2Client = object
|
|
315
|
+
EC2ServiceResource = object
|
|
316
|
+
BundleTaskCompleteWaiter = object
|
|
317
|
+
DescribeVolumesPaginator = object
|
|
318
|
+
|
|
319
|
+
...
|
|
320
|
+
```
|
|
321
|
+
|
|
255
322
|
<a id="explicit-type-annotations"></a>
|
|
256
323
|
|
|
257
324
|
## Explicit type annotations
|
|
@@ -323,10 +390,10 @@ Full list of `Athena` Literals can be found in
|
|
|
323
390
|
[docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena/literals/).
|
|
324
391
|
|
|
325
392
|
```python
|
|
326
|
-
from mypy_boto3_athena.literals import
|
|
393
|
+
from mypy_boto3_athena.literals import AuthenticationTypeType
|
|
327
394
|
|
|
328
395
|
|
|
329
|
-
def check_value(value:
|
|
396
|
+
def check_value(value: AuthenticationTypeType) -> bool: ...
|
|
330
397
|
```
|
|
331
398
|
|
|
332
399
|
<a id="type-definitions"></a>
|
|
@@ -361,8 +428,7 @@ updates. It delivers drop-in type annotations for you and makes sure that:
|
|
|
361
428
|
annotations extracted from `botocore` schemas.
|
|
362
429
|
- Type annotations include up-to-date documentation.
|
|
363
430
|
- Link to documentation is provided for every method.
|
|
364
|
-
- Code is processed by [
|
|
365
|
-
[isort](https://github.com/PyCQA/isort) for readability.
|
|
431
|
+
- Code is processed by [ruff](https://docs.astral.sh/ruff/) for readability.
|
|
366
432
|
|
|
367
433
|
<a id="what's-new"></a>
|
|
368
434
|
|
|
@@ -1,69 +1,36 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: mypy-boto3-athena
|
|
3
|
-
Version: 1.33.0
|
|
4
|
-
Summary: Type annotations for boto3.Athena 1.33.0 service generated with mypy-boto3-builder 7.20.3
|
|
5
|
-
Home-page: https://github.com/youtype/mypy_boto3_builder
|
|
6
|
-
Author: Vlad Emelianov
|
|
7
|
-
Author-email: vlad.emelianov.nz@gmail.com
|
|
8
|
-
License: MIT License
|
|
9
|
-
Project-URL: Documentation, https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena/
|
|
10
|
-
Project-URL: Source, https://github.com/youtype/mypy_boto3_builder
|
|
11
|
-
Project-URL: Tracker, https://github.com/youtype/mypy_boto3_builder/issues
|
|
12
|
-
Keywords: boto3 athena type-annotations botocore mypy typeshed autocomplete
|
|
13
|
-
Classifier: Development Status :: 5 - Production/Stable
|
|
14
|
-
Classifier: Intended Audience :: Developers
|
|
15
|
-
Classifier: Environment :: Console
|
|
16
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
-
Classifier: Natural Language :: English
|
|
18
|
-
Classifier: Operating System :: OS Independent
|
|
19
|
-
Classifier: Programming Language :: Python :: 3
|
|
20
|
-
Classifier: Programming Language :: Python :: 3.7
|
|
21
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
22
|
-
Classifier: Programming Language :: Python :: 3.9
|
|
23
|
-
Classifier: Programming Language :: Python :: 3.10
|
|
24
|
-
Classifier: Programming Language :: Python :: 3.11
|
|
25
|
-
Classifier: Programming Language :: Python :: 3.12
|
|
26
|
-
Classifier: Programming Language :: Python :: 3.13
|
|
27
|
-
Classifier: Programming Language :: Python :: 3 :: Only
|
|
28
|
-
Classifier: Programming Language :: Python :: Implementation :: CPython
|
|
29
|
-
Classifier: Typing :: Typed
|
|
30
|
-
Requires-Python: >=3.7
|
|
31
|
-
Description-Content-Type: text/markdown
|
|
32
|
-
License-File: LICENSE
|
|
33
|
-
|
|
34
1
|
<a id="mypy-boto3-athena"></a>
|
|
35
2
|
|
|
36
3
|
# mypy-boto3-athena
|
|
37
4
|
|
|
38
|
-
[](https://pypi.org/project/mypy-boto3-athena)
|
|
39
|
-
[](https://pypi.org/project/mypy-boto3-athena)
|
|
40
|
-
[](https://youtype.github.io/boto3_stubs_docs/
|
|
41
|
-
[](https://
|
|
5
|
+
[](https://pypi.org/project/mypy-boto3-athena/)
|
|
6
|
+
[](https://pypi.org/project/mypy-boto3-athena/)
|
|
7
|
+
[](https://youtype.github.io/boto3_stubs_docs/)
|
|
8
|
+
[](https://pypistats.org/packages/mypy-boto3-athena)
|
|
42
9
|
|
|
43
10
|

|
|
44
11
|
|
|
45
|
-
Type annotations for
|
|
46
|
-
[
|
|
47
|
-
service compatible with [VSCode](https://code.visualstudio.com/),
|
|
12
|
+
Type annotations for [boto3 Athena 1.36.0](https://pypi.org/project/boto3/)
|
|
13
|
+
compatible with [VSCode](https://code.visualstudio.com/),
|
|
48
14
|
[PyCharm](https://www.jetbrains.com/pycharm/),
|
|
49
15
|
[Emacs](https://www.gnu.org/software/emacs/),
|
|
50
16
|
[Sublime Text](https://www.sublimetext.com/),
|
|
51
17
|
[mypy](https://github.com/python/mypy),
|
|
52
18
|
[pyright](https://github.com/microsoft/pyright) and other tools.
|
|
53
19
|
|
|
54
|
-
Generated
|
|
55
|
-
[mypy-boto3-builder
|
|
20
|
+
Generated with
|
|
21
|
+
[mypy-boto3-builder 8.8.0](https://github.com/youtype/mypy_boto3_builder).
|
|
56
22
|
|
|
57
23
|
More information can be found on
|
|
58
24
|
[boto3-stubs](https://pypi.org/project/boto3-stubs/) page and in
|
|
59
25
|
[mypy-boto3-athena docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena/).
|
|
60
26
|
|
|
61
|
-
See how it helps
|
|
27
|
+
See how it helps you find and fix potential bugs:
|
|
62
28
|
|
|
63
|
-

|
|
64
30
|
|
|
65
31
|
- [mypy-boto3-athena](#mypy-boto3-athena)
|
|
66
32
|
- [How to install](#how-to-install)
|
|
33
|
+
- [Generate locally (recommended)](<#generate-locally-(recommended)>)
|
|
67
34
|
- [VSCode extension](#vscode-extension)
|
|
68
35
|
- [From PyPI with pip](#from-pypi-with-pip)
|
|
69
36
|
- [How to uninstall](#how-to-uninstall)
|
|
@@ -75,6 +42,7 @@ See how it helps to find and fix potential bugs:
|
|
|
75
42
|
- [Other IDEs](#other-ides)
|
|
76
43
|
- [mypy](#mypy)
|
|
77
44
|
- [pyright](#pyright)
|
|
45
|
+
- [Pylint compatibility](#pylint-compatibility)
|
|
78
46
|
- [Explicit type annotations](#explicit-type-annotations)
|
|
79
47
|
- [Client annotations](#client-annotations)
|
|
80
48
|
- [Paginators annotations](#paginators-annotations)
|
|
@@ -93,6 +61,21 @@ See how it helps to find and fix potential bugs:
|
|
|
93
61
|
|
|
94
62
|
## How to install
|
|
95
63
|
|
|
64
|
+
<a id="generate-locally-(recommended)"></a>
|
|
65
|
+
|
|
66
|
+
### Generate locally (recommended)
|
|
67
|
+
|
|
68
|
+
You can generate type annotations for `boto3` package locally with
|
|
69
|
+
`mypy_boto3_builder`. Use
|
|
70
|
+
[uv](https://docs.astral.sh/uv/getting-started/installation/) for build
|
|
71
|
+
isolation.
|
|
72
|
+
|
|
73
|
+
1. Run mypy-boto3-builder in your package root directory:
|
|
74
|
+
`uvx --with 'boto3==1.36.0' mypy_boto3_builder`
|
|
75
|
+
2. Select `boto3-stubs` AWS SDK.
|
|
76
|
+
3. Add `Athena` service.
|
|
77
|
+
4. Use provided commands to install generated packages.
|
|
78
|
+
|
|
96
79
|
<a id="vscode-extension"></a>
|
|
97
80
|
|
|
98
81
|
### VSCode extension
|
|
@@ -113,12 +96,10 @@ Install `boto3-stubs` for `Athena` service.
|
|
|
113
96
|
# install with boto3 type annotations
|
|
114
97
|
python -m pip install 'boto3-stubs[athena]'
|
|
115
98
|
|
|
116
|
-
|
|
117
99
|
# Lite version does not provide session.client/resource overloads
|
|
118
100
|
# it is more RAM-friendly, but requires explicit type annotations
|
|
119
101
|
python -m pip install 'boto3-stubs-lite[athena]'
|
|
120
102
|
|
|
121
|
-
|
|
122
103
|
# standalone installation
|
|
123
104
|
python -m pip install mypy-boto3-athena
|
|
124
105
|
```
|
|
@@ -157,16 +138,31 @@ annotations required, write your `boto3` code as usual.
|
|
|
157
138
|
|
|
158
139
|
### PyCharm
|
|
159
140
|
|
|
160
|
-
|
|
141
|
+
> ⚠️ Due to slow PyCharm performance on `Literal` overloads (issue
|
|
142
|
+
> [PY-40997](https://youtrack.jetbrains.com/issue/PY-40997)), it is recommended
|
|
143
|
+
> to use [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/) until
|
|
144
|
+
> the issue is resolved.
|
|
145
|
+
|
|
146
|
+
> ⚠️ If you experience slow performance and high CPU usage, try to disable
|
|
147
|
+
> `PyCharm` type checker and use [mypy](https://github.com/python/mypy) or
|
|
148
|
+
> [pyright](https://github.com/microsoft/pyright) instead.
|
|
149
|
+
|
|
150
|
+
> ⚠️ To continue using `PyCharm` type checker, you can try to replace
|
|
151
|
+
> `boto3-stubs` with
|
|
152
|
+
> [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/):
|
|
161
153
|
|
|
162
154
|
```bash
|
|
163
|
-
|
|
155
|
+
pip uninstall boto3-stubs
|
|
156
|
+
pip install boto3-stubs-lite
|
|
164
157
|
```
|
|
165
158
|
|
|
166
|
-
|
|
167
|
-
|
|
159
|
+
Install `boto3-stubs[athena]` in your environment:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
python -m pip install 'boto3-stubs[athena]'
|
|
163
|
+
```
|
|
168
164
|
|
|
169
|
-
|
|
165
|
+
Both type checking and code completion should now work.
|
|
170
166
|
|
|
171
167
|
<a id="emacs"></a>
|
|
172
168
|
|
|
@@ -230,7 +226,7 @@ should work.
|
|
|
230
226
|
- Install `boto3-stubs[athena]` in your environment:
|
|
231
227
|
|
|
232
228
|
```bash
|
|
233
|
-
python -m pip install 'boto3-stubs[athena]'
|
|
229
|
+
python -m pip install 'boto3-stubs[athena]'
|
|
234
230
|
```
|
|
235
231
|
|
|
236
232
|
Type checking should now work. No explicit type annotations required, write
|
|
@@ -247,11 +243,36 @@ your `boto3` code as usual.
|
|
|
247
243
|
python -m pip install 'boto3-stubs[athena]'
|
|
248
244
|
```
|
|
249
245
|
|
|
250
|
-
Optionally, you can install `boto3-stubs` to `typings`
|
|
246
|
+
Optionally, you can install `boto3-stubs` to `typings` directory.
|
|
251
247
|
|
|
252
248
|
Type checking should now work. No explicit type annotations required, write
|
|
253
249
|
your `boto3` code as usual.
|
|
254
250
|
|
|
251
|
+
<a id="pylint-compatibility"></a>
|
|
252
|
+
|
|
253
|
+
### Pylint compatibility
|
|
254
|
+
|
|
255
|
+
It is totally safe to use `TYPE_CHECKING` flag in order to avoid
|
|
256
|
+
`mypy-boto3-athena` dependency in production. However, there is an issue in
|
|
257
|
+
`pylint` that it complains about undefined variables. To fix it, set all types
|
|
258
|
+
to `object` in non-`TYPE_CHECKING` mode.
|
|
259
|
+
|
|
260
|
+
```python
|
|
261
|
+
from typing import TYPE_CHECKING
|
|
262
|
+
|
|
263
|
+
if TYPE_CHECKING:
|
|
264
|
+
from mypy_boto3_ec2 import EC2Client, EC2ServiceResource
|
|
265
|
+
from mypy_boto3_ec2.waiters import BundleTaskCompleteWaiter
|
|
266
|
+
from mypy_boto3_ec2.paginators import DescribeVolumesPaginator
|
|
267
|
+
else:
|
|
268
|
+
EC2Client = object
|
|
269
|
+
EC2ServiceResource = object
|
|
270
|
+
BundleTaskCompleteWaiter = object
|
|
271
|
+
DescribeVolumesPaginator = object
|
|
272
|
+
|
|
273
|
+
...
|
|
274
|
+
```
|
|
275
|
+
|
|
255
276
|
<a id="explicit-type-annotations"></a>
|
|
256
277
|
|
|
257
278
|
## Explicit type annotations
|
|
@@ -323,10 +344,10 @@ Full list of `Athena` Literals can be found in
|
|
|
323
344
|
[docs](https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena/literals/).
|
|
324
345
|
|
|
325
346
|
```python
|
|
326
|
-
from mypy_boto3_athena.literals import
|
|
347
|
+
from mypy_boto3_athena.literals import AuthenticationTypeType
|
|
327
348
|
|
|
328
349
|
|
|
329
|
-
def check_value(value:
|
|
350
|
+
def check_value(value: AuthenticationTypeType) -> bool: ...
|
|
330
351
|
```
|
|
331
352
|
|
|
332
353
|
<a id="type-definitions"></a>
|
|
@@ -361,8 +382,7 @@ updates. It delivers drop-in type annotations for you and makes sure that:
|
|
|
361
382
|
annotations extracted from `botocore` schemas.
|
|
362
383
|
- Type annotations include up-to-date documentation.
|
|
363
384
|
- Link to documentation is provided for every method.
|
|
364
|
-
- Code is processed by [
|
|
365
|
-
[isort](https://github.com/PyCQA/isort) for readability.
|
|
385
|
+
- Code is processed by [ruff](https://docs.astral.sh/ruff/) for readability.
|
|
366
386
|
|
|
367
387
|
<a id="what's-new"></a>
|
|
368
388
|
|
|
@@ -28,6 +28,8 @@ Usage::
|
|
|
28
28
|
list_table_metadata_paginator: ListTableMetadataPaginator = client.get_paginator("list_table_metadata")
|
|
29
29
|
list_tags_for_resource_paginator: ListTagsForResourcePaginator = client.get_paginator("list_tags_for_resource")
|
|
30
30
|
```
|
|
31
|
+
|
|
32
|
+
Copyright 2025 Vlad Emelianov
|
|
31
33
|
"""
|
|
32
34
|
|
|
33
35
|
from .client import AthenaClient
|
|
@@ -43,6 +45,7 @@ from .paginator import (
|
|
|
43
45
|
|
|
44
46
|
Client = AthenaClient
|
|
45
47
|
|
|
48
|
+
|
|
46
49
|
__all__ = (
|
|
47
50
|
"AthenaClient",
|
|
48
51
|
"Client",
|
|
@@ -28,6 +28,8 @@ Usage::
|
|
|
28
28
|
list_table_metadata_paginator: ListTableMetadataPaginator = client.get_paginator("list_table_metadata")
|
|
29
29
|
list_tags_for_resource_paginator: ListTagsForResourcePaginator = client.get_paginator("list_tags_for_resource")
|
|
30
30
|
```
|
|
31
|
+
|
|
32
|
+
Copyright 2025 Vlad Emelianov
|
|
31
33
|
"""
|
|
32
34
|
|
|
33
35
|
from .client import AthenaClient
|
|
@@ -43,7 +45,6 @@ from .paginator import (
|
|
|
43
45
|
|
|
44
46
|
Client = AthenaClient
|
|
45
47
|
|
|
46
|
-
|
|
47
48
|
__all__ = (
|
|
48
49
|
"AthenaClient",
|
|
49
50
|
"Client",
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Main CLI entrypoint.
|
|
3
|
+
|
|
4
|
+
Copyright 2025 Vlad Emelianov
|
|
5
|
+
"""
|
|
6
|
+
|
|
7
|
+
import sys
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
def print_info() -> None:
|
|
11
|
+
"""
|
|
12
|
+
Print package info to stdout.
|
|
13
|
+
"""
|
|
14
|
+
sys.stdout.write(
|
|
15
|
+
"Type annotations for boto3 Athena 1.36.0\n"
|
|
16
|
+
"Version: 1.36.0\n"
|
|
17
|
+
"Builder version: 8.8.0\n"
|
|
18
|
+
"Docs: https://youtype.github.io/boto3_stubs_docs/mypy_boto3_athena//\n"
|
|
19
|
+
"Boto3 docs: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/athena.html#athena\n"
|
|
20
|
+
"Other services: https://pypi.org/project/boto3-stubs/\n"
|
|
21
|
+
"Changelog: https://github.com/youtype/mypy_boto3_builder/releases\n"
|
|
22
|
+
)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
def print_version() -> None:
|
|
26
|
+
"""
|
|
27
|
+
Print package version to stdout.
|
|
28
|
+
"""
|
|
29
|
+
sys.stdout.write("1.36.0\n")
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def main() -> None:
|
|
33
|
+
"""
|
|
34
|
+
Main CLI entrypoint.
|
|
35
|
+
"""
|
|
36
|
+
if "--version" in sys.argv:
|
|
37
|
+
print_version()
|
|
38
|
+
return
|
|
39
|
+
print_info()
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
if __name__ == "__main__":
|
|
43
|
+
main()
|