#33308 closed New feature (fixed)
Add psycopg3 backend
Reported by: | Paolo Melchiorre | Owned by: | Florian Apolloner |
---|---|---|---|
Component: | Database layer (models, ORM) | Version: | dev |
Severity: | Normal | Keywords: | database postgresql backend orm |
Cc: | Daniele Varrazzo, Adam Johnson, Michael P. Jung, Saeed Blanchette, Florian Apolloner, Adam Wróbel, Andreas Rammhold, Alexander Nestorov, Ben Plessinger, Thiago Bellini Ribeiro, Mikail, Anvesh Mishra, Maciej Olko, Ülgen Sarıkavak, Sage Abdullah | Triage Stage: | Ready for checkin |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
A stable version of Psycopg3 has been released for some time and sub-versions are being released which fix minor problems.
https://github.com/psycopg/psycopg
The author of Psycopg3 himself has already created some demonstration branches with the integration test of Django and Psycopg3.
https://www.psycopg.org/articles/2021/08/02/psycopg3-django-driver/
I propose to add a new database backend for PostgreSQL based on Psycopg3 in parallel with the one based on Psycopg2, we can start from the work already done.
https://github.com/dvarrazzo/django-psycopg3-backend
P.S. In the past I believe there was a similar situation when Psycpg2 support was added in parallel with version 1.
Change History (46)
comment:1 by , 3 years ago
comment:2 by , 3 years ago
Hi Daniele, I think the first step for you can be to rebase your Django fork [1] with the official Django [2] repository and then open a PR from your psycopg3-support
branch to the Django main
branch.
[1] https://github.com/dvarrazzo/django/tree/psycopg3-support
[2] https://github.com/django/django
comment:3 by , 3 years ago
Cc: | added |
---|
comment:4 by , 3 years ago
Triage Stage: | Unreviewed → Accepted |
---|
Adding support for psycopg3 seems relevant since it has a stable release, so I'm tagging it as accepted.
comment:5 by , 3 years ago
Hello Paolo,
I have rebased my Django branch on current main in a new psycopg3-4.1 branch and I have made the django-psycopg3-backend almost compatible with it: there are a few issues described in this commit message, together with how to run tests.
comment:7 by , 3 years ago
Cc: | added |
---|
comment:8 by , 3 years ago
Cc: | added |
---|
comment:9 by , 3 years ago
Cc: | added |
---|
comment:10 by , 3 years ago
Cc: | added |
---|
comment:11 by , 3 years ago
Cc: | added |
---|
comment:12 by , 3 years ago
Cc: | added |
---|
comment:13 by , 3 years ago
Cc: | added |
---|
comment:14 by , 3 years ago
Cc: | added |
---|
comment:15 by , 3 years ago
Cc: | added |
---|
comment:16 by , 2 years ago
Cc: | added |
---|
comment:17 by , 2 years ago
Cc: | added |
---|
comment:18 by , 2 years ago
Cc: | added |
---|
comment:19 by , 2 years ago
Cc: | added |
---|
comment:20 by , 2 years ago
Given the CCs on this ticket I'd highly appreciate review and tests of the PR in https://github.com/django/django/pull/15687 -- remember the more reviews and tests we get the sooner this will get in :)
comment:21 by , 2 years ago
Cc: | added |
---|
comment:23 by , 2 years ago
Owner: | changed from | to
---|---|
Status: | new → assigned |
Assign to @apollo13 because he's working on this issue.
comment:27 by , 2 years ago
Cc: | added |
---|
comment:33 by , 2 years ago
Cc: | removed |
---|
Hello Paolo, thank you for looking into this.
Happy to give you my support, with explanations and eventual changes on the Psycopg side if needed.