Report for week ending October 17, 2015:

This week I spent three days at Microsoft HQ in Seattle at the first "open 
source data camp". As I understand it, the "data camps" are normally held 
to inform Microsoft partners about current and upcoming offerings in 
Microsoft cloud services and to get feedback about them. This session was 
the first time that they invited members of the open source community (3 
for Django and 2 for Rails) as well as some startup/small business people 
who use open-source software (5 others).

Both groups were together on day one: an overview of Microsoft's cloud 
offerings and some technical discussion with Microsoft engineers about 
those products. This wasn't of much interest to me, but the idea seemed to 
be that we had to sit through this because the "data camp" budget was used 
to allow us to attend. On days two and three, the "users group" 
participated in more talks while the Django & Rails attendees worked with 
Microsoft engineers to give them some insight on what's needed to improve 
MSSQL/Azure database support as well as to actually write some some code.

Some of the things we accomplished:

* Completed an initial Jenkins integration on Windows: Microsoft engineers 
helped fill the gaps in my knowledge so that we could get our Jenkins CI 
infrastructure running the tests on Windows (SQLite, Python 2.7 + Python 
3.5 only; however, I think this should be sufficient for now as I can’t 
remember a time when we received a bug report for a database-specific 
Windows issue). I’ll probably add pull request integration once things are 
running smoothly. We still have at least one time-dependent test failure on 
Windows (ticket #25562). Unfortunately, the setup process on the Windows 
slave is entirely manual (unlike the setup of the Linux machines which is 
automated with Ansible playbooks), however, it's not very difficult once 
you know the steps which I'll document when I get a chance. An idea from 
one of their engineers was to try Appveyor (think Travis CI for Windows) 
and got a test integration working there as well. It's an option if the 
Jenkins solution proves difficult to maintain, but I think there's no need 
to add a new service to our workflow for now. 
http://djangoci.com/job/django-windows/

* Improved teardown strategy in schema tests to fix MSSQL support: Michael 
had some work on the 1.7-era on this, but the patch was never committed and 
didn't entirely work, so I updated it and merged it to master, 1.9, and 
1.8: https://github.com/django/django/pull/5433

* Investigated speeding up the django-mssql test suite: It takes something 
like 8 hours due to excessive constraint checking enabling/disabling which 
is very slow on MSSQL. This is no longer an issue on Django 1.9+ due the 
removal of deprecated initial data fixture loading, however, some solution 
for 1.8 seems important. I've proposed a pull request and am awaiting 
Michael's testing of it: https://github.com/django/django/pull/5438

* Discussed the long-term roadmap for MSSQL support in Django. I'll let 
Michael speak to the details of this.

On the last day, I wondered "what's next?" and voiced my skepticism about 
Microsoft following through with the resources to get support for Microsoft 
databases on par with our built-in database backends. During a conversation 
with Meet Bhagdev, the Microsoft program manager who invited us, I shared 
my idea of Microsoft hiring someone full-time to not only maintain the 
Microsoft database backends, but to participate in the Django community at 
large, a sort of "Microsoft Django fellow". Meet thought this wasn't out of 
the realm of possibility and encouraged me to bring it up at the executive 
Q&A that day with two of the SVPs. The execs seemed open to the idea and 
suggested it's mostly dependent on finding the right person. If you or 
someone you know is interested in this, let me know and I'll pass your name 
along.

There were also two Ruby on Rails community members in attendance. They 
learned about some difficulties of installing Rails on Windows and how 
that's really a diversity issues since most new programmers will be on 
Windows. That's something for the Django community to keep in mind, but I 
hope programs and tutorials like Django Girls will keep us honest.

Overall, I thought it was a worthwhile trip, especially if it results in a 
long-term partnership with Microsoft.

Other attendees for Django:

* Michiya Takahashi (maintainer of django-pyodbc-azure)

* Michael Manfre (maintainer of django-mssql)

Triaged

-------

https://code.djangoproject.com/ticket/25545 - ORM generates incorrect 
queries for m2m with disabled backward relations (duplicate/backported to 
1.8)

https://code.djangoproject.com/ticket/25537 - Model objects not showing on 
admin changelist page after changing M2M to ForeignKey (worksforme)

https://code.djangoproject.com/ticket/25551 - makemigrations when adding a 
ForeignKey to a newly created model along with a unique_together constraint 
must create fields before the unique_together constraint (accepted)

https://code.djangoproject.com/ticket/25554 - Django permissions cause data 
migration depending on permissions to fail (duplicate)

https://code.djangoproject.com/ticket/25552 - Admin readonly field help 
text show 'None' (wontfix)

https://code.djangoproject.com/ticket/25557 - Fix the UserCreationForm for 
custom user model (duplicate)

https://code.djangoproject.com/ticket/21894 - Error in example code in 
django.forms.Form.clean() (accepted)

https://code.djangoproject.com/ticket/25541 - Improve error reporting when 
loading invalid JSON fixtures (accepted)

https://code.djangoproject.com/ticket/25547 - refresh_from_db leaves 
FieldFile with reference to db_instance (accepted)

https://code.djangoproject.com/ticket/25553 - Add lazy version of 
admin_static's static (wontfix)

https://code.djangoproject.com/ticket/25563 - Data migration causes 
incorrect tests behavior when custom manager is using .defer() (accepted)

https://code.djangoproject.com/ticket/25559 - Conditional admin inline 
causes ValidationError (wontfix)

Authored

--------

https://github.com/django/django/pull/5413 - Fixed #25550 -- Deprecated 
direct assignment to the reverse side of a related set.

https://github.com/django/django/pull/5433 - Used 
SchemaEditor.delete_model() for teardown in schema tests.

Reviewed/committed

------------------

https://github.com/django/django/pull/5419 - Fixed #25535 -- Made 
ForeignObject checks less strict.

https://github.com/django/django/pull/5396 - Fixed #25506 -- Allowed 
filtering over a RawSQL annotation.

https://github.com/django/django/pull/5434 - Fixed #25558 -- Fixed 
nondeterministic test failure on Windows: test_clearsessions_command.

https://github.com/django/django/pull/5425 - Fixed #25346 -- Allowed 
collectstatic to delete broken symlinks.
https://github.com/django/django/pull/5429 - Fixed #25517 -- Made Concat 
function idempotent on SQLite.

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at http://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/4e9ff664-a35c-43d4-9b60-35f1a32deac2%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to