Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Type annotations for boto3 CostExplorer 1.35.68 service generated with mypy-boto3-builder 8.3.1
Type annotations for boto3 CostExplorer 1.35.68 compatible with VSCode, PyCharm, Emacs, Sublime Text, mypy, pyright and other tools.
Generated by mypy-boto3-builder 8.3.1.
More information can be found on boto3-stubs page and in mypy-boto3-ce docs.
See how it helps you find and fix potential bugs:
Add
AWS Boto3
extension to your VSCode and run AWS boto3: Quick Start
command.
Click Modify
and select boto3 common
and CostExplorer
.
Install boto3-stubs
for CostExplorer
service.
# install with boto3 type annotations
python -m pip install 'boto3-stubs[ce]'
# Lite version does not provide session.client/resource overloads
# it is more RAM-friendly, but requires explicit type annotations
python -m pip install 'boto3-stubs-lite[ce]'
# standalone installation
python -m pip install mypy-boto3-ce
python -m pip uninstall -y mypy-boto3-ce
Pylance
as your Python Language Serverboto3-stubs[ce]
in your environment:python -m pip install 'boto3-stubs[ce]'
Both type checking and code completion should now work. No explicit type
annotations required, write your boto3
code as usual.
⚠️ Due to slow PyCharm performance on
Literal
overloads (issue PY-40997), it is recommended to use boto3-stubs-lite until the issue is resolved.
⚠️ If you experience slow performance and high CPU usage, try to disable
PyCharm
type checker and use mypy or pyright instead.
⚠️ To continue using
PyCharm
type checker, you can try to replaceboto3-stubs
with boto3-stubs-lite:
pip uninstall boto3-stubs
pip install boto3-stubs-lite
Install boto3-stubs[ce]
in your environment:
python -m pip install 'boto3-stubs[ce]'
Both type checking and code completion should now work.
boto3-stubs
with services you use in your environment:python -m pip install 'boto3-stubs[ce]'
(use-package lsp-pyright
:ensure t
:hook (python-mode . (lambda ()
(require 'lsp-pyright)
(lsp))) ; or lsp-deferred
:init (when (executable-find "python3")
(setq lsp-pyright-python-executable-cmd "python3"))
)
boto3-stubs
Type checking should now work. No explicit type annotations required, write
your boto3
code as usual.
boto3-stubs[ce]
with services you use in your environment:python -m pip install 'boto3-stubs[ce]'
Type checking should now work. No explicit type annotations required, write
your boto3
code as usual.
Not tested, but as long as your IDE supports mypy
or pyright
, everything
should work.
mypy
: python -m pip install mypy
boto3-stubs[ce]
in your environment:python -m pip install 'boto3-stubs[ce]'
Type checking should now work. No explicit type annotations required, write
your boto3
code as usual.
pyright
: npm i -g pyright
boto3-stubs[ce]
in your environment:python -m pip install 'boto3-stubs[ce]'
Optionally, you can install boto3-stubs
to typings
directory.
Type checking should now work. No explicit type annotations required, write
your boto3
code as usual.
CostExplorerClient
provides annotations for boto3.client("ce")
.
from boto3.session import Session
from mypy_boto3_ce import CostExplorerClient
client: CostExplorerClient = Session().client("ce")
# now client usage is checked by mypy and IDE should provide code completion
mypy_boto3_ce.literals
module contains literals extracted from shapes that
can be used in user code for type checking.
Full list of CostExplorer
Literals can be found in
docs.
from mypy_boto3_ce.literals import AccountScopeType
def check_value(value: AccountScopeType) -> bool: ...
mypy_boto3_ce.type_defs
module contains structures and shapes assembled to
typed dictionaries and unions for additional type checking.
Full list of CostExplorer
TypeDefs can be found in
docs.
from mypy_boto3_ce.type_defs import AnomalyDateIntervalTypeDef
def get_value() -> AnomalyDateIntervalTypeDef:
return {...}
Fully automated
mypy-boto3-builder carefully
generates type annotations for each service, patiently waiting for boto3
updates. It delivers drop-in type annotations for you and makes sure that:
boto3
services are covered.boto3
service gets valid type
annotations extracted from botocore
schemas.boto3
, botocore
, aiobotocore
and aioboto3
librariesmypy
, pyright
, VSCode
, PyCharm
, Sublime Text
and Emacs
compatibilityClient
, ServiceResource
, Resource
, Waiter
Paginator
type
annotations for each serviceTypeDefs
for each serviceLiterals
for each serviceboto3.client
and boto3.resource
callssession.client
and session.resource
callsclient.get_waiter
and client.get_paginator
callsServiceResource
and Resource
collectionsaiobotocore.Session.create_client
callsBuilder changelog can be found in Releases.
mypy-boto3-ce
version is the same as related boto3
version and follows
PEP 440 format.
All services type annotations can be found in boto3 docs
This package is auto-generated. Please reports any bugs or request new features in mypy-boto3-builder repository.
FAQs
Type annotations for boto3 CostExplorer 1.35.68 service generated with mypy-boto3-builder 8.3.1
We found that mypy-boto3-ce demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.