We're building (a) a manifest file format specification, (b) a series of examples for different pipelines of how to generate them, (c) a series of examples of how to integrate them with various web frameworks and template engines.
For each one, we aim for a simple pipeline that compiles one or two different things (perhaps scss and some coffeescript) and outputs the files with sourcemaps, revision/hashing, plus a manifest file that provides the mapping for those hashes.
The goal would be to have the new assets-pipeline-stuff be compatible with the existing staticfiles module.
Ideally:
{% static 'app.js' %}
in the templatesThe typical compilation is:
./manage.py collectstatic
In details, this would mean:
assets-manifest
file and merge it with the usual oneThe collectstatic would now be:
At the end of those steps, external files will have been added to the Django manifest and into Django's storage backend, unless they are hosted at remote URLs (for instance on a CDN).
The changes to both the implicit extended Storage API used by collectstatic, and collectstatic itself (and probably the desirability of moving collectstatic into core, then overriding it in a contrib app to provide hashing behaviour) will probably necessitate a DEP.