chillaranand
d6eaf7c018
Refs #23919 -- Replaced super(ClassName, self) with super().
2017-01-25 12:23:46 -05:00
Claude Paroz
6e55e1d88a
Refs #23919 -- Replaced six.reraise by raise
2017-01-22 20:08:04 +01:00
Tim Graham
d170c63351
Refs #23919 -- Removed misc references to Python 2.
2017-01-21 20:02:00 -05:00
Mariusz Felisiak
bf1c957027
Refs #23919 -- Removed Python 2 workaround for hashing Oracle params (refs #27632 ).
2017-01-19 22:20:14 -05:00
Simon Charette
cecc079168
Refs #23919 -- Stopped inheriting from object to define new style classes.
2017-01-19 08:39:46 +01:00
Claude Paroz
2b281cc35e
Refs #23919 -- Removed most of remaining six usage
...
Thanks Tim Graham for the review.
2017-01-18 21:33:28 +01:00
Claude Paroz
7b2f2e74ad
Refs #23919 -- Removed six.<various>_types usage
...
Thanks Tim Graham and Simon Charette for the reviews.
2017-01-18 20:18:46 +01:00
Claude Paroz
c716fe8782
Refs #23919 -- Removed six.PY2/PY3 usage
...
Thanks Tim Graham for the review.
2017-01-18 16:21:28 +01:00
Claude Paroz
d7b9aaa366
Refs #23919 -- Removed encoding preambles and future imports
2017-01-18 09:55:19 +01:00
Tim Graham
bcf3532ede
Refs #26154 -- Removed deprecated CommaSeparatedIntegerField.
2017-01-17 20:52:02 -05:00
Tim Graham
e707e4c709
Refs #19738 -- Removed timezone conversion in SQL queries executed outside of the ORM.
...
Per deprecation timeline.
2017-01-17 14:09:29 -05:00
Mariusz Felisiak
7d2db2a7b8
Refs #27690 -- Removed sleep before drop test db on Oracle.
2017-01-16 19:20:28 -05:00
Tim Graham
b5511dddd6
Moved unneeded ImproperlyConfigured inner imports.
2017-01-16 12:48:41 -05:00
Matthew Schinckel
236ebe94bf
Fixed #27149 -- Added Subquery and Exists database expressions.
...
Thanks Josh Smeaton for Oracle fixes.
2017-01-14 09:12:24 -05:00
Florian Apolloner
84c1826ded
Fixed #27718 -- Added QuerySet.union(), intersection(), difference().
...
Thanks Mariusz Felisiak for review and Oracle assistance.
Thanks Tim Graham for review and writing docs.
2017-01-14 08:32:07 -05:00
Simon Charette
973cfd2ef5
Refs #20483 -- Implemented cascaded flush on Oracle.
...
The initial implementation added support for PostgreSQL but it is also required
on Oracle (13b7f299de
).
Thanks Mariusz Felisiak for the foreign key retreival queries.
2017-01-13 08:50:03 -05:00
François Freitag
f3b7c05936
Refs #16614 -- Made QuerySet.iterator() use server-side cursors on PostgreSQL.
...
Thanks to Josh Smeaton for the idea of implementing server-side cursors
in PostgreSQL from the iterator method, and Anssi Kääriäinen and Kevin
Turner for their previous work. Also Simon Charette and Tim Graham for
review.
2017-01-11 09:25:37 -05:00
anabelensc
1c12df4aa6
Fixed #25912 -- Added binary left/right shift operators to F expressions.
...
Thanks Mariusz Felisiak for review and MySQL advice.
2017-01-03 14:15:46 -05:00
Josh Smeaton
26c9f529c9
Refs #27632 -- Simplified params dict creation for Oracle ( #7772 )
2017-01-01 12:39:03 +11:00
Andrew Nester
69b7d4b116
Fixed #27458 -- Fixed invalid sequence/index names when using "USER"."TABLE" db_table on Oracle.
2016-12-30 17:11:12 -05:00
Mariusz Felisiak
7d14889aa3
Fixed #27615 -- Used timedeltas as arguments to Oracle database driver.
...
Removed unused DatabaseFeatures.driver_supports_timedeltas workaround.
2016-12-29 15:49:18 -05:00
Tim Graham
fae56427e1
Fixed #27649 -- Bumped required cx_Oracle to 5.2.
...
Removed obsolete workarounds from 1aa4889808
and dcf3be7a62
.
2016-12-29 12:45:25 -05:00
Mariusz Felisiak
4579c3f6b8
Refs #27632 -- Unified query parameters by their types and values on Oracle.
...
Fixed Python 2 regression in 6dbe56ed78
.
Thanks Simon Charette for the implementation idea.
2016-12-28 17:20:42 -05:00
Mariusz Felisiak
6dbe56ed78
Fixed #27632 -- Unified query parameters by their values on Oracle.
2016-12-28 08:14:14 -05:00
Mariusz Felisiak
3e43d24ad3
Refs #19884 -- Added CharField max_length introspection on Oracle.
2016-12-19 08:29:42 -05:00
Mariusz Felisiak
2d259e6bad
Refs #27324 -- Optimized DatabaseIntrospection.get_constraints() for foreign keys on Oracle.
2016-12-05 19:12:37 -05:00
Mariusz Felisiak
b059ddf066
Fixed #27561 -- Added Oracle support for binary "or" operator.
...
Removed DatabaseFeatures.supports_bitwise_or feature (unused, always True).
2016-12-02 16:59:39 -05:00
Mariusz Felisiak
e17f40f4b5
Refs #24245 -- Added introspection for database defaults on Oracle.
2016-11-30 11:21:57 -05:00
Adam Chainz
95238a7de8
Fixed #27321 -- Added detection for table case name sensitivity on MySQL.
2016-11-28 13:29:21 -05:00
Mariusz Felisiak
b63d0c54b0
Fixed #24959 -- Fixed queries using negative timedeltas on MySQL and Oracle.
2016-11-23 09:10:47 -05:00
Ramin Farajpour Cami
967be82443
Fixed E305 flake8 warnings.
2016-11-14 12:30:46 -05:00
Mads Jensen
1446902be4
Fixed #25240 -- Added ExtractWeek and exposed it through the __week lookup.
...
Thanks to Mariusz Felisiak and Tim Graham for review.
2016-11-11 08:01:40 -05:00
Mariusz Felisiak
dacef9137f
Refs #27420 -- Removed exception hiding in Oracle test user creation during --keepdb.
...
If the test user creation fails here, _create_test_db() would return without
switching to the test user which caused the tests to run using the main
connection instead of the test user.
2016-11-08 16:53:52 -05:00
Mariusz Felisiak
c4b04e1598
Fixed #27420 -- Quoted the Oracle test user password in queries.
2016-11-08 16:30:22 -05:00
Marti Raudsepp
da7910d483
Fixed CVE-2016-9013 -- Generated a random database user password when running tests on Oracle.
...
This is a security fix.
2016-11-01 09:30:57 -04:00
Tim Graham
1bc249c2a6
Fixed #20939 -- Simplified query generation by converting QuerySet to Query.
...
Thanks Anssi Kääriäinen for the initial patch and Anssi, Simon Charette,
and Josh Smeaton for review.
2016-10-28 11:20:23 -04:00
Tim Graham
414ad25b09
Fixed #27327 -- Simplified time zone handling by requiring pytz.
2016-10-27 08:53:20 -04:00
Mariusz Felisiak
5a772a0b7b
Fixed #27324 -- Simplified DatabaseIntrospection.get_constraints() on Oracle.
2016-10-14 13:59:13 -04:00
Mariusz Felisiak
794f866cec
Fixed #27323 -- Optimized Oracle introspection by using USER_SEQUENCES instead of USER_CATALOG.
2016-10-12 18:58:33 -04:00
Zapelini
62543260dd
Fixed #27282 -- Allowed using an integer DATABASES['PORT'] for Oracle.
2016-09-27 15:01:30 -04:00
Adam Chainz
85f2bba7eb
Removed DatabaseError and IntegrityError declarations from database backends.
...
Unused since 11ee9746a0
.
2016-09-26 18:31:41 -04:00
Dmitry Medvinsky
1a9f6db5ff
Fixed #27219 -- Changed cx_Oracle client encoding to AL32UTF8 to allow 4-byte characters.
2016-09-19 20:19:57 -04:00
Claude Paroz
d389125606
Fixed #27098 -- Deprecated DatabaseIntrospection.get_indexes
...
Thanks Akshesh <aksheshdoshi@gmail.com> for help with the PostgreSQL query.
Thanks Tim Graham for the review.
2016-09-12 09:26:33 +02:00
Chris Jerdonek
7ca3b391b6
Fixed #27170 -- Added DatabaseWrapper class attributes to ease subclassing.
2016-09-08 16:33:36 -04:00
Akshesh
dbccf163b6
Fixed #27097 -- Added index type introspection to built-in db backends.
2016-09-02 21:14:12 -04:00
Matthew Wilkes
4f138fe5a4
Fixed #22288 -- Fixed F() expressions with the __range lookup.
2016-08-19 13:40:56 -04:00
Akshesh
f842d1011c
Refs #20888 -- Added index order introspection.
2016-08-12 11:51:09 -04:00
Simon Charette
b8e6e1b43b
Fixed #26500 -- Added SKIP LOCKED support to select_for_update().
...
Thanks Tim for the review.
2016-08-08 12:01:43 -04:00
Anderson Resende
0d1218896f
Fixed #26950 -- Removed obsolete DatabaseOperations SQL methods.
...
Unused as of 2b039d966f
.
2016-07-27 07:34:44 -04:00
Simon Charette
8a4f017f45
Fixed #26348 -- Added TruncTime and exposed it through the __time lookup.
...
Thanks Tim for the review.
2016-07-08 12:35:34 -04:00
Simon Charette
082c52dbed
Refs #25774 , #26348 -- Allowed Trunc functions to operate with time fields.
...
Thanks Josh for the amazing testing setup and Tim for the review.
2016-07-08 12:35:34 -04:00
Simon Charette
c4a876a0c1
Refs #17260 -- Prevented Oracle timezone conversion from stripping microseonds.
2016-07-08 12:35:33 -04:00
Étienne BERSAC
03f6d272ab
Fixed #26751 -- Made dbshell exit with the shell's error code.
2016-06-27 12:20:40 -04:00
Simon Charette
c2e62fd1ae
Fixed #26781 -- Made table name case change a noop on SQLite.
...
SQLite disgresses from the SQL standard by ignoring case of quoted identifiers.
Thanks to laozzzi for the report and Tim for the review.
2016-06-21 16:37:06 -04:00
Ville Skyttä
96f97691ad
Fixed broken links in docs and comments.
2016-06-15 21:20:23 -04:00
Josh Smeaton
77b73e79a4
Refs #25774 -- Made Oracle truncate microseconds if USE_TZ=False.
...
The tests for this change are in the fix for #25774 .
2016-05-18 20:14:58 +10:00
Tim Graham
df8d8d4292
Fixed E128 flake8 warnings in django/.
2016-04-08 09:51:06 -04:00
Tim Graham
6448873197
Fixed E402 flake8 warnings.
2016-04-04 17:14:27 -04:00
Tim Graham
2cd2d18851
Fixed W503 flake8 warnings.
2016-04-04 17:14:26 -04:00
Simon Charette
766afc22a1
Fixed #24793 -- Unified temporal difference support.
2016-02-26 12:25:12 -05:00
Curtis Maloney
3792e291e6
Removed use of locals for print formatting in Oracle backend.
2016-01-11 07:13:24 -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
Tim Graham
0b5d32faca
Fixed #25611 -- Standardized descriptor signatures.
2015-10-26 11:31:16 -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
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
Maxime Lorant
5153a3bfdc
Fixed #25331 -- Removed trailing blank lines in docstrings.
2015-08-31 17:37:21 -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
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
Tim Graham
47fcbe506c
Fixed flake8 warnings on Python 3.
2015-06-15 11:27:09 -04: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
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
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
Tim Graham
2d76b61dc2
Fixed #24649 -- Allowed using Avg aggregate on non-numeric field types.
2015-04-25 13:06:14 -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
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
Adam Chainz
e9282747a4
Removed unused foreign_key_re variables in MySQL/Oracle DB backends
2015-02-18 10:22:30 -05:00
Josh Smeaton
1fbe8a2de3
Fixed #24200 -- Made introspection bypass statement cache
2015-02-10 23:24:34 +02: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
29c0073335
Fixed #24164 -- Fixed Oracle GIS limited aggregation test failure.
2015-01-30 06:28:47 -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
Tim Graham
28308078f3
Fixed #22603 -- Reorganized classes in django.db.backends.
2015-01-14 14:16:20 -05:00
Shai Berger
aa8ee6a573
Fixed test failures in Oracle introspection
...
Refs #17785
2015-01-13 01:00:09 +02: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
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
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
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