There are two parts to this email. First relates to the current state of django-mssql. A version of the backend that supports Django 1.8 will be released in the next few weeks. I apologize for the delay, but my ability to focus on the project was basically non-existent for nearly a year due to personal reasons. The backend is currently failing some of Django's test suite and will likely be released before all of the issues are resolved. The biggest unresolved issues right now relate to certain schema migrations and some failing tests related to prefetch related that I haven't had time to investigate yet. I plan on releasing with a list of known bugs, so if you use this backend, please test the latest commits against your project and let me know if you run in to any issues. Post your found errors on the django-mssql issue tracker [1]. I will not release if there are any data corruption or other blocking level bugs. I'm planning this to be the last major release using adodbapi and the underlying ADO drivers.
Moving forward, django-mssql will be rewritten from scratch to use the Microsoft developed ODBC drivers. These drivers are officially supported by Microsoft and will be cross platform; Windows and Linux support exists and OSX support is currently being worked on. Despite using ODBC drivers, this backend will specifically target MSSQL to take advantage of any features or performance improvements that are possible, and to reduce the support overhead of working against any random database that provides an ODBC interface. Microsoft has stated their willingness to contribute engineering resources towards this backend.
I'd like this soon to be created repo to live under Django's github account and to start the conversation about if this is desirable and what that means for the backend and Django.
Why start from scratch? Sometimes the slate needs to be wiped clean to remove mistakes of the past. Django-mssql has accumulated a lot of crufty code over the years for various reasons. The existing ODBC backends are in various states of support with slightly differing goals; generic ODBC, Azure specific, etc. To me the most important reason is, I want to start from scratch to help document what is involved with creating a database backend.
One concern that has been previously raised relates to handling regressions. It is my expectation that individual commits to Django would be allowed to break the backend's tests, but that they will be resolved before release.
If you have questions related to MSSQL or what are the expectations for having an officially support Django database backend, please share them.
Regards,
Michael Manfre