We only needed it because Django 1.4 shipped with a pretty old version
of six. Support for that has been removed, and Django 1.5 ships with six
1.6.1, which is more current than we required.
This nicely avoids an issue with django-extra-views pinning a six
version which caused the sandbox build to fail:
https://travis-ci.org/tangentlabs/django-oscar/jobs/32223978#L971
Previously, the 'key' kwarg was not respected and all products would get
added to the first wishlist.
Thanks to @DanielChu for reporting, and supplying a fix.
Fixes #1216
Allow explicitly setting slug field even if saving for first time
E.g. Modelname.objects.create(slug='123', name='hi') would otherwise not
work, as add was True (first time save) and AutoSlugField's logic would
just create a slug from the name. It now checks if the slug field is set
already, and if it is, just returns the set slug.
It is important to note that explicitly specifying a slug does skip the
uniqueness validation.
A lot of Oscar's models have slugs that are populated from other fields
in the respective save() methods.
But currently there's no logic to check for duplicate slugs.
AutoSlugField does both the population and ensures uniqueness.