Skip to content

Latest commit

 

History

History
180 lines (111 loc) · 7.64 KB

CHANGELOG.md

File metadata and controls

180 lines (111 loc) · 7.64 KB

Bootstrap Less Port Changelog

All notable changes will be documented in this file.

The format is based on Keep a Changelog and this project adheres to Semantic Versioning.

BREAKING CHANGE: Bootstrap Less Port now uses Less v3.8.1 and its syntax has been updated accordingly. This means that you will no longer be able to compile the Less source files with a lower version of Less!

With the switch to Less 3, improvements have been made in two key areas:

  1. Maps – The map variables used previously (which were actually not maps at all, but nested lists) have been converted to rulesets (which are much more map-like). This means that their properites can now be accessed directly using Less property accessors instead of the custom map-get() function, e.g. @breakpoints[xs].

    For colors, property accessors can now be used to get color values from the color maps, although the Bootstrap color functions are still supported as well.

  2. Loops – Previously, recursive mixin loops were used to mimic Sass’ for loops. Wherever possible, recursive mixin loops used for iterating have been replaced with Less’ new each() function.

Thanks to the above, some clunky workarounds used previously have now been removed, resulting in code that is much easier to both read and reason about. Special thanks to @calvinjuarez and @matthew-dean for implementing and driving the transition to Less 3!

Added

  • Added a new map-keys() function for getting the properties from a ruleset as a list, which can be very helpful when iterating using each() (thanks @calvinjuarez!)

Changed

  • Updated Less peer-dependency version from ^2.6.0 to ^3.8.1.
  • Updated Less syntax to leverage the latest Less features
    • Converted “map” variables (nested lists) to rulesets
    • Switched to using property accessors instead of the custom map-get() function for getting values from map-like variables
    • Switched to each() for looping instead of mixins, where possible
    • The map variables used previously (which were actually not maps at all, but nested lists) have been changed to use Less rulesets so that they’re much more map-like.
    • each() is now used for looping instead of mixins, where possible

Removed

  • Removed the custom map-get() plugin function

1.0.0 – 2018-01-06

First major release (since everything seems stable at this point).

Added

  • Dev: Added a changelog
  • Dev: Added Less as a peer dependency in package.json (currently >=2.6.0)

Changed

  • Dev: Updated ESLint config to allow syntax up to ES8

0.5.0 – 2018-12-06

Aligned with Bootstrap v4.1.3.

Changed

  • Updated styles to match Bootstrap v4.1.3 (see the Bootstrap release notes for details on the CSS changes in this version)

Fixed

  • Updated link to Less plugin at-rules in the README

0.4.0 – 2018-12-06

Aligned with Bootstrap v4.1.2.

Changed

  • Updated styles to match Bootstrap v4.1.2 (see the Bootstrap release notes for details on the CSS changes in this version)
  • Dev: Updated browserslist config to match Bootstrap
  • Dev: Updated dependencies and fixed npm audit security issues
    • less 3.0.4 → 3.9.0
    • autoprefixer 8.4.1 → 8.6.5
    • postcss-cli 5.0.0 → 5.0.1

Fixed

  • Updated link to Less plugin at-rules in the README

0.3.0 – 2018-05-12

Aligned with Bootstrap v4.1.1.

Note: This version bumps the Less version used for development to v3. It also includes revisions to the code to make it compatible with v3. However, the syntax used is backwards compatible with Less v2, and can be still be compiled with >= v2.7.3.

Changed

  • Updated styles to match Bootstrap v4.1.1 (see the Bootstrap release notes for details on the CSS changes in this version)
  • Updated usages of calc() to be compatible with Less v3
  • Dev: Updated dependencies and fixed npm audit security issues
    • less 2.7.3 → 3.0.4
    • autoprefixer 8.1.0 → 8.4.1

Fixed

  • #3 – Broken #media-breakpoint-only mixin

0.2.0 – 2018-04-17

Aligned with Bootstrap v4.1.0.

Added

  • Dev: ESLint is now used for enforcing JavaScript style in the Less plugins
  • Dev: Added npm script for linting/compiling

Changed

  • Updated styles to match Bootstrap v4.1.0 (see the Bootstrap release notes for details on the CSS changes in this version)
  • Dev: Updated browserslist config to match Bootstrap

Fixed

  • #1 – Clarify theming usage in README

0.1.3 – 2018-01-26

Changed

  • Ensured line breaks are preserved when minifying (for smaller diffs of minified files)

0.1.2 – 2018-01-26

Created a new version for npm. (Nothing changed in this version.)

0.1.1 – 2018-01-26

Note: This version is deprecated in npm! Use version 0.1.2 instead.

Fixed

  • All expressions using math are now compatible with Less’ strict-math compiler option.

0.1.0 – 2018-01-20

Aligned with Bootstrap v4.0.0.

Changed

  • Updated styles to match Bootstrap v4.0.0 (see the Bootstrap release notes for details on the CSS changes in this version)
  • Fixed typos in the README and removed disclaimer about Bootstrap being in beta

0.0.6 – 2018-01-15

Aligned with Bootstrap v4.0.0-beta.3.

Changed

  • Updated styles to match Bootstrap v4.0.0-beta.3 (see the Bootstrap release notes for details on the CSS changes in this version

0.0.5 – 2017-11-29

Added

  • Included usage instructions in the README

Fixed

  • gray() color function now works correctly. (Issue was caused by a bug in the listToMap helper function.)

0.0.4 – 2017-11-17

Changed

  • Converted breakpoint mixins to functions (using a Less plugin) so that they can be used in the same way the Sass version uses them

0.0.3 – 2017-11-16

Initial release. (Code aligned with Bootstrap v4.0.0-beta.2.)