Document that asyncpg error messages no longer include DETAIL in 2.1
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 1/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 82/100
- Issue type
- Documentation
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- python, sqlalchemy
- Domain
- databases, documentation
Research direction
Start with the 2.1 changelog entry for #8047 and the migration notes, which the issue identifies as missing the message change. Document that asyncpg error messages no longer include the DETAIL: line, and point readers to .sqlstate, .detail, and driver_exception instead. Done when the 2.1 documentation explains the change and its replacement attributes.
Written by the indexing model from the issue text.
Description
Describe the documentation issue
For asyncpg on 2.1, str(exc.orig) / exc.orig.args[0] (and so str(DBAPIError)) no longer include the DETAIL: line. On 2.0 they included it, because the message was built as "%s: %s" % (type(error), error). This came with the EmulatedDBAPIException change in 89a4174a8d (#8047). The detail is still available as exc.orig.detail and through exc.driver_exception.
The 2.1 changelog entry for #8047 describes the new attributes but not the message change. Downstream code that parsed the message, for example advanced-alchemy's duplicate-key detection (litestar-org/advanced-alchemy#803), broke silently, and logs lost the Key (...)=(...) information.
I'm not asking to change the behavior back, since structured attributes are better. Could the migration notes / changelog mention it, and point to .sqlstate / .detail / driver_exception as the replacement?
- Dominant language
- Python
- Stars
- 12.2k
- Forks
- 1.8k
- PR merge metrics
- No merged PRs in 30d
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from sqlalchemy/sqlalchemy
-
TableValueType should accept is_ operator classPossibly taken @nightcityblade claimed this 2 days ago. Openpostgresql sql use case
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
sqlalchemy/sqlalchemy#13651 · 4 comments ·
Maintainers usually reply within 1 day
-
PostgreSQL multihost URL with bracketed IPv6 hosts raises ValueError: too many values to unpackMay be free again A pull request for this issue was closed without being merged. Openbug engine postgresql
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
sqlalchemy/sqlalchemy#13637 · 3 comments ·
Maintainers usually reply within 1 day
-
asyncpg dialect raises DBAPIError, not DataError, for SQLSTATE class 22 errorsPossibly taken @HardMax71 claimed this 6 days ago. Openbug dialects
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
sqlalchemy/sqlalchemy#13636 · 7 comments ·
Maintainers usually reply within 1 day
-
documentation bugMay be free again A pull request for this issue was closed without being merged. Opendocumentation
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
sqlalchemy/sqlalchemy#13594 · 2 comments · 5 reactions ·
Maintainers usually reply within 1 day
-
bug robots involved :robot: sql
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
sqlalchemy/sqlalchemy#13469 · 4 comments ·
Maintainers usually reply within 1 day
All issues in sqlalchemy/sqlalchemy
Similar issues
-
first
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
AcademySoftwareFoundation/rmtc#54 · 1 comment ·
-
feature/cohorts feature/feature-flags team/feature-flags
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
Maintainers usually reply within 1 day
-
License examples/ as MITPossibly taken @PGrayCS claimed this today. Opendocumentation enhancement example good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
speedyk-005/yasbd-lib#383 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
interactions-py/interactions.py#1827 ·
-
Managed start can fail when OpenVMM reads its control capability before NVX writes itPossibly taken @ppenna claimed this today. Openbug
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
Maintainers usually reply within 1 day