fix(packaging): include psycopg[binary] in the all extra

The postgres extra's psycopg[binary] was the sole dep missing from all; a new
union test guards the all-extra against future drift. (#3483)
This commit is contained in:
L4XB authored and safishamsi committed 2026-09-10 23:05:04 +01:00
1 parent ec12e5e341
commit fc179f3394
2 files changed
+11 -1

No files matched your search

+1 -1
View File
@@ -99,7 +99,7 @@ commonlisp = ["tree-sitter-commonlisp"]
# every platform, no C toolchain; optional because Robot Framework corpora are
# QA-automation specific.
robot = ["robotframework>=4.0"]
all = ["mcp>=1,<3", "starlette>=1.3.1,<2", "neo4j", "falkordb", "pypdf>=6.12.0", "markdownify", "watchdog", "graspologic; python_version < '3.13'", "python-docx", "openpyxl", "faster-whisper; python_version >= '3.11'", "yt-dlp>=2026.6.9", "matplotlib", "numpy>=2.0; python_version >= '3.13'", "openai", "tiktoken", "boto3", "anthropic", "tree-sitter-sql", "jieba", "tree-sitter-dm", "tree-sitter-hcl", "tree-sitter-pascal", "tree-sitter-ocaml", "tree-sitter-commonlisp", "robotframework>=4.0"]
all = ["mcp>=1,<3", "starlette>=1.3.1,<2", "neo4j", "falkordb", "pypdf>=6.12.0", "markdownify", "watchdog", "graspologic; python_version < '3.13'", "python-docx", "openpyxl", "faster-whisper; python_version >= '3.11'", "yt-dlp>=2026.6.9", "matplotlib", "numpy>=2.0; python_version >= '3.13'", "openai", "tiktoken", "boto3", "anthropic", "psycopg[binary]", "tree-sitter-sql", "jieba", "tree-sitter-dm", "tree-sitter-hcl", "tree-sitter-pascal", "tree-sitter-ocaml", "tree-sitter-commonlisp", "robotframework>=4.0"]
[project.scripts]
graphify = "graphify.__main__:main"
+10
View File
@@ -39,3 +39,13 @@ def test_backend_pkg_hint_points_at_uv_tool_and_extra():
assert "uv tool install" in msg
assert 'graphifyy[anthropic]' in msg
assert "pip install anthropic" in msg # pip/venv fallback still mentioned
def test_all_extra_is_the_union_of_every_other_extra():
"""README documents `[all]` as "Everything above": every dependency of every
other extra must be in it. `psycopg[binary]` from `[postgres]` was missing, so
an `[all]` install still failed on `graphify extract --postgres` (#3482)."""
extras = _extras()
union = {dep for name, deps in extras.items() if name != "all" for dep in deps}
missing = sorted(union - set(extras["all"]))
assert not missing, f"[all] is missing dependencies from other extras: {missing}"