less-execjs 2.6.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (632) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +7 -0
  3. data/.gitmodules +9 -0
  4. data/.rubocop.yml +8 -0
  5. data/.travis.yml +19 -0
  6. data/Gemfile +3 -0
  7. data/LICENSE +177 -0
  8. data/README.md +55 -0
  9. data/Rakefile +8 -0
  10. data/bin/lessc +22 -0
  11. data/less-execjs.gemspec +34 -0
  12. data/lib/less-execjs.rb +1 -0
  13. data/lib/less.rb +29 -0
  14. data/lib/less/compiler.js +24 -0
  15. data/lib/less/defaults.rb +15 -0
  16. data/lib/less/errors.rb +16 -0
  17. data/lib/less/js/image-size.js +4 -0
  18. data/lib/less/js/image-size/.gitignore +7 -0
  19. data/lib/less/js/image-size/.jshintrc +19 -0
  20. data/lib/less/js/image-size/.travis.yml +12 -0
  21. data/lib/less/js/image-size/Contributors.md +9 -0
  22. data/lib/less/js/image-size/LICENSE +9 -0
  23. data/lib/less/js/image-size/Readme.md +87 -0
  24. data/lib/less/js/image-size/bin/image-size.js +36 -0
  25. data/lib/less/js/image-size/lib/detector.js +19 -0
  26. data/lib/less/js/image-size/lib/index.js +104 -0
  27. data/lib/less/js/image-size/lib/readUInt.js +11 -0
  28. data/lib/less/js/image-size/lib/types.js +12 -0
  29. data/lib/less/js/image-size/lib/types/bmp.js +17 -0
  30. data/lib/less/js/image-size/lib/types/gif.js +19 -0
  31. data/lib/less/js/image-size/lib/types/jpg.js +62 -0
  32. data/lib/less/js/image-size/lib/types/png.js +23 -0
  33. data/lib/less/js/image-size/lib/types/psd.js +17 -0
  34. data/lib/less/js/image-size/lib/types/svg.js +78 -0
  35. data/lib/less/js/image-size/lib/types/tiff.js +118 -0
  36. data/lib/less/js/image-size/lib/types/webp.js +51 -0
  37. data/lib/less/js/image-size/package.json +49 -0
  38. data/lib/less/js/image-size/specs/.jshintrc +9 -0
  39. data/lib/less/js/image-size/specs/complexity.js +58 -0
  40. data/lib/less/js/image-size/specs/fs-close.spec.js +61 -0
  41. data/lib/less/js/image-size/specs/images/invalid/malformed.svg +1 -0
  42. data/lib/less/js/image-size/specs/images/invalid/sample.png +0 -0
  43. data/lib/less/js/image-size/specs/images/invalid/width.svg +1 -0
  44. data/lib/less/js/image-size/specs/images/valid/bmp/sample.bmp +0 -0
  45. data/lib/less/js/image-size/specs/images/valid/gif/sample.gif +0 -0
  46. data/lib/less/js/image-size/specs/images/valid/jpg/large.jpg +0 -0
  47. data/lib/less/js/image-size/specs/images/valid/jpg/progressive.jpg +0 -0
  48. data/lib/less/js/image-size/specs/images/valid/jpg/sample.jpg +0 -0
  49. data/lib/less/js/image-size/specs/images/valid/jpg/sampleExported.jpg +0 -0
  50. data/lib/less/js/image-size/specs/images/valid/jpg/very-large.jpg +0 -0
  51. data/lib/less/js/image-size/specs/images/valid/png/sample.png +0 -0
  52. data/lib/less/js/image-size/specs/images/valid/psd/sample.psd +0 -0
  53. data/lib/less/js/image-size/specs/images/valid/svg/percentage.svg +4 -0
  54. data/lib/less/js/image-size/specs/images/valid/svg/single-quotes.svg +5 -0
  55. data/lib/less/js/image-size/specs/images/valid/svg/viewbox-height.svg +4 -0
  56. data/lib/less/js/image-size/specs/images/valid/svg/viewbox-width-height.svg +4 -0
  57. data/lib/less/js/image-size/specs/images/valid/svg/viewbox-width.svg +4 -0
  58. data/lib/less/js/image-size/specs/images/valid/svg/viewbox.svg +4 -0
  59. data/lib/less/js/image-size/specs/images/valid/svg/width-height.svg +5 -0
  60. data/lib/less/js/image-size/specs/images/valid/tiff/big-endian.tiff +0 -0
  61. data/lib/less/js/image-size/specs/images/valid/tiff/jpeg.tiff +0 -0
  62. data/lib/less/js/image-size/specs/images/valid/tiff/little-endian.tiff +0 -0
  63. data/lib/less/js/image-size/specs/images/valid/webp/lossless.webp +0 -0
  64. data/lib/less/js/image-size/specs/images/valid/webp/lossy.webp +0 -0
  65. data/lib/less/js/image-size/specs/invalid.spec.js +53 -0
  66. data/lib/less/js/image-size/specs/others.spec.js +77 -0
  67. data/lib/less/js/image-size/specs/unsupported.spec.js +34 -0
  68. data/lib/less/js/image-size/specs/valid.spec.js +75 -0
  69. data/lib/less/js/less/.gitattributes +11 -0
  70. data/lib/less/js/less/.gitignore +27 -0
  71. data/lib/less/js/less/.jscsrc +73 -0
  72. data/lib/less/js/less/.jshintrc +11 -0
  73. data/lib/less/js/less/.npmignore +9 -0
  74. data/lib/less/js/less/.travis.yml +14 -0
  75. data/lib/less/js/less/CHANGELOG.md +561 -0
  76. data/lib/less/js/less/CONTRIBUTING.md +50 -0
  77. data/lib/less/js/less/Gruntfile.js +459 -0
  78. data/lib/less/js/less/LICENSE +177 -0
  79. data/lib/less/js/less/README.md +56 -0
  80. data/lib/less/js/less/appveyor.yml +32 -0
  81. data/lib/less/js/less/benchmark/benchmark.less +3979 -0
  82. data/lib/less/js/less/benchmark/index.js +55 -0
  83. data/lib/less/js/less/bin/lessc +488 -0
  84. data/lib/less/js/less/bower.json +24 -0
  85. data/lib/less/js/less/browser.js +1 -0
  86. data/lib/less/js/less/build.gradle +347 -0
  87. data/lib/less/js/less/build/amd.js +6 -0
  88. data/lib/less/js/less/build/build.yml +130 -0
  89. data/lib/less/js/less/build/require-rhino.js +12 -0
  90. data/lib/less/js/less/build/rhino-header.js +4 -0
  91. data/lib/less/js/less/build/rhino-modules.js +131 -0
  92. data/lib/less/js/less/build/tasks/.gitkeep +1 -0
  93. data/lib/less/js/less/dist/less.js +10500 -0
  94. data/lib/less/js/less/dist/less.min.js +20 -0
  95. data/lib/less/js/less/gradle/wrapper/gradle-wrapper.jar +0 -0
  96. data/lib/less/js/less/gradle/wrapper/gradle-wrapper.properties +6 -0
  97. data/lib/less/js/less/gradlew +164 -0
  98. data/lib/less/js/less/gradlew.bat +90 -0
  99. data/lib/less/js/less/index.js +1 -0
  100. data/lib/less/js/less/lib/less-browser/add-default-options.js +46 -0
  101. data/lib/less/js/less/lib/less-browser/bootstrap.js +51 -0
  102. data/lib/less/js/less/lib/less-browser/browser.js +64 -0
  103. data/lib/less/js/less/lib/less-browser/cache.js +42 -0
  104. data/lib/less/js/less/lib/less-browser/error-reporting.js +170 -0
  105. data/lib/less/js/less/lib/less-browser/file-manager.js +119 -0
  106. data/lib/less/js/less/lib/less-browser/image-size.js +28 -0
  107. data/lib/less/js/less/lib/less-browser/index.js +263 -0
  108. data/lib/less/js/less/lib/less-browser/log-listener.js +43 -0
  109. data/lib/less/js/less/lib/less-browser/utils.js +24 -0
  110. data/lib/less/js/less/lib/less-node/environment.js +14 -0
  111. data/lib/less/js/less/lib/less-node/file-manager.js +108 -0
  112. data/lib/less/js/less/lib/less-node/fs.js +10 -0
  113. data/lib/less/js/less/lib/less-node/image-size.js +57 -0
  114. data/lib/less/js/less/lib/less-node/index.js +74 -0
  115. data/lib/less/js/less/lib/less-node/lessc-helper.js +82 -0
  116. data/lib/less/js/less/lib/less-node/plugin-loader.js +91 -0
  117. data/lib/less/js/less/lib/less-node/url-file-manager.js +56 -0
  118. data/lib/less/js/less/lib/less-rhino/index.js +450 -0
  119. data/lib/less/js/less/lib/less/contexts.js +111 -0
  120. data/lib/less/js/less/lib/less/data/colors.js +150 -0
  121. data/lib/less/js/less/lib/less/data/index.js +4 -0
  122. data/lib/less/js/less/lib/less/data/unit-conversions.js +21 -0
  123. data/lib/less/js/less/lib/less/environment/abstract-file-manager.js +123 -0
  124. data/lib/less/js/less/lib/less/environment/environment-api.js +25 -0
  125. data/lib/less/js/less/lib/less/environment/environment.js +51 -0
  126. data/lib/less/js/less/lib/less/environment/file-manager-api.js +103 -0
  127. data/lib/less/js/less/lib/less/functions/color-blending.js +74 -0
  128. data/lib/less/js/less/lib/less/functions/color.js +322 -0
  129. data/lib/less/js/less/lib/less/functions/data-uri.js +85 -0
  130. data/lib/less/js/less/lib/less/functions/default.js +27 -0
  131. data/lib/less/js/less/lib/less/functions/function-caller.js +46 -0
  132. data/lib/less/js/less/lib/less/functions/function-registry.js +29 -0
  133. data/lib/less/js/less/lib/less/functions/index.js +19 -0
  134. data/lib/less/js/less/lib/less/functions/math-helper.js +16 -0
  135. data/lib/less/js/less/lib/less/functions/math.js +29 -0
  136. data/lib/less/js/less/lib/less/functions/number.js +81 -0
  137. data/lib/less/js/less/lib/less/functions/string.js +37 -0
  138. data/lib/less/js/less/lib/less/functions/svg.js +88 -0
  139. data/lib/less/js/less/lib/less/functions/types.js +89 -0
  140. data/lib/less/js/less/lib/less/import-manager.js +131 -0
  141. data/lib/less/js/less/lib/less/index.js +29 -0
  142. data/lib/less/js/less/lib/less/less-error.js +42 -0
  143. data/lib/less/js/less/lib/less/logger.js +34 -0
  144. data/lib/less/js/less/lib/less/parse-tree.js +60 -0
  145. data/lib/less/js/less/lib/less/parse.js +68 -0
  146. data/lib/less/js/less/lib/less/parser/chunker.js +112 -0
  147. data/lib/less/js/less/lib/less/parser/parser-input.js +259 -0
  148. data/lib/less/js/less/lib/less/parser/parser.js +1851 -0
  149. data/lib/less/js/less/lib/less/plugin-manager.js +114 -0
  150. data/lib/less/js/less/lib/less/plugins/function-importer.js +35 -0
  151. data/lib/less/js/less/lib/less/render.js +41 -0
  152. data/lib/less/js/less/lib/less/source-map-builder.js +69 -0
  153. data/lib/less/js/less/lib/less/source-map-output.js +138 -0
  154. data/lib/less/js/less/lib/less/transform-tree.js +74 -0
  155. data/lib/less/js/less/lib/less/tree/alpha.js +28 -0
  156. data/lib/less/js/less/lib/less/tree/anonymous.js +26 -0
  157. data/lib/less/js/less/lib/less/tree/assignment.js +27 -0
  158. data/lib/less/js/less/lib/less/tree/attribute.js +27 -0
  159. data/lib/less/js/less/lib/less/tree/call.js +62 -0
  160. data/lib/less/js/less/lib/less/tree/color.js +189 -0
  161. data/lib/less/js/less/lib/less/tree/combinator.js +23 -0
  162. data/lib/less/js/less/lib/less/tree/comment.js +21 -0
  163. data/lib/less/js/less/lib/less/tree/condition.js +37 -0
  164. data/lib/less/js/less/lib/less/tree/debug-info.js +38 -0
  165. data/lib/less/js/less/lib/less/tree/detached-ruleset.js +21 -0
  166. data/lib/less/js/less/lib/less/tree/dimension.js +157 -0
  167. data/lib/less/js/less/lib/less/tree/directive.js +133 -0
  168. data/lib/less/js/less/lib/less/tree/element.js +60 -0
  169. data/lib/less/js/less/lib/less/tree/expression.js +56 -0
  170. data/lib/less/js/less/lib/less/tree/extend.js +56 -0
  171. data/lib/less/js/less/lib/less/tree/import.js +165 -0
  172. data/lib/less/js/less/lib/less/tree/index.js +41 -0
  173. data/lib/less/js/less/lib/less/tree/javascript.js +28 -0
  174. data/lib/less/js/less/lib/less/tree/js-eval-node.js +61 -0
  175. data/lib/less/js/less/lib/less/tree/keyword.js +14 -0
  176. data/lib/less/js/less/lib/less/tree/media.js +144 -0
  177. data/lib/less/js/less/lib/less/tree/mixin-call.js +182 -0
  178. data/lib/less/js/less/lib/less/tree/mixin-definition.js +200 -0
  179. data/lib/less/js/less/lib/less/tree/negative.js +20 -0
  180. data/lib/less/js/less/lib/less/tree/node.js +123 -0
  181. data/lib/less/js/less/lib/less/tree/operation.js +48 -0
  182. data/lib/less/js/less/lib/less/tree/paren.js +16 -0
  183. data/lib/less/js/less/lib/less/tree/quoted.js +55 -0
  184. data/lib/less/js/less/lib/less/tree/rule.js +95 -0
  185. data/lib/less/js/less/lib/less/tree/ruleset-call.js +13 -0
  186. data/lib/less/js/less/lib/less/tree/ruleset.js +709 -0
  187. data/lib/less/js/less/lib/less/tree/selector.js +111 -0
  188. data/lib/less/js/less/lib/less/tree/unicode-descriptor.js +9 -0
  189. data/lib/less/js/less/lib/less/tree/unit.js +120 -0
  190. data/lib/less/js/less/lib/less/tree/url.js +54 -0
  191. data/lib/less/js/less/lib/less/tree/value.js +34 -0
  192. data/lib/less/js/less/lib/less/tree/variable.js +53 -0
  193. data/lib/less/js/less/lib/less/utils.js +20 -0
  194. data/lib/less/js/less/lib/less/visitors/extend-visitor.js +460 -0
  195. data/lib/less/js/less/lib/less/visitors/import-sequencer.js +54 -0
  196. data/lib/less/js/less/lib/less/visitors/import-visitor.js +189 -0
  197. data/lib/less/js/less/lib/less/visitors/index.js +10 -0
  198. data/lib/less/js/less/lib/less/visitors/join-selector-visitor.js +51 -0
  199. data/lib/less/js/less/lib/less/visitors/set-tree-visibility-visitor.js +38 -0
  200. data/lib/less/js/less/lib/less/visitors/to-css-visitor.js +383 -0
  201. data/lib/less/js/less/lib/less/visitors/visitor.js +152 -0
  202. data/lib/less/js/less/lib/source-map/source-map-0.1.31.js +1933 -0
  203. data/lib/less/js/less/lib/source-map/source-map-footer.js +4 -0
  204. data/lib/less/js/less/lib/source-map/source-map-header.js +3 -0
  205. data/lib/less/js/less/package.json +89 -0
  206. data/lib/less/js/less/test/browser/common.js +206 -0
  207. data/lib/less/js/less/test/browser/css/global-vars/simple.css +3 -0
  208. data/lib/less/js/less/test/browser/css/modify-vars/simple.css +8 -0
  209. data/lib/less/js/less/test/browser/css/postProcessor/postProcessor.css +4 -0
  210. data/lib/less/js/less/test/browser/css/relative-urls/urls.css +36 -0
  211. data/lib/less/js/less/test/browser/css/rootpath-relative/urls.css +35 -0
  212. data/lib/less/js/less/test/browser/css/rootpath/urls.css +35 -0
  213. data/lib/less/js/less/test/browser/css/urls.css +57 -0
  214. data/lib/less/js/less/test/browser/jasmine-jsreporter.js +391 -0
  215. data/lib/less/js/less/test/browser/less/console-errors/test-error.less +3 -0
  216. data/lib/less/js/less/test/browser/less/console-errors/test-error.txt +2 -0
  217. data/lib/less/js/less/test/browser/less/errors/image-height-error.less +3 -0
  218. data/lib/less/js/less/test/browser/less/errors/image-height-error.txt +4 -0
  219. data/lib/less/js/less/test/browser/less/errors/image-size-error.less +3 -0
  220. data/lib/less/js/less/test/browser/less/errors/image-size-error.txt +4 -0
  221. data/lib/less/js/less/test/browser/less/errors/image-width-error.less +3 -0
  222. data/lib/less/js/less/test/browser/less/errors/image-width-error.txt +4 -0
  223. data/lib/less/js/less/test/browser/less/global-vars/simple.less +3 -0
  224. data/lib/less/js/less/test/browser/less/imports/urls.less +4 -0
  225. data/lib/less/js/less/test/browser/less/imports/urls2.less +4 -0
  226. data/lib/less/js/less/test/browser/less/modify-vars/imports/simple2.less +4 -0
  227. data/lib/less/js/less/test/browser/less/modify-vars/simple.less +8 -0
  228. data/lib/less/js/less/test/browser/less/nested-gradient-with-svg-gradient/mixin-consumer.less +5 -0
  229. data/lib/less/js/less/test/browser/less/nested-gradient-with-svg-gradient/svg-gradient-mixin.less +15 -0
  230. data/lib/less/js/less/test/browser/less/postProcessor/postProcessor.less +4 -0
  231. data/lib/less/js/less/test/browser/less/relative-urls/urls.less +34 -0
  232. data/lib/less/js/less/test/browser/less/rootpath-relative/urls.less +33 -0
  233. data/lib/less/js/less/test/browser/less/rootpath/urls.less +33 -0
  234. data/lib/less/js/less/test/browser/less/urls.less +65 -0
  235. data/lib/less/js/less/test/browser/runner-VisitorPlugin-options.js +3 -0
  236. data/lib/less/js/less/test/browser/runner-VisitorPlugin.js +3 -0
  237. data/lib/less/js/less/test/browser/runner-browser-options.js +51 -0
  238. data/lib/less/js/less/test/browser/runner-browser-spec.js +12 -0
  239. data/lib/less/js/less/test/browser/runner-console-errors.js +5 -0
  240. data/lib/less/js/less/test/browser/runner-errors-options.js +4 -0
  241. data/lib/less/js/less/test/browser/runner-errors-spec.js +3 -0
  242. data/lib/less/js/less/test/browser/runner-filemanagerPlugin-options.js +4 -0
  243. data/lib/less/js/less/test/browser/runner-filemanagerPlugin.js +3 -0
  244. data/lib/less/js/less/test/browser/runner-global-vars-options.js +7 -0
  245. data/lib/less/js/less/test/browser/runner-global-vars-spec.js +3 -0
  246. data/lib/less/js/less/test/browser/runner-legacy-options.js +5 -0
  247. data/lib/less/js/less/test/browser/runner-legacy-spec.js +3 -0
  248. data/lib/less/js/less/test/browser/runner-main-options.js +18 -0
  249. data/lib/less/js/less/test/browser/runner-main-spec.js +7 -0
  250. data/lib/less/js/less/test/browser/runner-modify-vars-options.js +5 -0
  251. data/lib/less/js/less/test/browser/runner-modify-vars-spec.js +33 -0
  252. data/lib/less/js/less/test/browser/runner-no-js-errors-options.js +4 -0
  253. data/lib/less/js/less/test/browser/runner-no-js-errors-spec.js +3 -0
  254. data/lib/less/js/less/test/browser/runner-postProcessor-options.js +5 -0
  255. data/lib/less/js/less/test/browser/runner-postProcessor.js +3 -0
  256. data/lib/less/js/less/test/browser/runner-postProcessorPlugin-options.js +3 -0
  257. data/lib/less/js/less/test/browser/runner-postProcessorPlugin.js +3 -0
  258. data/lib/less/js/less/test/browser/runner-preProcessorPlugin-options.js +3 -0
  259. data/lib/less/js/less/test/browser/runner-preProcessorPlugin.js +3 -0
  260. data/lib/less/js/less/test/browser/runner-production-options.js +3 -0
  261. data/lib/less/js/less/test/browser/runner-production-spec.js +5 -0
  262. data/lib/less/js/less/test/browser/runner-relative-urls-options.js +3 -0
  263. data/lib/less/js/less/test/browser/runner-relative-urls-spec.js +3 -0
  264. data/lib/less/js/less/test/browser/runner-rootpath-options.js +3 -0
  265. data/lib/less/js/less/test/browser/runner-rootpath-relative-options.js +4 -0
  266. data/lib/less/js/less/test/browser/runner-rootpath-relative-spec.js +3 -0
  267. data/lib/less/js/less/test/browser/runner-rootpath-spec.js +3 -0
  268. data/lib/less/js/less/test/browser/runner-strict-units-options.js +5 -0
  269. data/lib/less/js/less/test/browser/runner-strict-units-spec.js +3 -0
  270. data/lib/less/js/less/test/browser/test-runner-template.tmpl +95 -0
  271. data/lib/less/js/less/test/copy-bom.js +72 -0
  272. data/lib/less/js/less/test/css/charsets.css +1 -0
  273. data/lib/less/js/less/test/css/colors.css +87 -0
  274. data/lib/less/js/less/test/css/comments.css +83 -0
  275. data/lib/less/js/less/test/css/comments2.css +18 -0
  276. data/lib/less/js/less/test/css/compression/compression.css +3 -0
  277. data/lib/less/js/less/test/css/css-3.css +157 -0
  278. data/lib/less/js/less/test/css/css-escapes.css +24 -0
  279. data/lib/less/js/less/test/css/css-guards.css +37 -0
  280. data/lib/less/js/less/test/css/css.css +95 -0
  281. data/lib/less/js/less/test/css/debug/linenumbers-all.css +50 -0
  282. data/lib/less/js/less/test/css/debug/linenumbers-comments.css +41 -0
  283. data/lib/less/js/less/test/css/debug/linenumbers-mediaquery.css +41 -0
  284. data/lib/less/js/less/test/css/detached-rulesets.css +76 -0
  285. data/lib/less/js/less/test/css/directives-bubling.css +119 -0
  286. data/lib/less/js/less/test/css/empty.css +0 -0
  287. data/lib/less/js/less/test/css/extend-chaining.css +81 -0
  288. data/lib/less/js/less/test/css/extend-clearfix.css +19 -0
  289. data/lib/less/js/less/test/css/extend-exact.css +37 -0
  290. data/lib/less/js/less/test/css/extend-media.css +24 -0
  291. data/lib/less/js/less/test/css/extend-nest.css +57 -0
  292. data/lib/less/js/less/test/css/extend-selector.css +87 -0
  293. data/lib/less/js/less/test/css/extend.css +76 -0
  294. data/lib/less/js/less/test/css/extract-and-length.css +133 -0
  295. data/lib/less/js/less/test/css/filemanagerPlugin/filemanager.css +3 -0
  296. data/lib/less/js/less/test/css/functions.css +201 -0
  297. data/lib/less/js/less/test/css/globalVars/extended.css +12 -0
  298. data/lib/less/js/less/test/css/globalVars/simple.css +6 -0
  299. data/lib/less/js/less/test/css/ie-filters.css +9 -0
  300. data/lib/less/js/less/test/css/import-inline.css +8 -0
  301. data/lib/less/js/less/test/css/import-interpolation.css +13 -0
  302. data/lib/less/js/less/test/css/import-once.css +15 -0
  303. data/lib/less/js/less/test/css/import-reference-issues.css +24 -0
  304. data/lib/less/js/less/test/css/import-reference.css +97 -0
  305. data/lib/less/js/less/test/css/import.css +49 -0
  306. data/lib/less/js/less/test/css/include-path-string/include-path-string.css +3 -0
  307. data/lib/less/js/less/test/css/include-path/include-path.css +9 -0
  308. data/lib/less/js/less/test/css/javascript.css +28 -0
  309. data/lib/less/js/less/test/css/lazy-eval.css +3 -0
  310. data/lib/less/js/less/test/css/legacy/legacy.css +21 -0
  311. data/lib/less/js/less/test/css/media.css +218 -0
  312. data/lib/less/js/less/test/css/merge.css +34 -0
  313. data/lib/less/js/less/test/css/mixins-args.css +163 -0
  314. data/lib/less/js/less/test/css/mixins-closure.css +9 -0
  315. data/lib/less/js/less/test/css/mixins-guards-default-func.css +129 -0
  316. data/lib/less/js/less/test/css/mixins-guards.css +211 -0
  317. data/lib/less/js/less/test/css/mixins-important.css +57 -0
  318. data/lib/less/js/less/test/css/mixins-interpolated.css +43 -0
  319. data/lib/less/js/less/test/css/mixins-named-args.css +27 -0
  320. data/lib/less/js/less/test/css/mixins-nested.css +14 -0
  321. data/lib/less/js/less/test/css/mixins-pattern.css +51 -0
  322. data/lib/less/js/less/test/css/mixins.css +144 -0
  323. data/lib/less/js/less/test/css/modifyVars/extended.css +9 -0
  324. data/lib/less/js/less/test/css/no-output.css +0 -0
  325. data/lib/less/js/less/test/css/no-strict-math/mixins-guards.css +12 -0
  326. data/lib/less/js/less/test/css/no-strict-math/no-sm-operations.css +12 -0
  327. data/lib/less/js/less/test/css/operations.css +50 -0
  328. data/lib/less/js/less/test/css/parens.css +36 -0
  329. data/lib/less/js/less/test/css/plugin.css +44 -0
  330. data/lib/less/js/less/test/css/postProcessorPlugin/postProcessor.css +4 -0
  331. data/lib/less/js/less/test/css/preProcessorPlugin/preProcessor.css +3 -0
  332. data/lib/less/js/less/test/css/property-name-interp.css +21 -0
  333. data/lib/less/js/less/test/css/rulesets.css +33 -0
  334. data/lib/less/js/less/test/css/scope.css +38 -0
  335. data/lib/less/js/less/test/css/selectors.css +170 -0
  336. data/lib/less/js/less/test/css/static-urls/urls.css +46 -0
  337. data/lib/less/js/less/test/css/strict-units/strict-units.css +4 -0
  338. data/lib/less/js/less/test/css/strings.css +55 -0
  339. data/lib/less/js/less/test/css/url-args/urls.css +56 -0
  340. data/lib/less/js/less/test/css/urls.css +87 -0
  341. data/lib/less/js/less/test/css/variables-in-at-rules.css +18 -0
  342. data/lib/less/js/less/test/css/variables.css +68 -0
  343. data/lib/less/js/less/test/css/visitorPlugin/visitor.css +3 -0
  344. data/lib/less/js/less/test/css/whitespace.css +42 -0
  345. data/lib/less/js/less/test/data/data-uri-fail.png +0 -0
  346. data/lib/less/js/less/test/data/image.jpg +0 -0
  347. data/lib/less/js/less/test/data/image.svg +4 -0
  348. data/lib/less/js/less/test/data/page.html +1 -0
  349. data/lib/less/js/less/test/index.js +59 -0
  350. data/lib/less/js/less/test/less-test.js +386 -0
  351. data/lib/less/js/less/test/less/charsets.less +3 -0
  352. data/lib/less/js/less/test/less/colors.less +98 -0
  353. data/lib/less/js/less/test/less/comments.less +102 -0
  354. data/lib/less/js/less/test/less/comments2.less +31 -0
  355. data/lib/less/js/less/test/less/compression/compression.less +36 -0
  356. data/lib/less/js/less/test/less/css-3.less +162 -0
  357. data/lib/less/js/less/test/less/css-escapes.less +33 -0
  358. data/lib/less/js/less/test/less/css-guards.less +103 -0
  359. data/lib/less/js/less/test/less/css.less +108 -0
  360. data/lib/less/js/less/test/less/debug/import/test.less +25 -0
  361. data/lib/less/js/less/test/less/debug/linenumbers.less +33 -0
  362. data/lib/less/js/less/test/less/detached-rulesets.less +112 -0
  363. data/lib/less/js/less/test/less/directives-bubling.less +142 -0
  364. data/lib/less/js/less/test/less/empty.less +0 -0
  365. data/lib/less/js/less/test/less/errors/add-mixed-units.less +3 -0
  366. data/lib/less/js/less/test/less/errors/add-mixed-units.txt +4 -0
  367. data/lib/less/js/less/test/less/errors/add-mixed-units2.less +3 -0
  368. data/lib/less/js/less/test/less/errors/add-mixed-units2.txt +4 -0
  369. data/lib/less/js/less/test/less/errors/at-rules-undefined-var.less +4 -0
  370. data/lib/less/js/less/test/less/errors/at-rules-undefined-var.txt +4 -0
  371. data/lib/less/js/less/test/less/errors/bad-variable-declaration1.less +1 -0
  372. data/lib/less/js/less/test/less/errors/bad-variable-declaration1.txt +2 -0
  373. data/lib/less/js/less/test/less/errors/color-func-invalid-color.less +3 -0
  374. data/lib/less/js/less/test/less/errors/color-func-invalid-color.txt +4 -0
  375. data/lib/less/js/less/test/less/errors/color-invalid-hex-code.less +3 -0
  376. data/lib/less/js/less/test/less/errors/color-invalid-hex-code.txt +4 -0
  377. data/lib/less/js/less/test/less/errors/color-invalid-hex-code2.less +3 -0
  378. data/lib/less/js/less/test/less/errors/color-invalid-hex-code2.txt +4 -0
  379. data/lib/less/js/less/test/less/errors/css-guard-default-func.less +4 -0
  380. data/lib/less/js/less/test/less/errors/css-guard-default-func.txt +4 -0
  381. data/lib/less/js/less/test/less/errors/detached-ruleset-1.less +6 -0
  382. data/lib/less/js/less/test/less/errors/detached-ruleset-1.txt +4 -0
  383. data/lib/less/js/less/test/less/errors/detached-ruleset-2.less +6 -0
  384. data/lib/less/js/less/test/less/errors/detached-ruleset-2.txt +4 -0
  385. data/lib/less/js/less/test/less/errors/detached-ruleset-3.less +4 -0
  386. data/lib/less/js/less/test/less/errors/detached-ruleset-3.txt +4 -0
  387. data/lib/less/js/less/test/less/errors/detached-ruleset-5.less +4 -0
  388. data/lib/less/js/less/test/less/errors/detached-ruleset-5.txt +3 -0
  389. data/lib/less/js/less/test/less/errors/detached-ruleset-6.less +5 -0
  390. data/lib/less/js/less/test/less/errors/detached-ruleset-6.txt +4 -0
  391. data/lib/less/js/less/test/less/errors/divide-mixed-units.less +3 -0
  392. data/lib/less/js/less/test/less/errors/divide-mixed-units.txt +4 -0
  393. data/lib/less/js/less/test/less/errors/extend-no-selector.less +3 -0
  394. data/lib/less/js/less/test/less/errors/extend-no-selector.txt +3 -0
  395. data/lib/less/js/less/test/less/errors/extend-not-at-end.less +3 -0
  396. data/lib/less/js/less/test/less/errors/extend-not-at-end.txt +3 -0
  397. data/lib/less/js/less/test/less/errors/import-malformed.less +1 -0
  398. data/lib/less/js/less/test/less/errors/import-malformed.txt +3 -0
  399. data/lib/less/js/less/test/less/errors/import-missing.less +6 -0
  400. data/lib/less/js/less/test/less/errors/import-missing.txt +3 -0
  401. data/lib/less/js/less/test/less/errors/import-no-semi.less +1 -0
  402. data/lib/less/js/less/test/less/errors/import-no-semi.txt +2 -0
  403. data/lib/less/js/less/test/less/errors/import-subfolder1.less +1 -0
  404. data/lib/less/js/less/test/less/errors/import-subfolder1.txt +3 -0
  405. data/lib/less/js/less/test/less/errors/import-subfolder2.less +1 -0
  406. data/lib/less/js/less/test/less/errors/import-subfolder2.txt +4 -0
  407. data/lib/less/js/less/test/less/errors/imports/import-subfolder1.less +1 -0
  408. data/lib/less/js/less/test/less/errors/imports/import-subfolder2.less +1 -0
  409. data/lib/less/js/less/test/less/errors/imports/import-test.less +4 -0
  410. data/lib/less/js/less/test/less/errors/imports/subfolder/mixin-not-defined.less +1 -0
  411. data/lib/less/js/less/test/less/errors/imports/subfolder/parse-error-curly-bracket.less +1 -0
  412. data/lib/less/js/less/test/less/errors/javascript-error.less +3 -0
  413. data/lib/less/js/less/test/less/errors/javascript-error.txt +4 -0
  414. data/lib/less/js/less/test/less/errors/javascript-undefined-var.less +3 -0
  415. data/lib/less/js/less/test/less/errors/javascript-undefined-var.txt +4 -0
  416. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-1.less +6 -0
  417. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-1.txt +4 -0
  418. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-2.less +6 -0
  419. data/lib/less/js/less/test/less/errors/mixed-mixin-definition-args-2.txt +4 -0
  420. data/lib/less/js/less/test/less/errors/mixin-not-defined.less +11 -0
  421. data/lib/less/js/less/test/less/errors/mixin-not-defined.txt +3 -0
  422. data/lib/less/js/less/test/less/errors/mixin-not-matched.less +6 -0
  423. data/lib/less/js/less/test/less/errors/mixin-not-matched.txt +3 -0
  424. data/lib/less/js/less/test/less/errors/mixin-not-matched2.less +6 -0
  425. data/lib/less/js/less/test/less/errors/mixin-not-matched2.txt +3 -0
  426. data/lib/less/js/less/test/less/errors/mixin-not-visible-in-scope-1.less +9 -0
  427. data/lib/less/js/less/test/less/errors/mixin-not-visible-in-scope-1.txt +4 -0
  428. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-1.less +9 -0
  429. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-1.txt +4 -0
  430. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-2.less +9 -0
  431. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-2.txt +4 -0
  432. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-3.less +9 -0
  433. data/lib/less/js/less/test/less/errors/mixins-guards-default-func-3.txt +4 -0
  434. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors.less +4 -0
  435. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors.txt +4 -0
  436. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors2.less +4 -0
  437. data/lib/less/js/less/test/less/errors/multiple-guards-on-css-selectors2.txt +4 -0
  438. data/lib/less/js/less/test/less/errors/multiply-mixed-units.less +7 -0
  439. data/lib/less/js/less/test/less/errors/multiply-mixed-units.txt +4 -0
  440. data/lib/less/js/less/test/less/errors/parens-error-1.less +3 -0
  441. data/lib/less/js/less/test/less/errors/parens-error-1.txt +4 -0
  442. data/lib/less/js/less/test/less/errors/parens-error-2.less +3 -0
  443. data/lib/less/js/less/test/less/errors/parens-error-2.txt +4 -0
  444. data/lib/less/js/less/test/less/errors/parens-error-3.less +3 -0
  445. data/lib/less/js/less/test/less/errors/parens-error-3.txt +4 -0
  446. data/lib/less/js/less/test/less/errors/parse-error-curly-bracket.less +4 -0
  447. data/lib/less/js/less/test/less/errors/parse-error-curly-bracket.txt +4 -0
  448. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-1.less +5 -0
  449. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-1.txt +3 -0
  450. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-2.less +1 -0
  451. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-2.txt +2 -0
  452. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-3.less +4 -0
  453. data/lib/less/js/less/test/less/errors/parse-error-media-no-block-3.txt +3 -0
  454. data/lib/less/js/less/test/less/errors/parse-error-missing-bracket.less +2 -0
  455. data/lib/less/js/less/test/less/errors/parse-error-missing-bracket.txt +3 -0
  456. data/lib/less/js/less/test/less/errors/parse-error-missing-parens.less +5 -0
  457. data/lib/less/js/less/test/less/errors/parse-error-missing-parens.txt +3 -0
  458. data/lib/less/js/less/test/less/errors/parse-error-with-import.less +13 -0
  459. data/lib/less/js/less/test/less/errors/parse-error-with-import.txt +4 -0
  460. data/lib/less/js/less/test/less/errors/percentage-missing-space.less +3 -0
  461. data/lib/less/js/less/test/less/errors/percentage-missing-space.txt +4 -0
  462. data/lib/less/js/less/test/less/errors/percentage-non-number-argument.less +3 -0
  463. data/lib/less/js/less/test/less/errors/percentage-non-number-argument.txt +4 -0
  464. data/lib/less/js/less/test/less/errors/property-asterisk-only-name.less +3 -0
  465. data/lib/less/js/less/test/less/errors/property-asterisk-only-name.txt +4 -0
  466. data/lib/less/js/less/test/less/errors/property-ie5-hack.less +3 -0
  467. data/lib/less/js/less/test/less/errors/property-ie5-hack.txt +3 -0
  468. data/lib/less/js/less/test/less/errors/property-in-root.less +4 -0
  469. data/lib/less/js/less/test/less/errors/property-in-root.txt +4 -0
  470. data/lib/less/js/less/test/less/errors/property-in-root2.less +1 -0
  471. data/lib/less/js/less/test/less/errors/property-in-root2.txt +4 -0
  472. data/lib/less/js/less/test/less/errors/property-in-root3.less +4 -0
  473. data/lib/less/js/less/test/less/errors/property-in-root3.txt +3 -0
  474. data/lib/less/js/less/test/less/errors/property-interp-not-defined.less +1 -0
  475. data/lib/less/js/less/test/less/errors/property-interp-not-defined.txt +2 -0
  476. data/lib/less/js/less/test/less/errors/recursive-variable.less +1 -0
  477. data/lib/less/js/less/test/less/errors/recursive-variable.txt +2 -0
  478. data/lib/less/js/less/test/less/errors/single-character.less +1 -0
  479. data/lib/less/js/less/test/less/errors/single-character.txt +2 -0
  480. data/lib/less/js/less/test/less/errors/svg-gradient1.less +3 -0
  481. data/lib/less/js/less/test/less/errors/svg-gradient1.txt +4 -0
  482. data/lib/less/js/less/test/less/errors/svg-gradient2.less +3 -0
  483. data/lib/less/js/less/test/less/errors/svg-gradient2.txt +4 -0
  484. data/lib/less/js/less/test/less/errors/svg-gradient3.less +3 -0
  485. data/lib/less/js/less/test/less/errors/svg-gradient3.txt +4 -0
  486. data/lib/less/js/less/test/less/errors/svg-gradient4.less +4 -0
  487. data/lib/less/js/less/test/less/errors/svg-gradient4.txt +4 -0
  488. data/lib/less/js/less/test/less/errors/svg-gradient5.less +4 -0
  489. data/lib/less/js/less/test/less/errors/svg-gradient5.txt +4 -0
  490. data/lib/less/js/less/test/less/errors/svg-gradient6.less +4 -0
  491. data/lib/less/js/less/test/less/errors/svg-gradient6.txt +4 -0
  492. data/lib/less/js/less/test/less/errors/unit-function.less +3 -0
  493. data/lib/less/js/less/test/less/errors/unit-function.txt +4 -0
  494. data/lib/less/js/less/test/less/extend-chaining.less +91 -0
  495. data/lib/less/js/less/test/less/extend-clearfix.less +19 -0
  496. data/lib/less/js/less/test/less/extend-exact.less +46 -0
  497. data/lib/less/js/less/test/less/extend-media.less +24 -0
  498. data/lib/less/js/less/test/less/extend-nest.less +65 -0
  499. data/lib/less/js/less/test/less/extend-selector.less +110 -0
  500. data/lib/less/js/less/test/less/extend.less +81 -0
  501. data/lib/less/js/less/test/less/extract-and-length.less +133 -0
  502. data/lib/less/js/less/test/less/filemanagerPlugin/colors.test +1 -0
  503. data/lib/less/js/less/test/less/filemanagerPlugin/filemanager.less +4 -0
  504. data/lib/less/js/less/test/less/functions.less +232 -0
  505. data/lib/less/js/less/test/less/globalVars/extended.json +5 -0
  506. data/lib/less/js/less/test/less/globalVars/extended.less +10 -0
  507. data/lib/less/js/less/test/less/globalVars/simple.json +3 -0
  508. data/lib/less/js/less/test/less/globalVars/simple.less +3 -0
  509. data/lib/less/js/less/test/less/ie-filters.less +15 -0
  510. data/lib/less/js/less/test/less/import-inline.less +3 -0
  511. data/lib/less/js/less/test/less/import-interpolation.less +8 -0
  512. data/lib/less/js/less/test/less/import-once.less +6 -0
  513. data/lib/less/js/less/test/less/import-reference-issues.less +50 -0
  514. data/lib/less/js/less/test/less/import-reference-issues/appender-reference-1968.less +6 -0
  515. data/lib/less/js/less/test/less/import-reference-issues/global-scope-import.less +13 -0
  516. data/lib/less/js/less/test/less/import-reference-issues/global-scope-nested.less +3 -0
  517. data/lib/less/js/less/test/less/import-reference-issues/mixin-1968.less +8 -0
  518. data/lib/less/js/less/test/less/import-reference-issues/multiple-import-nested.less +12 -0
  519. data/lib/less/js/less/test/less/import-reference-issues/multiple-import.less +10 -0
  520. data/lib/less/js/less/test/less/import-reference-issues/simple-mixin.css +3 -0
  521. data/lib/less/js/less/test/less/import-reference-issues/simple-ruleset-2162.less +3 -0
  522. data/lib/less/js/less/test/less/import-reference.less +26 -0
  523. data/lib/less/js/less/test/less/import.less +31 -0
  524. data/lib/less/js/less/test/less/import/css-import.less +1 -0
  525. data/lib/less/js/less/test/less/import/deeper/deeper-2/url-import-2.less +3 -0
  526. data/lib/less/js/less/test/less/import/deeper/deeper-2/url-import.less +1 -0
  527. data/lib/less/js/less/test/less/import/deeper/import-once-test-a.less +1 -0
  528. data/lib/less/js/less/test/less/import/deeper/url-import.less +1 -0
  529. data/lib/less/js/less/test/less/import/import-and-relative-paths-test.less +17 -0
  530. data/lib/less/js/less/test/less/import/import-charset-test.less +1 -0
  531. data/lib/less/js/less/test/less/import/import-inline-invalid-css.less +1 -0
  532. data/lib/less/js/less/test/less/import/import-interpolation.less +2 -0
  533. data/lib/less/js/less/test/less/import/import-interpolation2.less +5 -0
  534. data/lib/less/js/less/test/less/import/import-once-test-c.less +6 -0
  535. data/lib/less/js/less/test/less/import/import-reference.less +98 -0
  536. data/lib/less/js/less/test/less/import/import-test-a.less +5 -0
  537. data/lib/less/js/less/test/less/import/import-test-b.less +8 -0
  538. data/lib/less/js/less/test/less/import/import-test-c.less +6 -0
  539. data/lib/less/js/less/test/less/import/import-test-d.css +1 -0
  540. data/lib/less/js/less/test/less/import/import-test-e.less +2 -0
  541. data/lib/less/js/less/test/less/import/import-test-f.less +5 -0
  542. data/lib/less/js/less/test/less/import/imports/font.less +8 -0
  543. data/lib/less/js/less/test/less/import/imports/logo.less +6 -0
  544. data/lib/less/js/less/test/less/import/interpolation-vars.less +6 -0
  545. data/lib/less/js/less/test/less/import/invalid-css.less +1 -0
  546. data/lib/less/js/less/test/less/import/urls.less +1 -0
  547. data/lib/less/js/less/test/less/include-path-string/include-path-string.less +3 -0
  548. data/lib/less/js/less/test/less/include-path/include-path.less +8 -0
  549. data/lib/less/js/less/test/less/javascript.less +38 -0
  550. data/lib/less/js/less/test/less/lazy-eval.less +6 -0
  551. data/lib/less/js/less/test/less/legacy/legacy.less +21 -0
  552. data/lib/less/js/less/test/less/media.less +234 -0
  553. data/lib/less/js/less/test/less/merge.less +78 -0
  554. data/lib/less/js/less/test/less/mixins-args.less +263 -0
  555. data/lib/less/js/less/test/less/mixins-closure.less +26 -0
  556. data/lib/less/js/less/test/less/mixins-guards-default-func.less +195 -0
  557. data/lib/less/js/less/test/less/mixins-guards.less +358 -0
  558. data/lib/less/js/less/test/less/mixins-important.less +53 -0
  559. data/lib/less/js/less/test/less/mixins-interpolated.less +75 -0
  560. data/lib/less/js/less/test/less/mixins-named-args.less +36 -0
  561. data/lib/less/js/less/test/less/mixins-nested.less +22 -0
  562. data/lib/less/js/less/test/less/mixins-pattern.less +102 -0
  563. data/lib/less/js/less/test/less/mixins.less +145 -0
  564. data/lib/less/js/less/test/less/modifyVars/extended.json +5 -0
  565. data/lib/less/js/less/test/less/modifyVars/extended.less +11 -0
  566. data/lib/less/js/less/test/less/nested-gradient-with-svg-gradient/mixin-consumer.less +5 -0
  567. data/lib/less/js/less/test/less/nested-gradient-with-svg-gradient/svg-gradient-mixin.less +15 -0
  568. data/lib/less/js/less/test/less/no-js-errors/no-js-errors.less +3 -0
  569. data/lib/less/js/less/test/less/no-js-errors/no-js-errors.txt +4 -0
  570. data/lib/less/js/less/test/less/no-output.less +2 -0
  571. data/lib/less/js/less/test/less/no-strict-math/mixins-guards.less +25 -0
  572. data/lib/less/js/less/test/less/no-strict-math/no-sm-operations.less +10 -0
  573. data/lib/less/js/less/test/less/operations.less +63 -0
  574. data/lib/less/js/less/test/less/parens.less +45 -0
  575. data/lib/less/js/less/test/less/plugin.less +85 -0
  576. data/lib/less/js/less/test/less/plugin/plugin-global.js +9 -0
  577. data/lib/less/js/less/test/less/plugin/plugin-local.js +8 -0
  578. data/lib/less/js/less/test/less/plugin/plugin-transitive.js +5 -0
  579. data/lib/less/js/less/test/less/plugin/plugin-transitive.less +5 -0
  580. data/lib/less/js/less/test/less/postProcessorPlugin/postProcessor.less +4 -0
  581. data/lib/less/js/less/test/less/preProcessorPlugin/preProcessor.less +3 -0
  582. data/lib/less/js/less/test/less/property-name-interp.less +56 -0
  583. data/lib/less/js/less/test/less/rulesets.less +30 -0
  584. data/lib/less/js/less/test/less/scope.less +104 -0
  585. data/lib/less/js/less/test/less/selectors.less +184 -0
  586. data/lib/less/js/less/test/less/sourcemaps-empty/empty.less +0 -0
  587. data/lib/less/js/less/test/less/sourcemaps-empty/var-defs.less +1 -0
  588. data/lib/less/js/less/test/less/sourcemaps/basic.json +3 -0
  589. data/lib/less/js/less/test/less/sourcemaps/basic.less +27 -0
  590. data/lib/less/js/less/test/less/sourcemaps/imported.css +7 -0
  591. data/lib/less/js/less/test/less/static-urls/urls.less +33 -0
  592. data/lib/less/js/less/test/less/strict-units/strict-units.less +4 -0
  593. data/lib/less/js/less/test/less/strings.less +73 -0
  594. data/lib/less/js/less/test/less/url-args/urls.less +63 -0
  595. data/lib/less/js/less/test/less/urls.less +94 -0
  596. data/lib/less/js/less/test/less/variables-in-at-rules.less +20 -0
  597. data/lib/less/js/less/test/less/variables.less +119 -0
  598. data/lib/less/js/less/test/less/visitorPlugin/visitor.less +4 -0
  599. data/lib/less/js/less/test/less/whitespace.less +44 -0
  600. data/lib/less/js/less/test/modify-vars.js +19 -0
  601. data/lib/less/js/less/test/plugins/filemanager/index.js +19 -0
  602. data/lib/less/js/less/test/plugins/postprocess/index.js +14 -0
  603. data/lib/less/js/less/test/plugins/preprocess/index.js +19 -0
  604. data/lib/less/js/less/test/plugins/visitor/index.js +24 -0
  605. data/lib/less/js/less/test/rhino/test-header.js +15 -0
  606. data/lib/less/js/less/test/sourcemaps/basic.json +1 -0
  607. data/lib/less/js/less/test/sourcemaps/index.html +17 -0
  608. data/lib/less/js/node-mime/.gitignore +2 -0
  609. data/lib/less/js/node-mime/.npmignore +0 -0
  610. data/lib/less/js/node-mime/LICENSE +19 -0
  611. data/lib/less/js/node-mime/README.md +90 -0
  612. data/lib/less/js/node-mime/build/build.js +11 -0
  613. data/lib/less/js/node-mime/build/test.js +57 -0
  614. data/lib/less/js/node-mime/cli.js +8 -0
  615. data/lib/less/js/node-mime/mime.js +108 -0
  616. data/lib/less/js/node-mime/package.json +41 -0
  617. data/lib/less/js/node-mime/types.json +1 -0
  618. data/lib/less/loader.rb +13 -0
  619. data/lib/less/parser.rb +62 -0
  620. data/lib/less/runner.js +20 -0
  621. data/lib/less/version.rb +3 -0
  622. data/script/bootstrap +6 -0
  623. data/script/cibuild +7 -0
  624. data/spec/less/parser_spec.rb +170 -0
  625. data/spec/spec_helper.rb +3 -0
  626. data/spec/support/custom_functions/custom_functions.js +7 -0
  627. data/spec/support/custom_functions/custom_functions.less +3 -0
  628. data/spec/support/faulty/faulty.less +3 -0
  629. data/spec/support/less.js.tests-custom-functions.js +20 -0
  630. data/spec/support/one/one.less +1 -0
  631. data/spec/support/two/two.less +1 -0
  632. metadata +733 -0
@@ -0,0 +1,11 @@
1
+ {
2
+ "evil": true,
3
+ "latedef": true,
4
+ "node": true,
5
+ "undef": true,
6
+ "unused": "vars",
7
+ "noarg": true,
8
+ "eqnull": true,
9
+ "forin": true,
10
+ "predef": ["Promise"]
11
+ }
@@ -0,0 +1,9 @@
1
+ .gitattributes
2
+ build/
3
+ .grunt/
4
+ benchmark/
5
+ test/
6
+ # re-include test files as they can be useful for plugins that do testing
7
+ !test/*.js
8
+ tmp/
9
+ gradle/
@@ -0,0 +1,14 @@
1
+ language: node_js
2
+ node_js:
3
+ - "4.2.0"
4
+ - "4.0.0"
5
+ - "0.12"
6
+ - "0.10"
7
+ install:
8
+ - npm install -g grunt-cli
9
+ - npm install
10
+ env:
11
+ global:
12
+ - secure: TrNVruWYaUK5ALga1y7wRY+MLjWJECUSCsBmKW5EUmIevOUxqHWu7M89FANKxstEeFRRAGH3QJbloRxnzIgh0U0ah5npE9XA1bYXGO5khoXeIyk7pNRfjIo8aEnJH1Vp8vWA6J6ovxdJ7lCFKEGvGKxGde50knVl7KFVVULlX2U=
13
+ - secure: Rzh+CEI7YRvvVkOruPE8Z0dkU0s13V6b6cpqbN72vxbJl/Jm5PUZkjTFJdkWJrW3ErhCKX6EC7XdGvrclqEA9WAqKzrecqCJYqTnw4MwqiAj6F9wqE/BqhoWg4xPxm0MK/7eJMvLCgjNpe+gc1CaeFJZkLSNWn6nOFke+vVlf9Q=
14
+ sudo: false
@@ -0,0 +1,561 @@
1
+ # 2.6.0
2
+
3
+ 2016-01-29
4
+
5
+ - Underscore now allowed in dimension unit
6
+ - Fixes for import by reference
7
+ - Fix for #2384 Changes HTTPRequest "sync" setting to simply hide the page until less has rendered, browser version is now orders of magnitude faster.
8
+ - Added ability to cache stylesheets while using modifyVars
9
+ - Error when when image-size functions are used in browser-less
10
+ - Fixed extend leaking through nested parent selector. #2586
11
+ - Added "or" keyword and allowed arbitrary logical expression in guards
12
+ - Fixing #2124 - Parsing Error "Unrecognised input" for color operations
13
+ - Logical operator ```and``` now has higher precedence than logical operator ```or```.
14
+ - Allow unknown at-rules w/o {} block
15
+
16
+ # 2.5.3
17
+
18
+ 2015-09-25
19
+
20
+ - Fix import inline a URL
21
+
22
+ # 2.5.2
23
+
24
+ 2015-09-24
25
+
26
+ - No output should result in an empty sourcemap
27
+ - Import inline located inside file imported by reference should not be present in output
28
+ - Shorthand colors will stay shorthand
29
+ - Make percentage work like other math functions and throw an error on NaN
30
+ - Fixed mixin definition matching problem when mixin definition contains parameters with default values
31
+ - Observe reference for imported comments
32
+
33
+ # 2.5.1
34
+
35
+ 2015-05-21
36
+
37
+ - Fix problems with less being async in some browsers
38
+ - Minor fix only likely to affect programmatic usage of ruleset find
39
+ - Fix error when a namespaced mixin is invoked in global scope
40
+
41
+ # 2.5.0
42
+
43
+ 2015-04-03
44
+
45
+ - supports the scoped `@plugin` directive to load function plugins
46
+ - All directives are bubbled (e.g. supports), not just media
47
+ - Performance improvements to the parser - should help non-chrome browsers with very large less files to be a lot quicker.
48
+ - the image size function respects include paths like other file functions
49
+ - colour functions take a relative argument that applies percentages relatively instead of absolutely
50
+ - include paths now allows : as a separator on windows (recognising and not splitting drive names by the backslash)
51
+ - `@import (css)` does not pull the directive above comments
52
+ - Fix for import statements without quotes sometimes causing issues
53
+ - replace supports dimensions and colours
54
+ - the browser field is set in the package.json for use with browserify
55
+ - another fix to support paths being passed as a string instead of an array
56
+ - detached rulesets can be used as default arguments
57
+ - Fix a lot of false warnings about extends
58
+ - errors written to stderr more consistently
59
+ - consistently keep units if strict units is off
60
+ - Better support for comments in function all arguments
61
+
62
+ # 2.4.0
63
+
64
+ 2015-02-07
65
+
66
+ - Support for plugins that pre-process (to add libraries silently etc.)
67
+ - Empty sourcemaps now work
68
+ - Extract and Length functions now ignore comments in a list (more work to come to fix the general problem)
69
+ - fragment urls are treated absolute since they refer to the html document
70
+ - Extends on a selector joined with `&` now work better
71
+ - Nested mixins work better with !important (regression in 2.3.0)
72
+ - The promise dependency is now actually optional (introduced in 2.0.0)
73
+ - Files with just `\r` newlines now process ok (regression in 2.0.0)
74
+ - When strict units is off and the unit is 1/x, (e.g. 1 / 12px) the unit output is x, previously nothing (regression in 2.0.0)
75
+
76
+ # 2.3.1
77
+
78
+ 2015-01-28
79
+
80
+ - Fix depends option (regression in 2.3.0)
81
+ - Support parent selector (`&`) used in sub element expression (e.g. `:not(.c_&)`)
82
+
83
+ # 2.3.0
84
+
85
+ 2015-01-27
86
+
87
+ - add `isruleset` function
88
+ - add optional import option, causing less to not fail if file not found
89
+ - Fix browsers-side cache.
90
+ - Many fixes to import reference - support `@support` and keyframe
91
+ - Selectors now interpolate pseudo selectors (e.g. `:@{hover}`)
92
+ - Fix comments missed off if they were at the end of the file
93
+ - Fix !important used with parametric mixins
94
+ - Emits warnings for extends when the target is not found
95
+ - include-path now works on data-uri
96
+ - variables and function calls work for path in data-uri
97
+ - Fix absolute paths not working on imports sometimes.
98
+ - Unicode BOM removed again
99
+ - Misc. bug fixes
100
+
101
+ # 2.2.0
102
+
103
+ 2015-01-04
104
+
105
+ - do not apply relative paths to svg-gradient and data-uri functions data-uri output
106
+ - using import filename interpolation and import inline together now works
107
+ - deprecate the compression option (still works, but outputs a warning unless silent)
108
+ - The node version of less now has image-size, image-width, image-height which return the image dimensions of a file
109
+ - Fixed an issue that could cause the parse to occur more than once and the callback be called multiple times
110
+ - if you are outputting to the console, lessc defaults to silent so warnings do not end up in output
111
+ - `isunit` function supports `''` to test if a dimension has no unit
112
+ - data-uri function now counts characters after base64 encoding instead of bytes before encoding to determine ie8 support
113
+ - fix bug effecting guards on pseudo class selectors
114
+ - do not cache on the browser when used with modifyVars
115
+ - detection if less does not parse last character in file
116
+ - detection of whether a file is css now requires `/css`, `.css`, `?css`, `&css` instead of just `css`. You can still tell less the type of file using import options.
117
+ - remove extra new line added to sourcemap entry inline file
118
+ - support safari extension
119
+ - less.parse now exposes a way to get the AST. We do not recommend you use this unless you need to.
120
+
121
+ # 2.1.2
122
+
123
+ 2014-12-20
124
+
125
+ - Fix for use with requirejs
126
+ - Fixes for data-uri function
127
+
128
+ # 2.1.1
129
+
130
+ 2014-11-27
131
+
132
+ - Improved keyword and anonymous usage with the replace function
133
+ - Added `getCSSAppendage` to sourcemap builder to avoid duplication in plugins
134
+ - Fix problem with plugins when used with the promises version of render
135
+ - If the render callback throws an exception it now propogates instead of calling the callback again with an error
136
+
137
+ # 2.1.0
138
+
139
+ 2014-11-23
140
+
141
+ - Fixed `isSync` option, it was using sync file operations but promises are guaranteed to call back async. We now support promises as a feature rather than the 1st class way of doing things.
142
+ - Browser code is now synchronous again, like in v1, meaning it blocks the site until less is compiled
143
+ - Some fixes for variable imports which affected filemanagers when synchronous
144
+ - Fixed lessc makefile dependencies option
145
+ - output now reports back a imports field with an array of imported files
146
+ - relative path test for drive names (so windows only) is now case insensitive
147
+ - Fix for IE7 - use getChar instead of indexing array
148
+ - variables using !important now output !important, which bubbles up to affect the rule
149
+ - livereload cache buster is now treated specially
150
+ - upgrade dependencies
151
+
152
+ # 2.0.0
153
+
154
+ 2014-11-09
155
+
156
+ - Fixed multiplication in non strict units mode to take the left operand unit, in the case that the unit cannot be resolved
157
+ - Some fixes for browser cross-compatibility
158
+ - browser tests now pass in IE 8-11 and FF
159
+ - added index.js and browser.js in root as shortcuts
160
+ - fixed some local variable spellings
161
+ - support for `@counter-style` directive
162
+
163
+ # 2.0.0-b3
164
+
165
+ 2014-11-01
166
+
167
+ - some refactoring of browser structure to allow use of api vs normal browser bundle
168
+ - browser bundle no longer leaks require
169
+ - browser can now be scoped with just window
170
+ - browser `useFileCache` defaults to `true`, but file cache is now cleared when refreshing or in watch mode
171
+
172
+ # 2.0.0-b2
173
+
174
+ 2014-10-26
175
+
176
+ - Imports are now sequenced and so are consistent (previously some complex projects might end up with occasional different orderings)
177
+ - Imports with variables are better supported - variables can be specified in sub imports
178
+ - Support for rebeccapurple
179
+ - Browser can now accept options as attributes on the script tag and the link tags e.g. `<script data-verbose="false" src="less.js"...`
180
+ - adding a .less file extension is done in the abstract file manager so it the behaviour can be overridden by certain file managers
181
+ - Fixed a bug where unquoted urls beginning `//` e.g. `url(//file/file.less)` would be incorrectly interpreted (bug introduced in b-1)
182
+ - lessc plugins can be a function, used as a constructor as well as an object - this to allow the plugin more flexibility to be used programattically
183
+
184
+ # 2.0.0-b1
185
+
186
+ 2014-10-19
187
+
188
+ - Public Beta / Release Candidate - Feedback welcome
189
+ For a guide to breaking changes see [the v2 upgrade guide](http://lesscss.org/usage/#v2-upgrade-guide)
190
+ - no longer including old versions of less in the repo or npm
191
+ - not including test less and gradle files in npm
192
+ - colours now output in the format they are added, so yellow will output yellow, not its hex counterpart
193
+ - better parsing - better comment support and comments in brackets can now contain comments including quotes.
194
+ - Removal of dependency on clean-css - install less-plugin-clean-css and use --clean-css to reference plugin
195
+ - Environment Support - less is now separate from its node and browser environment implementations and adding support for another javascript environment should be straight forward.
196
+ - Plugin Support - it is now straight forward to add AST manipulations (see less-plugin-inline-images), file managers (see less-plugin-npm-import) and post processors (see less-plugin-clean-css and less-plugin-autoprefix).
197
+ - We now recommend using less.render and using the parser directly is not in the same way as in v2. It is possible but it would require changes and we do not guarantee it will not be broken in minor version releases.
198
+ - In the browser, less.pageLoadFinished will be a promise, resolved when less has finished its initial processing. less.refresh and less.modifyVars also return promises.
199
+ - In the browser, as before less is used as options, however this is now copied to less.options if you need to access after less has run
200
+ - In the browser, the cache can be overwritten by setting less.cache before less loads. After load less.cache will be the default implementation.
201
+ - less.js now uses browserify to generate its browser side component
202
+ - default values for the sourcemap options have been re-done and improved to hopefully mean creating sourcemaps is easier
203
+ - Many smaller bugfixes and API changes. Please let us know if something you relied on has disappeared or an area should be better documented.
204
+
205
+ # 1.7.5
206
+
207
+ 2014-09-03
208
+
209
+ - Allow comments in keyframe (complete comment support coming in 2.0)
210
+ - pass options to parser from less.render
211
+ - Support /deep/ combinator
212
+ - handle fragments in data-uri's
213
+ - float @charsets to the top correctly
214
+ - updates to some dependencies
215
+ - Fix interpolated import in media query
216
+ - A few other various small corrections
217
+
218
+ # 1.7.4
219
+
220
+ 2014-07-27
221
+
222
+ - Handle uppercase paths in browser
223
+ - Show error if an empty selector is used in extend
224
+ - Fix property merging in directives
225
+ - Fix ordering of charset and import directives
226
+ - Fix race condition that caused a rules is undefined error sometimes if you had a complex import strategy
227
+ - Better error message for imports missing semi-colons or malformed
228
+ - Do not use util.print to avoid deprecate warnings in node 0.11
229
+
230
+ # 1.7.3
231
+
232
+ 2014-06-22
233
+
234
+ - Include dist files, missing from 1.7.2
235
+ - Do not round the results of color functions, like lightness, hue, luma etc.
236
+ - Support cover and contain keywords in background definitions
237
+
238
+ # 1.7.2
239
+
240
+ 2014-06-19
241
+
242
+ - Allow paths option to be a string (in 1.7.1 less started throwing an exception instead of incorrectly processing the string as an array of chars)
243
+ - Do not round numbers when used with javascript (introduced 1.7.0)
244
+
245
+ # 1.7.1
246
+
247
+ 2014-06-08
248
+
249
+ - Fix detection of recursive mixins
250
+ - Fix the paths option for later versions of node (0.10+)
251
+ - Fix paths joining bug
252
+ - Fix a number precision issue on some versions of node
253
+ - Fix an IE8 issue with importing css files
254
+ - Fix IE11 detection for xhr requests
255
+ - Modify var works if the last line of a less file is a comment.
256
+ - Better detection of valid hex colour codes
257
+ - Some stability fixes to support a low number of available file handles
258
+ - Support comparing values with different quote types e.g. "test" now === 'test'
259
+ - Give better error messages if accessing a url that returns a non 200 status code
260
+ - Fix the e() function when passed empty string
261
+ - Several minor bug fixes
262
+
263
+ # 1.7.0
264
+
265
+ 2014-02-27
266
+
267
+ - Add support for rulesets in variables and passed to mixins to allow wrapping
268
+ - Change luma to follow the w3c spec, luma is available as luminance. Contrast still uses luma so you may see differences if your threshold % is close to the existing calculated luma.
269
+ - Upgraded clean css which means the --selectors-merge-mode is now renamed --compatibility
270
+ - Add support for using variables with @keyframes, @namespace, @charset
271
+ - Support property merging with +_ when spaces are needed and keep + for comma separated
272
+ - Imports now always import once consistently - a race condition meant previously certain configurations would lead to a different ordering of files
273
+ - Fix support for `.mixin(@args...)` when called with no args (e.g. `.mixin();`)
274
+ - Do unit conversions with min and max functions. Don't pass through if not understood, throw an error
275
+ - Allow % to be passed on its own to the unit function e.g. `unit(10, %)`
276
+ - Fix a bug when comparing a unit value to a non-unit value if the unit-value was the multiple of another unit (e.g. cm, mm, deg etc.)
277
+ - Fix mixins with media queries in import reference files not being put into the output (they now output, they used to incorrectly not)
278
+ - Fix lint mode - now reports all errors
279
+ - Fixed a small scope issue with & {} selector rulesets incorrectly making mixins visible - regression from 1.6.2
280
+ - Browser - added log level "debug" at 3 to get less logging, The default has changed so unless you set the value to the default you won't see a difference
281
+ - Browser - logLevel takes effect regardless of the environment (production/dev)
282
+ - Browser - added postProcessor option, a function called to post-process the css before adding to the page
283
+ - Browser - use the right request for file access in IE
284
+
285
+ # 1.6.3
286
+
287
+ 2014-02-08
288
+
289
+ - Fix issue with calling toCSS twice not working in some situations (like with bootstrap 2)
290
+
291
+ # 1.6.2
292
+
293
+ 2014-02-02
294
+
295
+ - The Rhino release is fixed!
296
+ - ability to use uppercase colours
297
+ - Fix a nasty bug causing syntax errors when selector interpolation is preceded by a long comment (and some other cases)
298
+ - Fix a major bug with the variable scope in guards on selectors (e.g. not mixins)
299
+ - Fold in `& when () {` to the current selector rather than duplicating it
300
+ - fix another issue with array prototypes
301
+ - add a url-args option which adds a value to all urls (for cache busting)
302
+ - Round numbers to 8 decimal places - thereby stopping javascript precision errors
303
+ - some improvements to the default() function in more complex scenarios
304
+ - improved missing '{' and '(' detection
305
+
306
+ # 1.6.1
307
+
308
+ 2014-01-12
309
+
310
+ - support ^ and ^^ shadow dom selectors
311
+ - fix sourcemap selector (used to report end of the element or selector) and directive position (previously not supported)
312
+ - fix parsing empty less files
313
+ - error on (currently) ambiguous guards on multiple css selectors
314
+ - older environments - protect against typeof regex returning function
315
+ - Do not use default keyword
316
+ - use innerHTML in tests, not innerText
317
+ - protect for-in in case Array and Object prototypes have custom fields
318
+
319
+ # 1.6.0
320
+
321
+ 2014-01-01
322
+
323
+ - Properties can be interpolated, e.g. @{prefix}-property: value;
324
+ - a default function has been added only valid in mixin definitions to determine if no other mixins have been matched
325
+ - Added a plugins option that allows specifying an array of visitors run on the less AST
326
+ - Performance improvements that may result in approx 20-40% speed up
327
+ - Javascript evaluations returning numbers can now be used in calculations/functions
328
+ - fixed issue when adding colours, taking the alpha over 1 and breaking when used in colour functions
329
+ - when adding together 2 colours with non zero alpha, the alpha will now be combined rather than added
330
+ - the advanced colour functions no longer ignore transparency, they blend that too
331
+ - Added --clean-option and cleancssOptions to allow passing in clean css options
332
+ - rgba declarations are now always clamped e.g. rgba(-1,258,258, -1) becomes rgba(0, 255, 255, 0)
333
+ - Fix possible issue with import reference not bringing in styles (may not be a bugfix, just a code tidy)
334
+ - Fix some issues with urls() being prefixed twice and unquoted urls in mixins being processed each time they are called
335
+ - Fixed error messages for undefined variables in javascript evaluation
336
+ - Fixed line/column numbers from math errors
337
+
338
+ # 1.5.1
339
+
340
+ 2013-11-17
341
+
342
+ - Added source-map-URL option
343
+ - Fixed a bug which meant the minimised 1.5.0 browser version was not wrapped, meaning it interfered with require js
344
+ - Fixed a bug where the browser version assume port was specified
345
+ - Added the ability to specify variables on the command line
346
+ - Upgraded clean-css and fixed it from trying to import
347
+ - correct a bug meaning imports weren't synchronous (syncImport option available for full synchronous behaviour)
348
+ - better mixin matching behaviour with calling multiple classes e.g. .a.b.c;
349
+
350
+ # 1.5.0
351
+
352
+ 2013-10-21
353
+
354
+ - sourcemap support
355
+ - support for import inline option to include css that you do NOT want less to parse e.g. `@import (inline) "file.css";`
356
+ - better support for modifyVars (refresh styles with new variables, using a file cache), is now more resiliant
357
+ - support for import reference option to reference external css, but not output it. Any mixin calls or extend's will be output.
358
+ - support for guards on selectors (currently only if you have a single selector)
359
+ - allow property merging through the +: syntax
360
+ - Added min/max functions
361
+ - Added length function and improved extract to work with comma separated values
362
+ - when using import multiple, sub imports are imported multiple times into final output
363
+ - fix bad spaces between namespace operators
364
+ - do not compress comment if it begins with an exclamation mark
365
+ - Fix the saturate function to pass through when using the CSS syntax
366
+ - Added svg-gradient function
367
+ - Added no-js option to lessc (in browser, use javascriptEnabled: false) which disallows JavaScript in less files
368
+ - switched from the little supported and buggy cssmin (previously ycssmin) to clean-css
369
+ - support transparent as a color, but not convert between rgba(0, 0, 0, 0) and transparent
370
+ - remove sys.puts calls to stop deprecation warnings in future node.js releases
371
+ - Browser: added logLevel option to control logging (2 = everything, 1 = errors only, 0 = no logging)
372
+ - Browser: added errorReporting option which can be "html" (default) or "console" or a function
373
+ - Now uses grunt for building and testing
374
+ - A few bug fixes for media queries, extends, scoping, compression and import once.
375
+
376
+ # 1.4.2
377
+
378
+ 2013-07-20
379
+
380
+ - if you don't pass a strict maths option, font size/line height options are output correctly again
381
+ - npmignore now include .gitattributes
382
+ - property names may include capital letters
383
+ - various windows path fixes (capital letters, multiple // in a path)
384
+
385
+ # 1.4.1
386
+
387
+ 2013-07-05
388
+
389
+ - fix syncImports and yui-compress option, as they were being ignored
390
+ - fixed several global variable leaks
391
+ - handle getting null or undefined passed as the options object
392
+
393
+ # 1.4.0
394
+
395
+ 2013-06-05
396
+
397
+ - fix passing of strict maths option
398
+
399
+ # 1.4.0 Beta 4
400
+
401
+ 2013-05-04
402
+
403
+ - change strictMaths to strictMath. Enable this with --strict-math=on in lessc and strictMath:true in JavaScript.
404
+ - change lessc option for strict units to --strict-units=off
405
+
406
+ # 1.4.0 Beta 3
407
+
408
+ 2013-04-30
409
+
410
+ - strictUnits now defaults to false and the true case now gives more useful but less correct results, e.g. 2px/1px = 2px
411
+ - Process ./ when having relative paths
412
+ - add isunit function for mixin guards and non basic units
413
+ - extends recognise attributes
414
+ - exception errors extend the JavaScript Error
415
+ - remove es-5-shim as standard from the browser
416
+ - Fix path issues with windows/linux local paths
417
+
418
+ # 1.4.0 Beta 1 & 2
419
+
420
+ 2013-03-07
421
+
422
+ - support for `:extend()` in selectors (e.g. `input:extend(.button) {}`) and `&:extend();` in ruleset (e.g. `input { &:extend(.button all); }`)
423
+ - maths is now only done inside brackets. This means font: statements, media queries and the calc function can use a simpler format without being escaped. Disable this with --strict-maths-off in lessc and strictMaths:false in JavaScript.
424
+ - units are calculated, e.g. 200cm+1m = 3m, 3px/1px = 3. If you use units inconsistently you will get an error. Suppress this error with --strict-units-off in lessc or strictUnits:false in JavaScript
425
+ - `(~"@var")` selector interpolation is removed. Use @{var} in selectors to have variable selectors
426
+ - default behaviour of import is to import each file once. `@import-once` has been removed.
427
+ - You can specify options on imports to force it to behave as css or less `@import (less) "file.css"` will process the file as less
428
+ - variables in mixins no longer 'leak' into their calling scope
429
+ - added data-uri function which will inline an image into the output css. If ieCompat option is true and file is too large, it will fallback to a url()
430
+ - significant bug fixes to our debug options
431
+ - other parameters can be used as defaults in mixins e.g. .a(@a, @b:@a)
432
+ - an error is shown if properties are used outside of a ruleset
433
+ - added extract function which picks a value out of a list, e.g. extract(12 13 14, 3) => 14
434
+ - added luma, hsvhue, hsvsaturation, hsvvalue functions
435
+ - added pow, pi, mod, tan, sin, cos, atan, asin, acos and sqrt math functions
436
+ - added convert function, e.g. convert(1rad, deg) => value in degrees
437
+ - lessc makes output directories if they don't exist
438
+ - lessc `@import` supports https and 301's
439
+ - lessc "-depends" option for lessc writes out the list of import files used in makefile format
440
+ - lessc "-lint" option just reports errors
441
+ - support for namespaces in attributes and selector interpolation in attributes
442
+ - other bug fixes
443
+
444
+ # 1.3.3
445
+
446
+ 2012-12-30
447
+
448
+ - Fix critical bug with mixin call if using multiple brackets
449
+ - when using the filter contrast function, the function is passed through if the first argument is not a color
450
+
451
+ # 1.3.2
452
+
453
+ 2012-12-28
454
+
455
+ - browser and server url re-writing is now aligned to not re-write (previous lessc behaviour)
456
+ - url-rewriting can be made to re-write to be relative to the entry file using the relative-urls option (less.relativeUrls option)
457
+ - rootpath option can be used to add a base path to every url
458
+ - Support mixin argument separator of ';' so you can pass comma separated values. e.g. `.mixin(23px, 12px;);`
459
+ - Fix lots of problems with named arguments in corner cases, not behaving as expected
460
+ - hsv, hsva, unit functions
461
+ - fixed lots more bad error messages
462
+ - fix `@import-once` to use the full path, not the relative one for determining if an import has been imported already
463
+ - support `:not(:nth-child(3))`
464
+ - mixin guards take units into account
465
+ - support unicode descriptors (`U+00A1-00A9`)
466
+ - support calling mixins with a stack when using `&` (broken in 1.3.1)
467
+ - support `@namespace` and namespace combinators
468
+ - when using % with colour functions, take into account a colour is out of 256
469
+ - when doing maths with a % do not divide by 100 and keep the unit
470
+ - allow url to contain % (e.g. %20 for a space)
471
+ - if a mixin guard stops execution a default mixin is not required
472
+ - units are output in strings (use the unit function if you need to get the value without unit)
473
+ - do not infinite recurse when mixins call mixins of the same name
474
+ - fix issue on important on mixin calls
475
+ - fix issue with multiple comments being confused
476
+ - tolerate multiple semi-colons on rules
477
+ - ignore subsequant `@charset`
478
+ - syncImport option for node.js to read files syncronously
479
+ - write the output directory if it is missing
480
+ - change dependency on cssmin to ycssmin
481
+ - lessc can load files over http
482
+ - allow calling less.watch() in non dev mode
483
+ - don't cache in dev mode
484
+ - less files cope with query parameters better
485
+ - sass debug statements are now chrome compatible
486
+ - modifyVars function added to re-render with different root variables
487
+
488
+ # 1.3.1
489
+
490
+ 2012-10-18
491
+
492
+ - Support for comment and @media debugging statements
493
+ - bug fix for async access in chrome extensions
494
+ - new functions tint, shade, multiply, screen, overlay, hardlight, difference, exclusion, average, negation, softlight, red, green, blue, contrast
495
+ - allow escaped characters in attributes
496
+ - in selectors support @{a} directly, e.g. .a.@{a} { color: black; }
497
+ - add fraction parameter to round function
498
+ - much better support for & selector
499
+ - preserve order of link statements client side
500
+ - lessc has better help
501
+ - rhino version fixed
502
+ - fix bugs in clientside error handling
503
+ - support dpi, vmin, vm, dppx, dpcm units
504
+ - Fix ratios in media statements
505
+ - in mixin guards allow comparing colors and strings
506
+ - support for -*-keyframes (for -khtml but now supports any)
507
+ - in mix function, default weight to 50%
508
+ - support @import-once
509
+ - remove duplicate rules in output
510
+ - implement named parameters when calling mixins
511
+ - many numerous bug fixes
512
+
513
+ # 1.3.0
514
+
515
+ 2012-03-10
516
+
517
+ - @media bubbling
518
+ - Support arbitrary entities as selectors
519
+ - [Variadic argument support](https://gist.github.com/1933613)
520
+ - Behaviour of zero-arity mixins has [changed](https://gist.github.com/1933613)
521
+ - Allow `@import` directives in any selector
522
+ - Media-query features can now be a variable
523
+ - Automatic merging of media-query conditions
524
+ - Fix global variable leaks
525
+ - Fix error message on wrong-arity call
526
+ - Fix an `@arguments` behaviour bug
527
+ - Fix `::` selector output
528
+ - Fix a bug when using @media with mixins
529
+
530
+
531
+ # 1.2.1
532
+
533
+ 2012-01-15
534
+
535
+ - Fix imports in browser
536
+ - Improve error reporting in browser
537
+ - Fix Runtime error reports from imported files
538
+ - Fix `File not found` import error reporting
539
+
540
+
541
+ # 1.2.0
542
+
543
+ 2012-01-07
544
+
545
+ - Mixin guards
546
+ - New function `percentage`
547
+ - New `color` function to parse hex color strings
548
+ - New type-checking stylesheet functions
549
+ - Fix Rhino support
550
+ - Fix bug in string arguments to mixin call
551
+ - Fix error reporting when index is 0
552
+ - Fix browser support in WebKit and IE
553
+ - Fix string interpolation bug when var is empty
554
+ - Support `!important` after mixin calls
555
+ - Support vanilla @keyframes directive
556
+ - Support variables in certain css selectors, like `nth-child`
557
+ - Support @media and @import features properly
558
+ - Improve @import support with media features
559
+ - Improve error reports from imported files
560
+ - Improve function call error reporting
561
+ - Improve error-reporting