Most JavaScript packages wrap their code in IIFEs, which is good. Pipeline used to concatenate JS only with a newline. That can break those IIFES though: (function() { // package A }()) // No semicolon! Most people put one here, but unfortunately not all! (function() { // package B }()); The above is equivalent to: (function() { // package A }())(function() { // package B }()); Suddenly we have a function call! With this commit, JS is concatenated with a newline followed by a semicolon, which fixes the above issue: (function() { // package A }()) // No semicolon! Most people put one here, but unfortunately not all! ;(function() { // package B }()); There is no need to worry about superfluos semicolons, such as: (function() { // package A }()); ;;(function() { // package B }()); That is still valid JavaScript and the extra semicolons will be removed by the minifier.
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
compilers | Loading commit data... | |
compressors | Loading commit data... | |
jinja2/pipeline | Loading commit data... | |
templates/pipeline | Loading commit data... | |
templatetags | Loading commit data... | |
__init__.py | Loading commit data... | |
collector.py | Loading commit data... | |
conf.py | Loading commit data... | |
exceptions.py | Loading commit data... | |
finders.py | Loading commit data... | |
glob.py | Loading commit data... | |
manifest.py | Loading commit data... | |
middleware.py | Loading commit data... | |
packager.py | Loading commit data... | |
signals.py | Loading commit data... | |
storage.py | Loading commit data... | |
utils.py | Loading commit data... |