Release history

All notable changes to this project will be documented in this file.

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

Guiding Principles
Types of changes

Changelog entries are classified using the following labels (from keep-a-changelog):

[4.0.0] - 2019-03-20

Added

Breaking changes

[3.0.0] - 2017-04-11

Complete overhaul, with 36,000+ new unit tests validated against actual output generated by Bash and minimatch. More specifically, 35,000+ of the tests:

This refactor introduces a parser and compiler that are supersets of more granular parsers and compilers from other sub-modules. Each of these sub-modules has a singular responsibility and focuses on a certain type of matching that aligns with a specific part of the Bash "expansion" API.

These sub-modules work like plugins to seamlessly create the micromatch parser/compiler, so that strings are parsed in one pass, an AST is created, then a new string is generated by the compiler.

Here are those sub-modules with links to related prs on those modules if you want to see how they contribute to this code:

nanomatch (new library) - glob expansion (*, **, ? and [...])) braces - brace expansion ({1..10}, {a,b,c}, etc) extglob - extended globs (!(a|b), @(!(foo|bar)), etc) expand-brackets - POSIX character classes [[:alpha:][:digit:]]

Added

Fixed

Changed

[1.0.1] - 2016-12-12

Added

[1.0.0] - 2016-12-12

Stable release.

[0.1.0] - 2016-10-08

First release.