Commit Graph

560 Commits

Author SHA1 Message Date
Tim Graham 9819676676 Updated links to the current version of MySQL docs. 2016-09-30 09:14:17 -04:00
Claude Paroz 92323d54fd Fixed #27056 -- Allowed migrating geometry field dimension on PostGIS
Thanks Tim Graham for the review.
2016-09-22 16:40:27 +02:00
Claude Paroz 35e649b197 Simplified PostGIS index creation
Less special-casing and code more in line with 'normal' index creation.
2016-09-17 19:43:52 +02:00
Claude Paroz 9715b99f91 Stopped deleting from the geometry_columns view on PostGIS
On PostGIS < 2, geometry_columns is a table that was manually maintained.
It's a view on PostGIS 2.
2016-09-17 16:39:37 +02: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
Daniel Wiesmann 082f5bfdbc Added error messages for GIS DB functions when used with rasters. 2016-09-02 20:26:16 -04:00
Kevan Swanberg 35504f74a8 Fixed #26685 -- Added dwithin lookup support on SpatiaLite. 2016-08-30 20:45:47 -04:00
Akshesh 4c7bf83cde Refs #27097, #27098 -- Moved PostgreSQL index type introspection to get_constraints(). 2016-08-30 08:48:55 -04:00
Tim Graham 953629b92c Fixed #27072 -- Fixed AddGeometryColumn error when altering a SpatiaLite table. 2016-08-24 08:44:45 -04:00
Daniel Wiesmann 89f17e7caf Fixed #27014 -- Fixed annotations with database functions on PostGIS.
Thanks Sean Mc Allister for providing a test.
2016-08-15 14:23:10 -04:00
Akshesh 2f19306a12 Refs #27030 -- Added index type introspection on PostgreSQL. 2016-08-12 16:58:40 -04:00
Claude Paroz ade681b9ad Unified SpatiaLite spelling 2016-08-09 18:46:28 +02:00
Sergey Fedoseev 4178488881 Refs #26657 -- Fixed a crash induced by invalid WKT returned by MySQL 5.7.5+. 2016-07-28 17:48:17 -04:00
Sergey Fedoseev 9031a4c13b Fixed #26657 -- Made GeomValue omit SRID for MySQL.
This fixes some test failures on MySQL 5.7+.
2016-07-28 16:51:47 -04:00
akki 767849b765 Removed unnecessary looping in sqlite3 SchemaEditor. 2016-07-18 08:47:30 -04:00
Sergey Fedoseev ea4665066b Fixed #26785 -- Made Oracle return None rather than empty string for empty geometries. 2016-06-21 14:06:29 -04:00
Claude Paroz 8ba44ecda0 Fixed #26775 -- Supported dim=3 geography fields
Thanks François-Xavier Thomas for the report.
2016-06-18 21:48:32 +02:00
Claude Paroz f7a363ee1d Fixed #26753 -- Made GDAL a required dependency for contrib.gis
Thanks Tim Graham for the review.
2016-06-18 10:58:02 +02:00
Tim Graham 9c3fbf5423 Used SQL from DB backend in GeomValue.
This avoids the deprecated GeomFromText on MySQL (refs #26134).

Thanks Claude Paroz for the review.
2016-06-16 19:51:13 -04:00
Tim Graham ea34426ae7 Fixed flake8 2.6 warnings. 2016-06-16 09:12:50 -04:00
Sergey Fedoseev cee534228c Refs #25645 -- Removed SpatiaLite 3.x compatibility in gis.db.models.functions.Translate.
Complements 47f22e8286.
2016-06-13 10:32:07 -04:00
Sergey Fedoseev a20671c489 Refs #25645 -- Removed SpatiaLite 3.x compatibility in SpatialiteSpatialRefSys.wkt.
Complements 47f22e8286.
2016-06-01 10:49:55 -04:00
Tim Graham bc84278615 Fixed #26675 -- Dropped support for PostgreSQL 9.2/PostGIS 2.0. 2016-06-01 07:45:22 -04:00
Tim Graham 47f22e8286 Fixed #25645 -- Dropped support for SpatiaLite < 4.0. 2016-05-31 11:31:51 -04:00
Daniel Wiesmann 9bb1b4b7f6 Refs #25588 -- Fixed GDAL dependency in spatial lookups. 2016-05-27 17:43:17 +01:00
Tim Graham 92f88206d0 Refs #26134 -- Updated deprecated MySQL GIS function names. 2016-05-24 11:34:15 -04:00
Loïc Bistuer ed0ff913c6 Fixed #10506, #13793, #14891, #25201 -- Introduced new APIs to specify models' default and base managers.
This deprecates use_for_related_fields.

Old API:

class CustomManager(models.Model):
    use_for_related_fields = True

class Model(models.Model):
    custom_manager = CustomManager()

New API:

class Model(models.Model):
    custom_manager = CustomManager()

    class Meta:
        base_manager_name = 'custom_manager'

Refs #20932, #25897.

Thanks Carl Meyer for the guidance throughout this work.
Thanks Tim Graham for writing the docs.
2016-05-17 12:07:22 +07:00
Daniel Wiesmann bbfad84dd9 Fixed #25588 -- Added spatial lookups to RasterField.
Thanks Tim Graham for the review.
2016-05-06 09:17:18 -04:00
Claude Paroz 388bb5bd9a Fixed #22936 -- Obsoleted Field.get_prep_lookup()/get_db_prep_lookup()
Thanks Tim Graham for completing the initial patch.
2016-05-04 20:02:01 +02:00
Tim Graham 32969c3931 Refs 2bd1bbc -- Made GeometryField.get_db_prep_lookup() a private (deprecated) method. 2016-05-02 09:40:02 -04:00
Anssi Kääriäinen 7f51876f99 Fixed #26207 -- Replaced dynamic classes with non-data descriptors for deferred instance loading. 2016-04-29 13:06:32 -04:00
Nicolas Noé 23fbd3ff48 Fixed #26512 -- Added tests for SpatialRefSysMixin.get_units(). 2016-04-19 11:19:44 -04:00
Tim Graham 74675a15d0 Removed unused wk_col property of SpatialRefSys models.
Unused since ae7cb577dd.
2016-04-15 13:17:09 -04:00
Daniel Wiesmann c12a00e554 Fixed #26455 -- Allowed filtering and repairing invalid geometries.
Added the IsValid and MakeValid database functions, and the isvalid lookup,
all for PostGIS.

Thanks Tim Graham for the review.
2016-04-09 09:22:30 -04:00
Tim Graham 2cd2d18851 Fixed W503 flake8 warnings. 2016-04-04 17:14:26 -04:00
Noenglish Professorbut f8d20da047 Fixed a few docstring typos. 2016-03-12 08:45:06 -05:00
Shai Berger bb51dc902d Refs #26112 -- Fixed aggregate GIS test on Oracle.
Made sure the test doesn't try to aggregate over MultiPolygonField and made
AreaField turn decimals into floats on the way from the DB.

Thanks Daniel Wiesmann, Jani Tiainen, and Tim Graham for review and discussion.
2016-02-09 10:04:54 -05:00
Claude Paroz c47364ef0c Fixed #26134 -- Used new OpenGIS names for recent MySQL
Thanks František Malina for the report.
2016-01-29 23:25:23 +01:00
Daniel Wiesmann a08d2463d2 Fixed #26112 -- Error when computing aggregate of GIS areas.
Thanks Simon Charette and Claude Paroz for the reviews.
2016-01-22 19:38:34 +01:00
Claude Paroz 00cb9e13b4 Fixed #15165 -- Prevented wrong results with perimeter on geodetic fields. 2015-12-30 18:07:02 -05:00
Ville Skyttä e6ca15c13f Passed logging message parameters as arguments instead of interpolating them. 2015-12-26 18:35:42 -05:00
Sergey Fedoseev 25f5b5c19d Fixed #25853 -- Added support for GeoHash function on SpatiaLite. 2015-12-04 08:09:21 -05:00
Sergey Fedoseev 717a54c883 Fixed #25797 -- Fixed regex for getting units from SRS WKT. 2015-12-03 19:03:28 -05:00
Josh Soref 93452a70e8 Fixed many spelling mistakes in code, comments, and docs. 2015-12-03 12:48:24 -05:00
Sergey Fedoseev 0825f77f76 Fixed #25836 -- Added support for MakeLine aggregate on SpatiaLite. 2015-12-02 17:25:33 -05:00
Sergey Fedoseev 49f1cc54e6 Fixed #25835 -- Removed Adaptor alias from spatial operations classes. 2015-11-30 08:57:15 -05:00
Claude Paroz c3531d2f20 Removed ability to pass a geometry string to GIS functions
This was a possible confusion source with column name arguments.
Thanks Sergey Fedoseev for the suggestion.
2015-11-07 16:04:24 +01:00
Sergey Fedoseev 5f7035cec7 Fixed #25673 -- Made `GeometryField.from_db_value` set SRID 2015-11-06 20:45:31 +01:00
Sergey Fedoseev a449b7ef99 Fixed #25629 -- Added checks of the number of arguments for GeoDjango DB functions. 2015-11-03 08:20:08 +01:00
Sergey Fedoseev 7127eb287f Fixed #25659 -- Added missing support for MySQL 5.6.1 GIS functions
Added support for ST_Difference/ST_Intersection/ST_SymDifference.
2015-11-02 19:25:53 +01:00
Sergey Fedoseev b78226cd3d Fixed #25655 -- Dropped support for GEOS < 3.3 2015-11-01 20:41:52 +01:00
Sergey Fedoseev 8ad923b9d0 Fixed #25636 -- Dropped support for SpatiaLite < 3.0 2015-10-31 14:22:34 +01:00
Sergey Fedoseev 7521bb95d5 Fixed #25630 -- Replaced `AsGeoHash` with `GeoHash` in unsupported GIS functions 2015-10-29 13:34:12 +01:00
Claude Paroz b55b34129b Moved around imports in PostGIS operations
Thanks Daniel Wiesmann for inspiration.
2015-10-27 20:38:21 +01:00
Tim Graham 0b5d32faca Fixed #25611 -- Standardized descriptor signatures. 2015-10-26 11:31:16 -04:00
Claude Paroz c08f85fd54 Fixed #25592 -- Fixed misnamed strictly_above PostGIS lookup
Fixes a regression from 2bd1bbc42. Thanks Daniel Wiesmann for the report
and Tim Graham for the review.
2015-10-22 20:32:31 +02:00
Tim Graham 67732a9b18 Fixed #24687 -- Added select_related() validation for nested non-relational fields.
The removed test was added in the original select_related() validation
patch (45d4e43d2d), but there doesn't
seem to be any reason for it.

Thanks Claude Paroz for help and review.
2015-10-10 09:48:50 -04:00
Claude Paroz 00db71d452 Refs #25499 -- Fixed expressions in distance lookups on Oracle. 2015-10-09 14:08:42 -04:00
Claude Paroz 37d06cfc46 Fixed #25499 -- Added the ability to pass an expression in distance lookups
Thanks Bibhas Debnath for the report and Tim Graham for the review.
2015-10-09 15:27:47 +02:00
Tim Graham 5d383549ee Refs #24152 -- Removed deprecated GeoQuerySet aggregate methods.
Per deprecation timeline.
2015-09-23 19:31:10 -04:00
Tim Graham fd6a299cd0 Refs #14030 -- Removed backwards compatiblity for old-style aggregates.
Per deprecation timeline.
2015-09-23 19:31:10 -04:00
Claude Paroz c9a02bc8f5 Fixed #25448 -- Eased GISLookup subclassing with custom lookups
When someone needs to build a custom backend-specific GIS lookup, it
is much easier done if getting the spatial operator class happens in
a dedicated method (no need to rewrite the entire as_sql() method).
2015-09-23 22:01:56 +02:00
Alex Hill 134ca4d438 Fixed #24509 -- Added Expression support to SQLInsertCompiler 2015-09-22 23:35:24 +10:00
Jani Tiainen fcf494b48f Fixed #24688 -- Added Oracle support for new-style GIS functions. 2015-09-21 13:52:14 -04:00
Daniel Hahler da5747f8e4 Fixed #25400 -- Fixed regression in nonexistent features on gis backends. 2015-09-17 09:30:46 -04:00
Jani Tiainen 1b8d7eff3b Refs #12400 -- Added supports_geometry_field_unique_index GIS db feature. 2015-08-19 19:02:30 -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 7da3923ba0 Sorted imports in __init__.py files. 2015-06-27 11:53:33 -04:00
Greg Chapple 4a66a69239 Fixed #24887 -- Removed one-arg limit from models.aggregate 2015-06-27 11:44:33 -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
Daniel Wiesmann c0fff64486 Fixed #25011, Refs #23804 -- Added check for GDAL on RasterField initialization 2015-06-23 16:11:42 -04: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
Sylvain Fankhauser 0a89915783 Fixed #24862 -- Improved PostGIS database connection error message
Thanks brycenesbitt for the patch.
2015-06-05 21:58:30 +02:00
Piotr Jakimiak 4157c502a5 Removed unnecessary arguments in .get method calls 2015-05-13 20:51:18 +02:00
Tim Graham 26996e2d55 Fixed #24499 -- Dropped support for PostGIS 1.5. 2015-04-25 12:21:16 -04:00
Claude Paroz d9bcba9b29 Removed many HAS_GEOS conditional imports 2015-04-24 20:30:23 +02:00
Claude Paroz 61d09e61f5 Lazy loading of GEOS functions 2015-04-24 20:30:23 +02:00
Claude Paroz 6d685b1674 Fixed failures with older Spatialite versions 2015-04-23 18:54:07 +02:00
Claude Paroz ea27e26b09 Deprecated legacy GeoManager/GeoQuerySet methods 2015-04-22 19:54:17 +02:00
Claude Paroz 71e20814fc Added MySQL support to GIS functions 2015-04-22 19:54:17 +02:00
Claude Paroz 44bdbbc316 Added Spatialite support to GIS functions 2015-04-22 19:54:17 +02:00
Claude Paroz d9ff5ef36d Fixed #24214 -- Added GIS functions to replace geoqueryset's methods
Thanks Simon Charette and Tim Graham for the reviews.
2015-04-22 19:54:17 +02:00
Anssi Kääriäinen fb5c7748da Fixed #24615 -- ordering by expression not part of SELECT
Fixed queries where an expression was used in order_by() but the
expression wasn't in the query's select clause (for example the
expression could be masked by .values() call)

Thanks to Trac alias MattBlack85 for the report.
2015-04-16 09:40:47 +02:00
Tim Graham c7679f1b58 Removed unused methods in GIS adapter. 2015-04-09 08:57:29 -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 02d78bb1a8 Fixed build failure introduced by refs #23757. 2015-03-18 18:46:06 -04:00
Claude Paroz 65129aac07 Fixed #23757 -- Added 3D introspection support to Spatialite backend
Thanks Tim Graham for the review.
2015-03-18 19:27:44 +01:00
Josh Smeaton 88d798d71a Refs #24485 -- Renamed some expression types 2015-03-17 08:40:18 -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
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
Claude Paroz a0b5f15ea5 Fixed #14483 -- Allowed using subqueries with GIS lookups 2015-01-30 20:27:18 +01:00
Josh Smeaton 8196e4bdf4 Fixed #24154 -- Backends can now check support for expressions 2015-01-27 12:20:06 +11:00
Tim Graham 2b039d966f Removed obsolete SQL generation methods. 2015-01-18 15:58:06 -05:00
Claude Paroz aff0e54d51 Fixed PostGIS crosses lookup and added crosses test 2015-01-17 15:44:49 +01:00
Tim Graham 9ce36512fa Removed backwards compatibility shims for "util" modules per deprecation timeline.
refs #17627.
2015-01-17 07:40:12 -05:00
Claude Paroz a79e6b6717 Fixed #24152 -- Deprecated GeoQuerySet aggregate methods
Thanks Josh Smeaton and Tim Graham for the reviews.
2015-01-16 19:53:02 +01:00
Claude Paroz a34fba5e59 Simplified a bit GeoAggregate classes
Thanks Josh Smeaton for the review. Refs #24152.
2015-01-16 10:40:45 +01: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
Claude Paroz e084ff01f2 Fixed #24136 -- Prevented crash when convert_extent input is None
Thanks Max Demars for the report.
2015-01-13 17:27:11 +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
Andriy Sokolovskiy 839f431ef5 Fixed #24064 -- Prevented database access at compile time in spatialite models. 2015-01-02 12:04:57 -05:00
Daniel Pyrathon 8958170755 Fixed #9104 -- Moved FieldDoesNotExist to core.exceptions 2015-01-02 10:46:04 -05:00
Claude Paroz 234a2e0b6b Fixed #23866 -- Harmonized refs to Django documentation from code 2014-12-25 13:53:13 +01: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
Claude Paroz bac7664f27 Ran 'CREATE EXTENSION postgis' during prepare_database hook
DatabaseWrapper.prepare_database has been introduced in 307de67073.
2014-12-08 22:22:53 +01: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
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
Carl Meyer d2bcb05980 Fixed #23873 -- Improved GIS error message when GEOS is not installed.
Thanks Claude for writing the patch.
2014-11-19 19:23:13 -07:00
Carl Meyer 0eba8bd8f6 Fixed GeoSQLCompiler to pass itself correctly to column as_sql. 2014-11-19 08:33:38 -07:00
Carl Meyer 84d88f5cbe Removed a deprecated use of SQLCompiler as quote_name in GIS. 2014-11-19 08:03:48 -07:00
Josh Smeaton f61256da3a Renamed qn to compiler 2014-11-16 13:19:34 +01:00
Josh Smeaton f59fd15c49 Fixed #14030 -- Allowed annotations to accept all expressions 2014-11-15 14:00:43 +00:00
Veres Lajos a71a2ea756 Fixed typos using https://github.com/vlajos/misspell_fixer 2014-11-03 20:59:30 -05:00
Tim Graham d6d55368d4 Fixed #23731 -- Fixed migrations crash when adding blank GeometryFields on PostGIS.
Thanks raratiru for the report and Claude Paroz for review.
2014-10-31 18:37:52 -04:00
Tim Graham e548d08f24 Renamed SpatiaLite feature flag introduced in refs #23152.
Thanks Doug Goldstein for the suggestion.
2014-10-31 15:55:45 -04:00
Tim Graham 57e40551e4 Fixed #23152 -- Added support for transactional Spatialite metadata initialization.
Thanks Doug Goldstein for the initial patch.
2014-10-30 13:52:42 -04:00
Tim Graham 03bd79ed21 Fixed #23719 -- Fixed MySQL 5.6 crash with GeometryFields in migrations. 2014-10-29 08:21:24 -04:00
Claude Paroz 63ff417746 Fixed a tuple/int comparison in spatialite backend
On Python 3, comparing tuple with int raises a TypeError.
2014-10-11 16:56:48 +02:00
Claude Paroz 65c1a37490 Converted GIS lookups for Oracle 2014-10-09 21:38:50 +02:00
Claude Paroz 2bd1bbc424 Converted GIS lookups to use the new Lookup API
Thanks Tim Graham, Anssi Kääriäinen and Marc Tamlyn for the
reviews.
2014-10-09 21:38:50 +02: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
Claude Paroz d1ca70110f Factorized schema_editor() at BaseDatabaseWrapper level 2014-09-26 08:50:16 +02:00
Tim Graham a8f07530a7 Fixed #23537 -- Added Oracle GIS SchemaEditor.
Thanks Shai Berger for review.
2014-09-25 20:16:54 -04: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
Marc Tamlyn c6fd1e904c Fixed Oracle GIS gml() test failure introduced by e910340; refs #18757. 2014-09-22 13:10:03 +01:00
Loic Bistuer c9a53035d6 Generate GeoManager from GeoQuerySet. Refs #20625.
This cleanup lays the groundwork for #23533 and also addresses
the issue that GeoManager.get_queryset() failed to pass the
database router hints to the QuerySet constructor.

Thanks Anssi Kääriäinen for the review.
2014-09-22 17:18:08 +07:00
Tim Graham 185ab9ffef Fixed Oracle GIS failures introduced by e9103402c0; refs #18757.
Thanks Marc Tamlyn for the patch.
2014-09-19 07:51:42 -04:00
Claude Paroz abc11b0a33 Fixed #23514 -- Prevented queries in PostGISOperations init
Thanks Mattia Procopio for the report.
2014-09-18 20:00:35 +02:00
Tim Graham 33e817a6d8 Added feature flag for geometry_field_introspection; refs #22632 and #23504. 2014-09-18 07:32:51 -04:00
Tim Graham 6c1a0581ab Added a feature flag for add_srs_entry support; refs #22632 and #23504. 2014-09-18 07:28:05 -04: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
Claude Paroz 60428ed5db Removed some more hardcoded backends in GIS tests
Refs #22632. Thanks Tim Graham for the review.
2014-08-26 20:08:00 +02:00
Claude Paroz ba1d707b0f Replaced no_mysql by connection features
Refs #22632. Thanks Tim Graham for the review.
2014-08-23 15:44:34 +02:00
Claude Paroz a7d964ab87 Replaced no_spatialite by connection features
Refs #22632. Thanks Tim Graham for the review.
2014-08-23 15:41:13 +02:00
Claude Paroz 46c7707e50 Replaced HAS_SPATIALREFSYS by a database feature 2014-08-23 15:41:13 +02: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
Florian Apolloner f915d39afe Fixed remove_field for spatialite schema changes. 2014-08-10 16:24:19 +02:00
Andrew Godwin 5f6558f82f Stop errors on older Spatialite versions that miss some tables 2014-08-05 21:09:37 +10:00
Andrew Godwin d4f62a7ae7 Fixed #23161: Drop PostGIS geography fields correctly 2014-08-04 14:06:33 +10:00
Andrew Godwin b508c1c317 Fixed #23153: Properly recreate spatialite triggers on alter table 2014-08-04 13:15:32 +10: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
Mitar 1ed6fbcf44 Fixed #21940 -- Added kwargs to contribute_to_class() of model fields..
Thanks Kronuz for the suggestion.
2014-08-01 07:41:28 -04: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
Claude Paroz 19d8f2ebf4 Adapted SpatialiteGeometryColumns model to spatialite >= 4
See also:
https://www.gaia-gis.it/fossil/libspatialite/wiki?name=switching-to-4.0
2014-07-23 12:10:23 +02:00
Alex Gaynor 985ad99a71 Fixed a flake8 warning 2014-06-29 11:15:50 -07:00
Claude Paroz f12b68af71 Fixed #16184 -- Fixed multiple PostGIS types introspection
Thanks radim.blazek@gmail.com for the report and initial patch.
Testing is tricky, as the failure condition is a bit of an edge
case. inspectapp.InspectDbTests should at least guarantee non
regression.
2014-06-28 16:18:24 +02:00
Tim Graham 95cc0e15b4 Fixed #22819 -- Renamed output_type -> output_field in query expression API.
Thanks jorgecarleitao for the suggestion.
2014-06-17 11:57:16 -04:00
Tim Graham bc0aba7786 Dropped support for SpatiaLite < 2.4. 2014-06-09 17:53:25 -04:00
Tim Graham 6b97ae3521 Added rollback emulation to spatialite backend; refs #22487. 2014-06-09 14:14:58 -04:00
Aymeric Augustin 6e5651e514 Gave unique names to SpatialRefSysModels.
Prevented clashes in the app registry.

Fixed #22790. Thanks timo for the report.
2014-06-08 21:15:47 +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 1dcc603eff Fixed several typos in Django 2014-05-28 17:39:14 -07:00
Greg Chapple b7aa7c4ab4 Fixed #20550 -- Added ability to preserve test db between runs 2014-05-28 16:22:46 +01:00
Claude Paroz e97b7a2677 Fixed #22714 -- Made contrib.gis use six-provided memoryview type
Thanks Tim Graham for the report.
2014-05-28 09:24:08 +02:00
Claude Paroz c5d73b687d Removed comment forgotten in 3caf957ed5 2014-05-24 16:22:08 +02:00
Claude Paroz 3caf957ed5 Removed GeoWhereNode, obsoleted by GISLookup 2014-05-24 16:18:45 +02:00
Alex Gaynor 2bcb8bfc8d Fix many many typos in comments throughout the codebase 2014-04-26 10:18:45 -07:00
Claude Paroz 2ffa6ca73a Added Spatialite support to the new migration framework
Refs #22451.
2014-04-23 13:46:11 +02:00
Claude Paroz 48c4ea4146 Used migration framework in GIS test tearDown 2014-04-23 13:45:41 +02:00
Claude Paroz 1667e736a7 Fixed PostGIS remove_field implementation
Fixed bad code introduced in 2f9d1576e8.
2014-04-21 22:42:11 +02:00
Claude Paroz 2f9d1576e8 Fixed removal of GIS column in PostGIS 1.x migration
Refs #22481.
2014-04-21 21:17:14 +02:00
Claude Paroz fb09a489ca Fixed adding new GIS column in PostGIS 1.x migration
Refs #22451.
2014-04-21 20:58:09 +02:00
Alex Gaynor 778ce245dd Corrected many style guide violations that the newest version of flake8 catches 2014-03-30 12:11:05 -07:00
Anssi Kääriäinen 21f208e66e Fixed #22250 -- regression in gis compiler for non-concrete fields
Thanks to gwahl@fusionbox.com for the report.
2014-03-29 07:58:25 +02:00
Chris Beaven b077ba7ac1 Add a useful stacklevel to some RemovedInDjango19Warnings 2014-03-27 15:44:52 +13:00
Simon Charette a6fc18594e Fixed PostGIS test failures. 2014-03-22 18:12:52 -04:00
Claude Paroz 210d0489c5 Fixed #21188 -- Introduced subclasses for to-be-removed-in-django-XX warnings
Thanks Anssi Kääriäinen for the idea and Simon Charette for the
review.
2014-03-08 09:57:40 +01:00
Rodolfo Carvalho 0d91225892 Fixed many typos in comments and docstrings.
Thanks Piotr Kasprzyk for help with the patch.
2014-03-03 07:38:09 -05:00
Michael Manfre 3ffeb93186 Ensure cursors are closed when no longer needed.
This commit touchs various parts of the code base and test framework. Any
found usage of opening a cursor for the sake of initializing a connection
has been replaced with 'ensure_connection()'.
2014-02-02 12:47:21 -05:00
Oliver George a4fbdcdf66 Fixed #21850 -- Made GeometryField.geodetic case insensitive 2014-01-22 09:26:38 +01:00
Anssi Kääriäinen 1f58834ac6 Fixed #21825 -- gis compiler uses self instead of qn for as_sql() 2014-01-19 10:21:57 +02:00
Anssi Kääriäinen 20bab2cf9d Fixed #16187 -- refactored ORM lookup system
Allowed users to specify which lookups or transforms ("nested lookus")
are available for fields. The implementation is now class based.

Squashed commit of the following:

commit fa7a7195f1
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 18 10:53:24 2014 +0200

    Added lookup registration API docs

commit eb1c8ce164
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Tue Jan 14 18:59:36 2014 +0200

    Release notes and other minor docs changes

commit 11501c29c9
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Jan 12 20:53:03 2014 +0200

    Forgot to add custom_lookups tests in prev commit

commit 83173b960e
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Jan 12 19:59:12 2014 +0200

    Renamed Extract -> Transform

commit 3b18d9f3a1
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Jan 12 19:51:53 2014 +0200

    Removed suggestion of temporary lookup registration from docs

commit 21d0c7631c
Merge: 2509006 f2dc442
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Jan 12 09:38:23 2014 -0800

    Merge pull request #2 from mjtamlyn/lookups_3

    Reworked custom lookups docs.

commit f2dc4429a1
Author: Marc Tamlyn <marc.tamlyn@gmail.com>
Date:   Sun Jan 12 13:15:05 2014 +0000

    Reworked custom lookups docs.

    Mostly just formatting and rewording, but also replaced the example
    using ``YearExtract`` to  use an example which is unlikely to ever be
    possible directly in the ORM.

commit 2509006506
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Jan 12 13:19:13 2014 +0200

    Removed unused import

commit 4fba5dfaa0
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 11 22:34:41 2014 +0200

    Added docs to index

commit 6d53963f37
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 11 22:10:24 2014 +0200

    Dead code removal

commit f9cc039007
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 11 19:00:43 2014 +0200

    A new try for docs

commit 33aa18a6e3
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 11 14:57:12 2014 +0200

    Renamed get_cols to get_group_by_cols

commit c7d5f8661b
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 11 14:45:53 2014 +0200

    Altered query string customization for backends vendors

    The new way is trying to call first method 'as_' + connection.vendor.
    If that doesn't exist, then call as_sql().

    Also altered how lookup registration is done. There is now
    RegisterLookupMixin class that is used by Field, Extract and
    sql.Aggregate. This allows one to register lookups for extracts and
    aggregates in the same way lookup registration is done for fields.

commit 90e7004ec1
Merge: 66649ff f7c2c0a
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 11 13:21:01 2014 +0200

    Merge branch 'master' into lookups_3

commit 66649ff891
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Jan 11 13:16:01 2014 +0200

    Some rewording in docs

commit 31b8faa627
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Dec 29 15:52:29 2013 +0200

    Cleanup based on review comments

commit 1016159f34
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Dec 28 18:37:04 2013 +0200

    Proof-of-concept fix for #16731

    Implemented only for SQLite and PostgreSQL, and only for startswith
    and istartswith lookups.

commit 193cd097ca
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Dec 28 17:57:58 2013 +0200

    Fixed #11722 -- iexact=F() produced invalid SQL

commit 08ed3c3b49
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Dec 21 23:59:52 2013 +0200

    Made Lookup and Extract available from django.db.models

commit b99c8d83c9
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Dec 21 23:06:29 2013 +0200

    Fixed review notes by Loic

commit 049eebc070
Merge: ed8fab7 b80a835
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Dec 21 22:53:10 2013 +0200

    Merge branch 'master' into lookups_3

    Conflicts:
    	django/db/models/fields/__init__.py
    	django/db/models/sql/compiler.py
    	django/db/models/sql/query.py
    	tests/null_queries/tests.py

commit ed8fab7fe8
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Dec 21 22:47:23 2013 +0200

    Made Extracts aware of full lookup path

commit 27a57b7aed
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Dec 1 21:10:11 2013 +0200

    Removed debugger import

commit 074e0f5aca
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Dec 1 21:02:16 2013 +0200

    GIS lookup support added

commit 760e28e72b
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Dec 1 20:04:31 2013 +0200

    Removed usage of Constraint, used Lookup instead

commit eac4776684
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Dec 1 02:22:30 2013 +0200

    Minor cleanup of Lookup API

commit 2adf50428d
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sun Dec 1 02:14:19 2013 +0200

    Added documentation, polished implementation

commit 32c04357a8
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Nov 30 23:10:15 2013 +0200

    Avoid OrderedDict creation on lookup aggregate check

commit 7c8b3a32cc
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Sat Nov 30 23:04:34 2013 +0200

    Implemented nested lookups

    But there is no support of using lookups outside filtering yet.

commit 4d219d4cde
Author: Anssi Kääriäinen <akaariai@gmail.com>
Date:   Wed Nov 27 22:07:30 2013 +0200

    Initial implementation of custom lookups
2014-01-18 11:46:19 +02:00
Anssi Kääriäinen 9918c11114 Fixed #21413 -- resolve_columns fields misalignment 2014-01-12 18:07:39 +02:00
Thomas Schreiber 7b119c1c77 only attempt to create the postgis extension when it does not already exist 2013-12-31 11:34:03 +01:00
Loic Bistuer a2814846ca Fixed E124 pep8 warnings. 2013-12-10 15:12:48 -05:00
Ramiro Morales 362dd68fb2 Added new 'srtext' spatialite 4.x SpatialRefSys column to its model.
This is for general consistency in the GeoDjango DB backends.
Thanks Claude for the fix.

Refs #19678.
2013-12-06 12:35:18 -03:00
Claude Paroz 482ca0cecc Renamed syncdb to migrate in spatialite backend 2013-12-06 10:00:09 +01:00
Christopher Medrela 7477a4ffde Fixed E125 pep8 warnings 2013-11-28 08:50:11 -05:00
Alex Gaynor a5b94d9d4e A handle of flake8 fixes 2013-11-27 16:42:39 -06:00
Andrew Godwin eece3c224e PostGIS schema editor support 2013-11-27 13:32:12 +00:00
Andrew Godwin 4fcfc31865 Add gis deconstruct() method (this does not make schema work) 2013-11-27 12:56:33 +00:00
Baptiste Mispelon 17912522ce Fixed #21504 -- Don't shadow database errors when testing for postgis version.
Thanks to trac user paultag for the report.
2013-11-24 14:34:43 +01:00
Claude Paroz 7e714827ea Don't initialize PostGIS-specific stuff for non-db connections
Refs #16969.
2013-11-09 11:28:16 +01:00
Florian Apolloner f40f90d63b Fixed regressions from 36ded01527.
Refs #21302
2013-11-03 12:45:15 +01:00
Alex Gaynor 4202d9cf0c Whitespace fix 2013-11-03 01:53:28 -07:00
Alex Gaynor 6c1b55d61a Re-expose Count here 2013-11-03 01:52:40 -07:00
coagulant 3bc0d46a84 Fixed all E261 warnings 2013-11-02 18:20:39 -04:00
Alex Gaynor 7548aa8ffd More attacking E302 violators 2013-11-02 13:12:09 -07:00
Tim Graham 36ded01527 Fixed #21302 -- Fixed unused imports and import *. 2013-11-02 15:24:56 -04:00
Alex Gaynor 19256f300e Continue to attack E302 violations 2013-11-02 10:18:46 -07:00
Alex Gaynor b9a90b371c Remove dsome import * 2013-10-26 20:57:08 -07:00
Alex Gaynor b35ff0d920 Fixed all the E203 violations 2013-10-26 18:27:42 -07:00
Alex Gaynor 9bf5610890 Start attacking E231 violations 2013-10-24 10:30:03 -07:00
Alasdair Nicol c3aa2948c6 Fixed #21298 -- Fixed E301 pep8 warnings 2013-10-23 13:45:03 +01:00
Tim Graham ae48d77ef8 Fixed E225 pep8 warnings. 2013-10-23 06:09:29 -04:00