This allows any file object to be used--even those that don't have a
`field` attribute. For example, you could theoretically use one spec
field as a source for another.
This marks a major step towards centralizing some of the "spec" logic
and creating a single access point for them. Because `ImageSpecFields`
are just alternative interfaces for defining and registering specs,
they can be accessed and overridden in the same manner as other specs
(like those used by template tags): via the spec registry.
Somewhere along the line, a change got merged that stopped using the
receivers module. This re-integrates it and moves changes made to the
old receivers (static methods on ImageSpecField) to them.
This new feature gives the user more control over *when* their images
are validated. Image cache backends are now exclusively for controlling
the *how*. This means you won't have to write a lot of code when you
just want to change one or the other.
* release/2.0.2: (25 commits)
Changelog for 2.0.2.
Bumping the version number.
Change assertRaises for Python 2.6 compatibility
Test correct versions of Django
Fix docs typo; closes#147
fix API documentation
Change how signals are used
Add __init__ to Reflection processor; closes#141
Add Google Group to README
Use django-appconf
Allow callables for AdminThumbnail image_field arg
Whoops! Messed that up.
Code blocks.
Fix pickling of ImageSpecFieldFile
Create failing test to illustrate #97
Remove unused stuff
Derp, forgot to change the tox command.
add irc channel to docs and README
Adding a travis-ci configuration file.
Adding basepython to the tox directives.
...
Conflicts:
docs/changelog.rst
docs/conf.py
imagekit/__init__.py
Signals are now connected without specifying the class and non-IK
models are filtered out in the receivers. This is necessary because of
a bug with how Django handles abstract models.
Closes#126
While this change means users can no longer specify their own filenames,
changing a property of a processor, for example, will now result in a
new image. This solves a lot of the previous invalidation issues.