The p01.recipe.cdn:app
recipe generates a script which is able to extract
content delivery resources defined by the p01.cdn meta directives from a
project to a given folder. Additional there is a minify recipe which generates
a minify script which is able to collect resources from a local project or
released python packages, minify and bundle them. And there is a glue recipe
which is able to generate sprite images. In short words, three is everything
you will need to generate and extract resources for a content delivery network.
Detailed Documentation
======
README
This buildout recipe package offers 3 different concepts. This 3 concept allows
you to reduce the resources size and offload the resources from your
application server. The nice thing is, that you can start your application with
different configurations if you like to server the minified and static or the
local non monified resource versions. The p01.cdn package also offers a version
manager which allows to use different resource versioning concepts.
Since version 1.0.0 this package is offering versiong per file and doesn't
require to use one version for all resources. The optinal p01.recipe.cdn:setup
recipe creates a script which is able to generate a version map and the related
zrt-replace directives and stores them in a json data map and a less file
which can get included in your related less files.
sprites
The first concept allows to generate sprite images and the relevant css styles
pointing to the right sprite background position. This recipe uses the
spritemapper python package
minify
The second concept allows to minify javascript or CSS files. The recipe supports
the following python minify libraries.
jsmin: http://pypi.python.org/pypi/jsmin
lpjsmin: http://pypi.python.org/pypi/lpjsmin
slimit: http://pypi.python.org/pypi/slimit
cssmin: http://pypi.python.org/pypi/cssmin
content delivery network
The third concept allows to extract CDN (content delivery network) resources
based on p01.cdn into a folder structure.
=======
CHANGES
1.1.2 (2015-09-11)
- bugfix: fix broken i18n cdn resource path extraction
1.1.1 (2015-09-03)
- feature: use better error message if a zrt-resource include fails because
of a missing resource (adapter) lookup.
1.1.0 (2015-06-30)
-
feature: check version before write the verisons and zrt-replace directives
the the related files. This prevents that the less compiler get invoked for
nothing because fo the modified zrt-replace.less file.
-
bugfix: fix i18n resource extraction
1.0.0 (2015-06-29)
-
feature: support pkg, file include in header option. This allows us to
include files with generated zrt-replace arguments. One usecase for this new
option is the new cdn extraction concept which is able to version each
resource file based on subversion version or the related package version.
This new concept generates a file including all the related zrt-replace.less
rules.
-
feature: switch to json config file based minify script processing. This
allows us to use larger headers and source files and isn't limited by
cmd line length.
-
feature: added option for extract each resource with it's own version based
on subversion version. See p01.cdn version 1.0.0 for support cdn resources.
-
feature: generate zrt-replace.less for extracted resources including all
the related zrt-replace rules. This file can get included as header option
in the p01.recipe.cdn:minify recipe
0.5.7 (2015-03-17)
- bugfix: support missing parser instance. The parser was missing for show an
error message, e.g. missing directory path
0.5.6 (2014-06-10)
- extract: print the current layer
0.5.5 (2014-05-08)
-
bugfix: The skip option didn't work. Now you can define optional files by
it's filename and the minify script will only include this skipped files
and not minify the file source.
-
bugfix: The libs option didn't work. Now you can define different minify
libraries for each file.
0.5.4 (2013-11-13)
- Output the resource parameters when extract fails
0.5.3 (2013-03-27)
- bugfix: use an empty list as default skip option and not None
0.5.2 (2013-03-19)
-
feature: support skip option in extract recipe. This allows to define a list
of filenames thcih get not extracted to the output. This allows to skip the
source files from get deployed to the cdn output folder.
-
feature: support slimit mangle, mangle_toplevel and cssmin wrap options. You
can use them as slimit_mangle, slimit_mangle_toplevel and cssmin_wrap in your
buildout.
0.5.1 (2013-01-28)
- improve error handling, show traceback from executed method
0.5.0 (2012-11-16)