Skip to content
Mária Jurčovičová edited this page Apr 23, 2015 · 107 revisions

less4j-1.11.0

  • Fixed OutOfMemory error when compiling heavy sources.
  • Grammar refactoring, parsing phase should be slightly faster.

less4j-1.10.0

  • Enabled bubbling for all css directives (at-rules).
  • Namespaces can have guards.
  • Mixins with parameters are not used as namespaces.
  • Darken, lighten, saturate, desaturate, fadein and fadeout functions can work in both absolute and relative modes.
  • Svg-gradient accepts list of colors as parameter.
  • Fixed scope issues that caused mixins looping failures.
  • Non-breaking space unicode character (U+00A0) is treated as whitespace.
  • Declaration values allow slash, so ie hack 0\9 is possible.
  • Detached rulesets used as mixin argument defaults do not generate warning.

less4j-1.9.0

  • Improved error reporting. Errors and warnings now display three lines of code which caused the problem.
  • Import has new optional option.
  • Added isruleset function. It returns true if parameter contains detached ruleset.
  • Data-uri function does not default to base64 on svg files. Svg files are now are treated same way as other text files.
  • Equality ignores difference in color notation e.g. lima is equal to #008800 and to #080.
  • Color that was not manipulated keeps its form when printed into output.
  • The %s option of format function allows also colors.
  • Format function keeps quote types of its format parameter.
  • Import supports multiple options.
  • Data-uri function generates large data warning from length of encoded data.
  • Color names (red, blue) are allowed as names of indirectly referenced variables.
  • Fixed parser failure on some special variable names followed by space.
  • Less.js compatibility: Allows pointless comma , on the end of selector.

less4j-1.8.5

  • underscore (_) is now allowed inside selectors, mixin names, etc,
  • !important can be used inside variable declarations,
  • extend supports multiple selectors as arguments,
  • the transparent css color name is interpreted as color,
  • fixed import inline of css files,
  • fixed error returned by import inline on unavailable file,
  • fixed extend of rulesets nested inside media and supports imported by reference.

less4j-1.8.4

  • support for /deep/ combinator,
  • allowed $ and . in expression identifiers (e.g. $aa.bb),
  • allowed empty variables,
  • source files without mappable symbols are now added into source map files list.

less4j-1.8.3

  • switched default encoding to utf-8,
  • relative file source now inherits charset of its parent,
  • less file source has new constructor to make it more extensible.

less4j-1.8.2

  • Bugfix: last mixin call does not have to be followed by semicolon.

less4j-1.8.1

  • fragments handling to data-uri function,
  • support for ANTLR 3.5.

less4j-1.8.0

  • enabled re-iteration of string interpolation,
  • added hsvhue, hsvsaturation, hsvvalue, luminance color functions,
  • added min, max, length functions,
  • added isurl, isunit, get-unit functions,
  • added replace and svg-gradient functions.

Notes:

less4j-1.7.0

  • detached rulesets are now implemented,
  • optional minification of generated css,
  • allowed custom source maps urls,
  • charset support for URISource and FileSource,
  • media and rulesets with empty bodies are removed.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.6.1

  • indirect variables are allowed to reference all types - including escaped values,
  • imported once is now default behavior,
  • import files order fixed.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.6.0

  • support for inline source maps,
  • generated source map can contain content of original less files.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.5.4

  • color functions keep rgb values as rgb - they used to convert them into rgba,
  • equal operator on strings ignores quote types e.g. 'value'="value",
  • added support for custom css directives.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.5.3

  • allowed extended names in mixin calls, namespaces names and mixins names,
  • added support for variables in charsets and keyframes,
  • added guards on css styles.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.5.2

  • added api for embedded scripting - including custom interpolation.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.
  • 2: less4j-javascript plugin was released simultaneously.

less4j-1.5.1

  • scripts inside `..` and ~`...` are new special cases of custom functions.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.5.0

  • fixed bug in (reference) import,
  • added support for custom functions.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.4.1

  • fixed null pointer exception.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.4.0

  • default function was made fully compatible with less.js,
  • turned off variable interpolation in unquoted urls,
  • added cat ^^ and hat ^ shadow DOM selectors,
  • added import options,
  • deprecated old import-once and import-multiplt.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.3.0

  • added support for space separated properties merge,
  • added variable interpolation inside import urls.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.
  • 2: default function is not compatible with what less.js done.

less4j-1.2.4

  • data-uri function for resources embedding,
  • default function for mixin guards,
  • fixed !important properties are merged separately.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.2.3

  • added property name interpolation,
  • allowed space separated variables list in media expressions,
  • added support for property merge property-name+.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.2.2

  • implemented extend all,
  • added support for &:extend inside body,
  • fixed @import inside jar files.

Notes:

  • 1: extend still has some known open issues, however those are open also in less.js.

less4j-1.2.1

  • Extend in @media body extends only rulesets defined inside that @media body.
  • Looping mixin was not able to call other mixins. It prevented compilation of Bootstrap 3.0.2.

less4j-1.2.0

  • first basic version of selectors extend.

Notes:

  • 1: the all modifier is not supported and extend from inside media at-rule does not work properly.

less4j-1.1.3

  • antlr dependency replaced by antlr-runtime,
  • improved speed,
  • requires less memory.

less4j-1.1.2

  • cycle detection for rulesets usable as mixin,
  • support for semicolon at the end of mixin arguments declaration,
  • formatting of rbga color does not loose alpha anymore,
  • bubbled up media at-rules and nested rulesets keep their relative positions,
  • selectors with combinators can be used as mixins,
  • multiple & appender bugs fixed.

Special remark:

  • compiles Bootstrap 3.0 the same way as less-1.4.2.js.

less4j-1.1.1

  • allowed any casing for functions,
  • hotfix: 'required class missing' error fixed.

less4j-1.1.0

  • first source map support,
  • error reporting: less4j exception getMessage and toString show first two compilation errors.

less4j-1.0.4

  • mixin return values do not rewrite local scope variables,
  • added mixins unlocking.

Special remark:

  • created a suite of release tests to ensure correct compilation of twitter bootstrap.

less4j-1.0.3

  • fixed scoping issue that caused incorrect bootstrap responsive compilation,
  • added support for vendor specific @viewport dialects.

Special remark:

  • less4j-1.0.3 compiles twitter bootstrap responsive the same way as less-1.3.3.js.

less4j-1.0.2

  • added return values for mixins (1.3.x compatible behavior),
  • removed unused dependencies on slf4j.

less4j-1.0.1

  • support for @supports,
  • jCommander dependency was made optional,
  • various bug fixes.

less4j-1.0.0

  • floating numbers format bug fix,
  • support for @-moz-document.

less4j-0.0.14

  • semicolon as mixins arguments divisor,
  • allowed variables inside media queries,
  • escaped values in guards should are comparable to identifiers,
  • strings interpolation now uses hexadecimal representation and ignores original color format,
  • appender brought to top level by mixins is removed and does not cause errors anymore,
  • urls ending with "/css" are considered css files by import,
  • import once ignores differences in path format,
  • step up in import directory does not confuse imported file suffix detection,
  • rulesets nested in mixins now inherit mixins calls !important flag,
  • allowed font-face inside a mixin,
  • allowed useless semicolons in bodies,
  • additional @charset declarations are now removed,
  • leading ampersands are now ignored when doing mixins matching.

Notes:

  • 1: mixins and namespaces conventions are not exactly the same as in less.js case.

less4j-0.0.13

  • support for unicode range in font-face,
  • support for ms filter functions,
  • solved name clashes between filter and built-in functions,
  • fixed validations and comments in structures with bodies (media, ruleset, page, ...),
  • the '=' operator compares only numbers with the same dimension and numbers with no dimension.

Special remark:

  • less4j-0.0.13 compiles twitter bootstrap the same way as less-1.3.3.js.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.12

  • less.js built-in functions,
  • font-face supports less language features (variables, mixins, ...),
  • media queries bubbling and merging,
  • abstract less source and url based less source for more flexible import files loading.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.11

Bugfix release, no new features.

less4j-0.0.10

  • less file import on style sheet top level.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.9

New additions:

  • support for CSS3 @viewports,
  • support for CSS3 paged media and page margin box,
  • duplicate declaration detection in rulesets and viewports,
  • list as default value of mixin parameter,
  • removed log4j warning in command line.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.8

New additions:

  • mixins with extended names,
  • rulesets with multiple selectors can be used as mixins,
  • cycle detection for variables,
  • new functions: format %(...), URI escaping escape(...), less escaping e(...),
  • short namespace reference syntax without '>',
  • top level mixins and namespaces references,
  • list as mixin parameter,
  • support for CSS @keyframes animations,
  • new validation: appender on top level rulesets is not allowed.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.7

New additions:

  • deprecated selectors escaping and variables as pseudo classes parameters,
  • added selectors interpolation,
  • added math functions,
  • star prefix browser hack now works.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.6

New additions:

  • less escaping for values and selectors,
  • string interpolation.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.5

New additions:

  • both css classes and hashes now can be used as mixins,
  • better error handling and reporting,
  • fix maven jar packaging - it should not contain dependencies.

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.4

New additions:

  • & appender for nested rules,
  • named arguments for mixins,
  • mixins can be used also as namespaces (e.g. closure).

Notes:

  • 1: the range of allowed mixins names is more limited then the one in less.js.

less4j-0.0.3

New additions:

  • less4j can run as standalone program from command line,
  • namespaces,
  • thread safety of the default compiler,
  • operations on colors.

Notes:

  • 1: closures and named arguments for mixins are not implemented in this version.
  • 2: the range of allowed namespace names is more limited then the one in less.js.

less4j-0.0.2

New additions:

  • mixins,
  • lazy loading for variables,
  • last win strategy for variables.

Note: closures and named arguments for mixins are not implemented in this version.

less4j-0.0.1

First maven release contains:

  • operations (expressions),
  • variables,
  • nested rules.

Note: variables lazy loading and last win strategy are not implemented in this version.