Skip to content

Clean up Python dependency management #226

Merged
bbannier merged 4 commits into
masterfrom
topic/bbannier/dependencies
Jul 7, 2026
Merged

Clean up Python dependency management #226
bbannier merged 4 commits into
masterfrom
topic/bbannier/dependencies

Conversation

@bbannier

Copy link
Copy Markdown
Member

No description provided.

@bbannier bbannier self-assigned this Jun 19, 2026
@bbannier bbannier marked this pull request as ready for review June 19, 2026 12:53
bbannier added 4 commits June 22, 2026 12:29
This is a proper package which declares its dependencies, so this should
not add value anymore. It likely was also outdated, or at least hard to
maintain. The main use case of this was probably to catch incomplete
postinstallation by the user when zkg was shipped as part of Zeek; since
with zeek/zeek#5553 we do not do this anymore this is unneeded.
We already maintain dependencies in `pyproject.toml` which is supported
by modern developer tooling and also RTD.
There really is no reason to make this conditional if we assume that
users install zkg correctly. We also never declared an optional
dependency on `argcomplete`.

@ckreibich ckreibich left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice, I'm on board with all of these. The only thing I wonder about is the first commit, i.e. whether we should still keep an explanation for the needed dependencies if for some reason the installation is messed up or non-standard (say because the user wants to rely on system packages to provide them but something goes wrong — similar to my comment over on #228).

The help output could be more streamlined — a simple pointer to the docs perhaps — but would a bit more graceful than an unhandled ImportError.

Comment thread doc/developers.rst
@bbannier

Copy link
Copy Markdown
Member Author

The only thing I wonder about is the first commit, i.e. whether we should still keep an explanation for the needed dependencies if for some reason the installation is messed up or non-standard (say because the user wants to rely on system packages to provide them but something goes wrong — similar to my comment over on #228).

I have never seen this anywhere else, and it seems weird. Unless looking at very simple scripts without any dependencies, I'd expect all Python projects to have some pyproject.toml which spells out how the package can be installed.

@bbannier bbannier requested a review from ckreibich July 1, 2026 14:39
@bbannier bbannier merged commit 308032e into master Jul 7, 2026
5 checks passed
@bbannier bbannier deleted the topic/bbannier/dependencies branch July 7, 2026 09:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants