Always use pipeline compilers, add babel.

Review Request #7954 — Created Feb. 10, 2016 and submitted — Latest diff uploaded


Review Board


This change switches us over to using pipeline's compilers all the time, not
just when PIPELINE_ENABLED = True, as well as adding the babel compiler to
the list. This means that compilation of LESS (and ES6!) happens on the
back-end instead of the front-end during development.

This is better than before because instead of recompiling all the stylesheets
on page load, we do it on-demand, and pipeline does mtime checks to verify
whether it needs to actually do any work. This significantly speeds up reloads
during development.

This adds new dev dependencies on lessc and babel. These are included in a
package.json file that allows one to just run "npm install" to get everything

  • Verified that recompile on-demand from within the devserver worked as
  • Converted common.js to common.es6 and made use of some ES6 features. Verified
    that what I got in the browser was transpiled ES5.
  • Converted a JS file in an extension to ES6 and saw similar results.