##// END OF EJS Templates
Better lessc detection/handling....
Better lessc detection/handling. * lessc@1.5.0 now invalid * more help if lessc not found

File last commit:

r16291:0cb4ba2c
r16291:0cb4ba2c
Show More
fabfile.py
50 lines | 1.8 KiB | text/x-python | PythonLexer
Matthias BUSSONNIER
migrate from make to fabric
r9299 """ fabfile to prepare the notebook """
from fabric.api import local,lcd
from fabric.utils import abort
import os
MinRK
pin lessc to 1.4...
r15059 from distutils.version import LooseVersion as V
from subprocess import check_output
Matthias BUSSONNIER
migrate from make to fabric
r9299
MinRK
add IPython-only CSS...
r11337 pjoin = os.path.join
Matthias BUSSONNIER
migrate from make to fabric
r9299 static_dir = 'static'
MinRK
remove unused components...
r10523 components_dir = os.path.join(static_dir, 'components')
Matthias BUSSONNIER
migrate from make to fabric
r9299
MinRK
pin lessc to 1.4...
r15059 min_less_version = '1.4.0'
max_less_version = '1.5.0' # exclusive
MinRK
add IPython-only CSS...
r11337
Brian E. Granger
Splitting notebook.less into separate files.
r10730 def css(minify=True, verbose=False):
Matthias BUSSONNIER
migrate from make to fabric
r9299 """generate the css from less files"""
MinRK
add IPython-only CSS...
r11337 for name in ('style', 'ipython'):
source = pjoin('style', "%s.less" % name)
target = pjoin('style', "%s.min.css" % name)
_compile_less(source, target, minify, verbose)
Brian E. Granger
Adding files that I mised in the last commit.
r10713
Brian E. Granger
Splitting notebook.less into separate files.
r10730 def _to_bool(b):
if not b in ['True', 'False', True, False]:
abort('boolean expected, got: %s' % b)
return (b in ['True', True])
def _compile_less(source, target, minify=True, verbose=False):
MinRK
add IPython-only CSS...
r11337 """Compile a less file by source and target relative to static_dir"""
Brian E. Granger
Splitting notebook.less into separate files.
r10730 minify = _to_bool(minify)
verbose = _to_bool(verbose)
min_flag = '-x' if minify is True else ''
ver_flag = '--verbose' if verbose is True else ''
MinRK
pin lessc to 1.4...
r15059
# pin less to 1.4
Aron Ahmadia
Better lessc detection/handling....
r16291 try:
out = check_output(['lessc', '--version'])
except OSError as err:
raise ValueError("Unable to find lessc. Please install lessc >= %s and < %s " \
% (min_less_version, max_less_version))
MinRK
pin lessc to 1.4...
r15059 out = out.decode('utf8', 'replace')
less_version = out.split()[1]
if V(less_version) < V(min_less_version):
raise ValueError("lessc too old: %s < %s" % (less_version, min_less_version))
Aron Ahmadia
Better lessc detection/handling....
r16291 if V(less_version) >= V(max_less_version):
raise ValueError("lessc too new: %s >= %s" % (less_version, max_less_version))
MinRK
pin lessc to 1.4...
r15059
Matthias BUSSONNIER
migrate from make to fabric
r9299 with lcd(static_dir):
MinRK
we don't bundle lessc anymore, remove its vestiges
r14176 local('lessc {min_flag} {ver_flag} {source} {target}'.format(**locals()))
Matthias BUSSONNIER
migrate from make to fabric
r9299