This page contains tips for troubleshooting DipDup issues.
DipDup framework evolves rapidly just like Tezos itself does. We recommend keeping your project up-to-date with the latest version of DipDup.
If you're using Poetry, set caret version constraint in
pyproject.toml to use the latest release of the current major version:
[tool.poetry.dependencies] python = ">=3.10,<3.11" dipdup = "^6"
pipx installations always use latest version.
dipdup update periodically to update to the latest version.
While building Docker images you can use
X.Y tags to lock to specific major/minor releases:
DipDup config can be correct syntactically but not necessarily semantically. It's especially easy to make a mistake when actively using templates and environment variables. Use
config export command to dump config the way DipDup "sees" it, after resolving all links and templates.
config env command can help you to find missing environment variables.
dipdup -c dipdup.yml -c dipdup.prod.yml config export dipdup -c dipdup.yml -c dipdup.prod.yml config env
💡 SEE ALSO
More logs can give you a clue about the reason for an issue. Enable them in config:
When an exception occurs DipDup saves crash dumps to
/tmp/dipdup/crashdumps/XXXXXXX.json. You can send those dumps to Baking Bad automatically:
advanced: crash_reporting: True
Exceptions that occurred during callback execution are reraised as
CallbackErrors. If you experience this issue, most likely your code is incorrect. Luckily, the Python ecosystem has lots of tools called linters to help you find mistakes. In DipDup we mostly use a combo of
mypy. You can start using both with zero configuration:
poetry add --with dev flake8 mypy poetry run flake8 poetry run mypy
Better Call Dev is a blockchain explorer for Tezos smart contracts. It provides a more human-friendly interface than TzKT to explore exact contract calls and parameter/storage structures.
Try it out when writing index definitions.
Poetry package manager we recommend using with DipDup is not the most stable software in the world. If you experience issues with it like
SolverProblemError, try the following:
poetry.lockfrom the project root
poetry installand hope for the best.
We are always ready to answer your questions!
If you think you've found a bug, please report it directly to the GitHub Issues. For all other discussions, join our socials: