# EXTRAS: optional or useful for development/developers workflow

# used by twister for --test-tree option
anytree

# helper for developers - check git commit messages
gitlint

# helper for developers
junit2html

# helper for developers - code formatter
clang-format>=1.13x

# Script used to build firmware images for NXP LPC MCUs.
lpc_checksum

# used by scripts/build/gen_cfb_font_header.py - helper script for user
Pillow

# can be used to sign a Zephyr application binary for consumption by a bootloader
imgtool>=1.7.1

# used by nanopb module to generate sources from .proto files
grpcio-tools

# used by scripts/release/bug_bash.py for generating top ten bug squashers
PyGithub

# used to generate devicetree dependency graphs
graphviz
