django/django — pull request #704 by tswicegood (2013-02-07 22:46:30+00:00)
Title: Ensure FK is properly set with default kwargs

This is all internal to ManyRelatedManager, but a custom m2m field that is instantiated and passes the default `through=None` value in will cause an exception.

Currently, the work around for this is to explicitly instantiate the ManyRelatedManager with `through=self.field.rel.through` within a custom m2m field's `__get__` method. That is backwards-incompatible with Django <= 1.4.2, however, resulting in code like [this in Armstrong][1].

This was a BC break that was introduced in Django 1.4.3. It was done in an effort to fix [#18823][2]. The specific commit was 611c4d6f1c24763e5e6e331a5dcf9b610288aaa8.

[1]: https://github.com/armstrong/armstrong.core.arm_content/commit/788aaf3fec743f36e7f540c34270b63fa43c279c
[2]: https://code.djangoproject.com/ticket/18823