From 90a936bd2845928a1475f99d9ee6d4192ef7654c 2014-07-23 23:59:43 From: MinRK Date: 2014-07-23 23:59:43 Subject: [PATCH] add strict arg to css_js setup decorator and attempt to build css on build_by (install) --- diff --git a/setup.py b/setup.py index c38b4fa..1ba3df7 100755 --- a/setup.py +++ b/setup.py @@ -228,7 +228,9 @@ class UploadWindowsInstallers(upload): self.upload_file('bdist_wininst', 'any', dist_file) setup_args['cmdclass'] = { - 'build_py': check_package_data_first(git_prebuild('IPython')), + 'build_py': css_js_prerelease( + check_package_data_first(git_prebuild('IPython')), + strict=False), 'sdist' : css_js_prerelease(git_prebuild('IPython', sdist)), 'upload_wininst' : UploadWindowsInstallers, 'submodule' : UpdateSubmodules, diff --git a/setupbase.py b/setupbase.py index bcefe79..ab02e55 100644 --- a/setupbase.py +++ b/setupbase.py @@ -18,6 +18,7 @@ import errno import os import sys +from distutils import log from distutils.command.build_py import build_py from distutils.command.build_scripts import build_scripts from distutils.command.install import install @@ -705,13 +706,19 @@ class JavascriptVersion(Command): f.write(line) -def css_js_prerelease(command): +def css_js_prerelease(command, strict=True): """decorator for building js/minified css prior to a release""" class DecoratedCommand(command): def run(self): self.distribution.run_command('jsversion') css = self.distribution.get_command_obj('css') css.minify = True - self.distribution.run_command('css') + try: + self.distribution.run_command('css') + except Exception as e: + if strict: + raise + else: + log.warn("Failed to build css sourcemaps: %s" % e) command.run(self) return DecoratedCommand