#
# This file is autogenerated by pip-compile with Python 3.10
# by the following command:
#
#    pip-compile --output-file=constraints.txt --resolver=backtracking --strip-extras requirements.all.txt
#
anytree==2.8.0
    # via -r requirements.txt
appdirs==1.4.4
    # via
    #   -r requirements.txt
    #   mbed-os-tools
appnope==0.1.3
    # via -r requirements.txt
asttokens==2.2.1
    # via stack-data
attrs==22.2.0
    # via
    #   jsonschema
    #   pytest
backcall==0.2.0
    # via ipython
beautifulsoup4==4.11.2
    # via mbed-os-tools
bflb-crypto-plus==1.0
    # via bflb-iot-tool
bflb-iot-tool==1.8.3
    # via -r requirements.bouffalolab.txt
bitstring==3.1.9
    # via -r requirements.esp32.txt
brotli==1.0.9
    # via flask-compress
build==0.8.0
    # via
    #   -r requirements.txt
    #   pip-tools
cachecontrol==0.12.11
    # via idf-component-manager
cbor==1.0.0
    # via -r requirements.txt
cbor2==5.4.6
    # via
    #   -r requirements.txt
    #   imgtool
certifi==2022.12.7
    # via requests
cffi==1.15.1
    # via cryptography
charset-normalizer==3.0.1
    # via requests
click==8.1.3
    # via
    #   -r requirements.esp32.txt
    #   -r requirements.txt
    #   flask
    #   idf-component-manager
    #   imgtool
    #   mbed-tools
    #   pip-tools
colorama==0.4.6
    # via
    #   -r requirements.txt
    #   idf-component-manager
    #   mbed-os-tools
    #   west
coloredlogs==15.0.1
    # via -r requirements.txt
construct==2.10.54
    # via -r requirements.esp32.txt
contextlib2==21.6.0
    # via
    #   idf-component-manager
    #   schema
cryptography==39.0.2
    # via
    #   -r requirements.txt
    #   imgtool
cxxfilt==0.3.0
    # via -r requirements.txt
decorator==5.1.1
    # via ipython
diskcache==5.4.0
    # via -r requirements.txt
distlib==0.3.6
    # via virtualenv
docopt==0.6.2
    # via pykwalify
ecdsa==0.18.0
    # via
    #   -r requirements.esp32.txt
    #   -r requirements.ti.txt
    #   bflb-iot-tool
executing==1.2.0
    # via stack-data
fastcore==1.5.28
    # via ghapi
fasteners==0.18
    # via mbed-os-tools
filelock==3.9.0
    # via virtualenv
flask==0.12.5
    # via
    #   flask-compress
    #   flask-socketio
    #   gdbgui
flask-compress==1.13
    # via gdbgui
flask-socketio==2.9.6
    # via gdbgui
future==0.18.3
    # via
    #   -r requirements.esp32.txt
    #   -r requirements.telink.txt
    #   idf-component-manager
    #   mbed-os-tools
    #   pylink-square
gdbgui==0.13.2.0 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via -r requirements.esp32.txt
gevent==1.5.0
    # via gdbgui
ghapi==1.0.3
    # via -r requirements.txt
gitdb==4.0.10
    # via gitpython
gitpython==3.1.31 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via
    #   -r requirements.mbed.txt
    #   mbed-tools
greenlet==2.0.2
    # via gevent
humanfriendly==10.0
    # via coloredlogs
idf-component-manager==1.2.2
    # via -r requirements.esp32.txt
idna==3.4
    # via requests
imgtool==1.9.0
    # via -r requirements.openiotsdk.txt
iniconfig==2.0.0
    # via pytest
intelhex==2.3.0
    # via
    #   -r requirements.txt
    #   imgtool
    #   mbed-os-tools
ipython==8.11.0
    # via -r requirements.txt
itsdangerous==2.0.1
    # via
    #   -r requirements.esp32.txt
    #   flask
jedi==0.18.2
    # via ipython
jinja2==3.0.3
    # via
    #   -r requirements.esp32.txt
    #   flask
    #   mbed-tools
jsonschema==4.17.3
    # via -r requirements.txt
junit-xml==1.9
    # via mbed-os-tools
kconfiglib==13.7.1
    # via -r requirements.esp32.txt
lark==1.1.5
    # via -r requirements.txt
leb128==1.0.5
    # via -r requirements.infineon.txt
lockfile==0.12.2
    # via
    #   -r requirements.txt
    #   cachecontrol
    #   mbed-os-tools
mako==1.2.4
    # via pdoc3
markdown==3.4.1
    # via pdoc3
markupsafe==2.1.2
    # via
    #   jinja2
    #   mako
matplotlib-inline==0.1.6
    # via ipython
mbed-ls==1.8.11 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via -r requirements.mbed.txt
mbed-os-tools==1.8.15
    # via mbed-ls
mbed-tools==7.59.0 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via -r requirements.mbed.txt
mobly==1.12.1
    # via -r requirements.txt
msgpack==1.0.4
    # via cachecontrol
mypy==0.971
    # via -r requirements.txt
mypy-extensions==1.0.0
    # via mypy
mypy-protobuf==3.2.0
    # via -r requirements.txt
numpy==1.24.2
    # via pandas
packaging==23.0
    # via
    #   build
    #   fastcore
    #   ghapi
    #   idf-component-manager
    #   pytest
    #   west
pandas==1.5.3 ; platform_machine != "aarch64" and platform_machine != "arm64"
    # via -r requirements.txt
parso==0.8.3
    # via jedi
pdoc3==0.10.0 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via -r requirements.mbed.txt
pep517==0.13.0
    # via build
pexpect==4.8.0
    # via ipython
pgi==0.0.11.2 ; sys_platform == "linux"
    # via -r requirements.txt
pickleshare==0.7.5
    # via ipython
pip-tools==6.12.3
    # via -r requirements.txt
platformdirs==3.0.0
    # via virtualenv
pluggy==1.0.0
    # via pytest
portalocker==2.0.0
    # via bflb-iot-tool
portpicker==1.5.2
    # via
    #   -r requirements.txt
    #   mobly
prettytable==2.5.0
    # via
    #   mbed-ls
    #   mbed-os-tools
prompt-toolkit==3.0.38
    # via ipython
protobuf==3.20.1
    # via
    #   -r requirements.txt
    #   mypy-protobuf
psutil==5.9.4
    # via
    #   -r requirements.txt
    #   mbed-tools
    #   portpicker
    #   pylink-square
ptyprocess==0.7.0
    # via pexpect
pure-eval==0.2.2
    # via stack-data
py==1.11.0
    # via pytest
pycklink==0.1.1
    # via bflb-iot-tool
pycparser==2.21
    # via cffi
pycryptodome==3.9.8
    # via
    #   bflb-crypto-plus
    #   bflb-iot-tool
pygdbmi==0.9.0.2
    # via
    #   -r requirements.esp32.txt
    #   gdbgui
pygments==2.14.0
    # via
    #   gdbgui
    #   ipython
pykwalify==1.8.0
    # via west
pylink-square==0.5.0
    # via bflb-iot-tool
pyparsing==2.3.1
    # via -r requirements.esp32.txt
pypng==0.0.21
    # via -r requirements.telink.txt
pyqrcode==1.2.1
    # via -r requirements.telink.txt
pyrsistent==0.19.3
    # via jsonschema
pyserial==3.5
    # via
    #   -c constraints.esp32.txt
    #   bflb-iot-tool
    #   mbed-os-tools
    #   mbed-tools
pytest==6.2.5 ; sys_platform == "linux"
    # via
    #   -r requirements.mbed.txt
    #   pytest-json-report
    #   pytest-metadata
pytest-json-report==1.5.0
    # via -r requirements.openiotsdk.txt
pytest-metadata==2.0.4
    # via pytest-json-report
python-dateutil==2.8.2
    # via
    #   pandas
    #   pykwalify
python-dotenv==1.0.0 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via
    #   -r requirements.mbed.txt
    #   mbed-tools
python-engineio==3.14.2
    # via python-socketio
python-socketio==4.6.1
    # via
    #   -r requirements.esp32.txt
    #   flask-socketio
pytz==2022.7.1
    # via pandas
pyudev==0.24.0 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via
    #   -r requirements.mbed.txt
    #   mbed-tools
pyyaml==6.0
    # via
    #   idf-component-manager
    #   mobly
    #   west
reedsolo==1.5.4
    # via -r requirements.esp32.txt
requests==2.28.2
    # via
    #   -r requirements.txt
    #   cachecontrol
    #   idf-component-manager
    #   mbed-os-tools
    #   mbed-tools
    #   requests-file
    #   requests-toolbelt
requests-file==1.5.1
    # via idf-component-manager
requests-toolbelt==0.10.1
    # via idf-component-manager
ruamel-yaml==0.17.21
    # via pykwalify
ruamel-yaml-clib==0.2.7
    # via ruamel-yaml
schema==0.7.5
    # via idf-component-manager
six==1.16.0
    # via
    #   anytree
    #   asttokens
    #   ecdsa
    #   idf-component-manager
    #   junit-xml
    #   mbed-os-tools
    #   pylink-square
    #   python-dateutil
    #   python-engineio
    #   python-socketio
    #   requests-file
smmap==5.0.0
    # via gitdb
soupsieve==2.4
    # via beautifulsoup4
stack-data==0.6.2
    # via ipython
stringcase==1.2.0
    # via -r requirements.txt
tabulate==0.9.0
    # via
    #   -r requirements.txt
    #   mbed-tools
toml==0.10.2
    # via pytest
tomli==2.0.1
    # via
    #   build
    #   mypy
    #   pep517
tornado==6.2
    # via -r requirements.txt
tqdm==4.64.1
    # via
    #   idf-component-manager
    #   mbed-tools
traitlets==5.9.0
    # via
    #   ipython
    #   matplotlib-inline
types-protobuf==3.19.22
    # via
    #   -r requirements.txt
    #   mypy-protobuf
typing-extensions==4.5.0 ; platform_machine != "aarch64" and sys_platform == "linux"
    # via
    #   -r requirements.mbed.txt
    #   mbed-tools
    #   mypy
urllib3==1.26.14
    # via requests
virtualenv==20.20.0
    # via -r requirements.txt
watchdog==2.3.1
    # via -r requirements.txt
wcwidth==0.2.6
    # via
    #   prettytable
    #   prompt-toolkit
websockets==10.4
    # via -r requirements.txt
werkzeug==0.16.1
    # via flask
west==1.0.0
    # via -r requirements.txt
wheel==0.38.4 ; sys_platform == "linux"
    # via
    #   -r requirements.txt
    #   pip-tools

# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
