Update some database-related logic to support Django 1.6 and higher.

Review Request #8686 — Created Jan. 31, 2017 and submitted

Information

Djblets
release-0.10.x
7de4b42...

Reviewers

Different versions of Django have different accessors and classes for
parts of the ORM. This change adds compatibility for these accessors and
classes in a way that's compatible with Django 1.6 and higher.

We also have to re-implement cloning of Q() objects, since this was
removed in a recent version of Django.

Unit tests pass for Django 1.6, 1.7, 1.8, 1.9, and 1.10.

reviewbot
  1. Tool: Pyflakes
    Processed Files:
        djblets/db/query.py
        djblets/db/fields.py
        djblets/webapi/resources/base.py
    
    
    
    Tool: PEP8 Style Checker
    Processed Files:
        djblets/db/query.py
        djblets/db/fields.py
        djblets/webapi/resources/base.py
    
    
  2. 
      
david
  1. Ship It!
  2. 
      
chipx86
Review request changed
Status:
Completed
Change Summary:
Pushed to release-0.10.x (e46ea5b)