← All tasks
pythonagronholm/apscheduler #1133Not a task: already works

Documented `psycopg` extra is not declared in pyproject.toml

envgap__agronholm__apscheduler-1133

01 / FAILURE SIGNATURE

As reported upstream

from psycopg import AsyncConnection, InterfaceError
Not a benchmark task.
  • The project already builds and runs before the fix, so there is nothing to repair.

02 / ENVIRONMENT RECIPE

Base commit
426fc7ce7599cac06bc48c6b17db0e2568216ec0
Manifest
pyproject.toml
Reproduce
Awaiting issue-specific recipe
Run under trace
Awaiting a meaningful runtime command

03 / ORIGINAL ISSUE TEXT

agronholm/apscheduler #1133 · read the original issue
`docs/userguide.rst` documents a `psycopg` extra:

```
25: * ``psycopg``: for the Psycopg event broker
35:     pip install apscheduler[psycopg,sqlalchemy]
```

`pyproject.toml` does not declare one:

```toml
[project.optional-dependencies]
asyncpg = ["asyncpg >= 0.20"]
cbor = ["cbor2 >= 5.0"]
mongodb = ["pymongo >= 4.13.0"]
mqtt = ["paho-mqtt >= 2.0"]
redis = ["redis >= 5.0.1"]
sqlalchemy = ["sqlalchemy[asyncio] >= 2.0.24"]
```

The published `4.0.0a6` agrees: no `psycopg` requirement in its metadata. `psycopg[binary]` appears only under `[dependency-groups] test`.

The docs look right and the extra looks missing, rather than the reverse. `src/apscheduler/eventbrokers/psycopg.py:17`:

```python
from psycopg import AsyncConnection, InterfaceError
```

Every other broker has a matching extra, and `versionhistory.rst` records adding this one.

`pip` does not fail on an undeclared extra, so the reader gets `sqlalchemy`, no `psycopg`, and an `ImportError` later with nothing pointing back at the install line.

No PR because the floor is yours to pick. Happy to send one if you name it.

Found with [docproof](https://github.com/melbinjp/docproof), which flagged this as the document being wrong.
Continue on GitHub ↗

04 / LABELS

Labels from the report text only; not yet run

No supported category has been assigned.

Label rules and the text that matched
[]