mypy-boto3-workspaces-web 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-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/LICENSE +1 -1
- {mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web.egg-info → mypy_boto3_workspaces_web-1.36.0}/PKG-INFO +122 -28
- mypy-boto3-workspaces-web-1.33.0/PKG-INFO → mypy_boto3_workspaces_web-1.36.0/README.md +102 -54
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/__init__.py +36 -0
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/__init__.pyi +35 -0
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/__main__.py +43 -0
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/client.pyi → mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/client.py +393 -254
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/client.py → mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/client.pyi +391 -258
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/literals.pyi → mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/literals.py +68 -14
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/literals.py → mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/literals.pyi +66 -16
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/paginator.py +89 -0
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/paginator.pyi +82 -0
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/type_defs.py +1166 -0
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/type_defs.pyi +1009 -0
- mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web/version.py +7 -0
- mypy-boto3-workspaces-web-1.33.0/README.md → mypy_boto3_workspaces_web-1.36.0/mypy_boto3_workspaces_web.egg-info/PKG-INFO +148 -21
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/mypy_boto3_workspaces_web.egg-info/SOURCES.txt +2 -0
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/mypy_boto3_workspaces_web.egg-info/requires.txt +1 -1
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/setup.py +10 -13
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/__init__.py +0 -23
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/__init__.pyi +0 -22
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/__main__.py +0 -39
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/type_defs.py +0 -1151
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/type_defs.pyi +0 -1150
- mypy-boto3-workspaces-web-1.33.0/mypy_boto3_workspaces_web/version.py +0 -5
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/mypy_boto3_workspaces_web/py.typed +0 -0
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/mypy_boto3_workspaces_web.egg-info/dependency_links.txt +0 -0
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/mypy_boto3_workspaces_web.egg-info/not-zip-safe +0 -0
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-1.36.0}/mypy_boto3_workspaces_web.egg-info/top_level.txt +0 -0
- {mypy-boto3-workspaces-web-1.33.0 → mypy_boto3_workspaces_web-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-workspaces-web
|
|
3
|
-
Version: 1.
|
|
4
|
-
Summary: Type annotations for boto3
|
|
3
|
+
Version: 1.36.0
|
|
4
|
+
Summary: Type annotations for boto3 WorkSpacesWeb 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_workspaces_web/
|
|
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 workspaces-web type-annotations
|
|
12
|
+
Keywords: boto3 workspaces-web 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,67 @@ 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-workspaces-web"></a>
|
|
35
48
|
|
|
36
49
|
# mypy-boto3-workspaces-web
|
|
37
50
|
|
|
38
|
-
[](https://pypi.org/project/mypy-boto3-workspaces-web)
|
|
39
|
-
[](https://pypi.org/project/mypy-boto3-workspaces-web)
|
|
40
|
-
[](https://youtype.github.io/boto3_stubs_docs/
|
|
41
|
-
[](https://
|
|
51
|
+
[](https://pypi.org/project/mypy-boto3-workspaces-web/)
|
|
52
|
+
[](https://pypi.org/project/mypy-boto3-workspaces-web/)
|
|
53
|
+
[](https://youtype.github.io/boto3_stubs_docs/)
|
|
54
|
+
[](https://pypistats.org/packages/mypy-boto3-workspaces-web)
|
|
42
55
|
|
|
43
56
|

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

|
|
64
77
|
|
|
65
78
|
- [mypy-boto3-workspaces-web](#mypy-boto3-workspaces-web)
|
|
66
79
|
- [How to install](#how-to-install)
|
|
80
|
+
- [Generate locally (recommended)](<#generate-locally-(recommended)>)
|
|
67
81
|
- [VSCode extension](#vscode-extension)
|
|
68
82
|
- [From PyPI with pip](#from-pypi-with-pip)
|
|
69
83
|
- [How to uninstall](#how-to-uninstall)
|
|
@@ -75,8 +89,10 @@ See how it helps to find and fix potential bugs:
|
|
|
75
89
|
- [Other IDEs](#other-ides)
|
|
76
90
|
- [mypy](#mypy)
|
|
77
91
|
- [pyright](#pyright)
|
|
92
|
+
- [Pylint compatibility](#pylint-compatibility)
|
|
78
93
|
- [Explicit type annotations](#explicit-type-annotations)
|
|
79
94
|
- [Client annotations](#client-annotations)
|
|
95
|
+
- [Paginators annotations](#paginators-annotations)
|
|
80
96
|
- [Literals](#literals)
|
|
81
97
|
- [Type definitions](#type-definitions)
|
|
82
98
|
- [How it works](#how-it-works)
|
|
@@ -92,6 +108,21 @@ See how it helps to find and fix potential bugs:
|
|
|
92
108
|
|
|
93
109
|
## How to install
|
|
94
110
|
|
|
111
|
+
<a id="generate-locally-(recommended)"></a>
|
|
112
|
+
|
|
113
|
+
### Generate locally (recommended)
|
|
114
|
+
|
|
115
|
+
You can generate type annotations for `boto3` package locally with
|
|
116
|
+
`mypy_boto3_builder`. Use
|
|
117
|
+
[uv](https://docs.astral.sh/uv/getting-started/installation/) for build
|
|
118
|
+
isolation.
|
|
119
|
+
|
|
120
|
+
1. Run mypy-boto3-builder in your package root directory:
|
|
121
|
+
`uvx --with 'boto3==1.36.0' mypy_boto3_builder`
|
|
122
|
+
2. Select `boto3-stubs` AWS SDK.
|
|
123
|
+
3. Add `WorkSpacesWeb` service.
|
|
124
|
+
4. Use provided commands to install generated packages.
|
|
125
|
+
|
|
95
126
|
<a id="vscode-extension"></a>
|
|
96
127
|
|
|
97
128
|
### VSCode extension
|
|
@@ -112,12 +143,10 @@ Install `boto3-stubs` for `WorkSpacesWeb` service.
|
|
|
112
143
|
# install with boto3 type annotations
|
|
113
144
|
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
114
145
|
|
|
115
|
-
|
|
116
146
|
# Lite version does not provide session.client/resource overloads
|
|
117
147
|
# it is more RAM-friendly, but requires explicit type annotations
|
|
118
148
|
python -m pip install 'boto3-stubs-lite[workspaces-web]'
|
|
119
149
|
|
|
120
|
-
|
|
121
150
|
# standalone installation
|
|
122
151
|
python -m pip install mypy-boto3-workspaces-web
|
|
123
152
|
```
|
|
@@ -156,16 +185,31 @@ annotations required, write your `boto3` code as usual.
|
|
|
156
185
|
|
|
157
186
|
### PyCharm
|
|
158
187
|
|
|
159
|
-
|
|
188
|
+
> ⚠️ Due to slow PyCharm performance on `Literal` overloads (issue
|
|
189
|
+
> [PY-40997](https://youtrack.jetbrains.com/issue/PY-40997)), it is recommended
|
|
190
|
+
> to use [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/) until
|
|
191
|
+
> the issue is resolved.
|
|
192
|
+
|
|
193
|
+
> ⚠️ If you experience slow performance and high CPU usage, try to disable
|
|
194
|
+
> `PyCharm` type checker and use [mypy](https://github.com/python/mypy) or
|
|
195
|
+
> [pyright](https://github.com/microsoft/pyright) instead.
|
|
196
|
+
|
|
197
|
+
> ⚠️ To continue using `PyCharm` type checker, you can try to replace
|
|
198
|
+
> `boto3-stubs` with
|
|
199
|
+
> [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/):
|
|
160
200
|
|
|
161
201
|
```bash
|
|
162
|
-
|
|
202
|
+
pip uninstall boto3-stubs
|
|
203
|
+
pip install boto3-stubs-lite
|
|
163
204
|
```
|
|
164
205
|
|
|
165
|
-
|
|
166
|
-
annotations **are required**.
|
|
206
|
+
Install `boto3-stubs[workspaces-web]` in your environment:
|
|
167
207
|
|
|
168
|
-
|
|
208
|
+
```bash
|
|
209
|
+
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
Both type checking and code completion should now work.
|
|
169
213
|
|
|
170
214
|
<a id="emacs"></a>
|
|
171
215
|
|
|
@@ -230,7 +274,7 @@ should work.
|
|
|
230
274
|
- Install `boto3-stubs[workspaces-web]` in your environment:
|
|
231
275
|
|
|
232
276
|
```bash
|
|
233
|
-
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
277
|
+
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
234
278
|
```
|
|
235
279
|
|
|
236
280
|
Type checking should now work. No explicit type annotations required, write
|
|
@@ -247,11 +291,36 @@ your `boto3` code as usual.
|
|
|
247
291
|
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
248
292
|
```
|
|
249
293
|
|
|
250
|
-
Optionally, you can install `boto3-stubs` to `typings`
|
|
294
|
+
Optionally, you can install `boto3-stubs` to `typings` directory.
|
|
251
295
|
|
|
252
296
|
Type checking should now work. No explicit type annotations required, write
|
|
253
297
|
your `boto3` code as usual.
|
|
254
298
|
|
|
299
|
+
<a id="pylint-compatibility"></a>
|
|
300
|
+
|
|
301
|
+
### Pylint compatibility
|
|
302
|
+
|
|
303
|
+
It is totally safe to use `TYPE_CHECKING` flag in order to avoid
|
|
304
|
+
`mypy-boto3-workspaces-web` dependency in production. However, there is an
|
|
305
|
+
issue in `pylint` that it complains about undefined variables. To fix it, set
|
|
306
|
+
all types to `object` in non-`TYPE_CHECKING` mode.
|
|
307
|
+
|
|
308
|
+
```python
|
|
309
|
+
from typing import TYPE_CHECKING
|
|
310
|
+
|
|
311
|
+
if TYPE_CHECKING:
|
|
312
|
+
from mypy_boto3_ec2 import EC2Client, EC2ServiceResource
|
|
313
|
+
from mypy_boto3_ec2.waiters import BundleTaskCompleteWaiter
|
|
314
|
+
from mypy_boto3_ec2.paginators import DescribeVolumesPaginator
|
|
315
|
+
else:
|
|
316
|
+
EC2Client = object
|
|
317
|
+
EC2ServiceResource = object
|
|
318
|
+
BundleTaskCompleteWaiter = object
|
|
319
|
+
DescribeVolumesPaginator = object
|
|
320
|
+
|
|
321
|
+
...
|
|
322
|
+
```
|
|
323
|
+
|
|
255
324
|
<a id="explicit-type-annotations"></a>
|
|
256
325
|
|
|
257
326
|
## Explicit type annotations
|
|
@@ -273,6 +342,32 @@ client: WorkSpacesWebClient = Session().client("workspaces-web")
|
|
|
273
342
|
# now client usage is checked by mypy and IDE should provide code completion
|
|
274
343
|
```
|
|
275
344
|
|
|
345
|
+
<a id="paginators-annotations"></a>
|
|
346
|
+
|
|
347
|
+
### Paginators annotations
|
|
348
|
+
|
|
349
|
+
`mypy_boto3_workspaces_web.paginator` module contains type annotations for all
|
|
350
|
+
paginators.
|
|
351
|
+
|
|
352
|
+
```python
|
|
353
|
+
from boto3.session import Session
|
|
354
|
+
|
|
355
|
+
from mypy_boto3_workspaces_web import WorkSpacesWebClient
|
|
356
|
+
from mypy_boto3_workspaces_web.paginator import (
|
|
357
|
+
ListDataProtectionSettingsPaginator,
|
|
358
|
+
ListSessionsPaginator,
|
|
359
|
+
)
|
|
360
|
+
|
|
361
|
+
client: WorkSpacesWebClient = Session().client("workspaces-web")
|
|
362
|
+
|
|
363
|
+
# Explicit type annotations are optional here
|
|
364
|
+
# Types should be correctly discovered by mypy and IDEs
|
|
365
|
+
list_data_protection_settings_paginator: ListDataProtectionSettingsPaginator = client.get_paginator(
|
|
366
|
+
"list_data_protection_settings"
|
|
367
|
+
)
|
|
368
|
+
list_sessions_paginator: ListSessionsPaginator = client.get_paginator("list_sessions")
|
|
369
|
+
```
|
|
370
|
+
|
|
276
371
|
<a id="literals"></a>
|
|
277
372
|
|
|
278
373
|
### Literals
|
|
@@ -322,8 +417,7 @@ updates. It delivers drop-in type annotations for you and makes sure that:
|
|
|
322
417
|
annotations extracted from `botocore` schemas.
|
|
323
418
|
- Type annotations include up-to-date documentation.
|
|
324
419
|
- Link to documentation is provided for every method.
|
|
325
|
-
- Code is processed by [
|
|
326
|
-
[isort](https://github.com/PyCQA/isort) for readability.
|
|
420
|
+
- Code is processed by [ruff](https://docs.astral.sh/ruff/) for readability.
|
|
327
421
|
|
|
328
422
|
<a id="what's-new"></a>
|
|
329
423
|
|
|
@@ -1,69 +1,37 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: mypy-boto3-workspaces-web
|
|
3
|
-
Version: 1.33.0
|
|
4
|
-
Summary: Type annotations for boto3.WorkSpacesWeb 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_workspaces_web/
|
|
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 workspaces-web 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-workspaces-web"></a>
|
|
35
2
|
|
|
36
3
|
# mypy-boto3-workspaces-web
|
|
37
4
|
|
|
38
|
-
[](https://pypi.org/project/mypy-boto3-workspaces-web)
|
|
39
|
-
[](https://pypi.org/project/mypy-boto3-workspaces-web)
|
|
40
|
-
[](https://youtype.github.io/boto3_stubs_docs/
|
|
41
|
-
[](https://
|
|
5
|
+
[](https://pypi.org/project/mypy-boto3-workspaces-web/)
|
|
6
|
+
[](https://pypi.org/project/mypy-boto3-workspaces-web/)
|
|
7
|
+
[](https://youtype.github.io/boto3_stubs_docs/)
|
|
8
|
+
[](https://pypistats.org/packages/mypy-boto3-workspaces-web)
|
|
42
9
|
|
|
43
10
|

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

|
|
64
31
|
|
|
65
32
|
- [mypy-boto3-workspaces-web](#mypy-boto3-workspaces-web)
|
|
66
33
|
- [How to install](#how-to-install)
|
|
34
|
+
- [Generate locally (recommended)](<#generate-locally-(recommended)>)
|
|
67
35
|
- [VSCode extension](#vscode-extension)
|
|
68
36
|
- [From PyPI with pip](#from-pypi-with-pip)
|
|
69
37
|
- [How to uninstall](#how-to-uninstall)
|
|
@@ -75,8 +43,10 @@ See how it helps to find and fix potential bugs:
|
|
|
75
43
|
- [Other IDEs](#other-ides)
|
|
76
44
|
- [mypy](#mypy)
|
|
77
45
|
- [pyright](#pyright)
|
|
46
|
+
- [Pylint compatibility](#pylint-compatibility)
|
|
78
47
|
- [Explicit type annotations](#explicit-type-annotations)
|
|
79
48
|
- [Client annotations](#client-annotations)
|
|
49
|
+
- [Paginators annotations](#paginators-annotations)
|
|
80
50
|
- [Literals](#literals)
|
|
81
51
|
- [Type definitions](#type-definitions)
|
|
82
52
|
- [How it works](#how-it-works)
|
|
@@ -92,6 +62,21 @@ See how it helps to find and fix potential bugs:
|
|
|
92
62
|
|
|
93
63
|
## How to install
|
|
94
64
|
|
|
65
|
+
<a id="generate-locally-(recommended)"></a>
|
|
66
|
+
|
|
67
|
+
### Generate locally (recommended)
|
|
68
|
+
|
|
69
|
+
You can generate type annotations for `boto3` package locally with
|
|
70
|
+
`mypy_boto3_builder`. Use
|
|
71
|
+
[uv](https://docs.astral.sh/uv/getting-started/installation/) for build
|
|
72
|
+
isolation.
|
|
73
|
+
|
|
74
|
+
1. Run mypy-boto3-builder in your package root directory:
|
|
75
|
+
`uvx --with 'boto3==1.36.0' mypy_boto3_builder`
|
|
76
|
+
2. Select `boto3-stubs` AWS SDK.
|
|
77
|
+
3. Add `WorkSpacesWeb` service.
|
|
78
|
+
4. Use provided commands to install generated packages.
|
|
79
|
+
|
|
95
80
|
<a id="vscode-extension"></a>
|
|
96
81
|
|
|
97
82
|
### VSCode extension
|
|
@@ -112,12 +97,10 @@ Install `boto3-stubs` for `WorkSpacesWeb` service.
|
|
|
112
97
|
# install with boto3 type annotations
|
|
113
98
|
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
114
99
|
|
|
115
|
-
|
|
116
100
|
# Lite version does not provide session.client/resource overloads
|
|
117
101
|
# it is more RAM-friendly, but requires explicit type annotations
|
|
118
102
|
python -m pip install 'boto3-stubs-lite[workspaces-web]'
|
|
119
103
|
|
|
120
|
-
|
|
121
104
|
# standalone installation
|
|
122
105
|
python -m pip install mypy-boto3-workspaces-web
|
|
123
106
|
```
|
|
@@ -156,16 +139,31 @@ annotations required, write your `boto3` code as usual.
|
|
|
156
139
|
|
|
157
140
|
### PyCharm
|
|
158
141
|
|
|
159
|
-
|
|
142
|
+
> ⚠️ Due to slow PyCharm performance on `Literal` overloads (issue
|
|
143
|
+
> [PY-40997](https://youtrack.jetbrains.com/issue/PY-40997)), it is recommended
|
|
144
|
+
> to use [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/) until
|
|
145
|
+
> the issue is resolved.
|
|
146
|
+
|
|
147
|
+
> ⚠️ If you experience slow performance and high CPU usage, try to disable
|
|
148
|
+
> `PyCharm` type checker and use [mypy](https://github.com/python/mypy) or
|
|
149
|
+
> [pyright](https://github.com/microsoft/pyright) instead.
|
|
150
|
+
|
|
151
|
+
> ⚠️ To continue using `PyCharm` type checker, you can try to replace
|
|
152
|
+
> `boto3-stubs` with
|
|
153
|
+
> [boto3-stubs-lite](https://pypi.org/project/boto3-stubs-lite/):
|
|
160
154
|
|
|
161
155
|
```bash
|
|
162
|
-
|
|
156
|
+
pip uninstall boto3-stubs
|
|
157
|
+
pip install boto3-stubs-lite
|
|
163
158
|
```
|
|
164
159
|
|
|
165
|
-
|
|
166
|
-
|
|
160
|
+
Install `boto3-stubs[workspaces-web]` in your environment:
|
|
161
|
+
|
|
162
|
+
```bash
|
|
163
|
+
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
164
|
+
```
|
|
167
165
|
|
|
168
|
-
|
|
166
|
+
Both type checking and code completion should now work.
|
|
169
167
|
|
|
170
168
|
<a id="emacs"></a>
|
|
171
169
|
|
|
@@ -230,7 +228,7 @@ should work.
|
|
|
230
228
|
- Install `boto3-stubs[workspaces-web]` in your environment:
|
|
231
229
|
|
|
232
230
|
```bash
|
|
233
|
-
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
231
|
+
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
234
232
|
```
|
|
235
233
|
|
|
236
234
|
Type checking should now work. No explicit type annotations required, write
|
|
@@ -247,11 +245,36 @@ your `boto3` code as usual.
|
|
|
247
245
|
python -m pip install 'boto3-stubs[workspaces-web]'
|
|
248
246
|
```
|
|
249
247
|
|
|
250
|
-
Optionally, you can install `boto3-stubs` to `typings`
|
|
248
|
+
Optionally, you can install `boto3-stubs` to `typings` directory.
|
|
251
249
|
|
|
252
250
|
Type checking should now work. No explicit type annotations required, write
|
|
253
251
|
your `boto3` code as usual.
|
|
254
252
|
|
|
253
|
+
<a id="pylint-compatibility"></a>
|
|
254
|
+
|
|
255
|
+
### Pylint compatibility
|
|
256
|
+
|
|
257
|
+
It is totally safe to use `TYPE_CHECKING` flag in order to avoid
|
|
258
|
+
`mypy-boto3-workspaces-web` dependency in production. However, there is an
|
|
259
|
+
issue in `pylint` that it complains about undefined variables. To fix it, set
|
|
260
|
+
all types to `object` in non-`TYPE_CHECKING` mode.
|
|
261
|
+
|
|
262
|
+
```python
|
|
263
|
+
from typing import TYPE_CHECKING
|
|
264
|
+
|
|
265
|
+
if TYPE_CHECKING:
|
|
266
|
+
from mypy_boto3_ec2 import EC2Client, EC2ServiceResource
|
|
267
|
+
from mypy_boto3_ec2.waiters import BundleTaskCompleteWaiter
|
|
268
|
+
from mypy_boto3_ec2.paginators import DescribeVolumesPaginator
|
|
269
|
+
else:
|
|
270
|
+
EC2Client = object
|
|
271
|
+
EC2ServiceResource = object
|
|
272
|
+
BundleTaskCompleteWaiter = object
|
|
273
|
+
DescribeVolumesPaginator = object
|
|
274
|
+
|
|
275
|
+
...
|
|
276
|
+
```
|
|
277
|
+
|
|
255
278
|
<a id="explicit-type-annotations"></a>
|
|
256
279
|
|
|
257
280
|
## Explicit type annotations
|
|
@@ -273,6 +296,32 @@ client: WorkSpacesWebClient = Session().client("workspaces-web")
|
|
|
273
296
|
# now client usage is checked by mypy and IDE should provide code completion
|
|
274
297
|
```
|
|
275
298
|
|
|
299
|
+
<a id="paginators-annotations"></a>
|
|
300
|
+
|
|
301
|
+
### Paginators annotations
|
|
302
|
+
|
|
303
|
+
`mypy_boto3_workspaces_web.paginator` module contains type annotations for all
|
|
304
|
+
paginators.
|
|
305
|
+
|
|
306
|
+
```python
|
|
307
|
+
from boto3.session import Session
|
|
308
|
+
|
|
309
|
+
from mypy_boto3_workspaces_web import WorkSpacesWebClient
|
|
310
|
+
from mypy_boto3_workspaces_web.paginator import (
|
|
311
|
+
ListDataProtectionSettingsPaginator,
|
|
312
|
+
ListSessionsPaginator,
|
|
313
|
+
)
|
|
314
|
+
|
|
315
|
+
client: WorkSpacesWebClient = Session().client("workspaces-web")
|
|
316
|
+
|
|
317
|
+
# Explicit type annotations are optional here
|
|
318
|
+
# Types should be correctly discovered by mypy and IDEs
|
|
319
|
+
list_data_protection_settings_paginator: ListDataProtectionSettingsPaginator = client.get_paginator(
|
|
320
|
+
"list_data_protection_settings"
|
|
321
|
+
)
|
|
322
|
+
list_sessions_paginator: ListSessionsPaginator = client.get_paginator("list_sessions")
|
|
323
|
+
```
|
|
324
|
+
|
|
276
325
|
<a id="literals"></a>
|
|
277
326
|
|
|
278
327
|
### Literals
|
|
@@ -322,8 +371,7 @@ updates. It delivers drop-in type annotations for you and makes sure that:
|
|
|
322
371
|
annotations extracted from `botocore` schemas.
|
|
323
372
|
- Type annotations include up-to-date documentation.
|
|
324
373
|
- Link to documentation is provided for every method.
|
|
325
|
-
- Code is processed by [
|
|
326
|
-
[isort](https://github.com/PyCQA/isort) for readability.
|
|
374
|
+
- Code is processed by [ruff](https://docs.astral.sh/ruff/) for readability.
|
|
327
375
|
|
|
328
376
|
<a id="what's-new"></a>
|
|
329
377
|
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Main interface for workspaces-web service.
|
|
3
|
+
|
|
4
|
+
Usage::
|
|
5
|
+
|
|
6
|
+
```python
|
|
7
|
+
from boto3.session import Session
|
|
8
|
+
from mypy_boto3_workspaces_web import (
|
|
9
|
+
Client,
|
|
10
|
+
ListDataProtectionSettingsPaginator,
|
|
11
|
+
ListSessionsPaginator,
|
|
12
|
+
WorkSpacesWebClient,
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
session = Session()
|
|
16
|
+
client: WorkSpacesWebClient = session.client("workspaces-web")
|
|
17
|
+
|
|
18
|
+
list_data_protection_settings_paginator: ListDataProtectionSettingsPaginator = client.get_paginator("list_data_protection_settings")
|
|
19
|
+
list_sessions_paginator: ListSessionsPaginator = client.get_paginator("list_sessions")
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Copyright 2025 Vlad Emelianov
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
from .client import WorkSpacesWebClient
|
|
26
|
+
from .paginator import ListDataProtectionSettingsPaginator, ListSessionsPaginator
|
|
27
|
+
|
|
28
|
+
Client = WorkSpacesWebClient
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
__all__ = (
|
|
32
|
+
"Client",
|
|
33
|
+
"ListDataProtectionSettingsPaginator",
|
|
34
|
+
"ListSessionsPaginator",
|
|
35
|
+
"WorkSpacesWebClient",
|
|
36
|
+
)
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"""
|
|
2
|
+
Main interface for workspaces-web service.
|
|
3
|
+
|
|
4
|
+
Usage::
|
|
5
|
+
|
|
6
|
+
```python
|
|
7
|
+
from boto3.session import Session
|
|
8
|
+
from mypy_boto3_workspaces_web import (
|
|
9
|
+
Client,
|
|
10
|
+
ListDataProtectionSettingsPaginator,
|
|
11
|
+
ListSessionsPaginator,
|
|
12
|
+
WorkSpacesWebClient,
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
session = Session()
|
|
16
|
+
client: WorkSpacesWebClient = session.client("workspaces-web")
|
|
17
|
+
|
|
18
|
+
list_data_protection_settings_paginator: ListDataProtectionSettingsPaginator = client.get_paginator("list_data_protection_settings")
|
|
19
|
+
list_sessions_paginator: ListSessionsPaginator = client.get_paginator("list_sessions")
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
Copyright 2025 Vlad Emelianov
|
|
23
|
+
"""
|
|
24
|
+
|
|
25
|
+
from .client import WorkSpacesWebClient
|
|
26
|
+
from .paginator import ListDataProtectionSettingsPaginator, ListSessionsPaginator
|
|
27
|
+
|
|
28
|
+
Client = WorkSpacesWebClient
|
|
29
|
+
|
|
30
|
+
__all__ = (
|
|
31
|
+
"Client",
|
|
32
|
+
"ListDataProtectionSettingsPaginator",
|
|
33
|
+
"ListSessionsPaginator",
|
|
34
|
+
"WorkSpacesWebClient",
|
|
35
|
+
)
|
|
@@ -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 WorkSpacesWeb 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_workspaces_web//\n"
|
|
19
|
+
"Boto3 docs: https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/workspaces-web.html#workspacesweb\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()
|