less 3.10.3 → 3.11.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/.github/FUNDING.yml +12 -0
  2. package/CHANGELOG.md +509 -711
  3. package/CONTRIBUTING.md +2 -2
  4. package/Gruntfile.js +42 -212
  5. package/README.md +31 -3
  6. package/bin/lessc +10538 -13511
  7. package/dist/less.cjs.js +10078 -12936
  8. package/dist/less.js +10670 -13462
  9. package/dist/less.min.js +3 -3
  10. package/dist/less.min.js.map +1 -1
  11. package/lib/less/contexts.js +1 -1
  12. package/lib/less/environment/abstract-file-manager.js +1 -1
  13. package/lib/less/import-manager.js +7 -20
  14. package/lib/less/index.js +1 -1
  15. package/lib/less/less-error.js +22 -2
  16. package/lib/less/parse-tree.js +2 -6
  17. package/lib/less/parser/parser.js +10 -10
  18. package/lib/less/tree/debug-info.js +2 -1
  19. package/lib/less/tree/namespace-value.js +1 -2
  20. package/lib/less/visitors/visitor.js +10 -2
  21. package/lib/less-node/file-manager.js +19 -49
  22. package/lib/lessc.js +3 -22
  23. package/package.json +21 -16
  24. package/test/browser/common.js +11 -49
  25. package/test/browser/generator/benchmark.config.js +50 -0
  26. package/test/browser/generator/generate.js +78 -0
  27. package/test/browser/generator/runner.config.js +180 -0
  28. package/test/browser/generator/runner.js +2 -0
  29. package/test/browser/generator/template.js +83 -0
  30. package/test/browser/runner-browser-options.js +0 -6
  31. package/test/browser/runner-browser-spec.js +1 -1
  32. package/test/browser/runner-main-spec.js +1 -1
  33. package/test/browser/runner-modify-vars-spec.js +1 -1
  34. package/test/browser/runner-production-spec.js +1 -1
  35. package/test/css/calc.css +9 -0
  36. package/test/css/comments.css +1 -1
  37. package/test/css/css-3.css +5 -5
  38. package/test/css/css-guards.css +1 -1
  39. package/test/css/debug/linenumbers-all.css +5 -5
  40. package/test/css/debug/linenumbers-comments.css +5 -5
  41. package/test/css/debug/linenumbers-mediaquery.css +5 -5
  42. package/test/css/extend-chaining.css +3 -3
  43. package/test/css/extend-media.css +1 -1
  44. package/test/css/extend-nest.css +1 -1
  45. package/test/css/filemanagerPlugin/filemanager.css +1 -1
  46. package/test/css/functions-each.css +1 -1
  47. package/test/css/import-once.css +2 -2
  48. package/test/css/import-reference-issues.css +1 -1
  49. package/test/css/import-reference.css +6 -6
  50. package/test/css/import.css +1 -1
  51. package/test/css/javascript.css +1 -1
  52. package/test/css/legacy/legacy.css +1 -1
  53. package/test/css/math/parens-division/mixins-args.css +1 -1
  54. package/test/css/math/parens-division/parens.css +1 -1
  55. package/test/css/math/strict/mixins-args.css +1 -1
  56. package/test/css/math/strict/parens.css +1 -1
  57. package/test/css/math/strict-legacy/mixins-args.css +1 -1
  58. package/test/css/math/strict-legacy/parens.css +1 -1
  59. package/test/css/media.css +14 -14
  60. package/test/css/merge.css +10 -10
  61. package/test/css/mixins-guards.css +6 -6
  62. package/test/css/mixins.css +2 -2
  63. package/test/css/namespacing/namespacing-3.css +16 -1
  64. package/test/css/namespacing/namespacing-4.css +1 -1
  65. package/test/css/namespacing/namespacing-functions.css +6 -0
  66. package/test/css/no-strict-math/mixins-guards.css +1 -1
  67. package/test/css/permissive-parse.css +1 -1
  68. package/test/css/plugin.css +9 -9
  69. package/test/css/postProcessorPlugin/postProcessor.css +2 -2
  70. package/test/css/preProcessorPlugin/preProcessor.css +1 -1
  71. package/test/css/selectors.css +2 -2
  72. package/test/css/variables.css +1 -1
  73. package/test/css/visitorPlugin/visitor.css +1 -1
  74. package/test/index.js +6 -0
  75. package/test/less/calc.less +17 -1
  76. package/test/less/comments.less +1 -1
  77. package/test/less/css-3.less +5 -5
  78. package/test/less/css-guards.less +2 -2
  79. package/test/less/debug/import/test.less +2 -2
  80. package/test/less/debug/linenumbers.less +3 -3
  81. package/test/less/errors/color-func-invalid-color.less +1 -1
  82. package/test/less/errors/color-func-invalid-color.txt +1 -1
  83. package/test/less/errors/invalid-color-with-comment.less +1 -0
  84. package/test/less/errors/invalid-color-with-comment.txt +2 -0
  85. package/test/less/errors/plugin-1.txt +2 -2
  86. package/test/less/errors/plugin-2.txt +1 -2
  87. package/test/less/errors/plugin-3.txt +1 -2
  88. package/test/less/errors/property-ie5-hack.less +1 -1
  89. package/test/less/extend-chaining.less +3 -3
  90. package/test/less/extend-media.less +1 -1
  91. package/test/less/extend-nest.less +1 -1
  92. package/test/less/filemanagerPlugin/filemanager.less +1 -1
  93. package/test/less/functions-each.less +1 -1
  94. package/test/less/import/import-reference.less +1 -1
  95. package/test/less/import/import-test-f.less +1 -1
  96. package/test/less/import/json/index.json +11 -0
  97. package/test/less/import/json/index.less +1 -0
  98. package/test/less/import-reference-issues/global-scope-import.less +2 -2
  99. package/test/less/import-reference-issues/global-scope-nested.less +1 -1
  100. package/test/less/import-reference-issues.less +2 -2
  101. package/test/less/import-reference.less +1 -1
  102. package/test/less/javascript.less +1 -1
  103. package/test/less/legacy/legacy.less +1 -1
  104. package/test/less/math/parens-division/mixins-args.less +4 -4
  105. package/test/less/math/parens-division/parens.less +1 -1
  106. package/test/less/math/strict/mixins-args.less +4 -4
  107. package/test/less/math/strict/parens.less +1 -1
  108. package/test/less/math/strict-legacy/mixins-args.less +4 -4
  109. package/test/less/math/strict-legacy/parens.less +1 -1
  110. package/test/less/media.less +9 -9
  111. package/test/less/merge.less +10 -10
  112. package/test/less/mixins-guards.less +8 -8
  113. package/test/less/mixins-important.less +3 -3
  114. package/test/less/mixins.less +2 -2
  115. package/test/less/namespacing/namespacing-3.less +25 -2
  116. package/test/less/namespacing/namespacing-4.less +1 -1
  117. package/test/less/namespacing/namespacing-5.less +2 -2
  118. package/test/less/namespacing/namespacing-functions.less +26 -0
  119. package/test/less/no-strict-math/mixins-guards.less +2 -2
  120. package/test/less/permissive-parse.less +1 -1
  121. package/test/less/plugin.less +9 -9
  122. package/test/less/postProcessorPlugin/postProcessor.less +2 -2
  123. package/test/less/preProcessorPlugin/preProcessor.less +1 -1
  124. package/test/less/selectors.less +1 -1
  125. package/test/less/sourcemaps/imported.css +1 -1
  126. package/test/less/variables.less +1 -1
  127. package/test/less/visitorPlugin/visitor.less +1 -1
  128. package/test/less-test.js +45 -11
  129. package/test/less.js +11 -0
  130. package/test/sourcemaps/custom-props.json +1 -1
  131. package/.DS_Store +0 -0
  132. package/test/.DS_Store +0 -0
  133. package/test/browser/less.min.js +0 -11
  134. package/test/browser/less.min.js.map +0 -1
  135. package/test/browser/onload.js +0 -13
  136. package/test/browser/test-runner-template.tmpl +0 -105
  137. package/test/browser/vendor/boot.js +0 -148
  138. package/test/browser/vendor/jasmine-jsreporter.js +0 -391
  139. package/test/browser/vendor/promise.js +0 -2
  140. package/test/css/.DS_Store +0 -0
  141. package/test/css/math/.DS_Store +0 -0
  142. package/test/less/.DS_Store +0 -0
  143. package/test/less/math/.DS_Store +0 -0
package/CHANGELOG.md CHANGED
@@ -1,711 +1,509 @@
1
- ## 3.10.0-beta
2
-
3
- 2019-08-03
4
- - Switched codebase to ES2015 w/ Rollup/Babel compilation
5
- - Added TS linter to ESLint (types yet to be added to functions / vars)
6
- - Ignore undefined content in generating source maps (#3360)
7
-
8
- ## 3.9.0
9
-
10
- 2018-11-28
11
- - Added `range([start=1], end, [step=1])` function to generate lists
12
- - Fixes #3325 #3313 #3328
13
-
14
- ## 3.8.1
15
-
16
- 2018-08-07
17
- - Fixes for sourcemaps and color functions
18
- - Support for #RRGGBBAA color format
19
- - Allows conversion of colors to `rgba()` or `hsla()`
20
- - Pass-through output of unknown properties in color functions (allows `var(--color)` for example)
21
-
22
- ## 3.8.0
23
-
24
- 2018-07-22
25
- - New feature: added rewrite urls to replace relative url option. Adds "local" option for modules
26
-
27
- ## 3.7.1
28
-
29
- 2018-07-11
30
- - Fixes mistake in `lessc` (using `console.warning` instead of actual `console.warn`)
31
- - Adds `lessc` tests
32
-
33
- ## 3.7.0
34
-
35
- 2018-07-11
36
- - New each() function! [See docs](http://lesscss.org/functions/#list-functions-each)
37
- - New math modes! Also [see docs](http://lesscss.org/usage/#less-options-math).
38
- - Bug fixes
39
-
40
- ## 3.6.0
41
-
42
- 2018-07-10
43
- - Allows plain conditions in `if(true, 1, 2)` (vs. `if((true), 1, 2)`)
44
- - Fixes svg-gradient() for Firefox
45
- - Adds more 3rd-party tests for fewer surprises when upgrading
46
- - Removes (broken) `less-rhino` implementation - use other Java ports
47
-
48
- ## 3.5.3
49
-
50
- 2018-07-06
51
- - Reverts `@media` eval change
52
- - Other bug fixes
53
-
54
- ## 3.5.0
55
-
56
- 2018-07-05
57
- - Feature: Namespaced Values / Maps e.g. `color: @color[primary]`
58
- - Fixes to calc()
59
- - Permissive parsing of custom properties and variables
60
- - Inline expressions now not evaluated in at-rules `@media (min-width: @var) {}` works, `@media (min-width: @var + 1) {}` will not
61
- - Allows unnamed lookups i.e. "functions" e.g. `.mixin(@a, @b)[]`
62
- - Lots of bug fixes
63
-
64
- ## 3.5.0-beta.4
65
-
66
- 2018-06-30
67
- - Fixes #3235, #3187
68
- - Feature: Namespaced Values e.g. `color: #color[primary]`
69
-
70
- ## 3.5.0-beta.3
71
-
72
- 2018-06-29
73
- - Fix: browser cache is always considered stale if .modifyVars wasn't
74
-
75
- ## 3.5.0-beta.2
76
-
77
- 2018-06-27
78
- - Re-parses selectors after variables in selectors are evaluated - Fixes #1421
79
- - Fixes #3191
80
-
81
- ## 3.5.0-beta
82
-
83
- 2018-06-24
84
- - Adds permissive parsing for at-rules and custom properties - fixes #3147 #2715
85
- - Updates dependencies
86
- - Fixes file caching issue (not reloading modified files in "watched" environments)
87
-
88
- ## 3.0.4
89
-
90
- 2018-05-06
91
- - Update source-map to 0.6.x (#3180). Enforces node 6+ though.
92
-
93
- ## 3.0.0
94
-
95
- 2018-02-10
96
- - Fix `calc()` function to not do math operations on compile
97
- - Rename Directive -> AtRule & Rule -> Declaration
98
- - Cross-platform `@plugin` loading! (Node & Browser)
99
- - Numerous changes / improvements to plugin architecture
100
- - Simplified API calls in plugins (`less.atrule()` vs `new less.tree.AtRule()`)
101
- - Property accessors (`$width` to refer to `width: 300px` value)
102
- - Inline JavaScript disabled by default for security reasons (use `@plugin`)
103
- - Improvements in Less error reporting
104
- - Added feature: returning `null` / `false` from Less functions will remove that line
105
- - Simple `boolean()` and `if()` functions added
106
- - Bug fixes
107
- - Removal of unnecessary nodes from API (like IE's `alpha()`)
108
-
109
- ## 2.7.3
110
-
111
- 2017-10-23
112
-
113
- - Bump `request` dependency
114
-
115
- ## 2.7.2
116
-
117
- 2017-01-04
118
-
119
- - Revert breaking changes to contrast() function
120
- - Fix error reporting of lessc executable
121
- - Changed octals to hex for ES6 strict mode
122
-
123
- ## 2.7.1 HOTFIX
124
-
125
- 2016-05-09
126
-
127
- - Revert commit 470af20 (source map performance) which broke source maps
128
-
129
- ## 2.7.0
130
-
131
- 2016-05-07
132
-
133
- - Fixes for contrast() function
134
- - Allow root functions for plugins
135
- - Allow semi-colon separators in functions
136
- - Performance improvements for source maps
137
- - Fix "blank page" issue in browser
138
- - Compatibility fixes for Node 6.x
139
- - Fix AST to include single-line comments
140
- - Fix reversion for "color-like" words (outputting color values)
141
-
142
- ## 2.6.1
143
-
144
- 2016-03-04
145
-
146
- - Update Less.js dependencies
147
- - Fix comments after named color regression
148
- - use instanceof operator instead of class comparison optimization
149
- - disallow whitespace in variable calls
150
-
151
- ## 2.6.0
152
-
153
- 2016-01-29
154
-
155
- - Underscore now allowed in dimension unit
156
- - Fixes for import by reference
157
- - Fix for #2384 Changes HTTPRequest "sync" setting to simply hide the page until less has rendered, browser version is now orders of magnitude faster.
158
- - Added ability to cache stylesheets while using modifyVars
159
- - Error when when image-size functions are used in browser-less
160
- - Fixed extend leaking through nested parent selector. #2586
161
- - Added "or" keyword and allowed arbitrary logical expression in guards
162
- - Fixing #2124 - Parsing Error "Unrecognised input" for color operations
163
- - Logical operator ```and``` now has higher precedence than logical operator ```or```.
164
- - Allow unknown at-rules w/o {} block
165
-
166
- ## 2.5.3
167
-
168
- 2015-09-25
169
-
170
- - Fix import inline a URL
171
-
172
- ## 2.5.2
173
-
174
- 2015-09-24
175
-
176
- - No output should result in an empty sourcemap
177
- - Import inline located inside file imported by reference should not be present in output
178
- - Shorthand colors will stay shorthand
179
- - Make percentage work like other math functions and throw an error on NaN
180
- - Fixed mixin definition matching problem when mixin definition contains parameters with default values
181
- - Observe reference for imported comments
182
-
183
- ## 2.5.1
184
-
185
- 2015-05-21
186
-
187
- - Fix problems with less being async in some browsers
188
- - Minor fix only likely to affect programmatic usage of ruleset find
189
- - Fix error when a namespaced mixin is invoked in global scope
190
-
191
- ## 2.5.0
192
-
193
- 2015-04-03
194
-
195
- - supports the scoped `@plugin` directive to load function plugins
196
- - All directives are bubbled (e.g. supports), not just media
197
- - Performance improvements to the parser - should help non-chrome browsers with very large less files to be a lot quicker.
198
- - the image size function respects include paths like other file functions
199
- - colour functions take a relative argument that applies percentages relatively instead of absolutely
200
- - include paths now allows : as a separator on windows (recognising and not splitting drive names by the backslash)
201
- - `@import (css)` does not pull the directive above comments
202
- - Fix for import statements without quotes sometimes causing issues
203
- - replace supports dimensions and colours
204
- - the browser field is set in the package.json for use with browserify
205
- - another fix to support paths being passed as a string instead of an array
206
- - detached rulesets can be used as default arguments
207
- - Fix a lot of false warnings about extends
208
- - errors written to stderr more consistently
209
- - consistently keep units if strict units is off
210
- - Better support for comments in function all arguments
211
-
212
- ## 2.4.0
213
-
214
- 2015-02-07
215
-
216
- - Support for plugins that pre-process (to add libraries silently etc.)
217
- - Empty sourcemaps now work
218
- - Extract and Length functions now ignore comments in a list (more work to come to fix the general problem)
219
- - fragment urls are treated absolute since they refer to the html document
220
- - Extends on a selector joined with `&` now work better
221
- - Nested mixins work better with !important (regression in 2.3.0)
222
- - The promise dependency is now actually optional (introduced in 2.0.0)
223
- - Files with just `\r` newlines now process ok (regression in 2.0.0)
224
- - 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)
225
-
226
- ## 2.3.1
227
-
228
- 2015-01-28
229
-
230
- - Fix depends option (regression in 2.3.0)
231
- - Support parent selector (`&`) used in sub element expression (e.g. `:not(.c_&)`)
232
-
233
- ## 2.3.0
234
-
235
- 2015-01-27
236
-
237
- - add `isruleset` function
238
- - add optional import option, causing less to not fail if file not found
239
- - Fix browsers-side cache.
240
- - Many fixes to import reference - support `@support` and keyframe
241
- - Selectors now interpolate pseudo selectors (e.g. `:@{hover}`)
242
- - Fix comments missed off if they were at the end of the file
243
- - Fix !important used with parametric mixins
244
- - Emits warnings for extends when the target is not found
245
- - include-path now works on data-uri
246
- - variables and function calls work for path in data-uri
247
- - Fix absolute paths not working on imports sometimes.
248
- - Unicode BOM removed again
249
- - Misc. bug fixes
250
-
251
- ## 2.2.0
252
-
253
- 2015-01-04
254
-
255
- - do not apply relative paths to svg-gradient and data-uri functions data-uri output
256
- - using import filename interpolation and import inline together now works
257
- - deprecate the compression option (still works, but outputs a warning unless silent)
258
- - The node version of less now has image-size, image-width, image-height which return the image dimensions of a file
259
- - Fixed an issue that could cause the parse to occur more than once and the callback be called multiple times
260
- - if you are outputting to the console, lessc defaults to silent so warnings do not end up in output
261
- - `isunit` function supports `''` to test if a dimension has no unit
262
- - data-uri function now counts characters after base64 encoding instead of bytes before encoding to determine ie8 support
263
- - fix bug effecting guards on pseudo class selectors
264
- - do not cache on the browser when used with modifyVars
265
- - detection if less does not parse last character in file
266
- - 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.
267
- - remove extra new line added to sourcemap entry inline file
268
- - support safari extension
269
- - less.parse now exposes a way to get the AST. We do not recommend you use this unless you need to.
270
-
271
- ## 2.1.2
272
-
273
- 2014-12-20
274
-
275
- - Fix for use with requirejs
276
- - Fixes for data-uri function
277
-
278
- ## 2.1.1
279
-
280
- 2014-11-27
281
-
282
- - Improved keyword and anonymous usage with the replace function
283
- - Added `getCSSAppendage` to sourcemap builder to avoid duplication in plugins
284
- - Fix problem with plugins when used with the promises version of render
285
- - If the render callback throws an exception it now propagates instead of calling the callback again with an error
286
-
287
- ## 2.1.0
288
-
289
- 2014-11-23
290
-
291
- - 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.
292
- - Browser code is now synchronous again, like in v1, meaning it blocks the site until less is compiled
293
- - Some fixes for variable imports which affected filemanagers when synchronous
294
- - Fixed lessc makefile dependencies option
295
- - output now reports back a imports field with an array of imported files
296
- - relative path test for drive names (so windows only) is now case insensitive
297
- - Fix for IE7 - use getChar instead of indexing array
298
- - variables using !important now output !important, which bubbles up to affect the rule
299
- - livereload cache buster is now treated specially
300
- - upgrade dependencies
301
-
302
- ## 2.0.0
303
-
304
- 2014-11-09
305
-
306
- - Fixed multiplication in non strict units mode to take the left operand unit, in the case that the unit cannot be resolved
307
- - Some fixes for browser cross-compatibility
308
- - browser tests now pass in IE 8-11 and FF
309
- - added index.js and browser.js in root as shortcuts
310
- - fixed some local variable spellings
311
- - support for `@counter-style` directive
312
-
313
- ## 2.0.0-b3
314
-
315
- 2014-11-01
316
-
317
- - some refactoring of browser structure to allow use of api vs normal browser bundle
318
- - browser bundle no longer leaks require
319
- - browser can now be scoped with just window
320
- - browser `useFileCache` defaults to `true`, but file cache is now cleared when refreshing or in watch mode
321
-
322
- ## 2.0.0-b2
323
-
324
- 2014-10-26
325
-
326
- - Imports are now sequenced and so are consistent (previously some complex projects might end up with occasional different orderings)
327
- - Imports with variables are better supported - variables can be specified in sub imports
328
- - Support for rebeccapurple
329
- - Browser can now accept options as attributes on the script tag and the link tags e.g. `<script data-verbose="false" src="less.js"...`
330
- - adding a .less file extension is done in the abstract file manager so it the behaviour can be overridden by certain file managers
331
- - Fixed a bug where unquoted urls beginning `//` e.g. `url(//file/file.less)` would be incorrectly interpreted (bug introduced in b-1)
332
- - 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
333
-
334
- ## 2.0.0-b1
335
-
336
- 2014-10-19
337
-
338
- - Public Beta / Release Candidate - Feedback welcome
339
- For a guide to breaking changes see [the v2 upgrade guide](http://lesscss.org/usage/#v2-upgrade-guide)
340
- - no longer including old versions of less in the repo or npm
341
- - not including test less and gradle files in npm
342
- - colours now output in the format they are added, so yellow will output yellow, not its hex counterpart
343
- - better parsing - better comment support and comments in brackets can now contain comments including quotes.
344
- - Removal of dependency on clean-css - install less-plugin-clean-css and use --clean-css to reference plugin
345
- - Environment Support - less is now separate from its node and browser environment implementations and adding support for another javascript environment should be straight forward.
346
- - 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).
347
- - 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.
348
- - 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.
349
- - 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
350
- - In the browser, the cache can be overwritten by setting less.cache before less loads. After load less.cache will be the default implementation.
351
- - less.js now uses browserify to generate its browser side component
352
- - default values for the sourcemap options have been re-done and improved to hopefully mean creating sourcemaps is easier
353
- - Many smaller bugfixes and API changes. Please let us know if something you relied on has disappeared or an area should be better documented.
354
-
355
- ## 1.7.5
356
-
357
- 2014-09-03
358
-
359
- - Allow comments in keyframe (complete comment support coming in 2.0)
360
- - pass options to parser from less.render
361
- - Support /deep/ combinator
362
- - handle fragments in data-uri's
363
- - float @charsets to the top correctly
364
- - updates to some dependencies
365
- - Fix interpolated import in media query
366
- - A few other various small corrections
367
-
368
- ## 1.7.4
369
-
370
- 2014-07-27
371
-
372
- - Handle uppercase paths in browser
373
- - Show error if an empty selector is used in extend
374
- - Fix property merging in directives
375
- - Fix ordering of charset and import directives
376
- - Fix race condition that caused a rules is undefined error sometimes if you had a complex import strategy
377
- - Better error message for imports missing semi-colons or malformed
378
- - Do not use util.print to avoid deprecate warnings in node 0.11
379
-
380
- ## 1.7.3
381
-
382
- 2014-06-22
383
-
384
- - Include dist files, missing from 1.7.2
385
- - Do not round the results of color functions, like lightness, hue, luma etc.
386
- - Support cover and contain keywords in background definitions
387
-
388
- ## 1.7.2
389
-
390
- 2014-06-19
391
-
392
- - 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)
393
- - Do not round numbers when used with javascript (introduced 1.7.0)
394
-
395
- ## 1.7.1
396
-
397
- 2014-06-08
398
-
399
- - Fix detection of recursive mixins
400
- - Fix the paths option for later versions of node (0.10+)
401
- - Fix paths joining bug
402
- - Fix a number precision issue on some versions of node
403
- - Fix an IE8 issue with importing css files
404
- - Fix IE11 detection for xhr requests
405
- - Modify var works if the last line of a less file is a comment.
406
- - Better detection of valid hex colour codes
407
- - Some stability fixes to support a low number of available file handles
408
- - Support comparing values with different quote types e.g. "test" now === 'test'
409
- - Give better error messages if accessing a url that returns a non 200 status code
410
- - Fix the e() function when passed empty string
411
- - Several minor bug fixes
412
-
413
- ## 1.7.0
414
-
415
- 2014-02-27
416
-
417
- - Add support for rulesets in variables and passed to mixins to allow wrapping
418
- - 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.
419
- - Upgraded clean css which means the --selectors-merge-mode is now renamed --compatibility
420
- - Add support for using variables with @keyframes, @namespace, @charset
421
- - Support property merging with +_ when spaces are needed and keep + for comma separated
422
- - Imports now always import once consistently - a race condition meant previously certain configurations would lead to a different ordering of files
423
- - Fix support for `.mixin(@args...)` when called with no args (e.g. `.mixin();`)
424
- - Do unit conversions with min and max functions. Don't pass through if not understood, throw an error
425
- - Allow % to be passed on its own to the unit function e.g. `unit(10, %)`
426
- - 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.)
427
- - Fix mixins with media queries in import reference files not being put into the output (they now output, they used to incorrectly not)
428
- - Fix lint mode - now reports all errors
429
- - Fixed a small scope issue with & {} selector rulesets incorrectly making mixins visible - regression from 1.6.2
430
- - 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
431
- - Browser - logLevel takes effect regardless of the environment (production/dev)
432
- - Browser - added postProcessor option, a function called to post-process the css before adding to the page
433
- - Browser - use the right request for file access in IE
434
-
435
- ## 1.6.3
436
-
437
- 2014-02-08
438
-
439
- - Fix issue with calling toCSS twice not working in some situations (like with bootstrap 2)
440
-
441
- ## 1.6.2
442
-
443
- 2014-02-02
444
-
445
- - The Rhino release is fixed!
446
- - ability to use uppercase colours
447
- - Fix a nasty bug causing syntax errors when selector interpolation is preceded by a long comment (and some other cases)
448
- - Fix a major bug with the variable scope in guards on selectors (e.g. not mixins)
449
- - Fold in `& when () {` to the current selector rather than duplicating it
450
- - fix another issue with array prototypes
451
- - add a url-args option which adds a value to all urls (for cache busting)
452
- - Round numbers to 8 decimal places - thereby stopping javascript precision errors
453
- - some improvements to the default() function in more complex scenarios
454
- - improved missing '{' and '(' detection
455
-
456
- ## 1.6.1
457
-
458
- 2014-01-12
459
-
460
- - support ^ and ^^ shadow dom selectors
461
- - fix sourcemap selector (used to report end of the element or selector) and directive position (previously not supported)
462
- - fix parsing empty less files
463
- - error on (currently) ambiguous guards on multiple css selectors
464
- - older environments - protect against typeof regex returning function
465
- - Do not use default keyword
466
- - use innerHTML in tests, not innerText
467
- - protect for-in in case Array and Object prototypes have custom fields
468
-
469
- ## 1.6.0
470
-
471
- 2014-01-01
472
-
473
- - Properties can be interpolated, e.g. @{prefix}-property: value;
474
- - a default function has been added only valid in mixin definitions to determine if no other mixins have been matched
475
- - Added a plugins option that allows specifying an array of visitors run on the less AST
476
- - Performance improvements that may result in approx 20-40% speed up
477
- - Javascript evaluations returning numbers can now be used in calculations/functions
478
- - fixed issue when adding colours, taking the alpha over 1 and breaking when used in colour functions
479
- - when adding together 2 colours with non zero alpha, the alpha will now be combined rather than added
480
- - the advanced colour functions no longer ignore transparency, they blend that too
481
- - Added --clean-option and cleancssOptions to allow passing in clean css options
482
- - rgba declarations are now always clamped e.g. rgba(-1,258,258, -1) becomes rgba(0, 255, 255, 0)
483
- - Fix possible issue with import reference not bringing in styles (may not be a bugfix, just a code tidy)
484
- - Fix some issues with urls() being prefixed twice and unquoted urls in mixins being processed each time they are called
485
- - Fixed error messages for undefined variables in javascript evaluation
486
- - Fixed line/column numbers from math errors
487
-
488
- ## 1.5.1
489
-
490
- 2013-11-17
491
-
492
- - Added source-map-URL option
493
- - Fixed a bug which meant the minimised 1.5.0 browser version was not wrapped, meaning it interfered with require js
494
- - Fixed a bug where the browser version assume port was specified
495
- - Added the ability to specify variables on the command line
496
- - Upgraded clean-css and fixed it from trying to import
497
- - correct a bug meaning imports weren't synchronous (syncImport option available for full synchronous behaviour)
498
- - better mixin matching behaviour with calling multiple classes e.g. .a.b.c;
499
-
500
- ## 1.5.0
501
-
502
- 2013-10-21
503
-
504
- - sourcemap support
505
- - support for import inline option to include css that you do NOT want less to parse e.g. `@import (inline) "file.css";`
506
- - better support for modifyVars (refresh styles with new variables, using a file cache), is now more resiliant
507
- - support for import reference option to reference external css, but not output it. Any mixin calls or extend's will be output.
508
- - support for guards on selectors (currently only if you have a single selector)
509
- - allow property merging through the +: syntax
510
- - Added min/max functions
511
- - Added length function and improved extract to work with comma separated values
512
- - when using import multiple, sub imports are imported multiple times into final output
513
- - fix bad spaces between namespace operators
514
- - do not compress comment if it begins with an exclamation mark
515
- - Fix the saturate function to pass through when using the CSS syntax
516
- - Added svg-gradient function
517
- - Added no-js option to lessc (in browser, use javascriptEnabled: false) which disallows JavaScript in less files
518
- - switched from the little supported and buggy cssmin (previously ycssmin) to clean-css
519
- - support transparent as a color, but not convert between rgba(0, 0, 0, 0) and transparent
520
- - remove sys.puts calls to stop deprecation warnings in future node.js releases
521
- - Browser: added logLevel option to control logging (2 = everything, 1 = errors only, 0 = no logging)
522
- - Browser: added errorReporting option which can be "html" (default) or "console" or a function
523
- - Now uses grunt for building and testing
524
- - A few bug fixes for media queries, extends, scoping, compression and import once.
525
-
526
- ## 1.4.2
527
-
528
- 2013-07-20
529
-
530
- - if you don't pass a strict maths option, font size/line height options are output correctly again
531
- - npmignore now include .gitattributes
532
- - property names may include capital letters
533
- - various windows path fixes (capital letters, multiple // in a path)
534
-
535
- ## 1.4.1
536
-
537
- 2013-07-05
538
-
539
- - fix syncImports and yui-compress option, as they were being ignored
540
- - fixed several global variable leaks
541
- - handle getting null or undefined passed as the options object
542
-
543
- ## 1.4.0
544
-
545
- 2013-06-05
546
-
547
- - fix passing of strict maths option
548
-
549
- ## 1.4.0 Beta 4
550
-
551
- 2013-05-04
552
-
553
- - change strictMaths to strictMath. Enable this with --strict-math=on in lessc and strictMath:true in JavaScript.
554
- - change lessc option for strict units to --strict-units=off
555
-
556
- ## 1.4.0 Beta 3
557
-
558
- 2013-04-30
559
-
560
- - strictUnits now defaults to false and the true case now gives more useful but less correct results, e.g. 2px/1px = 2px
561
- - Process ./ when having relative paths
562
- - add isunit function for mixin guards and non basic units
563
- - extends recognise attributes
564
- - exception errors extend the JavaScript Error
565
- - remove es-5-shim as standard from the browser
566
- - Fix path issues with windows/linux local paths
567
-
568
- ## 1.4.0 Beta 1 & 2
569
-
570
- 2013-03-07
571
-
572
- - support for `:extend()` in selectors (e.g. `input:extend(.button) {}`) and `&:extend();` in ruleset (e.g. `input { &:extend(.button all); }`)
573
- - 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.
574
- - 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
575
- - `(~"@var")` selector interpolation is removed. Use @{var} in selectors to have variable selectors
576
- - default behaviour of import is to import each file once. `@import-once` has been removed.
577
- - 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
578
- - variables in mixins no longer 'leak' into their calling scope
579
- - 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()
580
- - significant bug fixes to our debug options
581
- - other parameters can be used as defaults in mixins e.g. .a(@a, @b:@a)
582
- - an error is shown if properties are used outside of a ruleset
583
- - added extract function which picks a value out of a list, e.g. extract(12 13 14, 3) => 14
584
- - added luma, hsvhue, hsvsaturation, hsvvalue functions
585
- - added pow, pi, mod, tan, sin, cos, atan, asin, acos and sqrt math functions
586
- - added convert function, e.g. convert(1rad, deg) => value in degrees
587
- - lessc makes output directories if they don't exist
588
- - lessc `@import` supports https and 301's
589
- - lessc "-depends" option for lessc writes out the list of import files used in makefile format
590
- - lessc "-lint" option just reports errors
591
- - support for namespaces in attributes and selector interpolation in attributes
592
- - other bug fixes
593
-
594
- ## 1.3.3
595
-
596
- 2012-12-30
597
-
598
- - Fix critical bug with mixin call if using multiple brackets
599
- - when using the filter contrast function, the function is passed through if the first argument is not a color
600
-
601
- ## 1.3.2
602
-
603
- 2012-12-28
604
-
605
- - browser and server url re-writing is now aligned to not re-write (previous lessc behaviour)
606
- - url-rewriting can be made to re-write to be relative to the entry file using the relative-urls option (less.relativeUrls option)
607
- - rootpath option can be used to add a base path to every url
608
- - Support mixin argument separator of ';' so you can pass comma separated values. e.g. `.mixin(23px, 12px;);`
609
- - Fix lots of problems with named arguments in corner cases, not behaving as expected
610
- - hsv, hsva, unit functions
611
- - fixed lots more bad error messages
612
- - fix `@import-once` to use the full path, not the relative one for determining if an import has been imported already
613
- - support `:not(:nth-child(3))`
614
- - mixin guards take units into account
615
- - support unicode descriptors (`U+00A1-00A9`)
616
- - support calling mixins with a stack when using `&` (broken in 1.3.1)
617
- - support `@namespace` and namespace combinators
618
- - when using % with colour functions, take into account a colour is out of 256
619
- - when doing maths with a % do not divide by 100 and keep the unit
620
- - allow url to contain % (e.g. %20 for a space)
621
- - if a mixin guard stops execution a default mixin is not required
622
- - units are output in strings (use the unit function if you need to get the value without unit)
623
- - do not infinite recurse when mixins call mixins of the same name
624
- - fix issue on important on mixin calls
625
- - fix issue with multiple comments being confused
626
- - tolerate multiple semi-colons on rules
627
- - ignore subsequant `@charset`
628
- - syncImport option for node.js to read files syncronously
629
- - write the output directory if it is missing
630
- - change dependency on cssmin to ycssmin
631
- - lessc can load files over http
632
- - allow calling less.watch() in non dev mode
633
- - don't cache in dev mode
634
- - less files cope with query parameters better
635
- - sass debug statements are now chrome compatible
636
- - modifyVars function added to re-render with different root variables
637
-
638
- ## 1.3.1
639
-
640
- 2012-10-18
641
-
642
- - Support for comment and @media debugging statements
643
- - bug fix for async access in chrome extensions
644
- - new functions tint, shade, multiply, screen, overlay, hardlight, difference, exclusion, average, negation, softlight, red, green, blue, contrast
645
- - allow escaped characters in attributes
646
- - in selectors support @{a} directly, e.g. .a.@{a} { color: black; }
647
- - add fraction parameter to round function
648
- - much better support for & selector
649
- - preserve order of link statements client side
650
- - lessc has better help
651
- - rhino version fixed
652
- - fix bugs in clientside error handling
653
- - support dpi, vmin, vm, dppx, dpcm units
654
- - Fix ratios in media statements
655
- - in mixin guards allow comparing colors and strings
656
- - support for -*-keyframes (for -khtml but now supports any)
657
- - in mix function, default weight to 50%
658
- - support @import-once
659
- - remove duplicate rules in output
660
- - implement named parameters when calling mixins
661
- - many numerous bug fixes
662
-
663
- ## 1.3.0
664
-
665
- 2012-03-10
666
-
667
- - @media bubbling
668
- - Support arbitrary entities as selectors
669
- - [Variadic argument support](https://gist.github.com/1933613)
670
- - Behaviour of zero-arity mixins has [changed](https://gist.github.com/1933613)
671
- - Allow `@import` directives in any selector
672
- - Media-query features can now be a variable
673
- - Automatic merging of media-query conditions
674
- - Fix global variable leaks
675
- - Fix error message on wrong-arity call
676
- - Fix an `@arguments` behaviour bug
677
- - Fix `::` selector output
678
- - Fix a bug when using @media with mixins
679
-
680
-
681
- ## 1.2.1
682
-
683
- 2012-01-15
684
-
685
- - Fix imports in browser
686
- - Improve error reporting in browser
687
- - Fix Runtime error reports from imported files
688
- - Fix `File not found` import error reporting
689
-
690
-
691
- ## 1.2.0
692
-
693
- 2012-01-07
694
-
695
- - Mixin guards
696
- - New function `percentage`
697
- - New `color` function to parse hex color strings
698
- - New type-checking stylesheet functions
699
- - Fix Rhino support
700
- - Fix bug in string arguments to mixin call
701
- - Fix error reporting when index is 0
702
- - Fix browser support in WebKit and IE
703
- - Fix string interpolation bug when var is empty
704
- - Support `!important` after mixin calls
705
- - Support vanilla @keyframes directive
706
- - Support variables in certain css selectors, like `nth-child`
707
- - Support @media and @import features properly
708
- - Improve @import support with media features
709
- - Improve error reports from imported files
710
- - Improve function call error reporting
711
- - Improve error-reporting
1
+ ## Change Log
2
+
3
+ ### v3.11.2 (2020-06-01)
4
+ - [#3498](https://github.com/less/less.js/pull/3498) Remove tree caching in import manager (#3498) (@matthew-dean)
5
+ - [#3482](https://github.com/less/less.js/pull/3482) issue#3481 ignore missing debugInfo (#3482) (@5UtJAjiRWj1q)
6
+ - [#3494](https://github.com/less/less.js/pull/3494) Additional check to avoid evaluating an expression if it is a comment (#3494) (@rgroothuijsen)
7
+ - [#3490](https://github.com/less/less.js/pull/3490) fix: Use make-dir instead of mkdirp (#3490) (@eps1lon)
8
+ - [#3493](https://github.com/less/less.js/pull/3493) Properly exit calc mode after use (#3493) (@rgroothuijsen)
9
+ - [#3477](https://github.com/less/less.js/pull/3477) Convert to auto-changelog (#3477) (@matthew-dean)
10
+
11
+ ### v3.11.1 (2020-02-11)
12
+ - [#3475](https://github.com/less/less.js/pull/3475) Fixes #3469 - Include tslib dependency (#3475) (@matthew-dean)
13
+
14
+ ### v3.11.0 (2020-02-09)
15
+ - [#3468](https://github.com/less/less.js/pull/3468) 3.11.0 (#3468) (@matthew-dean)
16
+ - [#3453](https://github.com/less/less.js/pull/3453) Import file with dots in file name (#3453) (@life777)
17
+ - [#3460](https://github.com/less/less.js/pull/3460) - Fixed replacer when visitor returns array of nodes (#3460) (@lmartorella)
18
+ - [#3454](https://github.com/less/less.js/pull/3454) Added financial contributors to the README (#3454) (@monkeywithacupcake)
19
+ - [#3431](https://github.com/less/less.js/pull/3431) Fixes #3430: Removed unnecessary 'important' from NamespaceValue. (#3431) (@batchunag)
20
+ - [#3426](https://github.com/less/less.js/pull/3426) Fixes #3405 (#3426) (@matthew-dean)
21
+
22
+ ### v3.10.3 (2019-08-23)
23
+ - [#3424](https://github.com/less/less.js/pull/3424) Fixes #3423 #3420 (#3424) (@matthew-dean)
24
+ - [#3421](https://github.com/less/less.js/pull/3421) Rollup changed for Node 4 compatibility (#3421) (@matthew-dean)
25
+
26
+ ### v3.10.0 (2019-08-17)
27
+ - [#3413](https://github.com/less/less.js/pull/3413) Release v3.10.0 (#3413) (@matthew-dean)
28
+
29
+ ### v3.10.0-beta.2 (2019-08-07)
30
+ - [#3412](https://github.com/less/less.js/pull/3412) v3.10.0-beta.2 -- Cleanup NPM and git included files (#3412) (@matthew-dean)
31
+
32
+ ### v3.10.0-beta (2019-08-03)
33
+ - [#3411](https://github.com/less/less.js/pull/3411) Conversion of Less to ES6 w/ TypeScript type linting support (#3411) (@matthew-dean)
34
+ - [#3363](https://github.com/less/less.js/pull/3363) Fixes #3346 #3338 #3345 (#3363) (@matthew-dean)
35
+ - [#3364](https://github.com/less/less.js/pull/3364) Operation.prototype.accept Issues#3327 (#3364) (@legu2009)
36
+ - [#3360](https://github.com/less/less.js/pull/3360) Ignore undefined content in generating source maps (#3360) (@cthrax)
37
+ - [#3305](https://github.com/less/less.js/pull/3305) Avoid Buffer constructor on newer Node.js (#3305) (#3307) (@gabrielschulhof)
38
+ - [#3352](https://github.com/less/less.js/pull/3352) Do not pollute window object in less-browser bootstrap (#3352) (@gaiazov)
39
+ - [#3337](https://github.com/less/less.js/pull/3337) Use the correct mime type when loading a plugin (#3337) (@g3rv4)
40
+
41
+ ### v3.9.0 (2018-11-29)
42
+ - [#3334](https://github.com/less/less.js/pull/3334) Adds range() function for lists (#3334) (@matthew-dean)
43
+ - [#3333](https://github.com/less/less.js/pull/3333) Fixes #3325 #3313 #3328 - each() function fixes (#3333) (@matthew-dean)
44
+ - [#3335](https://github.com/less/less.js/pull/3335) Prevent Browserify from bundling Buffer (#3335) (@matthew-dean)
45
+
46
+ ### v3.8.1 (2018-08-08)
47
+ - [#3302](https://github.com/less/less.js/pull/3302) v3.8.1 (#3302) (@matthew-dean)
48
+ - [#3301](https://github.com/less/less.js/pull/3301) Fixes: #3300 (#3301) (@matthew-dean)
49
+ - [#3292](https://github.com/less/less.js/pull/3292) Demonstrate 3.7 fixes #3160 (#3292) (@matthew-dean)
50
+ - [#3291](https://github.com/less/less.js/pull/3291) Color function updates - #RRGGBBAA and CSS Variables (#3291) (@matthew-dean)
51
+
52
+ ### v3.8.0 (2018-07-23)
53
+ - [#3293](https://github.com/less/less.js/pull/3293) v3.8.0 (#3293) (@matthew-dean)
54
+ - [#3248](https://github.com/less/less.js/pull/3248) Feature/rewrite urls (#3248) (@matthew-dean)
55
+
56
+ ### v3.7.1 (2018-07-11)
57
+ - [#3284](https://github.com/less/less.js/pull/3284) Release v3.7.1 (#3284) (@matthew-dean)
58
+ - [#3283](https://github.com/less/less.js/pull/3283) Fix #3281: console.warning → console.warn (#3283) (@calvinjuarez)
59
+
60
+ ### v3.7.0 (2018-07-11)
61
+ - [#3279](https://github.com/less/less.js/pull/3279) v3.7.0 (#3279) (@matthew-dean)
62
+ - [#3274](https://github.com/less/less.js/pull/3274) Fixes #1880 - Adds two new math modes and deprecates strictMath (@matthew-dean)
63
+ - [#3258](https://github.com/less/less.js/pull/3258) Fixes #2824 - Expressions require a delimiter of some kind in mixin args (@matthew-dean)
64
+ - [#3263](https://github.com/less/less.js/pull/3263) Fixes #2270 - Adds each() function to Less functions (@calvinjuarez, @matthew-dean)
65
+
66
+ ### v3.6.0 (2018-07-10)
67
+ - [#3278](https://github.com/less/less.js/pull/3278) v3.6.0 (@matthew-dean)
68
+ - [#3252](https://github.com/less/less.js/pull/3252) Removes `less-rhino` (broken for a long time) - Fixes #3241 (@matthew-dean)
69
+ - [#3259](https://github.com/less/less.js/pull/3259) Removes "double paren" issue for boolean / if function (@matthew-dean)
70
+ - [#3276](https://github.com/less/less.js/pull/3276) Bump Jasmine version (@matthew-dean)
71
+ - [#3275](https://github.com/less/less.js/pull/3275) Adds Promise polyfill for PhantomJS under Node 9 (@matthew-dean)
72
+ - [#3261](https://github.com/less/less.js/pull/3261) Fixes #2791 - svg-gradient() not working in Firefox (@matthew-dean)
73
+ - [#3270](https://github.com/less/less.js/pull/3270) Fixes #3231 - Adds UIKit, Bootstrap 3, and Bootstrap 4 to verified tests (@matthew-dean)
74
+
75
+ ### v3.5.3 (2018-07-06)
76
+ - [#3272](https://github.com/less/less.js/pull/3272) Reverts operations not being performed in media queries (@matthew-dean)
77
+ - [#3257](https://github.com/less/less.js/pull/3257) Fixes #3182 (@matthew-dean)
78
+
79
+ ### v3.5.1 (2018-07-05)
80
+ - [#3267](https://github.com/less/less.js/pull/3267) Fixes issue with parentheses following variable in expressions (@matthew-dean)
81
+
82
+ ### v3.5.0 (2018-07-05)
83
+ - [#3264](https://github.com/less/less.js/pull/3264) Release v3.5.0 (@matthew-dean)
84
+
85
+ ### v3.5.0-beta.7 (2018-07-04)
86
+ - [#3260](https://github.com/less/less.js/pull/3260) Release v3.5.0-beta.7 (#3260) (@matthew-dean)
87
+ - [#3256](https://github.com/less/less.js/pull/3256) Allow [] to resolve to last declaration's value (#3256) (@matthew-dean)
88
+
89
+ ### v3.5.0-beta.6 (2018-07-03)
90
+ - [#3255](https://github.com/less/less.js/pull/3255) v3.5.0-beta.6 (#3255) (@matthew-dean)
91
+ - [#3247](https://github.com/less/less.js/pull/3247) Plugins: If minVersion >= 3.0.0, don't "pre-run" .setOptions() (#3247) (@calvinjuarez)
92
+ - [#3254](https://github.com/less/less.js/pull/3254) Tests and parser fixes for namespace values in MQ and mixin args (#3254) (@matthew-dean)
93
+
94
+ ### v3.5.0-beta.5 (2018-07-02)
95
+ - [#3251](https://github.com/less/less.js/pull/3251) Bugfix - namespace values (#3251) (@matthew-dean)
96
+ - [#3250](https://github.com/less/less.js/pull/3250) Added small breakpoints example with namespaced values (#3250) (@matthew-dean)
97
+
98
+ ### v3.5.0-beta.4 (2018-06-30)
99
+ - [#3242](https://github.com/less/less.js/pull/3242) [Feature] Namespaced values (#3242) (@matthew-dean)
100
+ - [#3246](https://github.com/less/less.js/pull/3246) Release/v3.5.0 beta.3 (#3246) (@matthew-dean)
101
+ - [#3229](https://github.com/less/less.js/pull/3229) Fixes #3187 (couldn't repo, but found bugs) (#3229) (@matthew-dean)
102
+ - [#3237](https://github.com/less/less.js/pull/3237) Fixes #3235 (#3237) (@matthew-dean)
103
+
104
+ ### v3.5.0-beta.3 (2018-06-29)
105
+ - [#3239](https://github.com/less/less.js/pull/3239) fix: browser cache is always considered stale if .modifyVars wasn't set (#3239) (@balpha)
106
+
107
+ ### v3.5.0-beta.2 (2018-06-27)
108
+ - [#3236](https://github.com/less/less.js/pull/3236) v3.5.0-beta.2 (#3236) (@matthew-dean)
109
+ - [#3228](https://github.com/less/less.js/pull/3228) Fixes #3205, partial 3.0 math regression #1880 (#3228) (@matthew-dean)
110
+ - [#3227](https://github.com/less/less.js/pull/3227) Fixes #1421 - re-parses variable-interpolated elements to selectors (no.2) (#3227) (@matthew-dean)
111
+ - [#3223](https://github.com/less/less.js/pull/3223) Fixes #3191 (#3223) (@matthew-dean)
112
+
113
+ ### v3.5.0-beta (2018-06-25)
114
+ - [#3230](https://github.com/less/less.js/pull/3230) Release v3.5.0 beta (#3230) (@matthew-dean)
115
+ - [#3219](https://github.com/less/less.js/pull/3219) Invalidate less-node file cache if modified (#3219) (@matthew-dean)
116
+ - [#3213](https://github.com/less/less.js/pull/3213) Fixes #3147 #2715 (#3213) (@matthew-dean)
117
+ - [#3220](https://github.com/less/less.js/pull/3220) Revert "Fixes #1421 - re-parses variable-interpolated elements to selectors" (@matthew-dean)
118
+ - [#3217](https://github.com/less/less.js/pull/3217) Revert "Fixes #1421 - re-parses variable-interpolated elements to selectors (#3217)" (@matthew-dean)
119
+ - [#3212](https://github.com/less/less.js/pull/3212) Revert "Pull missed code merged into 3.x branch (#3212)" (@matthew-dean)
120
+ - [#3215](https://github.com/less/less.js/pull/3215) Revert "Fixes #3195 (#3215)" (@matthew-dean)
121
+ - [#3215](https://github.com/less/less.js/pull/3215) Fixes #3195 (#3215) (@matthew-dean)
122
+ - [#3212](https://github.com/less/less.js/pull/3212) Pull missed code merged into 3.x branch (#3212) (@matthew-dean)
123
+ - [#3217](https://github.com/less/less.js/pull/3217) Fixes #1421 - re-parses variable-interpolated elements to selectors (#3217) (@matthew-dean)
124
+ - [#3207](https://github.com/less/less.js/pull/3207) update changelog for 3.0.4 (@akkumar)
125
+ - [#3206](https://github.com/less/less.js/pull/3206) Release v3.0.4 (@matthew-dean)
126
+
127
+ ### v3.0.4 (2018-05-07)
128
+ - [#3180](https://github.com/less/less.js/pull/3180) update source_map to 0.6.x (@akkumar)
129
+ - [#3172](https://github.com/less/less.js/pull/3172) Type checking length units (@jacobwarduk)
130
+ - [#3200](https://github.com/less/less.js/pull/3200) Fixes #3181 (@matthew-dean)
131
+
132
+ ### v3.0.3 (2018-04-18)
133
+ - [#1](https://github.com/less/less.js/pull/1) Type checking length units (@jacobwarduk)
134
+ - [#3177](https://github.com/less/less.js/pull/3177) chore(package): update request to 2.83.0 (@Kartoffelsalat)
135
+ - [#3170](https://github.com/less/less.js/pull/3170) `inline` and `less` imports of the same name = race condition (@thorn0)
136
+ - [#3168](https://github.com/less/less.js/pull/3168) Fixes #3116 - lessc not loading plugins in 3.0 (@matthew-dean)
137
+
138
+ ### v3.0.1 (2018-02-15)
139
+ - [#3163](https://github.com/less/less.js/pull/3163) Merge 3.x into master (@matthew-dean, @barnabycolby, @kirillrogovoy, @maxbrunsfeld, @seven-phases-max, @ryysud, @bdsomer, @wiinci, @nikeee, @anthony-redFox)
140
+
141
+ ### v3.0.0-RC.2 (2018-02-11)
142
+ - [#3161](https://github.com/less/less.js/pull/3161) Remove legacy upgrade (@matthew-dean)
143
+ - [#3159](https://github.com/less/less.js/pull/3159) Bump to 3.0.0-RC.1 (@matthew-dean)
144
+
145
+ ### v3.0.0-RC.1 (2018-02-04)
146
+ - [#3150](https://github.com/less/less.js/pull/3150) Drop node 0.10 and 0.12 and added node 9 matrix testing (@anthony-redFox)
147
+
148
+ ### v2.7.3 (2017-10-24)
149
+ - [#3122](https://github.com/less/less.js/pull/3122) Mime update (@nikeee)
150
+ - [#3120](https://github.com/less/less.js/pull/3120) Issue3115 ext in node path (@robhuzzey)
151
+ - [#3119](https://github.com/less/less.js/pull/3119) Update © year (@wiinci)
152
+ - [#3107](https://github.com/less/less.js/pull/3107) pinned request dep to v2.81.0 (@MarkSG93)
153
+
154
+ ### v3.0.0-alpha.3 (2017-10-09)
155
+ - [#3096](https://github.com/less/less.js/pull/3096) Switch from request to phin! (@bdsomer)
156
+ - [#3082](https://github.com/less/less.js/pull/3082) Add Node.js v8 to Travis CI and AppVeyor (@ryysud)
157
+ - [#3079](https://github.com/less/less.js/pull/3079) Initial support for custom parsed functions (`boolean`, `if` etc.) (@seven-phases-max)
158
+ - [#3076](https://github.com/less/less.js/pull/3076) Update mergeRules (@seven-phases-max)
159
+
160
+ ### v2.7.2 (2017-01-05)
161
+ - [#2908](https://github.com/less/less.js/pull/2908) Added 'request' as optional dependency. (@maxrd2)
162
+ - [#2955](https://github.com/less/less.js/pull/2955) Allow less imports of paths like 'dir/css' (@maxbrunsfeld)
163
+ - [#2975](https://github.com/less/less.js/pull/2975) Refactor LessError and lesscHelper.formatError (@kirillrogovoy)
164
+ - [#2988](https://github.com/less/less.js/pull/2988) Fixes #2987, --source-map-map-inline works as expected (@nicoschoenmaker)
165
+ - [#2946](https://github.com/less/less.js/pull/2946) Fixed sourceMapBasepath bug as the option had no affect on the sourceMapURL value. (@barnabycolby)
166
+ - [#2941](https://github.com/less/less.js/pull/2941) CI Build Fixes. (@bd82)
167
+ - [#2905](https://github.com/less/less.js/pull/2905) Download PhantomJS from CDN (@abrobston)
168
+ - [#2866](https://github.com/less/less.js/pull/2866) Changed octals to hex for ES6 strict mode (@mlowijs)
169
+ - [#2891](https://github.com/less/less.js/pull/2891) Fix error reporting of lessc executable II (@jhnns)
170
+
171
+ ### v2.7.0 (2016-05-08)
172
+ - [#2894](https://github.com/less/less.js/pull/2894) Update my name. (@nex3)
173
+ - [#2892](https://github.com/less/less.js/pull/2892) Fix invalid extraction of the host part from URL (@Taritsyn)
174
+ - [#2874](https://github.com/less/less.js/pull/2874) removed dependency to unused package "request" (@jeremyVignelles)
175
+ - [#2830](https://github.com/less/less.js/pull/2830) make --depends generate no CSS output (@gtalusan)
176
+ - [#2860](https://github.com/less/less.js/pull/2860) Remove unreachable code (@shkdee)
177
+ - [#2859](https://github.com/less/less.js/pull/2859) Fix typos found by codespell (@stweil)
178
+ - [#2858](https://github.com/less/less.js/pull/2858) Fix AST to include text for single line comments (@zzzzBov)
179
+ - [#2853](https://github.com/less/less.js/pull/2853) bin/lessc: Make sure path.dirname gets passed strings (@addaleax)
180
+ - [#2754](https://github.com/less/less.js/pull/2754) Update contrast function and tests, fixes #2743 (@Synchro)
181
+ - [#2785](https://github.com/less/less.js/pull/2785) Allows root (non-value) functions in Less (@seven-phases-max)
182
+ - [#2834](https://github.com/less/less.js/pull/2834) Make sourcemap generation a bit faster (@Medium)
183
+
184
+ ### v2.6.1 (2016-03-04)
185
+ - [#2827](https://github.com/less/less.js/pull/2827) Revert "Update jit-grunt to version 0.10.0" (@seven-phases-max)
186
+ - [#2821](https://github.com/less/less.js/pull/2821) Update jit-grunt to version 0.10.0 (@greenkeeperio-bot)
187
+ - [#2797](https://github.com/less/less.js/pull/2797) Disallow whitespace in variable calls (i.e "DR"-calls) (@seven-phases-max)
188
+ - [#2820](https://github.com/less/less.js/pull/2820) update grunt-contrib-concat to version 1.0.0 (@greenkeeperio-bot)
189
+ - [#2819](https://github.com/less/less.js/pull/2819) Guard expressions regression in 2.6.0 (#2798) (@SomMeri)
190
+ - [#2804](https://github.com/less/less.js/pull/2804) use instanceof operator instead of class comparison optimization (@marijaselakovic)
191
+ - [#2817](https://github.com/less/less.js/pull/2817) Update grunt-contrib-jshint to version 1.0.0 🚀 (@greenkeeperio-bot)
192
+ - [#2815](https://github.com/less/less.js/pull/2815) Update grunt-contrib-clean to version 1.0.0 🚀 (@greenkeeperio-bot)
193
+ - [#2813](https://github.com/less/less.js/pull/2813) Fix typo on and/or change (@mbrodala)
194
+ - [#2811](https://github.com/less/less.js/pull/2811) Update CHANGELOG.md (@Justineo)
195
+ - [#2806](https://github.com/less/less.js/pull/2806) Fix comments after named color regression (@seven-phases-max)
196
+ - [#2794](https://github.com/less/less.js/pull/2794) Update grunt-jscs to version 2.7.0 🚀 (@greenkeeperio-bot)
197
+ - [#2784](https://github.com/less/less.js/pull/2784) Update grunt-contrib-jasmine to version 1.0.0 🚀 (@greenkeeperio-bot)
198
+ - [#2773](https://github.com/less/less.js/pull/2773) Update all dependencies 🌴 (@lukeapage, @greenkeeperio-bot)
199
+
200
+ ### v2.6.0 (2016-01-29)
201
+ - [#2788](https://github.com/less/less.js/pull/2788) Update license year in README.md (@pra85)
202
+ - [#2735](https://github.com/less/less.js/pull/2735) Fix for #2384 and caching enabled with modifyVars set (@less)
203
+ - [#2783](https://github.com/less/less.js/pull/2783) Allow unknown non-{}-block at-rules (@seven-phases-max)
204
+ - [#2779](https://github.com/less/less.js/pull/2779) Logical operator and now has higher precedence then logical operator or. (@SomMeri)
205
+ - [#2775](https://github.com/less/less.js/pull/2775) Parsing Error "Unrecognised input" for color operations with color names #2124 (@SomMeri)
206
+ - [#2763](https://github.com/less/less.js/pull/2763) Added "or" keyword and allowed arbitrary logical expression in guards. (@SomMeri)
207
+ - [#2731](https://github.com/less/less.js/pull/2731) Faster builds and update npm versions to test against (@paladox)
208
+ - [#2759](https://github.com/less/less.js/pull/2759) Fixed extend leaking through nested parent selector. (@SomMeri)
209
+ - [#2738](https://github.com/less/less.js/pull/2738) Fail when image-size functions are used in browser-less. (@niom)
210
+ - [#2485](https://github.com/less/less.js/pull/2485) Allow underscore in a dimension unit (@seven-phases-max)
211
+ - [#2729](https://github.com/less/less.js/pull/2729) Fixing import by reference (@SomMeri)
212
+
213
+ ### v2.5.2 (2015-09-24)
214
+ - [#2609](https://github.com/less/less.js/pull/2609) Skip missing optional imports (@mmelvin0)
215
+ - [#2644](https://github.com/less/less.js/pull/2644) `percentage` function should throw error if result would be `NaN` (@SomMeri)
216
+ - [#2646](https://github.com/less/less.js/pull/2646) Parametric mixins: parameters don't match error (@SomMeri)
217
+ - [#2688](https://github.com/less/less.js/pull/2688) Converted CLRFs in error tests (@mishal)
218
+ - [#2687](https://github.com/less/less.js/pull/2687) Updated test data files (@mishal)
219
+ - [#2642](https://github.com/less/less.js/pull/2642) Fixes import by reference inlines source's inline imports - 2620 (@SomMeri)
220
+ - [#2643](https://github.com/less/less.js/pull/2643) Keep shorthand color form the same way as named colors are kept. (@SomMeri)
221
+ - [#2677](https://github.com/less/less.js/pull/2677) Reference inline comments. (@betaorbust)
222
+ - [#2685](https://github.com/less/less.js/pull/2685) Update travis Node.js version & remove io.js (@demohi)
223
+ - [#2637](https://github.com/less/less.js/pull/2637) Undefined source map should result in an empty map file. (@SomMeri)
224
+ - [#2607](https://github.com/less/less.js/pull/2607) Remove moot `version` property from bower.json (@kkirsche)
225
+
226
+ ### v2.5.1 (2015-05-21)
227
+ - [#2591](https://github.com/less/less.js/pull/2591) Update license attribute (@pdehaan)
228
+ - [#2575](https://github.com/less/less.js/pull/2575) Fix synchronously loading/applying stylesheets on page load. (@chipx86)
229
+ - [#2568](https://github.com/less/less.js/pull/2568) Add a Gitter chat badge to README.md (@gitter-badger)
230
+ - [#2559](https://github.com/less/less.js/pull/2559) Fix for #2558 (@seven-phases-max)
231
+ - [#2574](https://github.com/less/less.js/pull/2574) Fix `Ruleset.prototype.find` failing for certain frames (@seven-phases-max)
232
+ - [#2550](https://github.com/less/less.js/pull/2550) Update CHANGELOG.md (@chharvey)
233
+
234
+ ### v2.5.0 (2015-04-03)
235
+ - [#2530](https://github.com/less/less.js/pull/2530) Proper non-primitive value replacement for `%` and `replace` (@seven-phases-max)
236
+ - [#2526](https://github.com/less/less.js/pull/2526) Image size (@bassjobsen)
237
+ - [#2533](https://github.com/less/less.js/pull/2533) Fix formatting to meet jscs settings (@seven-phases-max)
238
+ - [#2525](https://github.com/less/less.js/pull/2525) Add browser field (@whitecolor)
239
+ - [#2522](https://github.com/less/less.js/pull/2522) Fix `@plugin` scoping rules (@rjgotten)
240
+ - [#2527](https://github.com/less/less.js/pull/2527) Fix grunt shell:benchmark command (@seven-phases-max)
241
+ - [#2520](https://github.com/less/less.js/pull/2520) Fix 2440 (@lukeapage)
242
+ - [#2517](https://github.com/less/less.js/pull/2517) Quick fix for naked `url` imports (@seven-phases-max, @wahuneke, @bassjobsen)
243
+ - [#2515](https://github.com/less/less.js/pull/2515) re: #2508 - revert #2510 - undo all fixes. issue == WONTFIX (@wahuneke)
244
+ - [#2504](https://github.com/less/less.js/pull/2504) optional relative amounts for color functions, see#975 (@bassjobsen)
245
+ - [#2512](https://github.com/less/less.js/pull/2512) Fix selectors folding into directives (@rjgotten)
246
+ - [#2510](https://github.com/less/less.js/pull/2510) Fix issue 2508 (@wahuneke)
247
+ - [#2505](https://github.com/less/less.js/pull/2505) fix for issue #2500 (@bassjobsen)
248
+ - [#2479](https://github.com/less/less.js/pull/2479) Import plugin (@rjgotten, @bassjobsen)
249
+ - [#2497](https://github.com/less/less.js/pull/2497) Allow detached rulesets as mixin argument defaults (@calvinjuarez)
250
+ - [#2488](https://github.com/less/less.js/pull/2488) add jit-grunt to the build chain (@bassjobsen)
251
+ - [#2489](https://github.com/less/less.js/pull/2489) add browser postProcessor Plugin test (@bassjobsen)
252
+ - [#2473](https://github.com/less/less.js/pull/2473) Bubbling of nested directives (@SomMeri)
253
+ - [#2445](https://github.com/less/less.js/pull/2445) allow a list of colors as argument for the svg-gradient function (@bassjobsen)
254
+
255
+ ### v2.4.0 (2015-02-08)
256
+ - [#2439](https://github.com/less/less.js/pull/2439) Fix empty sourcemaps (@OhJeez)
257
+ - [#2429](https://github.com/less/less.js/pull/2429) Implementing preprocessing plugins (@Justineo, @lukeapage)
258
+ - [#2427](https://github.com/less/less.js/pull/2427) Nested mixin changing important 2421 (@SomMeri)
259
+ - [#2423](https://github.com/less/less.js/pull/2423) Bug: extend doesn't work when appended on nested selector with & (@SomMeri)
260
+ - [#2420](https://github.com/less/less.js/pull/2420) endlines and comments (@bassjobsen)
261
+
262
+ ### v2.3.1 (2015-01-28)
263
+ - [#2400](https://github.com/less/less.js/pull/2400) Nested parent selectors &:not(&) - 2026 (@SomMeri)
264
+
265
+ ### v2.3.0 (2015-01-27)
266
+ - [#2401](https://github.com/less/less.js/pull/2401) Allow selector interpolation inside pseudoselectors. #1294 (@SomMeri)
267
+ - [#2404](https://github.com/less/less.js/pull/2404) Important on parametrized mixin (@SomMeri)
268
+ - [#2414](https://github.com/less/less.js/pull/2414) explain inline maps (@bassjobsen)
269
+ - [#2392](https://github.com/less/less.js/pull/2392) add support for `isruleset` (@Justineo)
270
+ - [#2390](https://github.com/less/less.js/pull/2390) message when sourcemap has been written (@bassjobsen)
271
+ - [#2391](https://github.com/less/less.js/pull/2391) Remove BOM in imports. (@DotNetSparky)
272
+ - [#2387](https://github.com/less/less.js/pull/2387) Data uri support for include-path (@lukeapage)
273
+ - [#2385](https://github.com/less/less.js/pull/2385) checking for doubles when warning for empty extends (@ddprrt)
274
+ - [#2380](https://github.com/less/less.js/pull/2380) Colour keyword as variable name reference (@seven-phases-max)
275
+ - [#2369](https://github.com/less/less.js/pull/2369) making sure :extend warning does not bubble up, fixes #1618 (@ddprrt)
276
+
277
+ ### v2.2.0 (2015-01-04)
278
+ - [#2363](https://github.com/less/less.js/pull/2363) Change error message when caching fails (@bassjobsen)
279
+ - [#2337](https://github.com/less/less.js/pull/2337) Better output for the warning when file size exceeds (@bassjobsen)
280
+ - [#2319](https://github.com/less/less.js/pull/2319) Expose Less parsing as a top level feature of the less package (@jackwanders)
281
+
282
+ ### v2.1.2 (2014-12-20)
283
+ - [#2315](https://github.com/less/less.js/pull/2315) Support non-JSON script attributes (@guybedford)
284
+ - [#2313](https://github.com/less/less.js/pull/2313) Remove second 'env:' in .travis.yml. (@vsn4ik)
285
+
286
+ ### v2.1.1 (2014-11-27)
287
+ - [#2312](https://github.com/less/less.js/pull/2312) Fix double handling of exceptions (@ForbesLindesay)
288
+ - [#2311](https://github.com/less/less.js/pull/2311) Pass this from promise based calling (@ForbesLindesay)
289
+ - [#2309](https://github.com/less/less.js/pull/2309) Improve keyword and anonymous input for replace function (fixes #2308). (@seven-phases-max)
290
+
291
+ ### v2.1.0 (2014-11-23)
292
+ - [#2298](https://github.com/less/less.js/pull/2298) Small improve in README.md and bower.json. (@vsn4ik)
293
+ - [#2297](https://github.com/less/less.js/pull/2297) Package: Updates request to 2.48.0 (@am11)
294
+ - [#2296](https://github.com/less/less.js/pull/2296) Fix getting of character at index (@Taritsyn)
295
+ - [#2279](https://github.com/less/less.js/pull/2279) Remove livereload cache buster param in extractId (@cgross)
296
+
297
+ ### v2.0.0 (2014-11-09)
298
+ - [#2277](https://github.com/less/less.js/pull/2277) create index and browser scripts in root as require targets (@jackwanders, @lukeapage, @seven-phases-max, @Justineo, @lejenome)
299
+ - [#2269](https://github.com/less/less.js/pull/2269) Fix for wrong check in abstractFileManager.getPath (@dexif, @lukeapage, @seven-phases-max, @Justineo, @lejenome)
300
+ - [#2267](https://github.com/less/less.js/pull/2267) CLI: Fixes source-map-url description (#2264) (@am11)
301
+ - [#2268](https://github.com/less/less.js/pull/2268) typo fixes (@vlajos)
302
+ - [#2264](https://github.com/less/less.js/pull/2264) CLI: Fixes source-map-url description. (#2264) (@am11)
303
+
304
+ ### v2.0.0-b3 (2014-11-01)
305
+ - [#2254](https://github.com/less/less.js/pull/2254) Fix for import relative path for url with parameters (@dexif)
306
+
307
+ ### v2.0.0-b2 (2014-10-26)
308
+ - [#2246](https://github.com/less/less.js/pull/2246) Attempt to fix import sequencing (@lukeapage)
309
+ - [#2247](https://github.com/less/less.js/pull/2247) Add support for rebeccapurple (#663399) (@le717)
310
+ - [#663399](https://github.com/less/less.js/pull/663399) Add rebeccapurple (#663399) (Triangle717)
311
+ - [#2243](https://github.com/less/less.js/pull/2243) Support reading less options from its script tag data attributes (@lejenome)
312
+ - [#2241](https://github.com/less/less.js/pull/2241) Update CHANGELOG.md (@Justineo)
313
+
314
+ ### v2.0.0-b1 (2014-10-19)
315
+ - [#1902](https://github.com/less/less.js/pull/1902) 2.0.0 Pull Request (@lukeapage, @seven-phases-max, @XhmikosR, @levithomason)
316
+ - [#2233](https://github.com/less/less.js/pull/2233) Method to scan for and register stylesheets (@levithomason)
317
+ - [#2226](https://github.com/less/less.js/pull/2226) Notify when less.js is done processing (@levithomason)
318
+ - [#2209](https://github.com/less/less.js/pull/2209) Remove unnecessary semicolon (@joscha)
319
+ - [#2217](https://github.com/less/less.js/pull/2217) Fix interpolated selector match regression (@seven-phases-max)
320
+ - [#2185](https://github.com/less/less.js/pull/2185) Use SVGs for all readme badges (@theodorejb)
321
+ - [#2182](https://github.com/less/less.js/pull/2182) Fixes #1973 (@seven-phases-max)
322
+ - [#2181](https://github.com/less/less.js/pull/2181) Case insensitive units parsing and comparison (@lukeapage)
323
+
324
+ ### v1.7.5 (2014-09-03)
325
+ - [#2173](https://github.com/less/less.js/pull/2173) Property interpolation fix for `@*` values (@seven-phases-max)
326
+ - [#2169](https://github.com/less/less.js/pull/2169) Accept comments in @keyframe and after rule name - merging for next patch release. (@SomMeri)
327
+ - [#1921](https://github.com/less/less.js/pull/1921) Pass options object to parser.parse in less.render (@rback)
328
+ - [#2136](https://github.com/less/less.js/pull/2136) Fragment handling in data-uri function 1959 (@SomMeri)
329
+ - [#2135](https://github.com/less/less.js/pull/2135) Charsets should float on top #2126 (@SomMeri)
330
+ - [#2128](https://github.com/less/less.js/pull/2128) Mixin wrongly called (@SomMeri, @obecker, @dhaber)
331
+ - [#2144](https://github.com/less/less.js/pull/2144) Updating request dependency (@pdehaan)
332
+ - [#2123](https://github.com/less/less.js/pull/2123) Import into media 1645 (@SomMeri, @obecker, @dhaber)
333
+
334
+ ### v1.7.4 (2014-07-27)
335
+ - [#2100](https://github.com/less/less.js/pull/2100) Update bower for 1.7.3 (@joscha)
336
+ - [#2121](https://github.com/less/less.js/pull/2121) Properties merging should work also inside directives #2035 (@SomMeri)
337
+ - [#2120](https://github.com/less/less.js/pull/2120) Misleading error message 2069 (@SomMeri, @obecker, @dhaber)
338
+ - [#2117](https://github.com/less/less.js/pull/2117) Fix ordering of @import and @charset rules #1954 #2013 (@SomMeri)
339
+
340
+ ### v1.7.3 (2014-06-22)
341
+ - [#2062](https://github.com/less/less.js/pull/2062) Don't round values returned by colour query functions. (@seven-phases-max)
342
+
343
+ ### v1.7.2 (2014-06-22)
344
+ - [#2045](https://github.com/less/less.js/pull/2045) Base64 encode source maps (@tim-smart)
345
+
346
+ ### v1.7.1 (2014-06-08)
347
+ - [#2022](https://github.com/less/less.js/pull/2022) 2.0.0 refactor chunker and less error (@ForbesLindesay)
348
+ - [#2021](https://github.com/less/less.js/pull/2021) 2.0.0 promises (@ForbesLindesay)
349
+ - [#1976](https://github.com/less/less.js/pull/1976) Added condition to check if HEX code contain only valid characters (issue #1015) (@peruginni)
350
+ - [#2019](https://github.com/less/less.js/pull/2019) Remove the "done" message displayed at the end of the compilation with Rhino. (@gdelhumeau)
351
+ - [#2031](https://github.com/less/less.js/pull/2031) Fix a bug: if the less file end line is comments, the lessc command option "modify-var" will have no effect. (@chenboxiang)
352
+ - [#2046](https://github.com/less/less.js/pull/2046) window.ActiveXObject in IE11: fix boolean casting (@dkrnl)
353
+ - [#2016](https://github.com/less/less.js/pull/2016) e("") fix (@seven-phases-max)
354
+ - [#2000](https://github.com/less/less.js/pull/2000) Set CSS text after style element is added to DOM, to fix crash on IE < 9... (@David-Hari)
355
+ - [#2002](https://github.com/less/less.js/pull/2002) Fixes #2001 (@seven-phases-max)
356
+ - [#1981](https://github.com/less/less.js/pull/1981) fix bug with ../.. paths joining (@kolipka)
357
+ - [#1974](https://github.com/less/less.js/pull/1974) Change paths determination for CLI (@dominicbarnes)
358
+ - [#1929](https://github.com/less/less.js/pull/1929) Recursive mixin calls regression fix. (@seven-phases-max)
359
+ - [#1936](https://github.com/less/less.js/pull/1936) Fix error message when using cleancss with sourcemap (@danielchatfield)
360
+ - [#1919](https://github.com/less/less.js/pull/1919) Usage info for url-args option (@bcluca)
361
+ - [#1907](https://github.com/less/less.js/pull/1907) Remove trailing spaces from the license header. (@XhmikosR)
362
+ - [#1906](https://github.com/less/less.js/pull/1906) Remove twitter-bootstrap tag from SO link (@zdroid)
363
+
364
+ ### v1.7.0 (2014-02-27)
365
+ - [#1890](https://github.com/less/less.js/pull/1890) Let `luma` follow spec (@roelvanduijnhoven, @seven-phases-max, @lukeapage)
366
+ - [#1859](https://github.com/less/less.js/pull/1859) detached rulesets (@lukeapage)
367
+ - [#1884](https://github.com/less/less.js/pull/1884) Minor `replace` and `%` funcs improvement. (@seven-phases-max)
368
+ - [#1855](https://github.com/less/less.js/pull/1855) Adding replace function (@jakebellacera, @mouyang)
369
+ - [#1866](https://github.com/less/less.js/pull/1866) Fixed empty args matching for named variadics. (@seven-phases-max)
370
+ - [#1860](https://github.com/less/less.js/pull/1860) Support for variables in certain at-rules. (@seven-phases-max)
371
+ - [#1847](https://github.com/less/less.js/pull/1847) Property merge with `+_` (replaces #1788) (@seven-phases-max, @mouyang)
372
+
373
+ ### v1.6.3 (2014-02-08)
374
+ - [#1844](https://github.com/less/less.js/pull/1844) fix broken test case (@mouyang)
375
+
376
+ ### v1.6.2 (2014-02-02)
377
+ - [#1841](https://github.com/less/less.js/pull/1841) Improved missing `(` and `{` error detection. (@seven-phases-max)
378
+ - [#1828](https://github.com/less/less.js/pull/1828) Updates bower.json for current version (@ruyadorno)
379
+ - [#1823](https://github.com/less/less.js/pull/1823) Improved multiple `default()` guards conflict detection. (@seven-phases-max)
380
+ - [#1822](https://github.com/less/less.js/pull/1822) Normalize require-calls for Browserify (@pateketrueke)
381
+ - [#1814](https://github.com/less/less.js/pull/1814) Rounding of output numbers. (@seven-phases-max)
382
+ - [#1806](https://github.com/less/less.js/pull/1806) rhino version not up to date (#1405) (@obecker, @dhaber)
383
+ - [#1815](https://github.com/less/less.js/pull/1815) Correct arguments for tree.Element (@oyejorge)
384
+ - [#16](https://github.com/less/less.js/pull/16) Don't lint source-map since its owned by another project (@dhaber)
385
+ - [#17](https://github.com/less/less.js/pull/17) Fix empty test (@dhaber)
386
+ - [#1803](https://github.com/less/less.js/pull/1803) ability to insert uppercase color names (@wareczek)
387
+ - [#1804](https://github.com/less/less.js/pull/1804) small compatibility fix for prototype.js (@cettox)
388
+ - [#13](https://github.com/less/less.js/pull/13) Add Support-Map Tests for Rhino (@dhaber)
389
+ - [#12](https://github.com/less/less.js/pull/12) Fix for some tests that were failing on my Mac (@dhaber)
390
+ - [#11](https://github.com/less/less.js/pull/11) Fix for issue #3: Tests should automatically take latest rhino file (@dhaber)
391
+
392
+ ### v1.6.1 (2014-01-12)
393
+ - [#1780](https://github.com/less/less.js/pull/1780) #1778 standardised using starting index, to fix incorrectly mapped sourcemaps (@brenmar)
394
+ - [#1797](https://github.com/less/less.js/pull/1797) Updated .jshintrc to highlight for ... in without isOwnProperty (@DHainzl)
395
+ - [#1795](https://github.com/less/less.js/pull/1795) Fix for running test cases in a regular browser like Firefox or Chrome (@dhaber)
396
+ - [#1773](https://github.com/less/less.js/pull/1773) Fixes "function" test against regular expressions (@matthew-dean)
397
+
398
+ ### v1.6.0 (2014-01-01)
399
+ - [#1737](https://github.com/less/less.js/pull/1737) Clamped rgba format color output (@seven-phases-max)
400
+ - [#1769](https://github.com/less/less.js/pull/1769) If result of evaluated javascript is a number return it as Dimension. (@lesswtf)
401
+ - [#1766](https://github.com/less/less.js/pull/1766) Improved error message for undefined variable in js eval statement. (@seven-phases-max)
402
+ - [#1758](https://github.com/less/less.js/pull/1758) Removed redundant code from tree.Selector.match() (@seven-phases-max)
403
+ - [#1757](https://github.com/less/less.js/pull/1757) Tree functions cleanup + CSS Guards `default` error. (@seven-phases-max)
404
+ - [#1624](https://github.com/less/less.js/pull/1624) Experimental support for mixins with interpolated selectors (@seven-phases-max)
405
+ - [#1743](https://github.com/less/less.js/pull/1743) Interleaved property merge fix (@seven-phases-max)
406
+ - [#1744](https://github.com/less/less.js/pull/1744) Fix CHANGELOG broken link in README. (@jeffslofish)
407
+ - [#1733](https://github.com/less/less.js/pull/1733) Remove alpha from contrast calc (@Synchro)
408
+ - [#1704](https://github.com/less/less.js/pull/1704) Color blending functions with transparency. (@seven-phases-max)
409
+ - [#1708](https://github.com/less/less.js/pull/1708) Updated Readme for full examples (@SomMeri, @Synchro)
410
+ - [#1717](https://github.com/less/less.js/pull/1717) Minifier complains about annotation in non-JSDoc tag (@joscha)
411
+ - [#1714](https://github.com/less/less.js/pull/1714) Fix for math expr/ops error messages line/column numbers. (@seven-phases-max)
412
+
413
+ ### v1.5.1 (2013-11-17)
414
+ - [#1658](https://github.com/less/less.js/pull/1658) Fixes #1619 (@joshuaspence)
415
+ - [#1643](https://github.com/less/less.js/pull/1643) Check location.port for truthiness (@matthewp)
416
+ - [#1655](https://github.com/less/less.js/pull/1655) Support specifying custom variables when calling lessc and less.js. (@chipx86)
417
+ - [#1628](https://github.com/less/less.js/pull/1628) update bower.json main script (@tomfuertes)
418
+
419
+ ### v1.5.0 (2013-10-21)
420
+ - [#1570](https://github.com/less/less.js/pull/1570) proposed solution to #1568: percentage as attribute (@MSamman, @danielfttorres)
421
+ - [#1572](https://github.com/less/less.js/pull/1572) util.error is deprecated (@robocoder)
422
+ - [#1542](https://github.com/less/less.js/pull/1542) Added `length` function (#1542). Added scalar value handling for `extract` and `length` (#1576). (@seven-phases-max)
423
+ - [#1558](https://github.com/less/less.js/pull/1558) Bower package: purge unnecessary files (@danielfttorres)
424
+
425
+ ### v1.5.0-b3 (2013-09-17)
426
+ - [#1552](https://github.com/less/less.js/pull/1552) Replace deprecated sys.puts with console.log, resolve #1529 (@picomancer)
427
+ - [#1543](https://github.com/less/less.js/pull/1543) Sourcemap basepath option (@andjo)
428
+ - [#1412](https://github.com/less/less.js/pull/1412) Allow imports from self-signed SSL hosts (@christopherobin)
429
+
430
+ ### v1.5.0-b2 (2013-09-09)
431
+ - [#1537](https://github.com/less/less.js/pull/1537) Fix Changelog link (@radium-v)
432
+
433
+ ### v1.5.0-b1 (2013-09-03)
434
+ - [#1519](https://github.com/less/less.js/pull/1519) Update main property value of bower.json (@JacopKane)
435
+ - [#1](https://github.com/less/less.js/pull/1) Refactoring browser unit tests into grunt-contrib-jasmine (@SomMeri)
436
+ - [#1449](https://github.com/less/less.js/pull/1449) resolves #964 (@jonschlinkert)
437
+
438
+ ### v1.4.2 (2013-07-20)
439
+ - [#1425](https://github.com/less/less.js/pull/1425) Windows path fixes (@SLaks)
440
+ - [#1388](https://github.com/less/less.js/pull/1388) Add .gitattributes to .npmignore (@dpatti)
441
+
442
+ ### v1.4.0-b3 (2013-04-30)
443
+ - [#1278](https://github.com/less/less.js/pull/1278) Better fix for local path (cross-platform) (@losnir)
444
+ - [#1277](https://github.com/less/less.js/pull/1277) contributing.md updates. Fellow nerds! please wrap words with `@` signs in backticks! (@jonschlinkert)
445
+ - [#1273](https://github.com/less/less.js/pull/1273) Fix for local paths (@losnir)
446
+ - [#1244](https://github.com/less/less.js/pull/1244) Add Less license to package.json (@theoreticaLee)
447
+ - [#1236](https://github.com/less/less.js/pull/1236) Fixes small typo in command prompt usage text (@buley)
448
+
449
+ ### v1.4.0-b2 (2013-03-18)
450
+ - [#1230](https://github.com/less/less.js/pull/1230) package.json edited (@jonschlinkert)
451
+
452
+ ### v1.4.0-b1 (2013-03-08)
453
+ - [#1197](https://github.com/less/less.js/pull/1197) Updates copyright year in README.md (@Starefossen)
454
+ - [#1148](https://github.com/less/less.js/pull/1148) Better implementation of luma (@Synchro)
455
+ - [#1147](https://github.com/less/less.js/pull/1147) HSV support for #1143 (@Synchro)
456
+ - [#1145](https://github.com/less/less.js/pull/1145) Contrast percentage fix for #1144 (@Synchro)
457
+ - [#933](https://github.com/less/less.js/pull/933) Allow flexible naming for amd support (#933) (@guybedford)
458
+
459
+ ### v1.3.1 (2012-10-18)
460
+ - [#889](https://github.com/less/less.js/pull/889) Add dppx and dpcm units to parser dimensions (@feelepxyz)
461
+ - [#890](https://github.com/less/less.js/pull/890) Add vmin unit to parser dimensions (@feelepxyz)
462
+ - [#879](https://github.com/less/less.js/pull/879) Allow numbers and underscores in attribute selectors (@dmcass)
463
+ - [#857](https://github.com/less/less.js/pull/857) Revert adding "transparent" as a color name (@clmsnskr)
464
+ - [#753](https://github.com/less/less.js/pull/753) Adding "dpi" as a valid dimensions for media queries (@clarkni5)
465
+ - [#800](https://github.com/less/less.js/pull/800) Added 'transparent' as a named color (@SpadarShut)
466
+ - [#804](https://github.com/less/less.js/pull/804) Fix for unnamed parameters test fail & failing test for import-once (@jreading)
467
+ - [#796](https://github.com/less/less.js/pull/796) fixed issue #795 (@comfuture)
468
+ - [#268](https://github.com/less/less.js/pull/268) Implemented named arguments (@jamesfoster)
469
+
470
+ ### v1.3.0 (2012-03-10)
471
+ - [#673](https://github.com/less/less.js/pull/673) mocha found a couple global variable leaks. Here's the fix. (@andrewjstone)
472
+ - [#634](https://github.com/less/less.js/pull/634) Add @media bubbling/nesting/merging (@sirlantis)
473
+ - [#631](https://github.com/less/less.js/pull/631) Fixed spelling error on benchmark/less-benchmark.js (@highergroundstudio)
474
+ - [#601](https://github.com/less/less.js/pull/601) Make parse error handler more robust (@adrianheine)
475
+ - [#595](https://github.com/less/less.js/pull/595) Fix callback called two times (@hokaccha, @cloudhead, @chrizel, @CasualSuperman, @fat)
476
+ - [#604](https://github.com/less/less.js/pull/604) Fixes #602 (@treshugart)
477
+ - [#585](https://github.com/less/less.js/pull/585) newline all selectors whose combined length is greater than 25 chars (@fat)
478
+ - [#479](https://github.com/less/less.js/pull/479) CommonJS/AMD module support (@CasualSuperman)
479
+ - [#516](https://github.com/less/less.js/pull/516) Improve Windows path support in lessc (@chrizel)
480
+ - [#557](https://github.com/less/less.js/pull/557) Fix for issue #466 (@kmchugh)
481
+ - [#515](https://github.com/less/less.js/pull/515) Shift the type setting in order to work with Webkit, and fix typo for IE (@imcotton)
482
+ - [#527](https://github.com/less/less.js/pull/527) Add function `percentage` (@hokaccha)
483
+
484
+ ### 1.1.5-extend_patch (2011-12-13)
485
+ - [#496](https://github.com/less/less.js/pull/496) Removed call to put header into minified build, because it's already there. (@freeeve)
486
+ - [#379](https://github.com/less/less.js/pull/379) Accept 2xx statuses even for file requests (@khalsah)
487
+ - [#494](https://github.com/less/less.js/pull/494) Adding support for absolute paths on Windows. (@jmcclell)
488
+ - [#514](https://github.com/less/less.js/pull/514) Fix java.io.FileNotFoundException when @importing from LESS in subdirectory (@eager)
489
+ - [#461](https://github.com/less/less.js/pull/461) require 'util' instead of 'sys' in lessc and less-benchmark.js (@dmcass)
490
+ - [#506](https://github.com/less/less.js/pull/506) Issue #393 Add support for "rem" dimensions (@feelepxyz)
491
+ - [#507](https://github.com/less/less.js/pull/507) Fixed lessc require('sys') for nodejs 0.6.* (@garth)
492
+ - [#492](https://github.com/less/less.js/pull/492) fix comments in operations (ex: *height: 2px * 4 /* ie hack */) (@fat)
493
+ - [#458](https://github.com/less/less.js/pull/458) Assignment entities (@fat, @cloudhead, @asolove)
494
+
495
+ ### 1.1.4-lastest (2011-11-14)
496
+ - [#445](https://github.com/less/less.js/pull/445) fix undefined reference (@asolove)
497
+ - [#450](https://github.com/less/less.js/pull/450) store index on selector element objects for line number inference (@fat)
498
+ - [#432](https://github.com/less/less.js/pull/432) #361: Fix for quoted data URIs getting prepended with path (@asolove)
499
+ - [#388](https://github.com/less/less.js/pull/388) Rhino support (@erwan)
500
+ - [#355](https://github.com/less/less.js/pull/355) support imports with querystrings (google fonts) fix #265 (@revolunet)
501
+ - [#340](https://github.com/less/less.js/pull/340) Read less-content from stdin (@snorkypie)
502
+ - [#341](https://github.com/less/less.js/pull/341) patch for Issue 322 (@ttfkam)
503
+ - [#335](https://github.com/less/less.js/pull/335) update ARGB support, fix IE9 style injection (@ttfkam)
504
+ - [#229](https://github.com/less/less.js/pull/229) add fade() function (@bennyschudel)
505
+ - [#347](https://github.com/less/less.js/pull/347) support @-moz-keyframes. (@idris)
506
+ - [#169](https://github.com/less/less.js/pull/169) (fix) including .less files via absolute path with IE7 (@ldaley)
507
+ - [#189](https://github.com/less/less.js/pull/189) Google Chrome(Chromium) support for extensions (@dz0ny)
508
+ - [#247](https://github.com/less/less.js/pull/247) New "escape" function (@gilt)
509
+ - [#134](https://github.com/less/less.js/pull/134) Fixed issue (#134) where subfiles' @imports were regarding #, ? and url portions thereafter as part of the base url. (@dbergey)