optional dependencies#207
Merged
thorinaboenke merged 6 commits intoJul 13, 2026
Merged
Conversation
thorinaboenke
marked this pull request as draft
July 10, 2026 12:07
…al_library_dependencies # Conflicts: # uv.lock
thorinaboenke
marked this pull request as ready for review
July 13, 2026 09:24
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Task
#179
Description
bump pin to detectmatelibrary==0.4.0
Version is pinned in one place only; extras stay unversioned so uv/pip can unify them.
Support DetectMateLibrary's new optional extras (
llm,dataframes,polars-rtcompat,full) via matching pass-through extras inpyproject.toml, `.Docker:
Dockerfilegain aLIBRARY_EXTRASbuild arg (defaultfull) controlling which extras get installed (--build-arg LIBRARY_EXTRAS=llm,dataframes).docker-compose.ymlpasses it through for theparser/detectoralso updated docs to reflect recreation of development branch on deleteion
How Has This Been Tested?
manual testing:

#install only with llm extras
docker build --build-arg LIBRARY_EXTRAS=llm -t detectmate:llm-test .
--> openai there, polars runtime is not
#install with no extras

docker build --build-arg LIBRARY_EXTRAS="" -t detectmate:base-test .
no build args behaves like full:
docker build -t detectmate:full-test .
for pkg in openai tiktoken pandas polars-runtime-compat; do
docker run --rm detectmate:full-test python -m pip show "$pkg" >/dev/null && echo "$pkg: present (expected)" || echo "UNEXPECTED: $pkg missing"
done
also works with passing through docker compose:
LIBRARY_EXTRAS=llm docker compose build detector
Checklist