Markus Holtermann
1cb65b8a77
Fixed #26157 #25321 -- Added sql/params to extra context of schema logger
...
Thanks Akshesh Doshi for the initial patch and Tim Graham for the review
2016-03-15 17:45:58 +11:00
Claude Paroz
204e00c0c5
Fixed #26140 -- Suppressed MySQL warning when inserting binary content
...
Thanks Tim Graham for the review.
2016-03-14 18:08:13 +01:00
Marc Tamlyn
8ddc79a799
Fixed #26285 -- Deprecated the MySQL-specific __search lookup.
2016-03-02 14:41:56 -05:00
acrefoot
04240b2365
Refs #19527 -- Allowed QuerySet.bulk_create() to set the primary key of its objects.
...
PostgreSQL support only.
Thanks Vladislav Manchev and alesasnouski for working on the patch.
2016-03-02 14:29:09 -05:00
Matthew Schinckel
60633ef3de
Fixed #26304 -- Ignored unmanaged through model in table introspection.
2016-03-02 13:54:27 -05:00
Simon Charette
766afc22a1
Fixed #24793 -- Unified temporal difference support.
2016-02-26 12:25:12 -05:00
zshimanchik
65aa94200b
Fixed #24653 -- Fixed MySQL database introspection when using read_default_file.
2016-02-26 12:02:13 -05:00
Akshesh
fdccc02576
Fixed #26219 -- Fixed crash when filtering by Decimal in RawQuery.
2016-02-17 13:56:42 -05:00
Tim Graham
004ba0f99e
Removed unneeded hint=None/obj=None in system check messages.
2016-02-12 13:01:25 -05:00
Tim Graham
97eb3356b2
Fixed #26177 -- Fixed a PostgreSQL crash with TIME_ZONE=None and USE_TZ=False.
2016-02-08 07:21:54 -05:00
Pankrat
f91a04621e
Fixed #25833 -- Added support for non-atomic migrations.
...
Added the Migration.atomic attribute which can be set to False
for non-atomic migrations.
2016-02-05 09:09:05 -05:00
userimack
60586dd737
Fixed #26125 -- Fixed E731 flake warnings.
2016-01-25 14:23:43 -05:00
seungkwon
5925e20c37
Fixed typo in django/db/backends/sqlite3/operations.py.
2016-01-23 07:05:47 -05:00
Tim Graham
4dc74371e3
Removed unused attributes of MySQL SchemaEditor.
2016-01-22 12:46:27 -05:00
Aymeric Augustin
f91b5a7e4b
Fixed #26063 -- Crash when passing > 2000 params.
...
If SQLITE_MAX_VARIABLE_NUMBER (default = 999) is changed at compile time
to be greater than SQLITE_MAX_COLUMN (default = 2000), which Debian does
by setting the former to 250000, Django raised an exception on queries
containing more than 2000 parameters when DEBUG = True.
2016-01-21 10:47:15 +01:00
pp
b34ff66e5b
Added missing period to "etc.".
2016-01-11 18:05:15 -05:00
Curtis Maloney
3792e291e6
Removed use of locals for print formatting in Oracle backend.
2016-01-11 07:13:24 -05:00
Tim Graham
56aaae58a7
Fixed #26034 -- Fixed incorrect index handling on PostgreSQL on Char/TextField with unique=True and db_index=True.
...
Thanks Simon Charette for review.
2016-01-08 12:47:05 -05:00
Ville Skyttä
e6ca15c13f
Passed logging message parameters as arguments instead of interpolating them.
2015-12-26 18:35:42 -05:00
Alexander Sosnovskiy
2a7ce34600
Fixed #14286 -- Added models.BigAutoField.
2015-12-25 20:01:31 -05:00
Sergey Fedoseev
ed1bcf0515
Refs #25894 -- Fixed evaluation of zero-length slices of QuerySet.values() on Oracle.
2015-12-17 17:07:10 -05:00
Stewart Park
b7fdd60d85
Fixed #24675 -- Skipped SQL_AUTO_IS_NULL query on MySQL if not needed.
2015-12-15 10:30:57 -05:00
Federico Frenguelli
3a36c80795
Fixed #25412 -- Fixed missing PostgreSQL index on Char/TextField when using AlterField.
...
Thanks to Emanuele Palazzetti for the help.
2015-12-10 16:12:51 -05:00
George Marshall
710e11d076
Fixed #25767 -- Fixed data truncation possibility with Positive(Small)IntegerField on MySQL.
2015-11-24 11:09:15 -05:00
Tim Graham
abcdb237bb
Refs #25196 -- Fixed incorrect argument order in test database creation.
2015-11-13 11:29:35 -05:00
Tim Graham
0b5d32faca
Fixed #25611 -- Standardized descriptor signatures.
2015-10-26 11:31:16 -04:00
Mariusz Felisiak
0f6d51e6a0
Fixed #25470 -- Avoided unnecessary, expensive DATETIME typecast on MySQL.
2015-10-21 19:24:19 -04:00
Tim Graham
7a5b7e35bf
Fixed #22705 -- Fixed QuerySet.bulk_create() on models without any fields on Oracle.
...
Fixed on other backends by 134ca4d438
.
Thanks Mariusz Felisiak for the solution.
2015-10-09 14:16:06 -04:00
Riccardo Magliocchetti
3543fec3b7
Refs #12118 -- Allowed "mode=memory" in SQLite test database names.
2015-10-06 12:32:05 -04:00
Mariusz Felisiak
a3a6def867
Fixed #25421 -- Fixed test --keepdb option on Oracle.
2015-09-26 19:51:15 -04:00
Ville Skyttä
afe777639c
Fixed #25196 -- Normalized database representations in test database messages.
...
Left over Oracle mostly as-is since it's more complicated.
2015-09-25 10:21:55 -04:00
Alex Hill
134ca4d438
Fixed #24509 -- Added Expression support to SQLInsertCompiler
2015-09-22 23:35:24 +10:00
Hynek Cernoch
4b9d063da0
Refs #17785 -- Made docstring for sqlite3's get_relations() consistent with other backends.
2015-09-18 09:32:36 -04:00
Aymeric Augustin
4f6a7663bc
Refs #14091 -- Fixed connection.queries on SQLite.
2015-09-17 23:01:33 +02:00
Ville Skyttä
4d933ad418
Fixed #25393 -- Fixed MySQL crash when adding text/blob field with unhashable default.
2015-09-14 12:25:08 -04:00
Adam Chainz
b2f6e421a3
Fixed #25329 -- Prevented _nodb_connection from being left open
2015-09-11 08:40:43 +02:00
Aymeric Augustin
33c7c2a557
Enabled parallel testing by default in runtests.py.
2015-09-10 13:34:05 +02:00
Aymeric Augustin
05cea7fdbb
Changed database connection duplication technique.
...
This new technique is more straightforward and compatible with test
parallelization, where the effective database connection settings no
longer match settings.DATABASES.
2015-09-09 23:03:51 +02:00
Aymeric Augustin
0586c061f0
Cloned databases for running tests in parallel.
2015-09-09 23:01:15 +02:00
Aymeric Augustin
6d1110f2f0
Updated references to the TEST_* database settings.
...
They were removed in Django 1.9.
I could leave the reference to TEST_DEPENDENCIES in the 1.2.4 release
notes because the link points to the right location and the name was
accurate at the time.
2015-09-05 19:21:22 +02:00
Maxime Lorant
5153a3bfdc
Fixed #25331 -- Removed trailing blank lines in docstrings.
2015-08-31 17:37:21 -04:00
Caio Ariede
dad8434d6f
Fixed #25180 -- Prevented varchar_patterns_ops and text_patterns_ops indexes for ArrayField.
2015-08-15 10:02:08 -04:00
Caio Ariede
bcb4fe0012
Refs #25175 -- Added backwards compatibility for importing postgresql_psycopg2 backend.
2015-08-07 09:34:18 -04:00
Caio Ariede
ec9004728e
Fixed #25175 -- Renamed the postgresql_psycopg2 database backend to postgresql.
2015-08-07 09:33:17 -04:00
Tim Graham
c52822e750
Fixed #25128 -- Fixed SQLite SchemaEditor crash when adding a ForeignObject field.
2015-07-15 15:22:52 -04:00
Jean-Michel Vourgère
b64c0d4d61
Fixed #23658 -- Provided the password to PostgreSQL dbshell command
...
The password from settings.py is written in a temporary .pgpass file
file whose name is given to psql using the PGPASSFILE environment
variable.
2015-06-30 18:21:51 -04:00
Shai Berger
eecd42ea7d
Removed datetime_cast_sql, which is never overridden or used anywhere in Django.
...
Thanks Tim Graham for review.
2015-07-01 00:43:45 +03:00
Andreas Pelme
00a1d4d042
Fixed #21803 -- Added support for post-commit callbacks
...
Made it possible to register and run callbacks after a database
transaction is committed with the `transaction.on_commit()` function.
This patch is heavily based on Carl Meyers django-transaction-hooks
<https://django-transaction-hooks.readthedocs.org/ >. Thanks to
Aymeric Augustin, Carl Meyer, and Tim Graham for review and feedback.
2015-06-30 14:51:00 -04:00
Greg Chapple
4a66a69239
Fixed #24887 -- Removed one-arg limit from models.aggregate
2015-06-27 11:44:33 -04:00
Simon Charette
bdb382b2a4
Refs #25002 -- Supported textual to temporal column alteration on Oracle.
...
Thanks to Tim Graham for the report and Shai Berger for the review.
2015-06-24 19:37:55 -04:00
Tim Graham
aaacaeb096
Renamed RemovedInDjangoXYWarnings for new roadmap.
...
Forwardport of ae1d663b79
from stable/1.8.x plus more.
2015-06-24 16:08:20 -04:00
Simon Charette
73040e584a
Fixed #25002 -- Used PostgreSQL column type alteration USING clause.
...
Thanks to Dirk Uys for the report.
2015-06-22 09:35:35 -04:00
Shai Berger
abd7e48af7
Changed Oracle's test-database-creation to use an explicit main-db-connection
...
rather than just relying on manipulation of settings to determine which
invocation of connection.cursor() opens a connection to the test database
and which opens a connection to the main database.
Thanks Aymeric Augustin for motivation and Tim Graham for review.
2015-06-20 23:48:18 +03:00
Daniel Wiesmann
b769bbd4f6
Fixed #23804 -- Added RasterField for PostGIS.
...
Thanks to Tim Graham and Claude Paroz for the reviews and patches.
2015-06-19 14:36:43 -04:00
Tim Graham
7f1168e387
Removed support for Python 3.3.
2015-06-18 08:36:50 -04:00
Adam Brenecki
65296b3be3
Fixed #24972 -- Fixed removing unique_together indexes on MySQL.
2015-06-15 17:28:13 -04:00
Tim Graham
47fcbe506c
Fixed flake8 warnings on Python 3.
2015-06-15 11:27:09 -04:00
Sagar Mittal
e5033dcbba
Imported sqlite3 instead of _sqlite3
...
adapt and ProgrammingError are both available on the
sqlite3 module. There's no need to import the internal
_sqlite3 module.
2015-06-06 11:35:02 -04:00
Ian Foote
4ab53a558a
Fixed #24767 -- Added Greatest and Least expressions
...
Greatest and Least are row-level Function versions of Min and Max.
2015-06-05 11:15:33 +01:00
Shai Berger
35291df7f7
Fixed #19542 : Made mirroring databases for tests work with Oracle
...
No tests are provided because there is no sane way to test database
settings within the Django test suite.
Thanks Aymeric Augustin for review.
2015-06-05 12:29:15 +03:00
Matthew Somerville
2dc93bb10a
Fixed #22316 -- Added time filters to TimeField on SQLite.
...
This was implemented for non-SQLite backends in 1.7 (as a
side effect of #16187 ).
2015-06-04 22:27:13 -04:00
Tim Graham
e1e6399c2c
Fixed #24893 -- Fixed lack of unique constraint when changing a field from primary_key=True to unique=True
2015-06-02 09:25:47 -04:00
Tim Graham
5ab8680983
Fixed #24892 -- Fixed quoting of SQL when renaming a field to AutoField in PostgreSQL
2015-06-02 09:13:55 -04:00
Jon Dufresne
44f3ee7716
Fixed #9596 -- Added date transform for DateTimeField.
2015-06-02 08:49:10 -04:00
Josh Smeaton
c7805ee214
Fixed #24699 -- Added aggregate support for DurationField on Oracle
2015-05-30 20:41:33 -04:00
Adam Chainz
e60cce4e40
Fixed #24846 -- Added support to MySQL SchemaEditor for all blob/text data types
2015-05-30 20:37:57 -04:00
Andriy Sokolovskiy
80ad5472ce
Fixed #24817 -- Prevented loss of null info in MySQL field renaming.
2015-05-28 10:07:52 -04:00
Florian Apolloner
92f37e5f5f
Well, what should I say: UPS.
2015-05-24 17:33:44 +02:00
Andrea Grandi
43b2d88a5b
Fixed #24844 -- Corrected has_changed implementation for HStoreField.
2015-05-24 17:32:16 +02:00
Aymeric Augustin
da2c6959c8
Dropped the needs_datetime_string_cast feature.
...
It has been superseded by the converter infrastructure.
2015-05-17 10:23:13 +02:00
Aymeric Augustin
ed83881e64
Fixed #23820 -- Supported per-database time zone.
...
The primary use case is to interact with a third-party database (not
primarily managed by Django) that doesn't support time zones and where
datetimes are stored in local time when USE_TZ is True.
Configuring a PostgreSQL database with the TIME_ZONE option while USE_TZ
is False used to result in silent data corruption. Now this is an error.
2015-05-17 09:40:28 +02:00
Aymeric Augustin
54026f1e8d
Renamed value_to_db_xxx to adapt_xxxfield_value.
...
This mirrors convert_xxxfield_value nicely, taking advantage of the
adapter/converter terminology which is commonly used by DB-API modules.
2015-05-17 09:39:34 +02:00
Aymeric Augustin
d9521f66b1
Removed global timezone-aware datetime adapters.
...
Refs #23820 .
Fixed #19738 .
Refs #17755 . In order not to introduce a regression for raw queries,
parameters are passed through the connection.ops.value_to_db_* methods,
depending on their type.
2015-05-17 09:38:48 +02:00
Aymeric Augustin
fe6b5e62b1
Normalized the implementation of get_db_converters.
...
Put the types in the same order and checked for None consistently.
2015-05-17 09:36:27 +02:00
Aymeric Augustin
ec186572e6
Removed global timezone-aware datetime converters.
...
Refs #23820 .
2015-05-17 09:36:23 +02:00
Claude Paroz
3226050358
Fixed #24791 -- Added fallback when 'postgres' database isn't available
...
Thanks Carl Meyer and Tim Graham for the reviews.
2015-05-15 18:44:20 +02:00
Claude Paroz
ae635cc365
Fixed #24757 -- Recreated MySQL index when needed during combined index removal
...
Thanks Thomas Recouvreux for the report and Tim Graham for the tests and
review.
2015-05-15 17:07:14 +02:00
Milan Broum
95058606c8
Allowed using the sqlite3 backend as much as possible without _sqlite3.
...
The inner import was dropped during the reorganizing of the database
backends in commit 28308078f3
.
2015-05-04 12:59:59 -04:00
Tim Graham
2d76b61dc2
Fixed #24649 -- Allowed using Avg aggregate on non-numeric field types.
2015-04-25 13:06:14 -04:00
Tim Graham
26996e2d55
Fixed #24499 -- Dropped support for PostGIS 1.5.
2015-04-25 12:21:16 -04:00
Claude Paroz
8097e54832
Fixed #23879 -- Allowed model migration skip based on feature/vendor
...
Thanks Carl Meyer for the report and review, and Tim Graham for the
review.
2015-04-18 15:17:49 +02:00
Claude Paroz
02260ea3f6
Fixed #24595 -- Prevented loss of null info in MySQL field alteration
...
Thanks Simon Percivall for the report, and Simon Charette and Tim
Graham for the reviews.
2015-04-17 10:25:15 +02:00
peterfarrell
f8e8853b51
Fixed #24637 -- Fixed database introspection with SQLite 3.8.9.
2015-04-14 11:29:59 -04:00
Jon Dufresne
2cf58e80d1
Fixed #24584 -- Fixed microsecond handling with older MySQLdb
2015-04-06 22:43:51 +02:00
Alex Hill
07ba148d9e
Cleaned up use of context manager in SQLite schema editor
2015-04-03 09:13:55 -04:00
Andriy Sokolovskiy
29b4a3f513
Removed duplicate attribute in MySQL DatabaseSchemaEditor.
2015-03-30 19:23:41 -04:00
Simon Charette
dc27f3ee0c
Fixed #19259 -- Added group by selected primary keys support.
2015-03-29 22:03:30 -04:00
Andrei Kulakov
e2bfcab065
Fixed #24394 -- Allowed running tests with empty default dictionary.
2015-03-25 17:56:59 -04:00
Anssi Kääriäinen
8f30556329
Renamed Field.rel attribute to remote_field
...
Field.rel is now deprecated. Rel objects have now also remote_field
attribute. This means that self == self.remote_field.remote_field.
In addition, made the Rel objects a bit more like Field objects. Still,
marked ManyToManyFields as null=True.
2015-03-25 08:16:12 -04:00
Tim Graham
13bc311cdb
Removed getLogger alias in django.utils.log.
2015-03-24 08:41:05 -04:00
Claude Paroz
01ec127bae
Fixed #12400 -- Allowed geometry fields in unique_together
...
Thanks Tim Graham for the review.
2015-03-23 19:52:49 +01:00
Alex Hill
880393a902
Explicitly disable FK constraints in SQLite editor
2015-03-21 10:31:07 +01:00
Alex Hill
6c58e53d5d
Safer table alterations under SQLite
...
Table alterations in SQLite require creating a new table and copying
data over from the old one. This change ensures that no Django model
ever exists with the temporary table name as its db_table attribute.
2015-03-21 10:31:07 +01:00
Jean-Louis Fuchs
f4f0060fea
Fixed #24447 -- Made migrations add FK constraints for existing columns
...
When altering from e.g. an IntegerField to a ForeignKey, Django didn't
add a constraint.
2015-03-07 14:09:56 +01:00
Tim Graham
4e8b167e4d
Fixed MySQL build failure introduced by refs #24390 .
...
Added table_name back to _create_index_sql() to prevent
duplicate index names on MySQL.
2015-03-02 13:07:34 -05:00
László Károlyi
f37c11eea3
Fixed #24390 -- Made migration index names deterministic.
2015-03-02 09:25:19 -05:00
Michael Manfre
7fa7dd48c4
Fixed signature of BaseDatabaseOperations.date_interval_sql() and document the change.
2015-02-22 23:23:16 -05:00
Loic Bistuer
bed504d70b
Fixed #24351 , #24346 -- Changed the signature of allow_migrate().
...
The new signature enables better support for routing RunPython and
RunSQL operations, especially w.r.t. reusable and third-party apps.
This commit also takes advantage of the deprecation cycle for the old
signature to remove the backward incompatibility introduced in #22583 ;
RunPython and RunSQL won't call allow_migrate() when when the router
has the old signature.
Thanks Aymeric Augustin and Tim Graham for helping shape up the patch.
Refs 22583.
2015-02-20 21:34:09 +07:00
Marc Tamlyn
32d4db66b9
Update converters to take a consistent set of parameters.
...
As suggested by Anssi. This has the slightly strange side effect of
passing the expression to Expression.convert_value has the expression
passed back to it, but it allows more complex patterns of expressions.
2015-02-20 11:35:52 +00:00
Shai Berger
ceadc94f09
Fixed #24307 : Avoided redundant column nullability modifications on Oracle
...
Thanks Joris Benschop for the report, and Tim Graham for the tests.
2015-02-19 02:39:41 +02:00
Adam Chainz
e9282747a4
Removed unused foreign_key_re variables in MySQL/Oracle DB backends
2015-02-18 10:22:30 -05:00
Tim Graham
63c5c98701
Refs #24324 -- Fixed UnicodeEncodeError in SQLite backend while testing.
...
If 'name' contained non-ASCII characters, the comparison raised a
UnicodeEncodeError on Python 2.
2015-02-17 08:09:46 -05:00
Tim Graham
3adc5f1ee6
Fixed #24335 -- Bumped required psycopg2 version to 2.4.5 (2.5 for contrib.postgres).
2015-02-16 18:07:27 -05:00
Aymeric Augustin
a73c8540a8
Removed 'autocommit' options for the psycopg2 backend.
...
It was documented as not having any effect since Django 1.6.
2015-02-14 18:51:18 +01:00
Aymeric Augustin
28e97a9bdc
Cleaned up init_connection_state in the psycopg2 backend.
...
settings_dict['TIME_ZONE'] is set in ConnectionHandler.ensure_defaults.
2015-02-14 18:51:18 +01:00
Aymeric Augustin
76356d963c
Fixed #24318 -- Set the transaction isolation level with psycopg >= 2.4.2.
2015-02-14 18:51:11 +01:00
Josh Smeaton
e2d6e14662
Refs #14030 -- Improved expression support for python values
2015-02-12 08:46:25 +11:00
Josh Smeaton
1fbe8a2de3
Fixed #24200 -- Made introspection bypass statement cache
2015-02-10 23:24:34 +02:00
Loic Bistuer
c8e24bbc9b
Fixed isort import that's inconsistent between platforms.
2015-02-11 02:24:14 +07:00
я котик пур-пур
981bd64dfb
Unified local imports in django.db.backends.mysql.
2015-02-09 08:23:17 -05:00
Collin Anderson
db77915c9f
Fixed E265 comment style
2015-02-06 09:30:35 -05:00
Tim Graham
0ed7d15563
Sorted imports with isort; refs #23860 .
2015-02-06 08:16:28 -05:00
Tim Graham
75303b01a9
Fixed #24245 -- Added introspection for database defaults.
...
Needed for tests for migrations handling of database defaults.
2015-01-31 12:33:11 -05:00
Tim Graham
64a899dc81
Removed PostgreSQL DatabaseWrapper._set_isolation_level().
...
This method is unused since 8717b0668c
.
2015-01-31 11:05:26 -05:00
Tim Graham
29c0073335
Fixed #24164 -- Fixed Oracle GIS limited aggregation test failure.
2015-01-30 06:28:47 -05:00
Tim Graham
18f3e79b13
Removed threading fallback imports.
...
Django imports threading in many other places without fallback.
2015-01-28 10:23:25 -05:00
Josh Smeaton
8196e4bdf4
Fixed #24154 -- Backends can now check support for expressions
2015-01-27 12:20:06 +11:00
Andriy Sokolovskiy
38c17871bb
Fixed #24104 -- Fixed check to look on field.many_to_many instead of class instance
2015-01-22 18:41:19 +01:00
Adam Taylor
039465a6a7
Fixed typos in code comments.
2015-01-20 12:18:03 -05:00
Markus Holtermann
5792e6a88c
Fixed #24163 -- Removed unique constraint after index on MySQL
...
Thanks Łukasz Harasimowicz for the report.
2015-01-19 16:52:26 +01:00
Tim Graham
2b039d966f
Removed obsolete SQL generation methods.
2015-01-18 15:58:06 -05:00
Tim Graham
7e8cf74dc7
Removed support for syncing apps without migrations per deprecation timeline.
...
Kept support for creating models without migrations when running tests
(especially for Django's test suite).
2015-01-18 15:58:06 -05:00
Tim Graham
3b570dbcdb
Removed BaseDatabaseValidation.validate_field() per deprecation timeline.
2015-01-17 14:58:09 -05:00
Tim Graham
b845951fd4
Required sqlparse for SQL splitting per deprecation timeline.
2015-01-17 10:20:30 -05:00
Tim Graham
4aa089a9a9
Removed support for custom SQL per deprecation timeline.
2015-01-17 10:16:06 -05:00
Tim Graham
f6463bb380
Removed the syncdb command per deprecation timeline.
2015-01-17 09:20:12 -05:00
Tim Graham
9ce36512fa
Removed backwards compatibility shims for "util" modules per deprecation timeline.
...
refs #17627 .
2015-01-17 07:40:12 -05:00
Marc Tamlyn
39d95fb6ad
Fixed #24092 -- Widened base field support for ArrayField.
...
Several issues resolved here, following from a report that a base_field
of GenericIpAddressField was failing.
We were using get_prep_value instead of get_db_prep_value in ArrayField
which was bypassing any extra modifications to the value being made in
the base field's get_db_prep_value. Changing this broke datetime
support, so the postgres backend has gained the relevant operation
methods to send dates/times/datetimes directly to the db backend instead
of casting them to strings. Similarly, a new database feature has been
added allowing the uuid to be passed directly to the backend, as we do
with timedeltas.
On the other side, psycopg2 expects an Inet() instance for IP address
fields, so we add a value_to_db_ipaddress method to wrap the strings on
postgres. We also have to manually add a database adapter to psycopg2,
as we do not wish to use the built in adapter which would turn
everything into Inet() instances.
Thanks to smclenithan for the report.
2015-01-16 16:15:16 -05:00
Claude Paroz
67bcae1e58
Moved check_aggregate_support to BaseSpatialOperations
2015-01-14 22:03:41 +01:00
Tim Graham
28308078f3
Fixed #22603 -- Reorganized classes in django.db.backends.
2015-01-14 14:16:20 -05:00
Michał Modzelewski
65246de7b1
Fixed #24031 -- Added CASE expressions to the ORM.
2015-01-12 18:15:34 -05:00
Shai Berger
aa8ee6a573
Fixed test failures in Oracle introspection
...
Refs #17785
2015-01-13 01:00:09 +02:00
Josh Smeaton
21b858cb67
Fixed #24060 -- Added OrderBy Expressions
2015-01-13 09:39:55 +11:00
Claude Paroz
4c413e231c
Fixed #17785 -- Preferred column names in get_relations introspection
...
Thanks Thomas Güttler for the report and the initial patch, and
Tim Graham for the review.
2015-01-12 19:58:47 +01:00
Claude Paroz
68a439a18d
Removed supports_binary_field flag as all backends support them
...
It was mainly for MySQL on Python 3, but now the current
recommended MySQL driver for Python 3 (mysqlclient) does support
binary fields, it is unneeded. Refs #20377 .
2015-01-11 23:34:47 +01:00
Claude Paroz
7289d01973
Introspected alternate SQLite FK definitions
2015-01-10 16:51:14 +01:00
Anssi Kääriäinen
0c7633178f
Fixed #24020 -- Refactored SQL compiler to use expressions
...
Refactored compiler SELECT, GROUP BY and ORDER BY generation.
While there, also refactored select_related() implementation
(get_cached_row() and get_klass_info() are now gone!).
Made get_db_converters() method work on expressions instead of
internal_type. This allows the backend converters to target
specific expressions if need be.
Added query.context, this can be used to set per-query state.
Also changed the signature of database converters. They now accept
context as an argument.
2015-01-08 14:07:54 -05:00
Daniel Pyrathon
fb48eb0581
Fixed #12663 -- Formalized the Model._meta API for retrieving fields.
...
Thanks to Russell Keith-Magee for mentoring this Google Summer of
Code 2014 project and everyone else who helped with the patch!
2015-01-06 19:25:12 -05:00
Tim Graham
478d6a9503
Copied BaseDatabaseCreation._digest() to SchemaEditor to remove dependency.
...
refs #22340 .
2014-12-31 08:33:34 -05:00
Tim Graham
93d73dac91
Moved DatabaseCreation.data_types properties to DatabaseWrapper.
...
refs #22340 .
2014-12-31 08:29:17 -05:00
Tim Graham
8082c75d18
Removed db.backends methods which only call super().
2014-12-30 11:53:59 -05:00
Andriy Sokolovskiy
8c99b7920e
Fixed #12118 -- Added shared cache support to SQLite in-memory testing.
2014-12-30 10:14:33 -05:00
Tim Graham
ab4f709da4
Fixed #23581 -- Prevented extraneous DROP DEFAULT statements.
...
Thanks john_scott for the report and Markus Holtermann for review.
2014-12-30 07:54:05 -05:00
Claude Paroz
3c5d1edb39
Fixed #22279 -- Prevented dummy backend going through DatabaseErrorWrapper
...
Thanks Daniel Hahler for the report and Tim Graham for the review.
2014-12-29 19:06:28 +01:00
Claude Paroz
2ceb10f3b0
Fixed #14180 -- Prevented unneeded index creation on MySQL-InnoDB
...
Thanks zimnyx for the report and Simon Charette, Tim Graham for
the reviews.
2014-12-27 12:52:44 +01:00
Josh Smeaton
4718296546
Fixed #23753 -- Added a suite of SQL Functions
...
Added functions and tests
Added docs and more tests
Added TextField converter to mysql backend
Aliased Value as V in example docs and tests
Removed unicode_compatible in example
Fixed console emulation in examples
2014-12-27 15:27:27 +11:00
Claude Paroz
30cbd5d360
Replaced DatabaseCreation sql methods by schema editor equivalents
...
Also used schema editor in migrate to sync unmigrated apps (sync_apps).
Refs #22340 . Thanks Tim Graham for the review.
2014-12-23 19:35:01 +01:00
Anssi Kääriäinen
227a4c48be
Refs #2443 -- fixed format_dtdelta on SQLite
...
A test failed on Python 2 32-bit.
2014-12-23 07:05:44 -05:00
Marc Tamlyn
962bb9b6bd
Refs #2443 -- Move the durationfield converter logic.
...
This reduces how frequently this logic is run significantly.
Thanks to Anssi for the suggestion.
2014-12-23 10:41:42 +00:00
Marc Tamlyn
5ca82e710e
Fixed #24033 -- Use interval type on Oracle.
...
Use INTERVAL DAY(9) TO SECOND(6) for Durationfield on Oracle rather than
storing as a NUMBER(19) of microseconds.
There are issues with cx_Oracle which require some extra data
manipulation in the database backend when constructing queries, but it
handles the conversion back to timedelta objects cleanly.
Thanks to Shai for the review.
2014-12-23 10:38:32 +00:00
Marc Tamlyn
07728a2c2c
Refs #2443 -- Fix Oracle tests for DurationField.
...
It helps if there are the correct number of microseconds in a second.
2014-12-20 22:04:07 +00:00
Marc Tamlyn
57554442fe
Fixed #2443 -- Added DurationField.
...
A field for storing periods of time - modeled in Python by timedelta. It
is stored in the native interval data type on PostgreSQL and as a bigint
of microseconds on other backends.
Also includes significant changes to the internals of time related maths
in expressions, including the removal of DateModifierNode.
Thanks to Tim and Josh in particular for reviews.
2014-12-20 18:28:29 +00:00
Andriy Sokolovskiy
089047331d
Fixed #23987 -- Made SQLite SchemaEditor always use effective_default().
2014-12-15 13:40:24 -05:00
Shai Berger
7c1f3901bc
Fixed #23991 -- Apparently, Oracle doesn't need the decimal field converter
...
Thanks Josh Smeaton for review.
2014-12-15 00:07:10 +02:00
Claude Paroz
df30ae07fc
Fixed postgis test database initialization
...
Refs #20968 . Allow querying template_postgis presence without
existing test database.
Thanks Tim Graham for the review.
2014-12-12 20:08:07 +01:00
Josh Smeaton
267a1dcd9b
Fixed #23941 -- Removed implicit decimal formatting from expressions.
2014-12-12 10:17:48 -05:00
Claude Paroz
8f97413fae
Fixed #20968 -- Checked Spatialite metadata before migrations
...
Thanks Kenial S. Lee for the initial patch and Tim Graham for
the review.
2014-12-08 22:22:53 +01:00
Jon Dufresne
4468c08d70
Fixed #23968 -- Replaced list comprehension with generators and dict comprehension
2014-12-08 07:58:23 -05:00
Claude Paroz
8d7a48027e
Fixed #23954 -- Added special text/varchar PostgreSQL indexes in migrations
...
Thanks adityagupta104 for the report and Tim Graham for the review.
2014-12-04 21:27:42 +01:00
Tim Graham
765fa36d57
Fixed #23920 -- Fixed MySQL crash when adding blank=True to TextField.
...
Thanks wkornewald for the report and Markus Holtermann for review.
2014-12-04 10:57:10 -05:00
Andriy Sokolovskiy
1739ae9edc
Fixed #23807 -- Ignored non-digits in psycopg2 version
2014-12-01 18:42:08 -05:00
Claude Paroz
e11c6fd218
Fixed #23909 -- Prevented crash when collecting SQL for RunSQL
...
Thanks James Rivett-Carnac for the report and Markus Holtermann
for the review.
2014-12-01 20:26:40 +01:00
Markus Holtermann
d2202ec2d4
Fixed #23880 -- Added missing index_together handling for SQLite
2014-12-01 11:30:33 +07:00
Thomas Chaumeny
6b5d82749c
Fixed #16731 -- Made pattern lookups work properly with F() expressions
2014-11-28 12:50:42 +02:00
Anssi Kääriäinen
cbb5cdd155
Fixed #23867 -- removed DateQuerySet hacks
...
The .dates() queries were implemented by using custom Query, QuerySet,
and Compiler classes. Instead implement them by using expressions and
database converters APIs.
2014-11-26 17:49:25 -05:00
Collin Anderson
d4ea4eea79
Fixed #23889 -- Added more usage of quote_name_unless_alias() to avoid deprecation warnings.
2014-11-21 16:44:50 -05:00
Brad Walker
cfa26f29bd
Reduced reduce() usage; refs #23796 .
...
django.core.exceptions.ValidationError.messages() and
django.db.backends.schema.BaseDatabaseSchemaEditor._alter_field():
Replaced reduce(operator.add, ...) w/uncoupled, explicit sum()
2014-11-20 14:31:14 -05:00
Claude Paroz
1a63093e22
Added AutoField introspection for PostgreSQL
...
Refs #23748 .
2014-11-20 16:13:58 +01:00
Claude Paroz
11662022be
Added AutoField introspection for MySQL
...
Refs #23748 .
2014-11-20 16:13:58 +01:00
Tim Graham
5bcd292098
Fixed #23871 -- Removed promotion of MySQL warnings to errors in DEBUG mode.
2014-11-19 16:07:49 -05:00
Josh Smeaton
f59fd15c49
Fixed #14030 -- Allowed annotations to accept all expressions
2014-11-15 14:00:43 +00:00
Thomas Chaumeny
88b2a20f04
Simplified MySQL storage engine detection using INFORMATION_SCHEMA.ENGINES table
...
Query the table introduced in MySQL 5.1; refs #23144 .
2014-11-10 18:16:14 +01:00
Markus Holtermann
715ccfde24
Fixed #23738 -- Allowed migrating from NULL to NOT NULL with the same default value
...
Thanks to Andrey Antukh for the report.
2014-10-31 13:30:30 -04:00
Claude Paroz
713f23492a
Required MySQLdb >= 1.2.5 for fractional seconds support
...
On MySQLdb < 1.2.5, MySQLdb returns None when fetching datetime/time
values with fractional seconds.
See https://github.com/farcepest/MySQLdb1/issues/24
2014-10-28 15:06:58 +01:00
Claude Paroz
22da5f8817
Fixed #19716 -- Added support for microseconds with MySQL 5.6.4 and up
...
Thanks erik@cederstrand.dk for the report and Tim Graham for the review.
2014-10-28 15:06:58 +01:00
Claude Paroz
9e746c13e8
Stopped stripping microseconds with MySQL backend
...
Refs #19716 .
2014-10-28 15:06:57 +01:00
Claude Paroz
5b8e37a69e
Fixed typo in MySQL backend doctring
...
Thanks CHI Cheng for the report.
2014-10-27 14:01:12 +01:00
Mikhail Denisenko
d4bc0bf435
Fixed #22879 -- Intercept errors coming from cursor.__next__()
2014-10-27 14:51:40 +02:00
Claude Paroz
7f089ac2e3
Fixed #23446 -- Officially recommended mysqlclient as MySQL driver
...
Thanks Corey Farwell for the report and Tim Graham for the review.
Thanks also to Inada Naoki for creating and maintaining mysqlclient.
2014-10-27 09:11:33 +01:00
Claude Paroz
45db842c9b
Fixed #23652 -- Restored database name after destroying test database
...
Thanks Bjarkias for the report.
2014-10-24 17:04:43 +02:00
Tim Graham
92269b7b53
Fixed #23702 -- Fixed adding an explicit id field on SQLite.
...
Thanks gavinwahl for the report.
2014-10-23 12:24:34 -04:00
Shai Berger
2e1ed5f33c
Fixed #23649 -- Made Oracle test-db creation drop test-user earlier when needed
...
Checked database destruction for ORA-29857, which happens when objects of
some types are left over in an old test database (notably, such objects
are created by the GIS backend). When this happens, we can resolve the
issue by dropping the test-user (if we are allowed to).
An alternative approach, to just switch the order of creation (so that,
if the test user exists and can be dropped, it is always dropped before
the tablespace) was considered; but since the user creation depends on
the tablespace, this would necessitate separating the dropping of the user
from its creation -- a change I am reluctant to make.
Thanks Josh Smeaton and Tim Graham for reviews.
2014-10-17 04:46:15 +03:00
Collin Anderson
a6a8268d19
Fixed #23660 -- Moved sort_dependencies to core.
2014-10-16 03:04:13 +07:00
Markus Holtermann
f633ba778d
Fixed #23609 -- Fixed IntegrityError that prevented altering a NULL column into a NOT NULL one due to existing rows
...
Thanks to Simon Charette, Loic Bistuer and Tim Graham for the review.
2014-10-09 21:32:06 +07:00
Thomas Chaumeny
b2aad7b836
Replaced set([foo, ...]) by {foo, ...} literals. Refs PR 3282.
...
Thanks Collin Anderson for the review.
2014-09-29 00:01:38 +07:00
Shai Berger
a54adcecff
Fixed git blunder, refs #22738
2014-09-27 09:57:09 +03:00
Shai Berger
c1ae0621ba
Fixed #22738 -- made finer distinctions for when Boolean is not detected on Oracle
...
Thanks Claude Paroz for partial fix and Simon Charrette for review
2014-09-27 09:49:50 +03:00
Claude Paroz
dbdae3a755
Fixed #22738 -- Abstracted boolean field type introspection
...
Thanks maxi for the report, Shai Berger for his help with the patch
and Tim Graham for the review.
2014-09-26 20:03:44 +02:00
Claude Paroz
d1ca70110f
Factorized schema_editor() at BaseDatabaseWrapper level
2014-09-26 08:50:16 +02:00
Tim Graham
74e7f91e6d
Fixed #23538 -- Added SchemaEditor for MySQL GIS.
...
Thanks Claude Paroz for suggestions and review.
2014-09-25 13:53:44 -04:00
Tim Graham
0aca91cf7f
Fixed flake8 warnings.
2014-09-24 06:32:42 -04:00
Shai Berger
d128eac316
Changed Oracle test-user creation to grant privileges instead of roles
...
because the roles (specifically RESOURCE) are deprecated.
Also added optional support for creating views in tests, and made an
introspection test fail (rather than skip) if a view cannot be created
due to lacking privileges.
Refs #18782
Thanks Tim Graham for review, and Josh Smeaton
2014-09-24 04:58:33 +03:00
Claude Paroz
ed297061a6
Fixed #18782 -- Prevented sql_flush to flush views
...
Thanks rodolfo_3 for the report and the initial patch, and
Josh Smeaton, Shai Berger and Tim Graham for the reviews.
2014-09-23 20:13:31 +02:00
Claude Paroz
b8cdc7dcc3
Made get_table_list return a TableInfo named tuple
2014-09-23 20:13:31 +02:00
Sergey Fedoseev
463952d940
Fixed #23503 -- Fixed renaming of model with self-referential m2m field.
2014-09-23 10:03:37 -04:00
Sergey Fedoseev
83cd18633f
Fixed #23065 -- Quoted constraint names in SQL generated by migrations.
2014-09-23 09:25:31 -04:00
Sergey Fedoseev
0bea6c8749
Factored create_fk_sql, create_unique_sql, and delete_constraint_sql.
2014-09-23 09:24:32 -04:00
Josh Smeaton
0eb5cde9da
Fixed #21775 -- Allowed customization of datafile for Oracle tablespace
2014-09-17 09:55:33 -04:00
Marc Tamlyn
ed7821231b
Fixed #19463 -- Added UUIDField
...
Uses native support in postgres, and char(32) on other backends.
2014-09-16 10:08:09 +01:00
Claude Paroz
6072f17d09
Factorized create_index_sql expression
2014-09-13 21:34:37 +02:00
Josh Smeaton
638d1393ee
Fixed #23434 -- Coerce Oracle bool params to int
2014-09-08 10:11:20 -04:00
Marc Tamlyn
14c8456ffe
Fixed #23416 -- Make sure DatabaseCreation respects checks.
...
Migrations respected Field.db_parameters()['check'], but
DatabaseCreation was still using just Field.db_type().
2014-09-06 19:01:06 +01:00
Tim Graham
1101467ce0
Limited lines to 119 characters in django/
...
refs #23395 .
2014-09-05 09:22:16 -04:00
Marc Tamlyn
e9103402c0
Fixed #18757 , #14462 , #21565 -- Reworked database-python type conversions
...
Complete rework of translating data values from database
Deprecation of SubfieldBase, removal of resolve_columns and
convert_values in favour of a more general converter based approach and
public API Field.from_db_value(). Now works seamlessly with aggregation,
.values() and raw queries.
Thanks to akaariai in particular for extensive advice and inspiration,
also to shaib, manfre and timograham for their reviews.
2014-09-03 20:36:03 +01:00
Jon Dufresne
f0d3dd4f04
Fixed #23357 -- Added small int introspection support to MySQL backend.
...
In the MySQL backend, updated the can_introspect_small_integer feature
flag to True. In data_types_reverse, map FIELD_TYPE.SHORT to a
SmallIntegerField. Added test to verify introspecting SmallIntegerFields
and fixed existing tests influenced by this change.
2014-08-27 10:58:44 -04:00
Shai Berger
4c85a0d95f
Made main user disconnect after creating test user/tablespaces on Oracle
2014-08-25 20:20:10 +03:00
Shai Berger
a6222af0ed
Added docstring forgotten in 56252e7
.
2014-08-22 05:37:36 +03:00
Shai Berger
56252e7f46
Fixed schema test for Oracle 11.2.0.1 which is used in Django Project's CI.
...
Refs #23073 Workaround.
Refs #22738 Repeats the mysql "offense". When the issue is solved, the
Oracle special case should be made to play with the solution (that is,
Oracle should be fixed the same way that mysql and the 3rd-party backneds
are).
2014-08-22 05:08:53 +03:00
Claude Paroz
6295ea0027
Replaced HAS_SPATIAL_DB by testing database feature
...
Refs #22632 . This should be the base for using more database
features to exclude specific backends in GIS tests.
Thanks Tim Graham for the review.
2014-08-19 17:57:01 +02:00
zsoldosp
01801edd37
Fixed #22646 : Added support for the MySQL ssl-ca option to dbshell.
2014-08-13 18:29:42 -04:00
Florian Apolloner
61d783f3d7
Made sqlite's remove_field behave like the base backend.
2014-08-10 13:31:06 +02:00
Claude Paroz
dc462a8ed5
Removed unused migrate option
2014-08-09 17:13:00 +02:00
Andrew Godwin
27b6f28435
Fixed #23264 : Schema backends honour db_constraint
2014-08-09 17:50:00 +10:00
Andrew Godwin
8d93b21ec9
Moved index dropping after FK dropping to please MySQL and fix test
2014-08-07 11:59:11 +10:00
Alex Hill
938da36cb1
Fixed #21603 -- Fixed complex RawQuerySets queries on some versions of SQLite.
2014-08-06 08:41:34 -04:00
Shai Berger
746f2a4bed
Fixed #23061 : Avoided setting a limit on a query for get with select_for_update on Oracle
...
Thanks Michael Miller for reporting the issue.
2014-08-05 03:12:08 +03:00
Mihail Milushev
bf5382c6e5
Fixed #22234 -- Replaced OS-specific code with subprocess.call() in dbshell.
...
This fixes escaping of special characters on Windows.
2014-08-04 09:21:03 -04:00
Andrew Godwin
c06e124b5e
Fixed #23091 : CreateModel and AddField were clashing with deferred SQL
2014-08-04 11:59:29 +10:00
Tim Graham
d28396f526
Fixed #23144 -- Dropped support for MySQL 5.0, 5.1.
2014-08-02 10:28:40 -04:00
Tim Graham
8f9d6e83a0
Fixed #23145 -- Dropped support for Oracle < 11.1
2014-08-01 19:32:00 -04:00
Tim Graham
a9bdce7e55
Fixed #23108 -- Dropped support for PostgreSQL 8.4 & PostGIS 1.3, 1.4.
...
Thanks Claude Paroz for the review.
2014-08-01 10:26:00 -04:00
Aymeric Augustin
729e4ae4f0
Fixed #23074 -- Avoided leaking savepoints in atomic.
...
Thanks Chow Loong Jin for the report and the initial patch.
2014-07-28 14:30:41 +02:00
areski
90faa196f6
Fixed #22873 -- Renamed use_debug_cursor to force_debug_cursor to clarify the behavior.
2014-07-26 10:38:46 -04:00
Andrew Godwin
08681d7757
Fixed #23085 : Better error message for PostGIS 1.5/bad custom fields
2014-07-25 09:49:51 -07:00
Claude Paroz
8c30df15f1
Fixed #23030 -- Properly handled geometry columns metadata during migrations
...
Thanks kunitoki for the report and initial patches.
2014-07-23 12:10:23 +02:00
Andrew Godwin
e24e9e0438
Fixed #23014 : Renaming not atomic with unique together
2014-07-21 11:36:34 +01:00
Andrew Godwin
7dacc6ae46
Fixed #23009 : Shorten FK identifiers in add_field and make consistent
2014-07-21 10:50:21 +01:00
Andrew Godwin
dcb4ed5170
Fixed #22975 : Don't call rename SQL if not needed
2014-07-21 10:14:00 +01:00
Andrew Godwin
2984b30ce8
Fixed #23039 : Don't try to serialize unmanaged models in tests
2014-07-21 10:09:31 +01:00
Andrew Godwin
5875b8d133
Fixed #23043 : alter_field drops defaults too
2014-07-21 10:04:36 +01:00
Shai Berger
dd9b3312d0
Fixed name of database connection feature
2014-07-14 19:23:57 +03:00
Andrew Godwin
0fba4c0ed7
Fixed #22487 : Don't flush out data from before normal TestCases
2014-06-23 20:25:09 -07:00
Anubhav Joshi
1c50d6ae2b
Fixed problem introduced with #refs 13711.
2014-06-23 19:36:40 +03:00
Vlastimil Zíma
78c32f1caa
Fixed #22514 -- Prevented indexes on virtual fields [postgres].
2014-06-20 11:59:02 -04:00
Anubhav Joshi
91f1b6dcdc
Fixed #13711 -- Model check added to ensure that auto-generated column name is within limits of the database.
...
Thanks russellm for report and Tim Graham for review.
2014-06-17 16:16:02 -04:00
Andrew Godwin
b22917bd50
Fixed #22851 : BinaryView wasn't getting a binary default
2014-06-16 18:44:08 -07:00
Tim Graham
82c935d44c
Renamed DatabaseFeature.supports_check_constraints to supports_column_check_constraints.
...
Thanks maxi for the suggestion.
2014-06-16 19:25:13 -04:00
Andrew Godwin
c8c79367a2
Fixed #22844 : Duplicate SQL for SQLite FKs
2014-06-16 00:27:32 -07:00
Shai Berger
612290400f
Fixed #22816 -- Corrected Oracle feature flag and fixed introspection test
2014-06-14 00:43:49 +03:00
Shai Berger
06c0e740a4
Added django.utils.six.buffer_types
...
and used it in the Oracle SchemaEditor. Refs #22715 .
2014-06-13 13:09:51 -04:00
Tim Graham
bc0aba7786
Dropped support for SpatiaLite < 2.4.
2014-06-09 17:53:25 -04:00
Aymeric Augustin
40bfd8561d
Fixed #20420 -- Normalized query counts on Oracle.
...
This is achieved by inserting a fake entry in connection.queries when
not releasing a savepoint (since Oracle doesn't support that operation.)
Also removed the can_release_savepoints feature that was recently added,
but is superseded by this solution.
2014-06-09 21:38:10 +02:00
Aymeric Augustin
127218b92b
Simplified handling of use_debug_cursor.
...
Turned it from a tri-valued boolean into a regular boolean.
2014-06-09 21:35:17 +02:00
Tim Graham
3a926c0778
Tweaked order of create_test_db arguments for backwards compatibility.
...
Since `serialize` was backported to 1.7, it should appear before `keepdb`.
2014-06-09 11:12:28 -04:00
Andrew Godwin
8c12d51ea2
Fixed #22487 : Optional rollback emulation for migrated apps
2014-06-08 19:30:15 -07:00
Aymeric Augustin
58de495c54
Fixed #17427 -- Removed dubious definition of connections equality.
2014-06-07 17:04:10 +02:00
Aymeric Augustin
cfcca7ccce
Fixed #3711 , #6734 , #12581 -- Bounded connection.queries.
...
Prevented unlimited memory consumption when running background tasks
with DEBUG=True.
Thanks Rob, Alex, Baptiste, and others.
2014-06-07 14:37:43 +02:00
Aymeric Augustin
1181b8a4a9
Merge pull request #2764 from gchp/ticket-20550
...
Fixed #20550 -- Added keepdb argument to destroy_test_db
2014-06-06 14:05:41 +02:00
Aymeric Augustin
e071f67b7f
Replaced an explicit vendor check by a feature flag.
...
Forward-port of c9aedce0
from stable/1.7.x.
2014-06-06 00:32:13 +02:00
Greg Chapple
72f055e535
Fixed #20550 -- Added keepdb argument to destroy_test_db
2014-06-05 23:17:27 +01:00
Aymeric Augustin
a03d38ddd4
Added a flag for the ability to introspect nullable fields.
...
Previously this was conflated with another Oracle-specific behavior.
2014-06-05 17:56:56 +02:00
Claude Paroz
5a504a5311
Fixed #22744 -- Fixed sqlite3 get_relations introspection with views
...
Thanks Tim Graham for the report and Simon Charette for the review.
2014-06-01 22:03:33 +02:00
Aymeric Augustin
2a5c750ad1
Merge pull request #2726 from gchp/ticket-20550
...
Fixed #20550 -- Added ability to preserve test db between runs
2014-06-01 17:26:56 +02:00
Alex Gaynor
e79725cdf9
Simplified, very slightly, some code in the oracle backend
2014-05-28 17:17:58 -07:00
Shai Berger
69337d485c
Set straight the sense of 'uppercases_column_names' feature flag
2014-05-28 21:16:24 +03:00
Shai Berger
fd427f1fe3
Fixed #22715 : Corrected sql for defaults of BinaryField on Oracle with Python3
...
While at it, fixed a problem in returning empty values
(still with BinaryField/Oracle/Python3).
2014-05-28 18:57:40 +03:00
Greg Chapple
b7aa7c4ab4
Fixed #20550 -- Added ability to preserve test db between runs
2014-05-28 16:22:46 +01:00
Loic Bistuer
27a3cfcd77
Fixed unused import.
2014-05-21 10:42:07 +07:00
Andrew Godwin
03900a02d5
Fixed #22432 : SQLite M2M repointing now works. Thanks to xelnor.
2014-05-20 16:25:59 +01:00
Andrew Godwin
125b3d4407
Fixed #22649 : Beefed up quote_value
2014-05-20 15:41:01 +01:00
Andrew Godwin
4e32e47348
Merge pull request #2634 from loic/ticket22424
...
Fixed #22424 -- MySQL doesn't accept migrations' one-off default values ...
2014-05-20 14:25:59 +01:00
Andrew Godwin
1b07781292
Add feature for implied null (needed for Firebird backend)
2014-05-20 13:27:07 +01:00
Marc Tamlyn
ecbabc216d
Revert "Fixed regression from a2dd618e3b4a7472fab852da450ca5eef92a922f."
...
This reverts commit 5a2556afb9
.
2014-05-19 14:57:06 +01:00
Florian Apolloner
5a2556afb9
Fixed regression from a2dd618e3b
.
2014-05-18 20:35:06 +02:00
Loic Bistuer
1d3d01b4f7
Fixed #22424 -- Fixed handling of default values for TextField/BinaryField on MySQL.
...
Thanks syphar for the review and suggestions.
2014-05-18 11:58:16 +07:00
Raphaël Barrois
6aacb4c991
Fixed #22626 -- Allow BinaryField defaults with SQlite.
...
Also fixes a slight issue in sqlite3.schema._remake_table where
default values where quoted with "column name" quoting rules.
Reference for quoting: http://www.sqlite.org/lang_expr.html
Thanks Shai Berger for the review. Refs #22424 .
2014-05-17 22:32:17 +07:00
Shai Berger
6bb6df2943
Fix storing of binary fields and unicode textfields for Oracle/Python3
2014-05-16 20:08:52 +03:00
Tim Martin
27aa85246a
Fixed #20897 -- Added make_cursor() for consistent cursor creation
...
In django.db.backends.BaseDatabaseWrapper, pulled the creation of
cursors in the non-debug case into a separate method, in order to
make behavior more consistent when overriding the cursor creation
in derived classes.
2014-05-15 07:55:36 -04:00
Aymeric Augustin
fb90b7cda2
Adjusted refactoring of vendor checks.
...
Thanks Shai for the thorough review.
2014-05-10 14:40:42 +02:00
Aymeric Augustin
99d9fa329a
Added feature flags for introspection capabilities.
2014-05-08 22:11:20 +02:00
Aymeric Augustin
cff59bedc2
Split ignores_nulls_in_unique_constraints feature.
...
Oracle and SQL Server don't have exactly the same limitations. It's
worth treating them differently.
2014-05-08 22:11:20 +02:00
Aymeric Augustin
c70a61eb49
Replaced vendor checks by three feature flags.
2014-05-08 22:11:15 +02:00
Andrew Godwin
b25aee3b7b
Fixed #22476 : Couldn't alter attributes on M2Ms with through= set
2014-05-08 10:34:24 -07:00
Andrew Godwin
e9a456d11b
Fixed #22581 : Pass default values for schema through get_db_prep_save()
2014-05-07 13:46:23 -07:00
Alex Gaynor
2bcb8bfc8d
Fix many many typos in comments throughout the codebase
2014-04-26 10:18:45 -07:00
Aymeric Augustin
8b5b199e20
Fixed #3214 -- Stopped parsing SQL with regex.
...
Avoided introducing a new regex-based SQL splitter in the migrations
framework, before we're bound by backwards compatibility.
Adapted this change to the legacy "initial SQL data" feature, even
though it's already deprecated, in order to facilitate the transition
to migrations.
sqlparse becomes mandatory for RunSQL on some databases (all but
PostgreSQL). There's no API to provide a single statement and tell
Django not to attempt splitting. Since we have a more robust splitting
implementation, that seems like a good tradeoff. It's easier to add a
new keyword argument later if necessary than to remove one.
Many people contributed to both tickets, thank you all, and especially
Claude for the review.
Refs #22401 .
2014-04-26 17:46:23 +02:00
Aymeric Augustin
3033a7193a
Fixed #21166 -- Reset errors_occurred flag after commit and rollback.
2014-04-25 22:45:11 +02:00
Aymeric Augustin
e368912902
Set some transaction-related feature flags on SQLite.
...
Refs #22496 .
2014-04-25 11:43:20 +02:00
Shai Berger
843613add4
Fixed #22498 -- constraint name was not quoted in FK creation SQL
2014-04-25 01:30:43 +03:00
Shai Berger
53d97e4fe3
Made sure cursor.close() does not complain if cursor is already closed on Oracle
...
Refs #22483
2014-04-25 00:36:40 +03:00
Aymeric Augustin
25209715d4
Prevented a crash in the cursor wrappers on Oracle.
...
Fixed #22483 (again).
Forwardport of 5cd6429620
from stable/1.7.x
2014-04-24 09:14:42 -04:00
Aymeric Augustin
b0f4eecfa7
Ignored repeated calls to connection.close().
...
Forwardport of 9bbb43dd1a
from stable/1.7.x
2014-04-24 09:14:26 -04:00
Aymeric Augustin
0aa4c6c391
Used the same instance of atomic for entry and exit.
...
Since all state is maintained on the connection at this time and none in
the atomic, it doesn't matter, but it could introduce some subtle bugs
if the implementation changed in the future.
2014-04-23 21:44:36 +02:00
Aymeric Augustin
e74d2183c2
Wrapped migrations in a transaction only on DBs with transactional DDL.
2014-04-23 21:44:36 +02:00
Andrew Gorcester
956bd64424
Fixed #22397 -- Issues removing M2M field with explicit through model
...
Changed the migration autodetector to remove models last so that FK
and M2M fields will not be left as dangling references. Added a check
in the migration state renderer to error out in the presence of
dangling references instead of leaving them as strings. Fixed a bug
in the sqlite backend to handle the deletion of M2M fields with
"through" models properly (i.e., do nothing successfully).
Thanks to melinath for report, loic for tests and andrewgodwin and
charettes for assistance with architecture.
2014-04-18 16:44:47 -04:00
Simon Charette
0d397e5a5b
Revert "Fixed #22397 -- Issues removing M2M field with explicit through model."
...
This reverts commit 00e3b9a2a9
.
It's causing a regression when tested with the proxy_model_inheritance tests.
2014-04-18 01:27:30 -04:00
Andrew Gorcester
00e3b9a2a9
Fixed #22397 -- Issues removing M2M field with explicit through model.
...
Changed the migration autodetector to remove models last so that FK
and M2M fields will not be left as dangling references. Added a check
in the migration state renderer to error out in the presence of
dangling references instead of leaving them as strings. Fixed a bug
in the sqlite backend to handle the deletion of M2M fields with
"through" models properly (i.e., do nothing successfully).
Thanks to melinath for report, loic for tests and andrewgodwin and
charettes for assistance with architecture.
2014-04-17 12:54:35 -04:00
Simon Charette
79f05616fb
Fixed flake8 warnings introduced in recent commits.
2014-04-16 16:49:37 -04:00
Motiejus Jakštys
0e45669fa9
Fixed #22460 -- Explicity remove constraints when dropping a related field.
2014-04-16 15:38:31 -04:00
Aymeric Augustin
25860096f9
Fixed #21239 -- Maintained atomicity when closing the connection.
...
Refs #15802 -- Reverted #7c657b24 as BaseDatabaseWrapper.close() now
has a proper "finally" clause that may need to preserve self.connection.
2014-04-10 20:57:43 +02:00
Aymeric Augustin
3becac8484
Fixed #22321 -- Wrapped exceptions in _set_autocommit.
...
Refs #21202 .
2014-04-10 20:16:12 +02:00
Aymeric Augustin
5f2f47fdfc
Fixed #21553 -- Ensured unusable database connections get closed.
2014-04-09 22:41:33 +02:00
Loic Bistuer
a449e7feec
Fixed #22359 -- Changing M2M field to blank=True failed on sqlite.
2014-03-31 06:13:19 -04:00
Alex Gaynor
778ce245dd
Corrected many style guide violations that the newest version of flake8 catches
2014-03-30 12:11:05 -07:00
Chris Beaven
b077ba7ac1
Add a useful stacklevel to some RemovedInDjango19Warnings
2014-03-27 15:44:52 +13:00
Simon Charette
1506c71a95
Fixed #12030 -- Validate integer field range at the model level.
...
Thanks to @timgraham for the review.
2014-03-25 14:31:20 -04:00
Daniel Hahler
1edfa155e3
Fixed #22293 -- Avoided renaming many-to-many tables to themselves.
...
Fixed this for both implementations of _alter_many_to_many, instead of
in `alter_db_table` itself (more implementations).
2014-03-24 13:24:52 -04:00
Tim Graham
80e6960580
Removed unused imports.
2014-03-21 20:18:19 -04:00
Aymeric Augustin
7e0f9095f7
Removed BaseDatabaseCreation.set_autocommit per deprecation timeline.
2014-03-21 22:17:36 +01:00
Aymeric Augustin
6993f2886b
Fixed typo in comments.
2014-03-21 22:16:31 +01:00