summaryrefslogtreecommitdiff
path: root/django/db/backends/postgresql/features.py
AgeCommit message (Collapse)Author
2025-10-03Fixed #36623 -- Dropped support for PostgreSQL 14 and PostGIS 3.1.Mariusz Felisiak
2025-09-29Fixed #36277 -- Fixed DatabaseFeatures.supports_virtual_generated_columns on ↵arsalan64
PostgreSQL 18+.
2025-09-14Refs #27222 -- Refreshed GeneratedFields values on save() initiated update.Simon Charette
This required implementing UPDATE RETURNING machinery that heavily borrows from the INSERT one.
2025-09-05Fixed #36564 -- Changed DEFAULT_AUTO_FIELD from AutoField to BigAutoField.Tim Graham
2025-05-20Fixed #34262 -- Added support for AnyValue for SQLite, MySQL, Oracle, and ↵ontowhee
Postgresql 16+. Thanks Simon Charette for the guidance and review. Thanks Tim Schilling for the documentation review. Thanks David Wobrock for investigation and solution proposals.
2025-04-30Refs #36052, #32234 -- Removed create_test_table_with_composite_primary_key ↵Simon Charette
flag in favor of using CompositePrimaryKey. Now that Django properly supports creating models with composite primary keys, the tests should use a `CompositePrimaryKey` field instead of a feature flag to inline backend specific SQL for creating a composite PK. Specifcially, the inspectdb's test_composite_primary_key was adjusted to use schema editor instead of per-backend raw SQL.
2025-03-03Fixed #35444 -- Added generic support for Aggregate.order_by.Chris Muthig
This moves the behaviors of `order_by` used in Postgres aggregates into the `Aggregate` class. This allows for creating aggregate functions that support this behavior across all database engines. This is shown by moving the `StringAgg` class into the shared `aggregates` module and adding support for all databases. The Postgres `StringAgg` class is now a thin wrapper on the new shared `StringAgg` class. Thank you Simon Charette for the review.
2024-10-30Fixed #35856 -- Added QuerySet.explain() support for MEMORY/SERIALIZE option ↵Anthony Joseph
on PostgreSQL 17+.
2024-05-27Fixed #35479 -- Dropped support for PostgreSQL 13 and PostGIS 3.0.Mariusz Felisiak
2024-03-06Fixed #35021 -- Fixed capturing queries when using client-side parameters ↵Michail Chatzis
binding with psycopg 3+.
2024-03-01Refs #33497 -- Added connection pool support for PostgreSQL.Sarah Boyce
Co-authored-by: Florian Apolloner <florian@apolloner.eu> Co-authored-by: Ran Benita <ran@unusedvar.com>
2024-02-16Refs #34060 -- Fixed crash when filtering against literal JSON with psycopg2.Simon Charette
2024-02-15Fixed #34060 -- Fixed migrations crash when adding check constraints with ↵Albert Defler
JSONField __exact lookup on Oracle.
2023-11-02Refs #31300 -- Allowed testing GeneratedField without collation.Tim Graham
CockroachDB and Snowflake don't support it.
2023-10-30Refs #29850 -- Added exclusion support to window frames.Sarah Boyce
2023-10-30Fixed #34932 -- Restored varchar_pattern_ops/text_pattern_ops index creation ↵Tom Carrick
when deterministic collaction is set. Regression in f3f9d03edf17ccfa17263c7efa0b1350d1ac9278 (4.2) and 8ed25d65ea7546fafd808086fa07e7e5bb5428fc (5.0).
2023-09-26Fixed #34873 -- Added QuerySet.explain() support for GENERIC_PLAN option on ↵Mariusz Felisiak
PostgreSQL 16+.
2023-09-20Fixed #34851 -- Dropped support for PostgreSQL 12 and PostGIS 2.5.Mariusz Felisiak
2023-09-07Fixed #31300 -- Added GeneratedField model field.Jeremy Nauta
Thanks Adam Johnson and Paolo Melchiorre for reviews. Co-Authored-By: Lily Foote <code@lilyf.org> Co-Authored-By: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2023-07-19Fixed #34701 -- Added support for NULLS [NOT] DISTINCT on PostgreSQL 15+.Simon Charette
2023-05-12Fixed #470 -- Added support for database defaults on fields.Ian Foote
Special thanks to Hannes Ljungberg for finding multiple implementation gaps. Thanks also to Simon Charette, Adam Johnson, and Mariusz Felisiak for reviews.
2023-05-08Fixed #34544 -- Avoided DBMS_LOB.SUBSTR() wrapping with IS NULL condition on ↵Mariusz Felisiak
Oracle. Regression in 09ffc5c1212d4ced58b708cbbf3dfbfb77b782ca. Thanks Michael Smith for the report. This also reverts commit 1e4da439556cdd69eb9f91e07f99cf77997e70d2.
2023-01-27Refs #34255 -- Skipped test_group_by_nested_expression_with_params test on ↵Mariusz Felisiak
PostgreSQL when server-side binding cursors are used. Thanks Tim Graham for the review.
2022-12-28Fixed #14094 -- Added support for unlimited CharField on PostgreSQL.Adrian Torres
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2022-12-28Fixed #18468 -- Added support for comments on columns and tables.kimsoungryoul
Thanks Jared Chung, Tom Carrick, David Smith, Nick Pope, and Mariusz Felisiak for reviews. Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com> Co-authored-by: Nick Pope <nick@nickpope.me.uk>
2022-12-15Fixed #33308 -- Added support for psycopg version 3.Daniele Varrazzo
Thanks Simon Charette, Tim Graham, and Adam Johnson for reviews. Co-authored-by: Florian Apolloner <florian@apolloner.eu> Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
2022-06-01Fixed #32234 -- Made inspectdb inform about composite primary keys.Anv3sh
2022-05-19Fixed #33717 -- Dropped support for PostgreSQL 11.Mariusz Felisiak
2022-05-12Refs #27064 -- Added RenameIndex migration operation.David Wobrock
2022-05-04Fixed #33675 -- Dropped support for PostgreSQL 10 and PostGIS 2.4.Mariusz Felisiak
2022-04-11Fixed CVE-2022-28347 -- Protected QuerySet.explain(**options) against SQL ↵Mariusz Felisiak
injection on PostgreSQL.
2022-02-18Fixed #33379 -- Added minimum database version checks.Hasan Ramezani
Thanks Tim Graham for the review.
2022-02-07Refs #33476 -- Refactored code to strictly match 88 characters line length.Mariusz Felisiak
2022-02-07Refs #33476 -- Reformatted code with Black.django-bot
2022-01-19Fixed #31685 -- Added support for updating conflicts to QuerySet.bulk_create().sean_c_hsu
Thanks Florian Apolloner, Chris Jerdonek, Hannes Ljungberg, Nick Pope, and Mariusz Felisiak for reviews.
2021-10-28Fixed #33228 -- Changed value of ↵Chinmoy
BaseDatabaseFeatures.has_case_insensitive_like to False.
2021-10-01Refs #32943 -- Added support for covering SP-GiST indexes on PostgreSQL 14+.Nick Pope
2021-10-01Fixed #32961 -- Added BitXor() aggregate to django.contrib.postgres.Nick Pope
2021-08-24Refs #10929 -- Allowed NowUTC SQL customization for third-party backends.Tim Graham
2021-01-19Fixed #32357 -- Dropped support for PostgreSQL 9.6 and PostGIS 2.3.Mariusz Felisiak
2021-01-14Refs #26167 -- Changed default value of ↵Hannes Ljungberg
DatabaseFeatures.supports_expression_indexes to True.
2021-01-13Fixed #26167 -- Added support for functional indexes.Hannes Ljungberg
Thanks Simon Charette, Mads Jensen, and Mariusz Felisiak for reviews. Co-authored-by: Markus Holtermann <info@markusholtermann.eu>
2020-12-10Fixed #32178 -- Allowed database backends to skip tests and mark expected ↵Hasan Ramezani
failures. Co-authored-by: Tim Graham <timograham@gmail.com>
2020-10-21Fixed #32046 -- Added CreateCollation/RemoveCollation operations for PostgreSQL.Tom Carrick
2020-10-06Fixed #32073 -- Skipped collation tests on PostgreSQL < 10.Mariusz Felisiak
PostgreSQL < 10 doesn't support ICU collations. Thanks Hannes Ljungberg for the report.
2020-09-21Fixed #31777 -- Added support for database collations to Char/TextFields.Tom Carrick
Thanks Simon Charette and Mariusz Felisiak for reviews.
2020-09-18Refs #21181 -- Corrected DatabaseFeatures.test_collations for Swedish collation.Tom Carrick
Previously, backends used different keys "swedish-ci" or "swedish_ci".
2020-08-11Fixed #21181 -- Added Collate database function.Tom Carrick
Thanks Simon Charette for reviews.
2020-07-30Refs #31829 -- Added ↵Tim Graham
DatabaseFeatures.json_key_contains_list_matching_requires_list. CockroachDB's behavior matches PostgreSQL.
2020-07-28Refs #27996 -- Doc'd no extension required for RandomUUID() on PostgreSQL 13+.Nick Pope
https://www.postgresql.org/docs/13/functions-uuid.html https://www.postgresql.org/docs/13/pgcrypto.html#id-1.11.7.34.10.5