Skip to content

Releases: less/less.js

v2.0.0-b2

01 Nov 17:56
Compare
Choose a tag to compare
v2.0.0-b2 Pre-release
Pre-release

Imports are now sequenced and so are consistent (previously some complex projects might end up with occasional different orderings)
Imports with variables are better supported - variables can be specified in sub imports
Support for rebeccapurple
Browser can now accept options as attributes on the script tag and the link tags e.g. <script data-verbose="false" src="less.js"...
adding a .less file extension is done in the abstract file manager so it the behaviour can be overridden by certain file managers
Fixed a bug where unquoted urls beginning // e.g. url(//file/file.less) would be incorrectly interpreted (bug introduced in b-1)
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

v2.0.0-b1

01 Nov 17:55
Compare
Choose a tag to compare
v2.0.0-b1 Pre-release
Pre-release

Public Beta / Release Candidate - Feedback welcome For a guide to breaking changes see the v2 upgrade guide
no longer including old versions of less in the repo or npm
not including test less and gradle files in npm
colours now output in the format they are added, so yellow will output yellow, not its hex counterpart
better parsing - better comment support and comments in brackets can now contain comments including quotes.
Removal of dependency on clean-css - install less-plugin-clean-css and use --clean-css to reference plugin
Environment Support - less is now separate from its node and browser environment implementations and adding support for another javascript environment should be straight forward.
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).
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.
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.
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
In the browser, the cache can be overwritten by setting less.cache before less loads. After load less.cache will be the default implementation.
less.js now uses browserify to generate its browser side component
default values for the sourcemap options have been re-done and improved to hopefully mean creating sourcemaps is easier
Many smaller bugfixes and API changes. Please let us know if something you relied on has disappeared or an area should be better documented.

v1.7.5

01 Nov 17:55
Compare
Choose a tag to compare

Allow comments in keyframe (complete comment support coming in 2.0)
pass options to parser from less.render
Support /deep/ combinator
handle fragments in data-uri's
float @charsets to the top correctly
updates to some dependencies
Fix interpolated import in media query
A few other various small corrections

v1.7.4

01 Nov 17:52
Compare
Choose a tag to compare

Handle uppercase paths in browser
Show error if an empty selector is used in extend
Fix property merging in directives
Fix ordering of charset and import directives
Fix race condition that caused a rules is undefined error sometimes if you had a complex import strategy
Better error message for imports missing semi-colons or malformed
Do not use util.print to avoid deprecate warnings in node 0.11

v1.7.3

01 Nov 17:52
Compare
Choose a tag to compare

Include dist files, missing from 1.7.2
Do not round the results of color functions, like lightness, hue, luma etc.
Support cover and contain keywords in background definitions

v1.7.2

01 Nov 17:52
Compare
Choose a tag to compare

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)
Do not round numbers when used with javascript (introduced 1.7.0)

v1.7.1

01 Nov 17:51
Compare
Choose a tag to compare

Fix detection of recursive mixins
Fix the paths option for later versions of node (0.10+)
Fix paths joining bug
Fix a number precision issue on some versions of node
Fix an IE8 issue with importing css files
Fix IE11 detection for xhr requests
Modify var works if the last line of a less file is a comment.
Better detection of valid hex colour codes
Some stability fixes to support a low number of available file handles
Support comparing values with different quote types e.g. "test" now === 'test'
Give better error messages if accessing a url that returns a non 200 status code
Fix the e() function when passed empty string
Several minor bug fixes

v1.7.0

01 Nov 17:51
Compare
Choose a tag to compare

Add support for rulesets in variables and passed to mixins to allow wrapping
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.
Upgraded clean css which means the --selectors-merge-mode is now renamed --compatibility
Add support for using variables with @Keyframes, @namespace, @charset
Support property merging with +_ when spaces are needed and keep + for comma separated
Imports now always import once consistently - a race condition meant previously certain configurations would lead to a different ordering of files
Fix support for .mixin(@Args...) when called with no args (e.g. .mixin();)
Do unit conversions with min and max functions. Don't pass through if not understood, throw an error
Allow % to be passed on its own to the unit function e.g. unit(10, %)
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.)
Fix mixins with media queries in import reference files not being put into the output (they now output, they used to incorrectly not)
Fix lint mode - now reports all errors
Fixed a small scope issue with & {} selector rulesets incorrectly making mixins visible - regression from 1.6.2
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
Browser - logLevel takes effect regardless of the environment (production/dev)
Browser - added postProcessor option, a function called to post-process the css before adding to the page
Browser - use the right request for file access in IE

v1.6.3

01 Nov 17:50
Compare
Choose a tag to compare

Fix issue with calling toCSS twice not working in some situations (like with bootstrap 2)

v1.6.2

01 Nov 17:50
Compare
Choose a tag to compare

The Rhino release is fixed!
ability to use uppercase colours
Fix a nasty bug causing syntax errors when selector interpolation is preceded by a long comment (and some other cases)
Fix a major bug with the variable scope in guards on selectors (e.g. not mixins)
Fold in & when () { to the current selector rather than duplicating it
fix another issue with array prototypes
add a url-args option which adds a value to all urls (for cache busting)
Round numbers to 8 decimal places - thereby stopping javascript precision errors
some improvements to the default() function in more complex scenarios
improved missing '{' and '(' detection