micromatch: Tests failing on Windows

I updated micromatch from 2.3.11 to 3.0.3. My tests are running fine on macOS, but are failing on Windows: https://ci.appveyor.com/project/electerious/rosid/build/1.0.55/job/xd2am7ys0vfx80p3

There seems to be no changelog or release notes, so I’m not sure if I need to change anything on my side.

The error:

1) copy() should copy a directory without ignored files:
     Error: no parsers registered for: "]*.{h"
      at parse (node_modules\snapdragon\lib\parser.js:473:15)
      at Parser.parse (node_modules\snapdragon\lib\parser.js:477:24)
      at Snapdragon.parse (node_modules\snapdragon\index.js:122:28)
      at Snapdragon.<anonymous> (node_modules\micromatch\node_modules\braces\lib\braces.js:37:45)
      at Braces.parse (node_modules\micromatch\node_modules\braces\lib\braces.js:74:26)
      at Braces.optimize (node_modules\micromatch\node_modules\braces\lib\braces.js:105:18)
      at create (node_modules\micromatch\node_modules\braces\index.js:141:15)
      at memoize (node_modules\micromatch\node_modules\braces\index.js:293:13)
      at Function.braces.create (node_modules\micromatch\node_modules\braces\index.js:161:10)
      at braces (node_modules\micromatch\node_modules\braces\index.js:54:18)
      at expand (node_modules\micromatch\index.js:592:12)
      at memoize (node_modules\micromatch\index.js:829:13)
      at Function.micromatch.braces (node_modules\micromatch\index.js:595:10)
      at node_modules\micromatch\index.js:654:26
      at memoize (node_modules\micromatch\index.js:829:13)
      at Function.micromatch.create (node_modules\micromatch\index.js:649:10)
      at makeRe (node_modules\micromatch\index.js:544:29)
      at memoize (node_modules\micromatch\index.js:829:13)
      at Function.micromatch.makeRe (node_modules\micromatch\index.js:561:10)
      at matcher (node_modules\micromatch\index.js:486:23)
      at memoize (node_modules\micromatch\index.js:829:13)
      at Function.micromatch.isMatch (node_modules\micromatch\index.js:170:17)
      at Function.micromatch.any (node_modules\micromatch\index.js:276:20)
      at filter (src\copy.js:9:1462)
      at startCopy (node_modules\fs-extra\lib\copy\ncp.js:44:14)
      at ncp (node_modules\fs-extra\lib\copy\ncp.js:33:3)
      at pathExists (node_modules\fs-extra\lib\copy\copy.js:45:29)
      at fn.apply.then.r (node_modules\universalify\index.js:23:46)

How I use micromatch:

https://github.com/electerious/Rosid/blob/master/src/copy.js#L62

The test that fails:

https://github.com/electerious/Rosid/blob/master/test/copy.js#L16

Simplified code:

mm.any(filePath, [
	'**/CVS',
	'**/.git',
	'**/.svn',
	'**/.hg',
	'**/.lock-wscript',
	'**/.wafpickle-N',
	'[^_]*.{html,ejs}*',
	'**/*.css'
])

Let me know if there’s anything else I can provide to make debugging easier.

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 23 (10 by maintainers)

Commits related to this issue

Most upvoted comments

@jonschlinkert Yes, I’m using Windows.

@jonschlinkert i tried to update to latest version and tests still failed, i will try to find time today to investigate which patterns don’t work in our test, thanks!