annotate piecrust/processing/sass.py @ 550:6f216c1ab6b1

bake: Add a flag to know which record entries got collapsed from last run. This makes it possible to find entries for things that were actually baked during the current run, as opposed to skipped because they were "clean".
author Ludovic Chabant <ludovic@chabant.com>
date Tue, 04 Aug 2015 21:22:30 -0700
parents a406b75c4bea
children 81d9c3a3a0b5
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
1 import os
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
2 import os.path
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
3 import json
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
4 import hashlib
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
5 import logging
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
6 import platform
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
7 import subprocess
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
8 from piecrust.processing.base import SimpleFileProcessor
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
9 from piecrust.processing.tree import FORCE_BUILD
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
10
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
11
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
12 logger = logging.getLogger(__name__)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
13
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
14
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
15 class SassProcessor(SimpleFileProcessor):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
16 PROCESSOR_NAME = 'sass'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
17
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
18 def __init__(self):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
19 super(SassProcessor, self).__init__(
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
20 extensions={'scss': 'css', 'sass': 'css'})
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
21 self._conf = None
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
22 self._map_dir = None
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
23
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
24 def initialize(self, app):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
25 super(SassProcessor, self).initialize(app)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
26
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
27 def onPipelineStart(self, pipeline):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
28 super(SassProcessor, self).onPipelineStart(pipeline)
414
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
29
481
aa686b8fbfd0 bake: Fix random crash with the Sass processor.
Ludovic Chabant <ludovic@chabant.com>
parents: 414
diff changeset
30 self._map_dir = os.path.join(pipeline.tmp_dir, 'sass')
414
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
31 if pipeline.is_first_worker:
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
32 if not os.path.isdir(self._map_dir):
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
33 os.makedirs(self._map_dir)
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
34
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
35 # Ignore include-only Sass files.
414
c4b3a7fd2f87 bake: Make pipeline processing multi-process.
Ludovic Chabant <ludovic@chabant.com>
parents: 371
diff changeset
36 pipeline.addIgnorePatterns(['_*.scss', '_*.sass'])
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
37
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
38 def getDependencies(self, path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
39 if _is_include_only(path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
40 raise Exception("Include only Sass files should be ignored!")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
41
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
42 map_path = self._getMapPath(path)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
43 try:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
44 with open(map_path, 'r') as f:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
45 dep_map = json.load(f)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
46 except IOError:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
47 # Map file not found... rebuild.
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
48 logger.debug("No map file found for Sass file '%s' at '%s'. "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
49 "Rebuilding." % (path, map_path))
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
50 return FORCE_BUILD
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
51
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
52 if dep_map.get('version') != 3:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
53 logger.warning("Unknown Sass map version. Rebuilding.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
54 return FORCE_BUILD
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
55
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
56 sources = dep_map.get('sources', [])
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
57 deps = list(map(_clean_scheme, sources))
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
58 return deps
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
59
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
60 def _doProcess(self, in_path, out_path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
61 self._ensureInitialized()
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
62
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
63 if _is_include_only(in_path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
64 raise Exception("Include only Sass files should be ignored!")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
65
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
66 sourcemap = 'none'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
67 if self.app.cache.enabled:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
68 sourcemap = 'file'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
69
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
70 args = [self._conf['bin'],
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
71 '--sourcemap=%s' % sourcemap,
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
72 '--style', self._conf['style']]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
73
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
74 cache_dir = self._conf['cache_dir']
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
75 if cache_dir:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
76 args += ['--cache-location', cache_dir]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
77 else:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
78 args += ['--no-cache']
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
79
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
80 for lp in self._conf['load_paths']:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
81 args += ['-I', lp]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
82
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
83 args += self._conf['options']
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
84 args += [in_path, out_path]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
85 logger.debug("Processing Sass file: %s" % args)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
86
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
87 # On Windows, we need to run the process in a shell environment
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
88 # otherwise it looks like `PATH` isn't taken into account.
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
89 shell = (platform.system() == 'Windows')
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
90 try:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
91 retcode = subprocess.call(args, shell=shell)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
92 except FileNotFoundError as ex:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
93 logger.error("Tried running Sass processor with command: %s" %
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
94 args)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
95 raise Exception("Error running Sass processor. "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
96 "Did you install it?") from ex
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
97
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
98 # The sourcemap is generated next to the CSS file... there doesn't
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
99 # seem to be any option to override that, sadly... so we need to move
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
100 # it to the cache directory.
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
101 if self.app.cache.enabled:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
102 src_map_file = out_path + '.map'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
103 dst_map_file = self._getMapPath(in_path)
499
a406b75c4bea sass: Overwrite the old map file with the new one always.
Ludovic Chabant <ludovic@chabant.com>
parents: 481
diff changeset
104 if os.path.exists(dst_map_file):
a406b75c4bea sass: Overwrite the old map file with the new one always.
Ludovic Chabant <ludovic@chabant.com>
parents: 481
diff changeset
105 os.remove(dst_map_file)
a406b75c4bea sass: Overwrite the old map file with the new one always.
Ludovic Chabant <ludovic@chabant.com>
parents: 481
diff changeset
106 os.rename(src_map_file, dst_map_file)
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
107
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
108 if retcode != 0:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
109 raise Exception("Error occured in Sass compiler. Please check "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
110 "log messages above for more information.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
111
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
112 return True
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
113
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
114 def _ensureInitialized(self):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
115 if self._conf is not None:
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
116 return
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
117
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
118 self._conf = self.app.config.get('sass') or {}
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
119 self._conf.setdefault('bin', 'scss')
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
120 self._conf.setdefault('style', 'nested')
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
121 self._conf.setdefault('load_paths', [])
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
122 if not isinstance(self._conf['load_paths'], list):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
123 raise Exception("The `sass/load_paths` configuration setting "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
124 "must be an array of paths.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
125 self._conf.setdefault('options', [])
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
126 if not isinstance(self._conf['options'], list):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
127 raise Exception("The `sass/options` configuration setting "
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
128 "must be an array of arguments.")
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
129
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
130 cache_dir = None
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
131 if self.app.cache.enabled:
371
c2ca72fb7f0b caching: Use separate caches for config variants and other contexts.
Ludovic Chabant <ludovic@chabant.com>
parents: 196
diff changeset
132 cache_dir = os.path.join(self.app.sub_cache_dir, 'sass')
196
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
133 self._conf.setdefault('cache_dir', cache_dir)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
134
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
135 def _getMapPath(self, path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
136 map_name = "%s_%s.map" % (
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
137 os.path.basename(path),
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
138 hashlib.md5(path.encode('utf8')).hexdigest())
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
139 map_path = os.path.join(self._map_dir, map_name)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
140 return map_path
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
141
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
142
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
143 def _clean_scheme(p):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
144 if p.startswith('file://'):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
145 return p[7:]
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
146 return p
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
147
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
148
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
149 def _is_include_only(path):
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
150 name = os.path.basename(path)
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
151 return len(name) > 0 and name[0] == '_'
154b8df04829 processing: Add Compass and Sass processors.
Ludovic Chabant <ludovic@chabant.com>
parents:
diff changeset
152