198 lines
24 KiB
JSON
198 lines
24 KiB
JSON
{
|
|
"_args": [
|
|
[
|
|
{
|
|
"raw": "micromatch@^2.3.11",
|
|
"scope": null,
|
|
"escapedName": "micromatch",
|
|
"name": "micromatch",
|
|
"rawSpec": "^2.3.11",
|
|
"spec": ">=2.3.11 <3.0.0",
|
|
"type": "range"
|
|
},
|
|
"/Volumes/2009-SSD/GT2/GT2-iOS/node_modules/jest-haste-map"
|
|
]
|
|
],
|
|
"_from": "micromatch@>=2.3.11 <3.0.0",
|
|
"_id": "micromatch@2.3.11",
|
|
"_inCache": true,
|
|
"_location": "/micromatch",
|
|
"_nodeVersion": "6.3.0",
|
|
"_npmOperationalInternal": {
|
|
"host": "packages-16-east.internal.npmjs.com",
|
|
"tmp": "tmp/micromatch-2.3.11.tgz_1468602931475_0.3629888044670224"
|
|
},
|
|
"_npmUser": {
|
|
"name": "jonschlinkert",
|
|
"email": "github@sellside.com"
|
|
},
|
|
"_npmVersion": "3.10.3",
|
|
"_phantomChildren": {},
|
|
"_requested": {
|
|
"raw": "micromatch@^2.3.11",
|
|
"scope": null,
|
|
"escapedName": "micromatch",
|
|
"name": "micromatch",
|
|
"rawSpec": "^2.3.11",
|
|
"spec": ">=2.3.11 <3.0.0",
|
|
"type": "range"
|
|
},
|
|
"_requiredBy": [
|
|
"/anymatch",
|
|
"/jest-haste-map",
|
|
"/jest-message-util",
|
|
"/jest-runner/jest-haste-map",
|
|
"/jest-runtime",
|
|
"/jest-runtime/jest-haste-map",
|
|
"/jest/jest-cli",
|
|
"/jest/jest-haste-map",
|
|
"/test-exclude"
|
|
],
|
|
"_resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz",
|
|
"_shasum": "86677c97d1720b363431d04d0d15293bd38c1565",
|
|
"_shrinkwrap": null,
|
|
"_spec": "micromatch@^2.3.11",
|
|
"_where": "/Volumes/2009-SSD/GT2/GT2-iOS/node_modules/jest-haste-map",
|
|
"author": {
|
|
"name": "Jon Schlinkert",
|
|
"url": "https://github.com/jonschlinkert"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/jonschlinkert/micromatch/issues"
|
|
},
|
|
"dependencies": {
|
|
"arr-diff": "^2.0.0",
|
|
"array-unique": "^0.2.1",
|
|
"braces": "^1.8.2",
|
|
"expand-brackets": "^0.1.4",
|
|
"extglob": "^0.3.1",
|
|
"filename-regex": "^2.0.0",
|
|
"is-extglob": "^1.0.0",
|
|
"is-glob": "^2.0.1",
|
|
"kind-of": "^3.0.2",
|
|
"normalize-path": "^2.0.1",
|
|
"object.omit": "^2.0.0",
|
|
"parse-glob": "^3.0.4",
|
|
"regex-cache": "^0.4.2"
|
|
},
|
|
"description": "Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch.",
|
|
"devDependencies": {
|
|
"benchmarked": "^0.1.4",
|
|
"chalk": "^1.1.1",
|
|
"gulp": "^3.9.0",
|
|
"gulp-eslint": "^1.1.1",
|
|
"gulp-format-md": "^0.1.8",
|
|
"gulp-istanbul": "^0.10.1",
|
|
"gulp-mocha": "^2.1.3",
|
|
"minimatch": "^3.0.0",
|
|
"minimist": "^1.2.0",
|
|
"mocha": "^2",
|
|
"multimatch": "^2.0.0",
|
|
"should": "^8",
|
|
"write": "^0.2.1"
|
|
},
|
|
"directories": {},
|
|
"dist": {
|
|
"shasum": "86677c97d1720b363431d04d0d15293bd38c1565",
|
|
"tarball": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz"
|
|
},
|
|
"engines": {
|
|
"node": ">=0.10.0"
|
|
},
|
|
"files": [
|
|
"index.js",
|
|
"lib"
|
|
],
|
|
"gitHead": "f194c187d04677b03047bb7d8d25643725f7a577",
|
|
"homepage": "https://github.com/jonschlinkert/micromatch",
|
|
"keywords": [
|
|
"bash",
|
|
"expand",
|
|
"expansion",
|
|
"expression",
|
|
"file",
|
|
"files",
|
|
"filter",
|
|
"find",
|
|
"glob",
|
|
"globbing",
|
|
"globs",
|
|
"globstar",
|
|
"match",
|
|
"matcher",
|
|
"matches",
|
|
"matching",
|
|
"minimatch",
|
|
"multimatch",
|
|
"path",
|
|
"pattern",
|
|
"patterns",
|
|
"regex",
|
|
"regexp",
|
|
"regular",
|
|
"shell",
|
|
"wildcard"
|
|
],
|
|
"license": "MIT",
|
|
"main": "index.js",
|
|
"maintainers": [
|
|
{
|
|
"name": "jonschlinkert",
|
|
"email": "github@sellside.com"
|
|
},
|
|
{
|
|
"name": "doowb",
|
|
"email": "brian.woodward@gmail.com"
|
|
},
|
|
{
|
|
"name": "es128",
|
|
"email": "elan.shanker+npm@gmail.com"
|
|
}
|
|
],
|
|
"name": "micromatch",
|
|
"optionalDependencies": {},
|
|
"readme": "# micromatch [![NPM version](https://img.shields.io/npm/v/micromatch.svg?style=flat)](https://www.npmjs.com/package/micromatch) [![NPM downloads](https://img.shields.io/npm/dm/micromatch.svg?style=flat)](https://npmjs.org/package/micromatch) [![Build Status](https://img.shields.io/travis/jonschlinkert/micromatch.svg?style=flat)](https://travis-ci.org/jonschlinkert/micromatch)\n\n> Glob matching for javascript/node.js. A drop-in replacement and faster alternative to minimatch and multimatch.\n\nMicromatch supports all of the same matching features as [minimatch](https://github.com/isaacs/minimatch) and [multimatch](https://github.com/sindresorhus/multimatch).\n\n* [mm()](#usage) is the same as [multimatch()](https://github.com/sindresorhus/multimatch)\n* [mm.match()](#match) is the same as [minimatch.match()](https://github.com/isaacs/minimatch)\n* use [mm.isMatch()](#ismatch) instead of [minimatch()](https://github.com/isaacs/minimatch)\n\n## Install\n\nInstall with [npm](https://www.npmjs.com/):\n\n```sh\n$ npm install --save micromatch\n```\n\n## Start matching!\n\n```js\nvar mm = require('micromatch');\nconsole.log(mm(['']))\n```\n\n***\n\n### Features\n\n* [Drop-in replacement](#switch-from-minimatch) for [minimatch](https://github.com/isaacs/minimatch) and [multimatch](https://github.com/sindresorhus/multimatch)\n* Built-in support for multiple glob patterns, like `['foo/*.js', '!bar.js']`\n* [Brace Expansion](https://github.com/jonschlinkert/braces) (`foo/bar-{1..5}.md`, `one/{two,three}/four.md`)\n* Typical glob patterns, like `**/*`, `a/b/*.js`, or `['foo/*.js', '!bar.js']`\n* Methods like `.isMatch()`, `.contains()` and `.any()`\n\n**Extended globbing features:**\n\n* Logical `OR` (`foo/bar/(abc|xyz).js`)\n* Regex character classes (`foo/bar/baz-[1-5].js`)\n* POSIX [bracket expressions](https://github.com/jonschlinkert/expand-brackets) (`**/[[:alpha:][:digit:]]/`)\n* [extglobs](https://github.com/jonschlinkert/extglob) (`**/+(x|y)`, `!(a|b)`, etc).\n\nYou can combine these to create whatever matching patterns you need.\n\n**Example**\n\n```js\n// double-negation!\nmm(['fa', 'fb', 'f', 'fo'], '!(f!(o))');\n//=> ['fo']\n```\n\n## Why switch to micromatch?\n\n* Native support for multiple glob patterns, no need for wrappers like [multimatch](https://github.com/sindresorhus/multimatch)\n* [10-55x faster](#benchmarks) and more performant than [minimatch](https://github.com/isaacs/minimatch) and [multimatch](https://github.com/sindresorhus/multimatch). This is achieved through a combination of caching and regex optimization strategies, a fundamentally different approach than minimatch.\n* More extensive support for the Bash 4.3 specification\n* More complete extglob support\n* Extensive [unit tests](./test) (approx. 1,300 tests). Minimatch fails many of the tests.\n\n### Switch from minimatch\n\nUse `mm.isMatch()` instead of `minimatch()`:\n\n```js\nmm.isMatch('foo', 'b*');\n//=> false\n```\n\nUse `mm.match()` instead of `minimatch.match()`:\n\n```js\nmm.match(['foo', 'bar'], 'b*');\n//=> 'bar'\n```\n\n### Switch from multimatch\n\nSame signature:\n\n```js\nmm(['foo', 'bar', 'baz'], ['f*', '*z']);\n//=> ['foo', 'baz']\n```\n\n***\n\n## Usage\n\nAdd micromatch to your node.js project:\n\n```js\nvar mm = require('micromatch');\n```\n\n**Signature**\n\n```js\nmm(array_of_strings, glob_patterns[, options]);\n```\n\n**Example**\n\n```js\nmm(['foo', 'bar', 'baz'], 'b*');\n//=> ['bar', 'baz']\n```\n\n### Usage examples\n\n**Brace expansion**\n\nMatch files with `.js` or `.txt` extensions.\n\n```js\nmm(['a.js', 'b.md', 'c.txt'], '*.{js,txt}');\n//=> ['a.js', 'c.txt']\n```\n\n**Extglobs**\n\nMatch anything except for files with the `.md` extension.\n\n```js\nmm(files, '**/*.!(md)');\n\n//=> ['a.js', 'c.txt']\n```\n\n**Multiple patterns**\n\nMatch using an array of patterns.\n\n```js\nmm(['a.md', 'b.js', 'c.txt', 'd.json'], ['*.md', '*.txt']);\n//=> ['a.md', 'c.txt']\n```\n\n**Negation patterns:**\n\nBehavior is designed to be what users would expect, based on conventions that are already well-established.\n\n* [minimatch](https://github.com/isaacs/minimatch) behavior is used when the pattern is a string, so patterns are **inclusive by default**.\n* [multimatch](https://github.com/sindresorhus/multimatch) behavior is used when an array of patterns is passed, so patterns are **exclusive by default**.\n\n```js\nmm(['a.js', 'b.md', 'c.txt'], '!*.{js,txt}');\n//=> ['b.md']\n\nmm(['a.md', 'b.js', 'c.txt', 'd.json'], ['*.*', '!*.{js,txt}']);\n//=> ['a.md', 'd.json']\n```\n\n***\n\n## API methods\n\n```js\nvar mm = require('micromatch');\n```\n\n### .match\n\n```js\nmm.match(array, globString);\n```\n\nReturn an array of files that match the given glob pattern. Useful if you only need to use a single glob pattern.\n\n**Example**\n\n```js\nmm.match(['ab', 'a/b', 'bb', 'b/c'], '?b');\n//=> ['ab', 'bb']\n\nmm.match(['ab', 'a/b', 'bb', 'b/c'], '*/b');\n//=> ['a/b']\n```\n\n### .isMatch\n\n```js\nmm.isMatch(filepath, globString);\n```\n\nReturns true if a file path matches the given glob pattern.\n\n**Example**\n\n```js\nmm.isMatch('.verb.md', '*.md');\n//=> false\n\nmm.isMatch('.verb.md', '*.md', {dot: true});\n//=> true\n```\n\n### .contains\n\nReturns true if any part of a file path matches the given glob pattern. Think of this is \"has path\" versus \"is path\".\n\n**Example**\n\n`.isMatch()` would return false for both of the following:\n\n```js\nmm.contains('a/b/c', 'a/b');\n//=> true\n\nmm.contains('a/b/c', 'a/*');\n//=> true\n```\n\n### .matcher\n\nReturns a function for matching using the supplied pattern. e.g. create your own \"matcher\". The advantage of this method is that the pattern can be compiled outside of a loop.\n\n**Pattern**\n\nCan be any of the following:\n\n* `glob/string`\n* `regex`\n* `function`\n\n**Example**\n\n```js\nvar isMatch = mm.matcher('*.md');\nvar files = [];\n\n['a.md', 'b.txt', 'c.md'].forEach(function(fp) {\n if (isMatch(fp)) {\n files.push(fp);\n }\n});\n```\n\n### .filter\n\nReturns a function that can be passed to `Array#filter()`.\n\n**Params**\n\n* `patterns` **{String|Array}**:\n\n**Examples**\n\nSingle glob:\n\n```js\nvar fn = mm.filter('*.md');\n['a.js', 'b.txt', 'c.md'].filter(fn);\n//=> ['c.md']\n\nvar fn = mm.filter('[a-c]');\n['a', 'b', 'c', 'd', 'e'].filter(fn);\n//=> ['a', 'b', 'c']\n```\n\nArray of glob patterns:\n\n```js\nvar arr = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15];\n\nvar fn = mm.filter(['{1..10}', '![7-9]', '!{3..4}']);\narr.filter(fn);\n//=> [1, 2, 5, 6, 10]\n```\n\n_(Internally this function generates the matching function by using the [matcher](#matcher) method. You can use the [matcher](#matcher) method directly to create your own filter function)_\n\n### .any\n\nReturns true if a file path matches any of the given patterns.\n\n```js\nmm.any(filepath, patterns, options);\n```\n\n**Params**\n\n* filepath `{String}`: The file path to test.\n* patterns `{String|Array}`: One or more glob patterns\n* options: `{Object}`: options to pass to the `.matcher()` method.\n\n**Example**\n\n```js\nmm.any('abc', ['!*z']);\n//=> true\nmm.any('abc', ['a*', 'z*']);\n//=> true\nmm.any('abc', 'a*');\n//=> true\nmm.any('abc', ['z*']);\n//=> false\n```\n\n### .expand\n\nReturns an object with a regex-compatible string and tokens.\n\n```js\nmm.expand('*.js');\n\n// when `track` is enabled (for debugging), the `history` array is used\n// to record each mutation to the glob pattern as it's converted to regex\n{ options: { track: false, dot: undefined, makeRe: true, negated: false },\n pattern: '(.*\\\\/|^)bar\\\\/(?:(?!(?:^|\\\\/)\\\\.).)*?',\n history: [],\n tokens:\n { path:\n { whole: '**/bar/**',\n dirname: '**/bar/',\n filename: '**',\n basename: '**',\n extname: '',\n ext: '' },\n is:\n { glob: true,\n negated: false,\n globstar: true,\n dotfile: false,\n dotdir: false },\n match: {},\n original: '**/bar/**',\n pattern: '**/bar/**',\n base: '' } }\n```\n\n### .makeRe\n\nCreate a regular expression for matching file paths based on the given pattern:\n\n```js\nmm.makeRe('*.js');\n//=> /^(?:(?!\\.)(?=.)[^/]*?\\.js)$/\n```\n\n## Options\n\n### options.unixify\n\nNormalize slashes in file paths and glob patterns to forward slashes.\n\nType: `{Boolean}`\n\nDefault: `undefined` on non-windows, `true` on windows.\n\n### options.dot\n\nMatch dotfiles. Same behavior as [minimatch](https://github.com/isaacs/minimatch).\n\nType: `{Boolean}`\n\nDefault: `false`\n\n### options.unescape\n\nUnescape slashes in glob patterns. Use cautiously, especially on windows.\n\nType: `{Boolean}`\n\nDefault: `undefined`\n\n**Example**\n\n```js\nmm.isMatch('abc', '\\\\a\\\\b\\\\c', {unescape: true});\n//=> true\n```\n\n### options.nodupes\n\nRemove duplicate elements from the result array.\n\nType: `{Boolean}`\n\nDefault: `undefined`\n\n**Example**\n\nExample of using the `unescape` and `nodupes` options together:\n\n```js\nmm.match(['abc', '\\\\a\\\\b\\\\c'], '\\\\a\\\\b\\\\c', {unescape: true});\n//=> ['abc', 'abc']\n\nmm.match(['abc', '\\\\a\\\\b\\\\c'], '\\\\a\\\\b\\\\c', {unescape: true, nodupes: true});\n//=> ['abc']\n```\n\n### options.matchBase\n\nAllow glob patterns without slashes to match a file path based on its basename. . Same behavior as [minimatch](https://github.com/isaacs/minimatch).\n\nType: `{Boolean}`\n\nDefault: `false`\n\n**Example**\n\n```js\nmm(['a/b.js', 'a/c.md'], '*.js');\n//=> []\n\nmm(['a/b.js', 'a/c.md'], '*.js', {matchBase: true});\n//=> ['a/b.js']\n```\n\n### options.nobraces\n\nDon't expand braces in glob patterns. Same behavior as [minimatch](https://github.com/isaacs/minimatch) `nobrace`.\n\nType: `{Boolean}`\n\nDefault: `undefined`\n\nSee [braces](https://github.com/jonschlinkert/braces) for more information about extended brace expansion.\n\n### options.nobrackets\n\nDon't expand POSIX bracket expressions.\n\nType: `{Boolean}`\n\nDefault: `undefined`\n\nSee [expand-brackets](https://github.com/jonschlinkert/expand-brackets) for more information about extended bracket expressions.\n\n### options.noextglob\n\nDon't expand extended globs.\n\nType: `{Boolean}`\n\nDefault: `undefined`\n\nSee [extglob](https://github.com/jonschlinkert/extglob) for more information about extended globs.\n\n### options.nocase\n\nUse a case-insensitive regex for matching files. Same behavior as [minimatch](https://github.com/isaacs/minimatch).\n\nType: `{Boolean}`\n\nDefault: `false`\n\n### options.nonegate\n\nDisallow negation (`!`) patterns.\n\nType: `{Boolean}`\n\nDefault: `false`\n\n### options.nonull\n\nIf `true`, when no matches are found the actual (array-ified) glob pattern is returned instead of an empty array. Same behavior as [minimatch](https://github.com/isaacs/minimatch).\n\nType: `{Boolean}`\n\nDefault: `false`\n\n### options.cache\n\nCache the platform (e.g. `win32`) to prevent this from being looked up for every filepath.\n\nType: `{Boolean}`\n\nDefault: `true`\n\n***\n\n## Other features\n\nMicromatch also supports the following.\n\n### Extended globbing\n\n#### extglobs\n\nExtended globbing, as described by the bash man page:\n\n| **pattern** | **regex equivalent** | **description** | \n| --- | --- | --- |\n| `?(pattern-list)` | `(... | ...)?` | Matches zero or one occurrence of the given patterns |\n| `*(pattern-list)` | `(... | ...)*` | Matches zero or more occurrences of the given patterns |\n| `+(pattern-list)` | `(... | ...)+` | Matches one or more occurrences of the given patterns |\n| `@(pattern-list)` | `(... | ...)` <sup>*</sup> | Matches one of the given patterns |\n| `!(pattern-list)` | N/A | Matches anything except one of the given patterns |\n\n<sup><strong>*</strong></sup> `@` isn't a RegEx character.\n\nPowered by [extglob](https://github.com/jonschlinkert/extglob). Visit that library for the full range of options or to report extglob related issues.\n\nSee [extglob](https://github.com/jonschlinkert/extglob) for more information about extended globs.\n\n#### brace expansion\n\nIn simple cases, brace expansion appears to work the same way as the logical `OR` operator. For example, `(a|b)` will achieve the same result as `{a,b}`.\n\nHere are some powerful features unique to brace expansion (versus character classes):\n\n* range expansion: `a{1..3}b/*.js` expands to: `['a1b/*.js', 'a2b/*.js', 'a3b/*.js']`\n* nesting: `a{c,{d,e}}b/*.js` expands to: `['acb/*.js', 'adb/*.js', 'aeb/*.js']`\n\nVisit [braces](https://github.com/jonschlinkert/braces) to ask questions and create an issue related to brace-expansion, or to see the full range of features and options related to brace expansion.\n\n#### regex character classes\n\nWith the exception of brace expansion (`{a,b}`, `{1..5}`, etc), most of the special characters convert directly to regex, so you can expect them to follow the same rules and produce the same results as regex.\n\nFor example, given the list: `['a.js', 'b.js', 'c.js', 'd.js', 'E.js']`:\n\n* `[ac].js`: matches both `a` and `c`, returning `['a.js', 'c.js']`\n* `[b-d].js`: matches from `b` to `d`, returning `['b.js', 'c.js', 'd.js']`\n* `[b-d].js`: matches from `b` to `d`, returning `['b.js', 'c.js', 'd.js']`\n* `a/[A-Z].js`: matches and uppercase letter, returning `['a/E.md']`\n\nLearn about [regex character classes](http://www.regular-expressions.info/charclass.html).\n\n#### regex groups\n\nGiven `['a.js', 'b.js', 'c.js', 'd.js', 'E.js']`:\n\n* `(a|c).js`: would match either `a` or `c`, returning `['a.js', 'c.js']`\n* `(b|d).js`: would match either `b` or `d`, returning `['b.js', 'd.js']`\n* `(b|[A-Z]).js`: would match either `b` or an uppercase letter, returning `['b.js', 'E.js']`\n\nAs with regex, parenthese can be nested, so patterns like `((a|b)|c)/b` will work. But it might be easier to achieve your goal using brace expansion.\n\n#### POSIX bracket expressions\n\n**Example**\n\n```js\nmm.isMatch('a1', '[[:alpha:][:digit:]]');\n//=> true\n```\n\nSee [expand-brackets](https://github.com/jonschlinkert/expand-brackets) for more information about extended bracket expressions.\n\n***\n\n## Notes\n\nWhenever possible parsing behavior for patterns is based on globbing specifications in Bash 4.3. Patterns that aren't described by Bash follow wildmatch spec (used by git).\n\n## Benchmarks\n\nRun the [benchmarks](./benchmark):\n\n```bash\nnode benchmark\n```\n\nAs of July 15, 2016:\n\n```bash\n#1: basename-braces\n micromatch x 26,420 ops/sec ±0.89% (91 runs sampled)\n minimatch x 3,507 ops/sec ±0.64% (97 runs sampled)\n\n#2: basename\n micromatch x 25,315 ops/sec ±0.82% (93 runs sampled)\n minimatch x 4,398 ops/sec ±0.86% (94 runs sampled)\n\n#3: braces-no-glob\n micromatch x 341,254 ops/sec ±0.78% (93 runs sampled)\n minimatch x 30,197 ops/sec ±1.12% (91 runs sampled)\n\n#4: braces\n micromatch x 54,649 ops/sec ±0.74% (94 runs sampled)\n minimatch x 3,095 ops/sec ±0.82% (95 runs sampled)\n\n#5: immediate\n micromatch x 16,719 ops/sec ±0.79% (95 runs sampled)\n minimatch x 4,348 ops/sec ±0.86% (96 runs sampled)\n\n#6: large\n micromatch x 721 ops/sec ±0.77% (94 runs sampled)\n minimatch x 17.73 ops/sec ±1.08% (50 runs sampled)\n\n#7: long\n micromatch x 5,051 ops/sec ±0.87% (97 runs sampled)\n minimatch x 628 ops/sec ±0.83% (94 runs sampled)\n\n#8: mid\n micromatch x 51,280 ops/sec ±0.80% (95 runs sampled)\n minimatch x 1,923 ops/sec ±0.84% (95 runs sampled)\n\n#9: multi-patterns\n micromatch x 22,440 ops/sec ±0.97% (94 runs sampled)\n minimatch x 2,481 ops/sec ±1.10% (94 runs sampled)\n\n#10: no-glob\n micromatch x 722,823 ops/sec ±1.30% (87 runs sampled)\n minimatch x 52,967 ops/sec ±1.09% (94 runs sampled)\n\n#11: range\n micromatch x 243,471 ops/sec ±0.79% (94 runs sampled)\n minimatch x 11,736 ops/sec ±0.82% (96 runs sampled)\n\n#12: shallow\n micromatch x 190,874 ops/sec ±0.98% (95 runs sampled)\n minimatch x 21,699 ops/sec ±0.81% (97 runs sampled)\n\n#13: short\n micromatch x 496,393 ops/sec ±3.86% (90 runs sampled)\n minimatch x 53,765 ops/sec ±0.75% (95 runs sampled)\n```\n\n## Tests\n\n### Running tests\n\nInstall dev dependencies:\n\n```sh\n$ npm install -d && npm test\n```\n\n### Coverage\n\nAs of July 15, 2016:\n\n```sh\nStatements : 100% (441/441)\nBranches : 100% (270/270)\nFunctions : 100% (54/54)\nLines : 100% (429/429)\n```\n\n## Contributing\n\nPull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).\n\nPlease be sure to run the benchmarks before/after any code changes to judge the impact before you do a PR. thanks!\n\n## Related\n\n* [braces](https://www.npmjs.com/package/braces): Fastest brace expansion for node.js, with the most complete support for the Bash 4.3 braces… [more](https://github.com/jonschlinkert/braces) | [homepage](https://github.com/jonschlinkert/braces \"Fastest brace expansion for node.js, with the most complete support for the Bash 4.3 braces specification.\")\n* [expand-brackets](https://www.npmjs.com/package/expand-brackets): Expand POSIX bracket expressions (character classes) in glob patterns. | [homepage](https://github.com/jonschlinkert/expand-brackets \"Expand POSIX bracket expressions (character classes) in glob patterns.\")\n* [expand-range](https://www.npmjs.com/package/expand-range): Fast, bash-like range expansion. Expand a range of numbers or letters, uppercase or lowercase. See… [more](https://github.com/jonschlinkert/expand-range) | [homepage](https://github.com/jonschlinkert/expand-range \"Fast, bash-like range expansion. Expand a range of numbers or letters, uppercase or lowercase. See the benchmarks. Used by micromatch.\")\n* [extglob](https://www.npmjs.com/package/extglob): Convert extended globs to regex-compatible strings. Add (almost) the expressive power of regular expressions to… [more](https://github.com/jonschlinkert/extglob) | [homepage](https://github.com/jonschlinkert/extglob \"Convert extended globs to regex-compatible strings. Add (almost) the expressive power of regular expressions to glob patterns.\")\n* [fill-range](https://www.npmjs.com/package/fill-range): Fill in a range of numbers or letters, optionally passing an increment or multiplier to… [more](https://github.com/jonschlinkert/fill-range) | [homepage](https://github.com/jonschlinkert/fill-range \"Fill in a range of numbers or letters, optionally passing an increment or multiplier to use.\")\n* [gulp-micromatch](https://www.npmjs.com/package/gulp-micromatch): Filter vinyl files with glob patterns, string, regexp, array, object or matcher function. micromatch stream. | [homepage](https://github.com/tunnckocore/gulp-micromatch#readme \"Filter vinyl files with glob patterns, string, regexp, array, object or matcher function. micromatch stream.\")\n* [is-glob](https://www.npmjs.com/package/is-glob): Returns `true` if the given string looks like a glob pattern or an extglob pattern… [more](https://github.com/jonschlinkert/is-glob) | [homepage](https://github.com/jonschlinkert/is-glob \"Returns `true` if the given string looks like a glob pattern or an extglob pattern. This makes it easy to create code that only uses external modules like node-glob when necessary, resulting in much faster code execution and initialization time, and a bet\")\n* [parse-glob](https://www.npmjs.com/package/parse-glob): Parse a glob pattern into an object of tokens. | [homepage](https://github.com/jonschlinkert/parse-glob \"Parse a glob pattern into an object of tokens.\")\n\n## Contributing\n\nPull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).\n\n## Building docs\n\n_(This document was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme) (a [verb](https://github.com/verbose/verb) generator), please don't edit the readme directly. Any changes to the readme must be made in [.verb.md](.verb.md).)_\n\nTo generate the readme and API documentation with [verb](https://github.com/verbose/verb):\n\n```sh\n$ npm install -g verb verb-generate-readme && verb\n```\n\n## Running tests\n\nInstall dev dependencies:\n\n```sh\n$ npm install -d && npm test\n```\n\n## Author\n\n**Jon Schlinkert**\n\n* [github/jonschlinkert](https://github.com/jonschlinkert)\n* [twitter/jonschlinkert](http://twitter.com/jonschlinkert)\n\n## License\n\nCopyright © 2016, [Jon Schlinkert](https://github.com/jonschlinkert).\nReleased under the [MIT license](https://github.com/jonschlinkert/micromatch/blob/master/LICENSE).\n\n***\n\n_This file was generated by [verb](https://github.com/verbose/verb), v0.9.0, on July 15, 2016._",
|
|
"readmeFilename": "README.md",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/jonschlinkert/micromatch.git"
|
|
},
|
|
"scripts": {
|
|
"test": "mocha"
|
|
},
|
|
"verb": {
|
|
"related": {
|
|
"list": [
|
|
"braces",
|
|
"expand-brackets",
|
|
"expand-range",
|
|
"extglob",
|
|
"fill-range",
|
|
"gulp-micromatch",
|
|
"is-glob",
|
|
"parse-glob"
|
|
]
|
|
},
|
|
"reflinks": [
|
|
"braces",
|
|
"expand-brackets",
|
|
"extglob",
|
|
"minimatch",
|
|
"multimatch",
|
|
"verb"
|
|
],
|
|
"toc": false,
|
|
"layout": false,
|
|
"tasks": [
|
|
"readme"
|
|
],
|
|
"plugins": [
|
|
"gulp-format-md"
|
|
],
|
|
"lint": {
|
|
"reflinks": true
|
|
}
|
|
},
|
|
"version": "2.3.11"
|
|
}
|