Menu

Every requirement satisfied, still broken: dependency bugs I found in six Python apps
📰

Every requirement satisfied, still broken: dependency bugs I found in six Python apps

DEV Community: opensource·youssef-elaasri·about 19 hours ago
#GCEXkNv0
#devtoopensource#devto#dev#django#version
Reading 0:00
15s threshold

pip check passing doesn't mean your packages work together. It means each package's declared version ranges are met. Whether the installed version of a dependency still has the functions, attributes and parameters the package actually uses is something nothing checks.

To find out how often that goes wrong in practice, I installed six open-source Python applications the way their docs say to (NetBox, CTFd, redash, FlaskBB, healthchecks and paperless-ngx) and checked every call each installed package makes into another against the version installed next to it. Here's what turned up, which patterns keep recurring, and what maintainers can do about each one.

The short version

healthchecks and FlaskBB : no breaks.…

Continue reading — create a free account

Join HashtagPLUS to read full articles, follow hashtags, vote, and join the conversation.