In six 1.4, the signature of with_metaclass has changed from with_metaclass(meta, base=object) to with_metaclass(meta, *bases), allowing for multiple bases. This breaks django-jsonfield, which uses the base kwarg name explicitly. Since Django 1.6b3 updated the bundled django.utils.six to version 1.4.1, this also makes jsonfield broken with Django 1.6b3.
This pull request fixes django-jsonfield's use of six.with_metaclass to not specify the base as a kwarg, but rather as a positional arg, making it compatible with both older and newer versions of Django/six.
Fix signature of six.with_metaclass.