Skip to content

Releases: less/less.js

v4.2.0

07 Sep 02:34
1b6dba1
Compare
Choose a tag to compare

v4.1.3

09 Jun 03:59
6986f3e
Compare
Choose a tag to compare

v4.1.2

14 Oct 06:00
a10c339
Compare
Choose a tag to compare

v4.1.1

31 Jan 04:00
Compare
Choose a tag to compare

v4.1.0

10 Jan 02:51
Compare
Choose a tag to compare

Mixin parentheses requirement removed

This was maybe too big a change without some kind of deprecation or conversion.
So for this version, this works again:

.mixin;

v4.0.0

18 Dec 18:22
Compare
Choose a tag to compare

This release has 2 breaking changes:

Parentheses required for mixin calls

This aligns it with syntax for calling detached rulesets.

Example

.mixin() {}
.mixin;  // error in 4.0

Parens-division now the default math setting

Parentheses are required (by default) around division-like expressions, to force math evaluation.

Example:

@ratio_large: 16;
@ratio_small: 9;

/** The following will produce `device-aspect-ratio: 1.77777778` by default in 3.x */
@media all and (device-aspect-ratio: @ratio_large / @ratio_small) {
   .body { max-width: 800px; }
}

Produces:

@media all and (device-aspect-ratio: 16 / 9) {
  .body {
    max-width: 800px;
  }
}

You can, of course, get old math behavior. See: http://lesscss.org/usage/#less-options-math

What's New

  • min() / max() functions can pass-through if it cannot be evaluated in Less
  • isdefined() can be used to test if variables are defined (e.g. isdefined(@unknown))
  • New rgb color syntax supported (e.g. rgb(0 128 255 / 50%))

v2.7.2

24 Apr 13:06
Compare
Choose a tag to compare

2.5.1

21 May 11:28
Compare
Choose a tag to compare
  • Fix problems with less being async in some browsers
  • Minor fix only likely to affect programmatic usage of ruleset find
  • Fix error when a namespaced mixin is invoked in global scope

2.5.0

21 May 11:29
Compare
Choose a tag to compare
  • supports the scoped @plugin directive to load function plugins
  • All directives are bubbled (e.g. supports), not just media
  • Performance improvements to the parser - should help non-chrome browsers with very large less files to be a lot quicker.
  • the image size function respects include paths like other file functions
  • colour functions take a relative argument that applies percentages relatively instead of absolutely
  • include paths now allows : as a separator on windows (recognising and not splitting drive names by the backslash)
  • @import (css) does not pull the directive above comments
  • Fix for import statements without quotes sometimes causing issues
  • replace supports dimensions and colours
  • the browser field is set in the package.json for use with browserify
  • another fix to support paths being passed as a string instead of an array
  • detached rulesets can be used as default arguments
  • Fix a lot of false warnings about extends
  • errors written to stderr more consistently
  • consistently keep units if strict units is off
  • Better support for comments in function all arguments

2.4.0

21 May 11:29
Compare
Choose a tag to compare
  • Support for plugins that pre-process (to add libraries silently etc.)
  • Empty sourcemaps now work
  • Extract and Length functions now ignore comments in a list (more work to come to fix the general problem)
  • fragment urls are treated absolute since they refer to the html document
  • Extends on a selector joined with & now work better
  • Nested mixins work better with !important (regression in 2.3.0)
  • The promise dependency is now actually optional (introduced in 2.0.0)
  • Files with just \r newlines now process ok (regression in 2.0.0)
  • 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)