def __init__(self): project_dir = os.path.abspath( os.path.dirname(os.path.dirname(__file__))) app_dir = os.path.join(project_dir, 'app') public_dir = os.path.join(project_dir, 'public') self.gears = Environment(public_dir, public_assets=[self._public_assets], fingerprinting=False, manifest_path=False) self.gears.finders.register( ExtFinder([app_dir], ['.coffee', '.scss', '.handlebars'])) self.gears.compilers.register('.scss', SCSSCompiler.as_handler()) self.gears.compilers.register('.coffee', CoffeeScriptCompiler.as_handler()) self.gears.compilers.register('.handlebars', CustomHandlebarsCompiler.as_handler()) if env.is_prod(): self.gears.compressors.register('application/javascript', UglifyJSCompressor.as_handler()) self.gears.compressors.register('text/css', CleanCSSCompressor.as_handler()) self.gears.register_defaults()
def __init__(self): project_dir = os.path.abspath( os.path.dirname(os.path.dirname(__file__))) app_dir = os.path.join(project_dir, 'app') public_dir = os.path.join(project_dir, 'public') self.gears = Environment(public_dir, fingerprinting=False, manifest_path=False) self.gears.finders.register( ExtFinder([app_dir], ['.coffee', '.scss', '.handlebars', '.js', '.css'], [ 'app.handlebars', 'partials/header.handlebars', 'partials/footer.handlebars' ])) self.gears.compilers.register('.scss', LibsassCompiler.as_handler()) self.gears.compilers.register('.coffee', CoffeeScriptCompiler.as_handler()) self.gears.compilers.register('.handlebars', CustomHandlebarsCompiler.as_handler()) if env.is_prod(): self.gears.compressors.register('text/css', CleanCSSCompressor.as_handler()) self.gears.register_defaults()
def setUp(self): self.compiler = SASSCompiler() self.env = Environment(root=OUTPUT_DIR, public_assets=(r'.*\.css', ), fingerprinting=False) self.env.finders.register(FileSystemFinder([SCSS_DIR])) self.env.compilers.register('.scss', self.compiler.as_handler()) self.env.register_defaults() self.env.save()
def init_environment(self, app): environment = Environment( root=self.get_static_folder(app), public_assets=self.get_public_assets(app), cache=self.get_cache(app), ) if self.defaults: environment.register_defaults() environment.finders.register(self.get_default_finder(app)) if self.compilers is not None: for extension, compiler in self.compilers.items(): environment.compilers.register(extension, compiler) if self.compressors is not None: for mimetype, compressor in self.compressors.items(): environment.compressors.register(mimetype, compressor) app.extensions['gears']['environment'] = environment
def get_environment(self, fixture): environment = Environment(os.path.join(TESTS_DIR, 'static')) environment.finders.register(self.get_finder(fixture)) environment.mimetypes.register_defaults() environment.preprocessors.register_defaults() return environment
def setUp(self): self.environment = Environment(STATIC_DIR) self.environment.register_defaults() self.environment.finders.register(FakeFinder()) self.environment.compilers.register( '.coffee', FakeCompiler('application/javascript'))
def setUp(self): self.environment = Environment(STATIC_DIR)
def setUp(self): self.environment = Environment(STATIC_DIR) self.environment.register_defaults() self.environment.finders.register(FileSystemFinder([ASSETS_DIR]))
def get_environment(self, fixture): finder = self.get_finder(fixture) environment = Environment(os.path.join(TESTS_DIR, 'static')) environment.finders.register(finder) environment.register_defaults() return environment
def setUp(self): self.environment = Environment('assets') self.coffee_script_compiler = CoffeeScriptCompiler.as_handler() self.stylus_compiler = StylusCompiler.as_handler() self.template_compiler = TemplateCompiler.as_handler()
def setUp(self): self.environment = Environment('assets')
} GEARS_DEBUG = getattr(settings, 'GEARS_DEBUG', settings.DEBUG) GEARS_URL = getattr(settings, 'GEARS_URL', settings.STATIC_URL) path = getattr(settings, 'GEARS_CACHE', DEFAULT_CACHE) if isinstance(path, (list, tuple)): path, options = path else: options = None cache = get_cache(path, options) environment = Environment( root=getattr(settings, 'GEARS_ROOT'), public_assets=getattr(settings, 'GEARS_PUBLIC_ASSETS', DEFAULT_PUBLIC_ASSETS), cache=cache, ) for path in getattr(settings, 'GEARS_FINDERS', DEFAULT_FINDERS): if isinstance(path, (list, tuple)): path, options = path else: options = None environment.finders.register(get_finder(path, options)) mimetypes = getattr(settings, 'GEARS_MIMETYPES', DEFAULT_MIMETYPES) for extension, mimetype in mimetypes.items(): environment.mimetypes.register(extension, mimetype) for extension, path in getattr(settings, 'GEARS_COMPILERS', {}).items():
GEARS_DEBUG = getattr(settings, 'GEARS_DEBUG', settings.DEBUG) GEARS_URL = getattr(settings, 'GEARS_URL', settings.STATIC_URL) path = getattr(settings, 'GEARS_CACHE', DEFAULT_CACHE) if isinstance(path, (list, tuple)): path, options = path else: options = None cache = get_cache(path, options) environment = Environment( root=getattr(settings, 'GEARS_ROOT'), public_assets=getattr(settings, 'GEARS_PUBLIC_ASSETS', DEFAULT_PUBLIC_ASSETS), cache=cache, gzip=getattr(settings, 'GEARS_GZIP', False), fingerprinting=getattr(settings, 'GEARS_FINGERPRINTING', True), ) for path in getattr(settings, 'GEARS_FINDERS', DEFAULT_FINDERS): if isinstance(path, (list, tuple)): path, options = path else: options = None environment.finders.register(get_finder(path, options)) mimetypes = getattr(settings, 'GEARS_MIMETYPES', DEFAULT_MIMETYPES) for extension, mimetype in mimetypes.items(): environment.mimetypes.register(extension, mimetype)
path = path.lstrip('/') fingerprint_path = env.manifest.files[path] asset[path_type] = fingerprint_path with open(filename, 'wb') as f: f.write(unicode(soup.prettify())) def delete_dest(): if os.path.exists(DEST_DIR): shutil.rmtree(DEST_DIR) if __name__ == '__main__': #clean slate delete_dest() #defines where files will be emitted env = Environment(DEST_DIR, public_assets=( lambda path: any(path.endswith(ext) for ext in ('.css', '.js', '.html')), lambda path: any(path.startswith(ext) for ext in ('fonts', 'images'))) ) env.finders.register(FileSystemFinder([SOURCE_DIR])) env.register_defaults() env.save() reference_fingerprinted_files(env) delete_unused_files(env.manifest)
import os from gears.environment import Environment from gears.finders import FileSystemFinder from gears_babel import Babel6to5Compiler ROOT_DIR = os.path.abspath(os.path.dirname(__file__)) ASSETS_DIR = os.path.join(ROOT_DIR, 'assets') STATIC_DIR = os.path.join(ROOT_DIR, 'static') env = Environment(STATIC_DIR) env.finders.register(FileSystemFinder([ASSETS_DIR])) env.compilers.register('.jsx', Babel6to5Compiler.as_handler()) env.register_defaults() if __name__ == '__main__': env.save()