Skip to content

lookup: unskip glob - #1140

Draft
abhayagarwal-dev wants to merge 4 commits into
nodejs:mainfrom
abhayagarwal-dev:unskip-s390
Draft

abhayagarwal-dev wants to merge 4 commits into
nodejs:mainfrom
abhayagarwal-dev:unskip-s390

Conversation

@abhayagarwal-dev

@abhayagarwal-dev abhayagarwal-dev commented Sep 18, 2026

Copy link
Copy Markdown

glob was marked as skip: true in 8bad32f because it was failing.
It now passes on all Linux platforms.

Official Node.js CI results show glob passes on all Linux platforms:

11:57:54 Completed citgm-smoker-nobuild » fedora-latest-x64 SUCCESS
11:59:39 Completed citgm-smoker-nobuild » win-vs2022_clang FAILURE
12:09:41 Completed citgm-smoker-nobuild » aix73-power9 SUCCESS
12:09:41 Completed citgm-smoker-nobuild » ubuntu2404-x64 SUCCESS
12:09:41 Completed citgm-smoker-nobuild » rhel9-ppc64le SUCCESS
12:09:41 Completed citgm-smoker-nobuild » macos15-x64 FAILURE
12:09:41 Completed citgm-smoker-nobuild » win-vs2022_clang-arm64 FAILURE
12:09:41 Completed citgm-smoker-nobuild » rhel9-x64 SUCCESS
12:09:41 Completed citgm-smoker-nobuild » rhel9-s390x SUCCESS
12:09:41 Completed citgm-smoker-nobuild » debian13-x64 SUCCESS
12:09:41 Completed citgm-smoker-nobuild » macos15-arm64 FAILURE

Removing global skip: true and adding skip: ["win32", "darwin"]
to only skip platforms that consistently fail.

  • npm test passes

  • contribution guidelines followed
    here

@abhayagarwal-dev

abhayagarwal-dev commented Sep 18, 2026

Copy link
Copy Markdown
Author

I will mark it ready for review once CI results are available.
Could someone from @nodejs/citgm please trigger a citgm-smoker CI run?

@abhayagarwal-dev

Copy link
Copy Markdown
Author

@giritrivedi , looping you in on this PR.

@abhayagarwal-dev abhayagarwal-dev changed the title lookup: unskip glob lookup: unskip glob and coffeescript Sep 21, 2026
@richardlau

Copy link
Copy Markdown
Member

@abhayagarwal-dev

Copy link
Copy Markdown
Author

I can't access the run result

Access Denied
abhayagarwal-dev is missing the Overall/Read permission

@richardlau

Copy link
Copy Markdown
Member

CI run: https://ci.nodejs.org/job/citgm-smoker-pipeline/289/

Details
 > glob@13.0.6 prepare
 > tshy && bash scripts/build.sh
 added 350 packages in 16s
 > glob@13.0.6 pretest
 > npm run prepare
 > glob@13.0.6 prepare
 > tshy && bash scripts/build.sh
 > glob@13.0.6 test
 > tap
 TAP version 14
 1..38
 # Subtest: test/absolute-must-be-strings.ts
     ok 1 - expected to throw
     1..1
 ok 1 - test/absolute-must-be-strings.ts # time=4244.154ms
 # Subtest: test/absolute.ts
     # Subtest: mark=true
         1..2
         # Subtest: Emits absolute matches if option set
             ok 1 - must match all files
             ok 2 - starts with / /home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b
             ok 3 - starts with / /home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b/c
             ok 4 - starts with / /home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b/c/d
             1..4
         ok 1 - Emits absolute matches if option set # time=80.734ms
         
         # Subtest: returns absolute results synchronously
             ok 1 - must match all files
             ok 2 - must be absolute
             ok 3 - must be absolute
             ok 4 - must be absolute
             1..4
         ok 2 - returns absolute results synchronously # time=10.981ms
         
     ok 1 - mark=true # time=114.663ms
     
     # Subtest: mark=false
         1..2
         # Subtest: Emits absolute matches if option set
             ok 1 - must match all files
             ok 2 - starts with / /home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b
             ok 3 - starts with / /home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b/c
             ok 4 - starts with / /home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b/c/d
             1..4
         ok 1 - Emits absolute matches if option set # time=15.945ms
         
         # Subtest: returns absolute results synchronously
             ok 1 - must match all files
             ok 2 - must be absolute
             ok 3 - must be absolute
             ok 4 - must be absolute
             1..4
         ok 2 - returns absolute results synchronously # time=7.462ms
         
     ok 2 - mark=false # time=38.141ms
     
     1..2
 ok 2 - test/absolute.ts # time=4654.322ms
 # Subtest: test/bash-comparison.ts
     # Subtest: a/c/d/*/b
         ok 1 - a/c/d/*/b
         1..1
     ok 1 - a/c/d/*/b # time=138.416ms
     
     # Subtest: a/c/d/*/b sync
         ok 1 - should match shell (sync)
         1..1
     ok 2 - a/c/d/*/b sync # time=8.708ms
     
     # Subtest: a//c//d//*//b
         ok 1 - a//c//d//*//b
         1..1
     ok 3 - a//c//d//*//b # time=5.3ms
     
     # Subtest: a//c//d//*//b sync
         ok 1 - should match shell (sync)
         1..1
     ok 4 - a//c//d//*//b sync # time=3.65ms
     
     # Subtest: a/*/d/*/b
         ok 1 - a/*/d/*/b
         1..1
     ok 5 - a/*/d/*/b # time=9.371ms
     
     # Subtest: a/*/d/*/b sync
         ok 1 - should match shell (sync)
         1..1
     ok 6 - a/*/d/*/b sync # time=7.602ms
     
     # Subtest: a/*/+(c|g)/./d
         ok 1 - a/*/+(c|g)/./d
         1..1
     ok 7 - a/*/+(c|g)/./d # time=8.358ms
     
     # Subtest: a/*/+(c|g)/./d sync
         ok 1 - should match shell (sync)
         1..1
     ok 8 - a/*/+(c|g)/./d sync # time=5.277ms
     
     # Subtest: a/**/[cg]/../[cg]
         ok 1 - a/**/[cg]/../[cg]
         1..1
     ok 9 - a/**/[cg]/../[cg] # time=64.697ms
     
     # Subtest: a/**/[cg]/../[cg] sync
         ok 1 - should match shell (sync)
         1..1
     ok 10 - a/**/[cg]/../[cg] sync # time=10.962ms
     
     # Subtest: a/{b,c,d,e,f}/**/g
         ok 1 - a/{b,c,d,e,f}/**/g
         1..1
     ok 11 - a/{b,c,d,e,f}/**/g # time=11.702ms
     
     # Subtest: a/{b,c,d,e,f}/**/g sync
         ok 1 - should match shell (sync)
         1..1
     ok 12 - a/{b,c,d,e,f}/**/g sync # time=8.012ms
     
     # Subtest: a/b/**
         ok 1 - a/b/**
         1..1
     ok 13 - a/b/** # time=5.695ms
     
     # Subtest: a/b/** sync
         ok 1 - should match shell (sync)
         1..1
     ok 14 - a/b/** sync # time=4.346ms
     
     # Subtest: ./**/g
         ok 1 - ./**/g
         1..1
     ok 15 - ./**/g # time=12.636ms
     
     # Subtest: ./**/g sync
         ok 1 - should match shell (sync)
         1..1
     ok 16 - ./**/g sync # time=13.241ms
     
     # Subtest: a/abc{fed,def}/g/h
         ok 1 - a/abc{fed,def}/g/h
         1..1
     ok 17 - a/abc{fed,def}/g/h # time=6.17ms
     
     # Subtest: a/abc{fed,def}/g/h sync
         ok 1 - should match shell (sync)
         1..1
     ok 18 - a/abc{fed,def}/g/h sync # time=4.891ms
     
     # Subtest: a/abc{fed/g,def}/**/
         ok 1 - a/abc{fed/g,def}/**/
         1..1
     ok 19 - a/abc{fed/g,def}/**/ # time=8.032ms
     
     # Subtest: a/abc{fed/g,def}/**/ sync
         ok 1 - should match shell (sync)
         1..1
     ok 20 - a/abc{fed/g,def}/**/ sync # time=6.757ms
     
     # Subtest: a/abc{fed/g,def}/**///**/
         ok 1 - a/abc{fed/g,def}/**///**/
         1..1
     ok 21 - a/abc{fed/g,def}/**///**/ # time=6.803ms
     
     # Subtest: a/abc{fed/g,def}/**///**/ sync
         ok 1 - should match shell (sync)
         1..1
     ok 22 - a/abc{fed/g,def}/**///**/ sync # time=2.91ms
     
     # Subtest: **/a
         ok 1 - **/a
         1..1
     ok 23 - **/a # time=7.269ms
     
     # Subtest: **/a sync
         ok 1 - should match shell (sync)
         1..1
     ok 24 - **/a sync # time=6.478ms
     
     # Subtest: **/a/**
         ok 1 - **/a/**
         1..1
     ok 25 - **/a/** # time=40.767ms
     
     # Subtest: **/a/** sync
         ok 1 - should match shell (sync)
         1..1
     ok 26 - **/a/** sync # time=15.337ms
     
     # Subtest: ./**/a
         ok 1 - ./**/a
         1..1
     ok 27 - ./**/a # time=15.606ms
     
     # Subtest: ./**/a sync
         ok 1 - should match shell (sync)
         1..1
     ok 28 - ./**/a sync # time=14.062ms
     
     # Subtest: ./**/a/**/
         ok 1 - ./**/a/**/
         1..1
     ok 29 - ./**/a/**/ # time=22.117ms
     
     # Subtest: ./**/a/**/ sync
         ok 1 - should match shell (sync)
         1..1
     ok 30 - ./**/a/**/ sync # time=10.107ms
     
     # Subtest: ./**/a/**
         ok 1 - ./**/a/**
         1..1
     ok 31 - ./**/a/** # time=14.857ms
     
     # Subtest: ./**/a/** sync
         ok 1 - should match shell (sync)
         1..1
     ok 32 - ./**/a/** sync # time=17.039ms
     
     # Subtest: ./**/a/**/a/**/
         ok 1 - ./**/a/**/a/**/
         1..1
     ok 33 - ./**/a/**/a/**/ # time=15.064ms
     
     # Subtest: ./**/a/**/a/**/ sync
         ok 1 - should match shell (sync)
         1..1
     ok 34 - ./**/a/**/a/**/ sync # time=17.214ms
     
     # Subtest: +(a|b|c)/a{/,bc*}/**
         ok 1 - +(a|b|c)/a{/,bc*}/**
         1..1
     ok 35 - +(a|b|c)/a{/,bc*}/** # time=9.232ms
     
     # Subtest: +(a|b|c)/a{/,bc*}/** sync
         ok 1 - should match shell (sync)
         1..1
     ok 36 - +(a|b|c)/a{/,bc*}/** sync # time=6.586ms
     
     # Subtest: */*/*/f
         ok 1 - */*/*/f
         1..1
     ok 37 - */*/*/f # time=9.699ms
     
     # Subtest: */*/*/f sync
         ok 1 - should match shell (sync)
         1..1
     ok 38 - */*/*/f sync # time=7.682ms
     
     # Subtest: ./**/f
         ok 1 - ./**/f
         1..1
     ok 39 - ./**/f # time=9.545ms
     
     # Subtest: ./**/f sync
         ok 1 - should match shell (sync)
         1..1
     ok 40 - ./**/f sync # time=9.387ms
     
     # Subtest: a/symlink/a/b/c/a/b/c/a/b/c//a/b/c////a/b/c/**/b/c/**
         ok 1 - a/symlink/a/b/c/a/b/c/a/b/c//a/b/c////a/b/c/**/b/c/**
         1..1
     ok 41 - a/symlink/a/b/c/a/b/c/a/b/c//a/b/c////a/b/c/**/b/c/** # time=6.88ms
     
     # Subtest: a/symlink/a/b/c/a/b/c/a/b/c//a/b/c////a/b/c/**/b/c/** sync
         ok 1 - should match shell (sync)
         1..1
     ok 42 - a/symlink/a/b/c/a/b/c/a/b/c//a/b/c////a/b/c/**/b/c/** sync # time=5.327ms
     
     # Subtest: {./*/*,/tmp/glob-test/*}
         ok 1 - {./*/*,/tmp/glob-test/*}
         1..1
     ok 43 - {./*/*,/tmp/glob-test/*} # time=7.146ms
     
     # Subtest: {./*/*,/tmp/glob-test/*} sync
         ok 1 - should match shell (sync)
         1..1
     ok 44 - {./*/*,/tmp/glob-test/*} sync # time=5.748ms
     
     # Subtest: {/tmp/glob-test/*,*}
         ok 1 - {/tmp/glob-test/*,*}
         1..1
     ok 45 - {/tmp/glob-test/*,*} # time=5.66ms
     
     # Subtest: {/tmp/glob-test/*,*} sync
         ok 1 - should match shell (sync)
         1..1
     ok 46 - {/tmp/glob-test/*,*} sync # time=4.016ms
     
     # Subtest: a/!(symlink)/**
         ok 1 - a/!(symlink)/**
         1..1
     ok 47 - a/!(symlink)/** # time=14.459ms
     
     # Subtest: a/!(symlink)/** sync
         ok 1 - should match shell (sync)
         1..1
     ok 48 - a/!(symlink)/** sync # time=13.764ms
     
     # Subtest: a/symlink/a/**/*
         ok 1 - a/symlink/a/**/*
         1..1
     ok 49 - a/symlink/a/**/* # time=5.844ms
     
     # Subtest: a/symlink/a/**/* sync
         ok 1 - should match shell (sync)
         1..1
     ok 50 - a/symlink/a/**/* sync # time=3.885ms
     
     # Subtest: a/!(symlink)/**/..
         ok 1 - a/!(symlink)/**/..
         1..1
     ok 51 - a/!(symlink)/**/.. # time=12.471ms
     
     # Subtest: a/!(symlink)/**/.. sync
         ok 1 - should match shell (sync)
         1..1
     ok 52 - a/!(symlink)/**/.. sync # time=10.616ms
     
     # Subtest: a/!(symlink)/**/../
         ok 1 - a/!(symlink)/**/../
         1..1
     ok 53 - a/!(symlink)/**/../ # time=15.14ms
     
     # Subtest: a/!(symlink)/**/../ sync
         ok 1 - should match shell (sync)
         1..1
     ok 54 - a/!(symlink)/**/../ sync # time=12.323ms
     
     # Subtest: a/!(symlink)/**/../*
         ok 1 - a/!(symlink)/**/../*
         1..1
     ok 55 - a/!(symlink)/**/../* # time=37.278ms
     
     # Subtest: a/!(symlink)/**/../* sync
         ok 1 - should match shell (sync)
         1..1
     ok 56 - a/!(symlink)/**/../* sync # time=11.072ms
     
     # Subtest: a/!(symlink)/**/../*/*
         ok 1 - a/!(symlink)/**/../*/*
         1..1
     ok 57 - a/!(symlink)/**/../*/* # time=10.207ms
     
     # Subtest: a/!(symlink)/**/../*/* sync
         ok 1 - should match shell (sync)
         1..1
     ok 58 - a/!(symlink)/**/../*/* sync # time=12.068ms
     
     1..58
 ok 3 - test/bash-comparison.ts # time=5161.516ms
 # Subtest: test/bash-results.ts
     1..1
     ok
     
 ok 4 - test/bash-results.ts # time=2276.728ms
 # Subtest: test/broken-symlink.ts
     # Subtest: async test
         1..8
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/*
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/* undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/* {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/* {"follow":true}
         ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/* # time=67.862ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/**
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/** undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/** {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/** {"follow":true}
         ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/** # time=14.375ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/link
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/link undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/link {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/link {"follow":true}
         ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/link # time=19.221ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/*
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/* undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/* {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/* {"follow":true}
         ok 4 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/* # time=16.269ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/link
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/link undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/link {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/link {"follow":true}
         ok 5 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/link # time=14.534ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/{link,asdf}
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/{link,asdf} undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/{link,asdf} {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/{link,asdf} {"follow":true}
         ok 6 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/{link,asdf} # time=21.446ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/+(link|asdf)
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/+(link|asdf) undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/+(link|asdf) {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/+(link|asdf) {"follow":true}
         ok 7 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/+(link|asdf) # time=17.11ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/!(asdf)
             1..3
             ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/!(asdf) undefined
             ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/!(asdf) {"mark":true}
             ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/!(asdf) {"follow":true}
         ok 8 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/!(asdf) # time=40.415ms
         
     ok 1 - async test # time=239.773ms
     
     # Subtest: sync test
         1..8
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/*
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 1 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/* # time=8.355ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/**
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 2 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/** # time=7.298ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/link
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 3 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/link # time=9.678ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/*
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 4 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/**/* # time=7.052ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/link
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 5 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/link # time=6.685ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/{link,asdf}
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 6 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/{link,asdf} # time=8.731ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/+(link|asdf)
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 7 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/+(link|asdf) # time=6.533ms
         
         # Subtest: .tap/fixtures/test-broken-symlink.ts/a/broken-link/!(asdf)
             1..3
             ok 1 - opt=undefined
             ok 2 - opt={"mark":true}
             ok 3 - opt={"follow":true}
         ok 8 - .tap/fixtures/test-broken-symlink.ts/a/broken-link/!(asdf) # time=6.195ms
         
     ok 2 - sync test # time=92.985ms
     
     1..2
 ok 5 - test/broken-symlink.ts # time=5079.175ms
 # Subtest: test/custom-fs.ts
     ok 1 - should be equivalent
     ok 2 - should be equal
     1..2
 ok 6 - test/custom-fs.ts # time=4202.128ms
 # Subtest: test/custom-ignore.ts
     # Subtest: ignore files with long names
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 1 - ignore files with long names # time=122.943ms
     
     # Subtest: ignore symlink and abcdef directories
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 2 - ignore symlink and abcdef directories # time=26.653ms
     
     1..2
 ok 7 - test/custom-ignore.ts # time=4621.102ms
 # Subtest: test/cwd-noent.ts
     # Subtest: walk
         ok 1 - should be equivalent
         1..1
     ok 1 - walk # time=44.462ms
     
     # Subtest: walkSync
         ok 1 - should be equivalent
         1..1
     ok 2 - walkSync # time=3.976ms
     
     # Subtest: stream
         ok 1 - should be equivalent
         1..1
     ok 3 - stream # time=4.453ms
     
     # Subtest: streamSync
         ok 1 - should be equivalent
         1..1
     ok 4 - streamSync # time=2.87ms
     
     # Subtest: iterate
         ok 1 - should be equivalent
         1..1
     ok 5 - iterate # time=5.698ms
     
     # Subtest: iterateSync
         ok 1 - should be equivalent
         1..1
     ok 6 - iterateSync # time=2.873ms
     
     # Subtest: for await
         ok 1 - should be equivalent
         1..1
     ok 7 - for await # time=3.635ms
     
     # Subtest: iterateSync
         ok 1 - should be equivalent
         1..1
     ok 8 - iterateSync # time=3.112ms
     
     1..8
 ok 8 - test/cwd-noent.ts # time=4455.998ms
 # Subtest: test/cwd-test.ts
     # Subtest: changing cwd and searching for **/d
         1..3
         # Subtest: a
             ok 1 - should be equivalent
             ok 2 - should be equivalent
             ok 3 - should be equivalent
             ok 4 - should be equivalent
             ok 5 - should be equivalent
             ok 6 - should be equivalent
             ok 7 - should be equivalent
             ok 8 - should be equivalent
             1..8
         ok 1 - a # time=102.734ms
         
         # Subtest: a/b
             ok 1 - should be equivalent
             ok 2 - should be equivalent
             ok 3 - should be equivalent
             ok 4 - should be equivalent
             ok 5 - should be equivalent
             ok 6 - should be equivalent
             ok 7 - should be equivalent
             ok 8 - should be equivalent
             1..8
         ok 2 - a/b # time=49.691ms
         
         # Subtest: (empty string)
             ok 1 - should be equivalent
             ok 2 - should be equivalent
             ok 3 - should be equivalent
             ok 4 - should be equivalent
             ok 5 - should be equivalent
             ok 6 - should be equivalent
             ok 7 - should be equivalent
             1..7
         ok 3 - (empty string) # time=72.687ms
         
     ok 1 - changing cwd and searching for **/d # time=243.539ms
     
     1..1
 ok 9 - test/cwd-test.ts # time=4778.492ms
 # Subtest: test/dot-relative.ts
     # Subtest: mark=true
         1..3
         # Subtest: Emits relative matches prefixed with ./
             ok 1 - must match all files
             ok 2 - should be equal
             ok 3 - should be equal
             ok 4 - should be equal
             1..4
         ok 1 - Emits relative matches prefixed with ./ # time=45.865ms
         
         # Subtest: returns ./ prefixed matches synchronously
             ok 1 - must match all files
             ok 2 - should be equal
             ok 3 - should be equal
             ok 4 - should be equal
             1..4
         ok 2 - returns ./ prefixed matches synchronously # time=6.903ms
         
         # Subtest: does not prefix with ./ unless dotRelative is true
             ok 1 - must match all files
             ok 2 - should be equal
             ok 3 - should be equal
             ok 4 - should be equal
             1..4
         ok 3 - does not prefix with ./ unless dotRelative is true # time=7.667ms
         
     ok 1 - mark=true # time=80.177ms
     
     # Subtest: mark=false
         1..3
         # Subtest: Emits relative matches prefixed with ./
             ok 1 - must match all files
             ok 2 - should be equal
             ok 3 - should be equal
             ok 4 - should be equal
             1..4
         ok 1 - Emits relative matches prefixed with ./ # time=11.912ms
         
         # Subtest: returns ./ prefixed matches synchronously
             ok 1 - must match all files
             ok 2 - should be equal
             ok 3 - should be equal
             ok 4 - should be equal
             1..4
         ok 2 - returns ./ prefixed matches synchronously # time=6.067ms
         
         # Subtest: does not prefix with ./ unless dotRelative is true
             ok 1 - must match all files
             ok 2 - should be equal
             ok 3 - should be equal
             ok 4 - should be equal
             1..4
         ok 3 - does not prefix with ./ unless dotRelative is true # time=7.146ms
         
     ok 2 - mark=false # time=35.289ms
     
     # Subtest: does not add ./ for patterns starting in ../
         1..2
         # Subtest: async
             ok 1 - should be equal
             ok 2 - should be equal
             ok 3 - should be equal
             1..3
         ok 1 - async # time=16.631ms
         
         # Subtest: sync
             ok 1 - should be equal
             ok 2 - should be equal
             ok 3 - should be equal
             1..3
         ok 2 - sync # time=7.445ms
         
     ok 3 - does not add ./ for patterns starting in ../ # time=33.003ms
     
     1..3
 ok 10 - test/dot-relative.ts # time=4718.281ms
 # Subtest: test/empty-set.ts
     1..4
     # Subtest: "\# comment"
         ok 1 - no returned values
         1..1
     ok 1 - "\# comment" # time=51.663ms
     
     # Subtest: " "
         ok 1 - no returned values
         1..1
     ok 2 - " " # time=5.463ms
     
     # Subtest: "\\n"
         ok 1 - no returned values
         1..1
     ok 3 - "\\n" # time=3.986ms
     
     # Subtest: "just doesnt happen to match anything so this is a control"
         ok 1 - no returned values
         1..1
     ok 4 - "just doesnt happen to match anything so this is a control" # time=4.611ms
     
 ok 11 - test/empty-set.ts # time=4452.884ms
 # Subtest: test/escape.ts
     ok 1 - escape(a/c/d/*/b)
     ok 2 - no magic after posix escape
     ok 3 - no magic after windows escape
     ok 4 - unescaped posix pattern returned
     ok 5 - unescaped windows pattern returned
     ok 6 - escape(a//c//d//*//b)
     ok 7 - no magic after posix escape
     ok 8 - no magic after windows escape
     ok 9 - unescaped posix pattern returned
     ok 10 - unescaped windows pattern returned
     ok 11 - escape(a/*/d/*/b)
     ok 12 - no magic after posix escape
     ok 13 - no magic after windows escape
     ok 14 - unescaped posix pattern returned
     ok 15 - unescaped windows pattern returned
     ok 16 - escape(a/*/+(c|g)/./d)
     ok 17 - no magic after posix escape
     ok 18 - no magic after windows escape
     ok 19 - unescaped posix pattern returned
     ok 20 - unescaped windows pattern returned
     ok 21 - escape(a/**/[cg]/../[cg])
     ok 22 - no magic after posix escape
     ok 23 - no magic after windows escape
     ok 24 - unescaped posix pattern returned
     ok 25 - unescaped windows pattern returned
     ok 26 - escape(a/{b,c,d,e,f}/**/g)
     ok 27 - no magic after posix escape
     ok 28 - no magic after windows escape
     ok 29 - unescaped posix pattern returned
     ok 30 - unescaped windows pattern returned
     ok 31 - escape(a/b/**)
     ok 32 - no magic after posix escape
     ok 33 - no magic after windows escape
     ok 34 - unescaped posix pattern returned
     ok 35 - unescaped windows pattern returned
     ok 36 - escape(./**/g)
     ok 37 - no magic after posix escape
     ok 38 - no magic after windows escape
     ok 39 - unescaped posix pattern returned
     ok 40 - unescaped windows pattern returned
     ok 41 - escape(a/abc{fed,def}/g/h)
     ok 42 - no magic after posix escape
     ok 43 - no magic after windows escape
     ok 44 - unescaped posix pattern returned
     ok 45 - unescaped windows pattern returned
     ok 46 - escape(a/abc{fed/g,def}/**/)
     ok 47 - no magic after posix escape
     ok 48 - no magic after windows escape
     ok 49 - unescaped posix pattern returned
     ok 50 - unescaped windows pattern returned
     ok 51 - escape(a/abc{fed/g,def}/**///**/)
     ok 52 - no magic after posix escape
     ok 53 - no magic after windows escape
     ok 54 - unescaped posix pattern returned
     ok 55 - unescaped windows pattern returned
     ok 56 - escape(**/a)
     ok 57 - no magic after posix escape
     ok 58 - no magic after windows escape
     ok 59 - unescaped posix pattern returned
     ok 60 - unescaped windows pattern returned
     ok 61 - escape(**/a/**)
     ok 62 - no magic after posix escape
     ok 63 - no magic after windows escape
     ok 64 - unescaped posix pattern returned
     ok 65 - unescaped windows pattern returned
     ok 66 - escape(./**/a)
     ok 67 - no magic after posix escape
     ok 68 - no magic after windows escape
     ok 69 - unescaped posix pattern returned
     ok 70 - unescaped windows pattern returned
     ok 71 - escape(./**/a/**/)
     ok 72 - no magic after posix escape
     ok 73 - no magic after windows escape
     ok 74 - unescaped posix pattern returned
     ok 75 - unescaped windows pattern returned
     ok 76 - escape(./**/a/**)
     ok 77 - no magic after posix escape
     ok 78 - no magic after windows escape
     ok 79 - unescaped posix pattern returned
     ok 80 - unescaped windows pattern returned
     ok 81 - escape(./**/a/**/a/**/)
     ok 82 - no magic after posix escape
     ok 83 - no magic after windows escape
     ok 84 - unescaped posix pattern returned
     ok 85 - unescaped windows pattern returned
     ok 86 - escape(+(a|b|c)/a{/,bc*}/**)
     ok 87 - no magic after posix escape
     ok 88 - no magic after windows escape
     ok 89 - unescaped posix pattern returned
     ok 90 - unescaped windows pattern returned
     ok 91 - escape(*/*/*/f)
     ok 92 - no magic after posix escape
     ok 93 - no magic after windows escape
     ok 94 - unescaped posix pattern returned
     ok 95 - unescaped windows pattern returned
     ok 96 - escape(./**/f)
     ok 97 - no magic after posix escape
     ok 98 - no magic after windows escape
     ok 99 - unescaped posix pattern returned
     ok 100 - unescaped windows pattern returned
     ok 101 - escape(a/symlink/a/b/c/a/b/c/a/b/c//a/b/c////a/b/c/**/b/c/**)
     ok 102 - no magic after posix escape
     ok 103 - no magic after windows escape
     ok 104 - unescaped posix pattern returned
     ok 105 - unescaped windows pattern returned
     ok 106 - escape({./*/*,/tmp/glob-test/*})
     ok 107 - no magic after posix escape
     ok 108 - no magic after windows escape
     ok 109 - unescaped posix pattern returned
     ok 110 - unescaped windows pattern returned
     ok 111 - escape({/tmp/glob-test/*,*})
     ok 112 - no magic after posix escape
     ok 113 - no magic after windows escape
     ok 114 - unescaped posix pattern returned
     ok 115 - unescaped windows pattern returned
     ok 116 - escape(a/!(symlink)/**)
     ok 117 - no magic after posix escape
     ok 118 - no magic after windows escape
     ok 119 - unescaped posix pattern returned
     ok 120 - unescaped windows pattern returned
     ok 121 - escape(a/symlink/a/**/*)
     ok 122 - no magic after posix escape
     ok 123 - no magic after windows escape
     ok 124 - unescaped posix pattern returned
     ok 125 - unescaped windows pattern returned
     ok 126 - escape(a/!(symlink)/**/..)
     ok 127 - no magic after posix escape
     ok 128 - no magic after windows escape
     ok 129 - unescaped posix pattern returned
     ok 130 - unescaped windows pattern returned
     ok 131 - escape(a/!(symlink)/**/../)
     ok 132 - no magic after posix escape
     ok 133 - no magic after windows escape
     ok 134 - unescaped posix pattern returned
     ok 135 - unescaped windows pattern returned
     ok 136 - escape(a/!(symlink)/**/../*)
     ok 137 - no magic after posix escape
     ok 138 - no magic after windows escape
     ok 139 - unescaped posix pattern returned
     ok 140 - unescaped windows pattern returned
     ok 141 - escape(a/!(symlink)/**/../*/*)
     ok 142 - no magic after posix escape
     ok 143 - no magic after windows escape
     ok 144 - unescaped posix pattern returned
     ok 145 - unescaped windows pattern returned
     1..145
 ok 12 - test/escape.ts # time=4800.299ms
 # Subtest: test/follow.ts
     # Subtest: follow symlinks
         ok 1 - sync and async follow should match
         ok 2 - sync and async noFollow should match
         ok 3 - follow should have long entry
         ok 4 - syncFollow should have long entry
         1..4
     ok 1 - follow symlinks # time=167.764ms
     
     # Subtest: follow + nodir means no symlinks to dirs in results
         ok 1 - should be equivalent strictly
         ok 2 - should be equivalent strictly
         1..2
     ok 2 - follow + nodir means no symlinks to dirs in results # time=31.971ms
     
     1..2
 ok 13 - test/follow.ts # time=4482.975ms
 # Subtest: test/has-magic.ts
     # Subtest: non-string pattern is evil magic
         ok 1 - expected to throw
         ok 2 - expected to throw
         ok 3 - expected to throw
         ok 4 - expected to throw
         ok 5 - expected to throw
         ok 6 - expected to throw
         ok 7 - expected to throw
         1..7
     ok 1 - non-string pattern is evil magic # time=18.956ms
     
     # Subtest: detect magic in glob patterns
         ok 1 - no magic in ''
         ok 2 - no magic a/b/c/
         ok 3 - magic in a/b/**/
         ok 4 - magic in a/b/?/
         ok 5 - magic in a/b/+(x|y)
         ok 6 - no magic in a/b/+(x|y) noext
         ok 7 - no magic in {a,b}
         ok 8 - magical braces are magic in {a,b}
         ok 9 - no magic in {a,b} nobrace:true
         ok 10 - magical braces not magic in {a,b} nobrace:true
         1..10
     ok 2 - detect magic in glob patterns # time=20.345ms
     
     1..2
 ok 14 - test/has-magic.ts # time=4412.655ms
 # Subtest: test/ignore.ts
     # Subtest: p=* i=null {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 1 - p=* i=null {"cwd":"a"} # time=98.876ms
     
     # Subtest: p=* i=["b"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 2 - p=* i=["b"] {"cwd":"a"} # time=10.074ms
     
     # Subtest: p=* i="b*" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 3 - p=* i="b*" {"cwd":"a"} # time=7.028ms
     
     # Subtest: p=b/** i="b/c/d" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 4 - p=b/** i="b/c/d" {"cwd":"a"} # time=6.69ms
     
     # Subtest: p=b/** i="d" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 5 - p=b/** i="d" {"cwd":"a"} # time=6.992ms
     
     # Subtest: p=b/** i="b/c/**" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 6 - p=b/** i="b/c/**" {"cwd":"a"} # time=6.713ms
     
     # Subtest: p=b/** i="/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b/c/**" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 7 - p=b/** i="/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/b/c/**" {"cwd":"a"} # time=12.152ms
     
     # Subtest: p=**/d i="b/c/d" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 8 - p=**/d i="b/c/d" {"cwd":"a"} # time=16.801ms
     
     # Subtest: p=a/**/[gh] i=["a/abcfed/g/h"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 9 - p=a/**/[gh] i=["a/abcfed/g/h"] {} # time=23.079ms
     
     # Subtest: p=* i=["c","bc","symlink","abcdef"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 10 - p=* i=["c","bc","symlink","abcdef"] {"cwd":"a"} # time=13.951ms
     
     # Subtest: p=** i=["c/**","bc/**","symlink/**","abcdef/**"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 11 - p=** i=["c/**","bc/**","symlink/**","abcdef/**"] {"cwd":"a"} # time=27.866ms
     
     # Subtest: p=a/** i=["a/**"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 12 - p=a/** i=["a/**"] {} # time=8.155ms
     
     # Subtest: p=a/** i=["a/**/**"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 13 - p=a/** i=["a/**/**"] {} # time=8.493ms
     
     # Subtest: p=a/b/** i=["a/b"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 14 - p=a/b/** i=["a/b"] {} # time=12.879ms
     
     # Subtest: p=** i=["b"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 15 - p=** i=["b"] {"cwd":"a"} # time=20.671ms
     
     # Subtest: p=** i=["b","c"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 16 - p=** i=["b","c"] {"cwd":"a"} # time=48.649ms
     
     # Subtest: p=** i=["b**"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 17 - p=** i=["b**"] {"cwd":"a"} # time=28.571ms
     
     # Subtest: p=** i=["b/**"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 18 - p=** i=["b/**"] {"cwd":"a"} # time=25.328ms
     
     # Subtest: p=** i=["b**/**"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 19 - p=** i=["b**/**"] {"cwd":"a"} # time=26.251ms
     
     # Subtest: p=** i=["ab**ef/**"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 20 - p=** i=["ab**ef/**"] {"cwd":"a"} # time=19.695ms
     
     # Subtest: p=** i=["abc{def,fed}/**"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 21 - p=** i=["abc{def,fed}/**"] {"cwd":"a"} # time=24.675ms
     
     # Subtest: p=** i=["abc{def,fed}/*"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 22 - p=** i=["abc{def,fed}/*"] {"cwd":"a"} # time=20.152ms
     
     # Subtest: p=c/** i=["c/*"] {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 23 - p=c/** i=["c/*"] {"cwd":"a"} # time=7.827ms
     
     # Subtest: p=a/c/** i=["a/c/*"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 24 - p=a/c/** i=["a/c/*"] {} # time=8.264ms
     
     # Subtest: p=a/c/** i=["a/c/**","a/c/*","a/c/*/c"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 25 - p=a/c/** i=["a/c/**","a/c/*","a/c/*/c"] {} # time=8.471ms
     
     # Subtest: p=a/**/.y i=["a/x/**"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 26 - p=a/**/.y i=["a/x/**"] {} # time=19.149ms
     
     # Subtest: p=a/**/.y i=["a/x/**"] {"dot":true}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 27 - p=a/**/.y i=["a/x/**"] {"dot":true} # time=22.095ms
     
     # Subtest: p=a/**/b i=["a/x/**"] {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 28 - p=a/**/b i=["a/x/**"] {} # time=19.32ms
     
     # Subtest: p=a/**/b i=["a/x/**"] {"dot":true}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 29 - p=a/**/b i=["a/x/**"] {"dot":true} # time=21.933ms
     
     # Subtest: p=*/.abcdef i="a/**" {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 30 - p=*/.abcdef i="a/**" {} # time=4.85ms
     
     # Subtest: p=a/*/.y/b i="a/x/**" {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 31 - p=a/*/.y/b i="a/x/**" {} # time=17.151ms
     
     # Subtest: p=a/*/.y/b i="/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/x/**" {}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 32 - p=a/*/.y/b i="/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a/x/**" {} # time=16.304ms
     
     # Subtest: p=./* i="{./,c}b" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 33 - p=./* i="{./,c}b" {"cwd":"a"} # time=23.253ms
     
     # Subtest: p=./* i="./c/../b" {"cwd":"a"}
         ok 1 - async
         ok 2 - sync
         1..2
     ok 34 - p=./* i="./c/../b" {"cwd":"a"} # time=8.446ms
     
     # Subtest: race condition
         # Subtest: {"dot":true,"ignore":"fixtures/**"}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 1 - {"dot":true,"ignore":"fixtures/**"} # time=80.121ms
         
         # Subtest: {"dot":true,"ignore":"fixtures/**","cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 2 - {"dot":true,"ignore":"fixtures/**","cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"} # time=75.992ms
         
         # Subtest: {"dot":true,"ignore":"fixtures/**","cwd":"."}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 3 - {"dot":true,"ignore":"fixtures/**","cwd":"."} # time=72.054ms
         
         # Subtest: {"dot":true}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 4 - {"dot":true} # time=68.051ms
         
         # Subtest: {"dot":true,"cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 5 - {"dot":true,"cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"} # time=64.647ms
         
         # Subtest: {"dot":true,"cwd":"."}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 6 - {"dot":true,"cwd":"."} # time=61.592ms
         
         # Subtest: {"dot":false,"ignore":"fixtures/**"}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 7 - {"dot":false,"ignore":"fixtures/**"} # time=58.11ms
         
         # Subtest: {"dot":false,"ignore":"fixtures/**","cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 8 - {"dot":false,"ignore":"fixtures/**","cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"} # time=53.708ms
         
         # Subtest: {"dot":false,"ignore":"fixtures/**","cwd":"."}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 9 - {"dot":false,"ignore":"fixtures/**","cwd":"."} # time=49.635ms
         
         # Subtest: {"dot":false}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 10 - {"dot":false} # time=45.521ms
         
         # Subtest: {"dot":false,"cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 11 - {"dot":false,"cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test"} # time=42.571ms
         
         # Subtest: {"dot":false,"cwd":"."}
             1..2
             ok 1 - should be equivalent
             ok 2 - should be equivalent
         ok 12 - {"dot":false,"cwd":"."} # time=40ms
         
         1..12
     ok 35 - race condition # time=120.607ms
     
     1..35
 ok 15 - test/ignore.ts # time=5256.288ms
 # Subtest: test/include-child-matches.ts
     # Subtest: no include child matches
         ok 1 - should be equivalent strictly
         ok 2 - should be equivalent strictly
         1..2
     ok 1 - no include child matches # time=76.866ms
     
     # Subtest: test the caveat
         ok 1 - should be equivalent strictly
         ok 2 - should be equivalent strictly
         1..2
     ok 2 - test the caveat # time=27.714ms
     
     # Subtest: ignore impl must have an add() method
         ok 1 - expected to throw
         1..1
     ok 3 - ignore impl must have an add() method # time=4.341ms
     
     1..3
 ok 16 - test/include-child-matches.ts # time=5160.119ms
 # Subtest: test/mark.ts
     # Subtest: mark with cwd
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 1 - mark with cwd # time=109.382ms
     
     # Subtest: mark, with **
         ok 1 - async
         ok 2 - sync
         1..2
     ok 2 - mark, with ** # time=21.052ms
     
     # Subtest: mark, no / on pattern
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 3 - mark, no / on pattern # time=9.956ms
     
     # Subtest: mark=false, no / on pattern
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 4 - mark=false, no / on pattern # time=10.432ms
     
     # Subtest: mark=true, / on pattern
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 5 - mark=true, / on pattern # time=7.007ms
     
     # Subtest: mark=false, / on pattern
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 6 - mark=false, / on pattern # time=8.321ms
     
     # Subtest: cwd mark:true slash:true
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 7 - cwd mark:true slash:true # time=6.495ms
     
     # Subtest: cwd mark:true slash:false
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 8 - cwd mark:true slash:false # time=4.411ms
     
     # Subtest: cwd mark:false slash:true
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 9 - cwd mark:false slash:true # time=5.904ms
     
     # Subtest: cwd mark:false slash:false
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 10 - cwd mark:false slash:false # time=35.745ms
     
     # Subtest: . mark:true slash:true
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 11 - . mark:true slash:true # time=4.956ms
     
     # Subtest: . mark:true slash:false
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 12 - . mark:true slash:false # time=4.462ms
     
     # Subtest: . mark:false slash:true
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 13 - . mark:false slash:true # time=4.931ms
     
     # Subtest: . mark:false slash:false
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - sync should match async
         1..3
     ok 14 - . mark:false slash:false # time=3.116ms
     
     1..14
 ok 17 - test/mark.ts # time=4771.043ms
 # Subtest: test/match-base.ts
     # Subtest: chdir
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 1 - chdir # time=202.274ms
     
     # Subtest: cwd
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 2 - cwd # time=26.69ms
     
     # Subtest: noglobstar
         ok 1 - expected to reject
         ok 2 - expected to throw
         1..2
     ok 3 - noglobstar # time=7.985ms
     
     # Subtest: pattern includes /
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 4 - pattern includes / # time=11.057ms
     
     # Subtest: one brace section of pattern includes /
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 5 - one brace section of pattern includes / # time=12.903ms
     
     # Subtest: one array member of pattern includes /
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 6 - one array member of pattern includes / # time=48.127ms
     
     1..6
 ok 18 - test/match-base.ts # time=4800.522ms
 # Subtest: test/match-parent.ts
     # Subtest: /
         ok 1 - should be equal
         ok 2 - should be equal
         1..2
     ok 1 - / # time=23.214ms
     
     # Subtest: /..
         ok 1 - should be equal
         ok 2 - should be equal
         1..2
     ok 2 - /.. # time=6.694ms
     
     # Subtest: /../../../../../
         ok 1 - should be equal
         ok 2 - should be equal
         1..2
     ok 3 - /../../../../../ # time=3.732ms
     
     1..3
 ok 19 - test/match-parent.ts # time=3866.796ms
 # Subtest: test/match-root.ts
     ok 1 - should be equal
     ok 2 - should be equal
     1..2
 ok 20 - test/match-root.ts # time=4049.319ms
 # Subtest: test/max-depth.ts
     # Subtest: set maxDepth
         ok 1 - got all results sync
         ok 2 - got all results async
         ok 3 - does not exceed maxDepth
         ok 4 - does not exceed maxDepth
         ok 5 - does not exceed maxDepth
         ok 6 - does not exceed maxDepth
         ok 7 - does not exceed maxDepth
         ok 8 - does not exceed maxDepth
         ok 9 - does not exceed maxDepth
         ok 10 - does not exceed maxDepth
         ok 11 - does not exceed maxDepth
         ok 12 - does not exceed maxDepth
         ok 13 - does not exceed maxDepth
         ok 14 - does not exceed maxDepth
         ok 15 - does not exceed maxDepth
         ok 16 - does not exceed maxDepth
         ok 17 - does not exceed maxDepth
         ok 18 - does not exceed maxDepth
         ok 19 - does not exceed maxDepth
         ok 20 - does not exceed maxDepth
         ok 21 - does not exceed maxDepth
         ok 22 - does not exceed maxDepth
         ok 23 - does not exceed maxDepth
         ok 24 - does not exceed maxDepth
         ok 25 - maxDepth with stream
         ok 26 - maxDepth with streamSync
         ok 27 - async maxDepth -1
         ok 28 - sync maxDepth -1
         ok 29 - async maxDepth 0
         ok 30 - async maxDepth 0
         ok 31 - maxDepth with iteration
         ok 32 - maxDepth with async iteration
         1..32
     ok 1 - set maxDepth # time=281.91ms
     
     1..1
 ok 21 - test/max-depth.ts # time=4611.525ms
 # Subtest: test/memfs.ts
     # Subtest: /**/*
         # Subtest: cwd=/
             # Subtest: mocking the fs
                 ok 1 - should be equivalent strictly
                 1..1
             ok 1 - mocking the fs # time=397.405ms
             
             # Subtest: passing in fs argument
                 ok 1 - should be equivalent strictly
                 1..1
             ok 2 - passing in fs argument # time=26.423ms
             
             1..2
         ok 1 - cwd=/ # time=437.692ms
         
         # Subtest: cwd=undefined
             # Subtest: mocking the fs
                 ok 1 - should be equivalent strictly
                 1..1
             ok 1 - mocking the fs # time=361.096ms
             
             # Subtest: passing in fs argument
                 ok 1 - should be equivalent strictly
                 1..1
             ok 2 - passing in fs argument # time=3.693ms
             
             1..2
         ok 2 - cwd=undefined # time=374.36ms
         
         1..2
     ok 1 - /**/* # time=822.672ms
     
     # Subtest: /*
         # Subtest: cwd=/
             # Subtest: mocking the fs
                 ok 1 - should be equivalent strictly
                 1..1
             ok 1 - mocking the fs # time=290.787ms
             
             # Subtest: passing in fs argument
                 ok 1 - should be equivalent strictly
                 1..1
             ok 2 - passing in fs argument # time=3.393ms
             
             1..2
         ok 1 - cwd=/ # time=305.096ms
         
         # Subtest: cwd=undefined
             # Subtest: mocking the fs
                 ok 1 - should be equivalent strictly
                 1..1
             ok 1 - mocking the fs # time=278.482ms
             
             # Subtest: passing in fs argument
                 ok 1 - should be equivalent strictly
                 1..1
             ok 2 - passing in fs argument # time=3.758ms
             
             1..2
         ok 2 - cwd=undefined # time=291.854ms
         
         1..2
     ok 2 - /* # time=606.059ms
     
     # Subtest: /x
         # Subtest: cwd=/
             # Subtest: mocking the fs
                 ok 1 - should be equivalent strictly
                 1..1
             ok 1 - mocking the fs # time=259.453ms
             
             # Subtest: passing in fs argument
                 ok 1 - should be equivalent strictly
                 1..1
             ok 2 - passing in fs argument # time=3.655ms
             
             1..2
         ok 1 - cwd=/ # time=274.298ms
         
         # Subtest: cwd=undefined
             # Subtest: mocking the fs
                 ok 1 - should be equivalent strictly
                 1..1
             ok 1 - mocking the fs # time=249.342ms
             
             # Subtest: passing in fs argument
                 ok 1 - should be equivalent strictly
                 1..1
             ok 2 - passing in fs argument # time=2.339ms
             
             1..2
         ok 2 - cwd=undefined # time=256.872ms
         
         1..2
     ok 3 - /x # time=540.345ms
     
     1..3
 ok 22 - test/memfs.ts # time=6840.127ms
 # Subtest: test/nocase-magic-only.ts
     ok 1 - type is string
     ok 2 - type is RegExp
     1..2
 ok 23 - test/nocase-magic-only.ts # time=4057.68ms
 # Subtest: test/nodir.ts
     # Subtest: */** {"cwd":"a","nodir":true}
         ok 1 - sync results
         ok 2 - async results
         1..2
     ok 1 - */** {"cwd":"a","nodir":true} # time=75.403ms
     
     # Subtest: a/*b*/** {"nodir":true}
         ok 1 - sync results
         ok 2 - async results
         1..2
     ok 2 - a/*b*/** {"nodir":true} # time=16.633ms
     
     # Subtest: a/*b*/**/ {"nodir":true}
         ok 1 - sync results
         ok 2 - async results
         1..2
     ok 3 - a/*b*/**/ {"nodir":true} # time=14.931ms
     
     # Subtest: */* {"cwd":"a","nodir":true}
         ok 1 - sync results
         ok 2 - async results
         1..2
     ok 4 - */* {"cwd":"a","nodir":true} # time=13.034ms
     
     # Subtest: */* {"cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a","nodir":true}
         ok 1 - sync results
         ok 2 - async results
         1..2
     ok 5 - */* {"cwd":"/home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/fixtures/a","nodir":true} # time=10.222ms
     
     1..5
 ok 24 - test/nodir.ts # time=4554.819ms
 # Subtest: test/oom.ts
     # Subtest: does not oom on long glob
         ok 1 - did not run out of memory
         ok 2 - should not find anything
         1..2
     ok 1 - does not oom on long glob # time=1011.798ms
     
     1..1
 ok 25 - test/oom.ts # time=5948.735ms
 # Subtest: test/pattern.ts
     ok 1 - should be equivalent
     ok 2 - expected to throw
     ok 3 - should be equal
     ok 4 - expected to throw
     ok 5 - expected to throw
     ok 6 - expected to throw
     ok 7 - expected to throw
     ok 8 - s
     ok 9 - r
     ok 10 - g
     ok 11 - should be equal
     ok 12 - should be equal
     ok 13 - should be equal
     ok 14 - should be equal
     ok 15 - should be equal
     ok 16 - should be equal
     ok 17 - should be equal
     ok 18 - should be equal
     ok 19 - should be equal
     1..19
 ok 26 - test/pattern.ts # time=4115.331ms
 # Subtest: test/platform.ts
     # Subtest: default platform is process.platform
         ok 1 - should be equal
         1..1
     ok 1 - default platform is process.platform # time=28.633ms
     
     # Subtest: default linux when not found
         ok 1 - should be equal
         1..1
     ok 2 - default linux when not found # time=341.737ms
     
     # Subtest: set platform, get appropriate scurry object
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - should be equal
         ok 4 - should be equal
         1..4
     ok 3 - set platform, get appropriate scurry object # time=8.564ms
     
     # Subtest: set scurry, sets nocase and scurry
         ok 1 - expected to throw
         ok 2 - should be equal
         ok 3 - should be equal
         1..3
     ok 4 - set scurry, sets nocase and scurry # time=4.05ms
     
     # Subtest: instantiate to hit a coverage line
         ok 1 - this is fine
         1..1
     ok 5 - instantiate to hit a coverage line # time=2.431ms
     
     1..5
 ok 27 - test/platform.ts # time=4694.331ms
 # Subtest: test/progra-tilde.ts
     1..0 # no tests found
 not ok 28 - test/progra-tilde.ts # time=31002.554ms
   ---
   stdio: inherit
   cwd: /home/iojs/tmp/citgm_tmp/4b8c54c2/glob
   externalID: test/progra-tilde.ts
   command: /home/iojs/build/workspace/citgm-smoker-nobuild/node/bin/node
   args:
     - --import=file:///home/iojs/tmp/citgm_tmp/4b8c54c2/glob/node_modules/@tapjs/typescript/dist/esm/import.mjs
     - --import=file:///home/iojs/tmp/citgm_tmp/4b8c54c2/glob/node_modules/@tapjs/mock/dist/esm/import.mjs
     - --enable-source-maps
     - --import=file:///home/iojs/tmp/citgm_tmp/4b8c54c2/glob/node_modules/@tapjs/processinfo/dist/esm/import.mjs
     - /home/iojs/tmp/citgm_tmp/4b8c54c2/glob/test/progra-tilde.ts
   jobId: 9
   exitCode: null
   signal: SIGKILL
   ...
 # Subtest: test/readme-issue.ts
     # Subtest: glob
         ok 1 - should be equivalent
         1..1
     ok 1 - glob # time=50.174ms
     
     1..1
 ok 29 - test/readme-issue.ts # time=4408.823ms
 # Subtest: test/realpath.ts
     # Subtest: a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {}
         ok 1 - sync
         ok 2 - async
         1..2
     ok 1 - a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {} # time=102.422ms
     
     # Subtest: a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"mark":true}
         ok 1 - sync
         ok 2 - async
         1..2
     ok 2 - a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"mark":true} # time=24.5ms
     
     # Subtest: a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"follow":true}
         ok 1 - sync
         ok 2 - async
         1..2
     ok 3 - a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"follow":true} # time=224.716ms
     
     # Subtest: symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"cwd":"a"}
         ok 1 - sync
         ok 2 - async
         1..2
     ok 4 - symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"cwd":"a"} # time=57.888ms
     
     # Subtest: no one here but us chickens {"cwd":"a"}
         ok 1 - sync
         ok 2 - async
         1..2
     ok 5 - no one here but us chickens {"cwd":"a"} # time=4.722ms
     
     # Subtest: a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"mark":true,"follow":true}
         ok 1 - sync
         ok 2 - async
         1..2
     ok 6 - a/symlink/{*,**/*/*/*,*/*/**,*/*/*/*/*/*} {"mark":true,"follow":true} # time=193.476ms
     
     # Subtest: realpath failure
         # Subtest: setting cwd explicitly
             ok 1 - should be equivalent
             ok 2 - should be equivalent
             1..2
         ok 1 - setting cwd explicitly # time=36.238ms
         
         # Subtest: looking in cwd
             ok 1 - should be equivalent
             ok 2 - should be equivalent
             1..2
         ok 2 - looking in cwd # time=6.196ms
         
         1..2
     ok 7 - realpath failure # time=268.319ms
     
     1..7
 ok 30 - test/realpath.ts # time=5310.865ms
 # Subtest: test/root.ts
     # Subtest: set root option
         1..3
         # Subtest: absolute=true
             ok 1 - async
             ok 2 - sync
             1..2
         ok 1 - absolute=true # time=112.599ms
         
         # Subtest: absolute=false
             ok 1 - async
             ok 2 - sync
             1..2
         ok 2 - absolute=false # time=11.554ms
         
         # Subtest: absolute=undefined
             ok 1 - async
             ok 2 - sync
             1..2
         ok 3 - absolute=undefined # time=12.714ms
         
     ok 1 - set root option # time=162.319ms
     
     1..1
 ok 31 - test/root.ts # time=4551.387ms
 # Subtest: test/signal.ts
     # Subtest: pre abort walk
         ok 1 - expected to reject
         1..1
     ok 1 - pre abort walk # time=57.231ms
     
     # Subtest: mid-abort walk
         ok 1 - expected to reject
         1..1
     ok 2 - mid-abort walk # time=12.548ms
     
     # Subtest: pre abort sync walk
         ok 1 - expected to throw
         1..1
     ok 3 - pre abort sync walk # time=3.013ms
     
     # Subtest: mid-abort sync walk
         ok 1 - expected to throw
         1..1
     ok 4 - mid-abort sync walk # time=336.729ms
     
     # Subtest: pre abort stream
         ok 1 - should be equal
         1..1
     ok 5 - pre abort stream # time=4.072ms
     
     # Subtest: mid-abort stream
         ok 1 - should be equal
         1..1
     ok 6 - mid-abort stream # time=6.274ms
     
     # Subtest: pre abort sync stream
         ok 1 - should be equal
         1..1
     ok 7 - pre abort sync stream # time=6.674ms
     
     # Subtest: mid-abort sync stream
         ok 1 - should be equal
         1..1
     ok 8 - mid-abort sync stream # time=6.056ms
     
     1..8
 ok 32 - test/signal.ts # time=4711.969ms
 # Subtest: test/slash-cwd.ts
     # Subtest: slashes only match directories
         ok 1 - sync test
         ok 2 - async test
         1..2
     ok 1 - slashes only match directories # time=75.564ms
     
     1..1
 ok 33 - test/slash-cwd.ts # time=3938.26ms
 # Subtest: test/stat.ts
     # Subtest: stat: true
         ok 1 - type is number
         ok 2 - type is number
         ok 3 - should be equal
         1..3
     ok 1 - stat: true # time=30.836ms
     
     1..1
 ok 34 - test/stat.ts # time=3697.279ms
 # Subtest: test/stream.ts
     # Subtest: stream
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "cb/e"
         ok 13 - "c/d"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "cb/e/f"
         ok 20 - "c/d/c"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         ok 28 - did not finish in one tick
         ok 29 - "."
         ok 30 - "z"
         ok 31 - "x"
         ok 32 - "symlink"
         ok 33 - "cb"
         ok 34 - "c"
         ok 35 - "bc"
         ok 36 - "b"
         ok 37 - "abcfed"
         ok 38 - "abcdef"
         ok 39 - "symlink/a"
         ok 40 - "symlink/a/b"
         ok 41 - "symlink/a/b/c"
         ok 42 - "cb/e"
         ok 43 - "cb/e/f"
         ok 44 - "c/d"
         ok 45 - "c/d/c"
         ok 46 - "c/d/c/b"
         ok 47 - "bc/e"
         ok 48 - "bc/e/f"
         ok 49 - "b/c"
         ok 50 - "b/c/d"
         ok 51 - "abcfed/g"
         ok 52 - "abcfed/g/h"
         ok 53 - "abcdef/g"
         ok 54 - "abcdef/g/h"
         ok 55 - saw all entries
         1..55
     ok 1 - stream # time=59.672ms
     
     # Subtest: streamSync
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "symlink/a/b"
         ok 13 - "symlink/a/b/c"
         ok 14 - "cb/e"
         ok 15 - "cb/e/f"
         ok 16 - "c/d"
         ok 17 - "c/d/c"
         ok 18 - "c/d/c/b"
         ok 19 - "bc/e"
         ok 20 - "bc/e/f"
         ok 21 - "b/c"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g"
         ok 24 - "abcfed/g/h"
         ok 25 - "abcdef/g"
         ok 26 - "abcdef/g/h"
         ok 27 - saw all entries
         ok 28 - "."
         ok 29 - "z"
         ok 30 - "x"
         ok 31 - "symlink"
         ok 32 - "cb"
         ok 33 - "c"
         ok 34 - "bc"
         ok 35 - "b"
         ok 36 - "abcfed"
         ok 37 - "abcdef"
         ok 38 - "symlink/a"
         ok 39 - "symlink/a/b"
         ok 40 - "symlink/a/b/c"
         ok 41 - "cb/e"
         ok 42 - "cb/e/f"
         ok 43 - "c/d"
         ok 44 - "c/d/c"
         ok 45 - "c/d/c/b"
         ok 46 - "bc/e"
         ok 47 - "bc/e/f"
         ok 48 - "b/c"
         ok 49 - "b/c/d"
         ok 50 - "abcfed/g"
         ok 51 - "abcfed/g/h"
         ok 52 - "abcdef/g"
         ok 53 - "abcdef/g/h"
         ok 54 - saw all entries
         ok 55 - finished synchronously
         1..55
     ok 2 - streamSync # time=24.632ms
     
     # Subtest: iterate
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "cb/e"
         ok 13 - "c/d"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "cb/e/f"
         ok 20 - "c/d/c"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         ok 28 - "."
         ok 29 - "z"
         ok 30 - "x"
         ok 31 - "symlink"
         ok 32 - "cb"
         ok 33 - "c"
         ok 34 - "bc"
         ok 35 - "b"
         ok 36 - "abcfed"
         ok 37 - "abcdef"
         ok 38 - "symlink/a"
         ok 39 - "symlink/a/b"
         ok 40 - "symlink/a/b/c"
         ok 41 - "cb/e"
         ok 42 - "cb/e/f"
         ok 43 - "c/d"
         ok 44 - "c/d/c"
         ok 45 - "c/d/c/b"
         ok 46 - "bc/e"
         ok 47 - "bc/e/f"
         ok 48 - "b/c"
         ok 49 - "b/c/d"
         ok 50 - "abcfed/g"
         ok 51 - "abcfed/g/h"
         ok 52 - "abcdef/g"
         ok 53 - "abcdef/g/h"
         ok 54 - saw all entries
         1..54
     ok 3 - iterate # time=30.107ms
     
     # Subtest: iterateSync
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "cb/e"
         ok 13 - "c/d"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "cb/e/f"
         ok 20 - "c/d/c"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         ok 28 - "."
         ok 29 - "z"
         ok 30 - "x"
         ok 31 - "symlink"
         ok 32 - "cb"
         ok 33 - "c"
         ok 34 - "bc"
         ok 35 - "b"
         ok 36 - "abcfed"
         ok 37 - "abcdef"
         ok 38 - "symlink/a"
         ok 39 - "cb/e"
         ok 40 - "c/d"
         ok 41 - "bc/e"
         ok 42 - "b/c"
         ok 43 - "abcfed/g"
         ok 44 - "abcdef/g"
         ok 45 - "symlink/a/b"
         ok 46 - "cb/e/f"
         ok 47 - "c/d/c"
         ok 48 - "bc/e/f"
         ok 49 - "b/c/d"
         ok 50 - "abcfed/g/h"
         ok 51 - "abcdef/g/h"
         ok 52 - "symlink/a/b/c"
         ok 53 - "c/d/c/b"
         ok 54 - saw all entries
         1..54
     ok 4 - iterateSync # time=22.471ms
     
     # Subtest: walk
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 5 - walk # time=15.699ms
     
     # Subtest: walkSync
         ok 1 - should be equivalent
         ok 2 - should be equivalent
         1..2
     ok 6 - walkSync # time=8.352ms
     
     # Subtest: for await
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "c/d"
         ok 13 - "cb/e"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "c/d/c"
         ok 20 - "cb/e/f"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         ok 28 - "."
         ok 29 - "z"
         ok 30 - "x"
         ok 31 - "symlink"
         ok 32 - "cb"
         ok 33 - "c"
         ok 34 - "bc"
         ok 35 - "b"
         ok 36 - "abcfed"
         ok 37 - "abcdef"
         ok 38 - "symlink/a"
         ok 39 - "symlink/a/b"
         ok 40 - "symlink/a/b/c"
         ok 41 - "cb/e"
         ok 42 - "cb/e/f"
         ok 43 - "c/d"
         ok 44 - "c/d/c"
         ok 45 - "c/d/c/b"
         ok 46 - "bc/e"
         ok 47 - "bc/e/f"
         ok 48 - "b/c"
         ok 49 - "b/c/d"
         ok 50 - "abcfed/g"
         ok 51 - "abcfed/g/h"
         ok 52 - "abcdef/g"
         ok 53 - "abcdef/g/h"
         ok 54 - saw all entries
         1..54
     ok 7 - for await # time=51.214ms
     
     # Subtest: for of
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "cb/e"
         ok 13 - "c/d"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "cb/e/f"
         ok 20 - "c/d/c"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         ok 28 - "."
         ok 29 - "z"
         ok 30 - "x"
         ok 31 - "symlink"
         ok 32 - "cb"
         ok 33 - "c"
         ok 34 - "bc"
         ok 35 - "b"
         ok 36 - "abcfed"
         ok 37 - "abcdef"
         ok 38 - "symlink/a"
         ok 39 - "cb/e"
         ok 40 - "c/d"
         ok 41 - "bc/e"
         ok 42 - "b/c"
         ok 43 - "abcfed/g"
         ok 44 - "abcdef/g"
         ok 45 - "symlink/a/b"
         ok 46 - "cb/e/f"
         ok 47 - "c/d/c"
         ok 48 - "bc/e/f"
         ok 49 - "b/c/d"
         ok 50 - "abcfed/g/h"
         ok 51 - "abcdef/g/h"
         ok 52 - "symlink/a/b/c"
         ok 53 - "c/d/c/b"
         ok 54 - saw all entries
         1..54
     ok 8 - for of # time=20.07ms
     
     # Subtest: iterate on main
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "cb/e"
         ok 13 - "c/d"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "cb/e/f"
         ok 20 - "c/d/c"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         1..27
     ok 9 - iterate on main # time=14.32ms
     
     # Subtest: iterateSync on main
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "cb/e"
         ok 13 - "c/d"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "cb/e/f"
         ok 20 - "c/d/c"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         1..27
     ok 10 - iterateSync on main # time=12.085ms
     
     # Subtest: stream on main
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "cb/e"
         ok 13 - "c/d"
         ok 14 - "bc/e"
         ok 15 - "b/c"
         ok 16 - "abcfed/g"
         ok 17 - "abcdef/g"
         ok 18 - "symlink/a/b"
         ok 19 - "cb/e/f"
         ok 20 - "c/d/c"
         ok 21 - "bc/e/f"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g/h"
         ok 24 - "abcdef/g/h"
         ok 25 - "symlink/a/b/c"
         ok 26 - "c/d/c/b"
         ok 27 - saw all entries
         ok 28 - did not finish in one tick
         1..28
     ok 11 - stream on main # time=14.135ms
     
     # Subtest: streamSync on main
         ok 1 - "."
         ok 2 - "z"
         ok 3 - "x"
         ok 4 - "symlink"
         ok 5 - "cb"
         ok 6 - "c"
         ok 7 - "bc"
         ok 8 - "b"
         ok 9 - "abcfed"
         ok 10 - "abcdef"
         ok 11 - "symlink/a"
         ok 12 - "symlink/a/b"
         ok 13 - "symlink/a/b/c"
         ok 14 - "cb/e"
         ok 15 - "cb/e/f"
         ok 16 - "c/d"
         ok 17 - "c/d/c"
         ok 18 - "c/d/c/b"
         ok 19 - "bc/e"
         ok 20 - "bc/e/f"
         ok 21 - "b/c"
         ok 22 - "b/c/d"
         ok 23 - "abcfed/g"
         ok 24 - "abcfed/g/h"
         ok 25 - "abcdef/g"
         ok 26 - "abcdef/g/h"
         ok 27 - saw all entries
         ok 28 - finished synchronously
         1..28
     ok 12 - streamSync on main # time=11.636ms
     
     # Subtest: walk on main
         ok 1 - should be equivalent
         1..1
     ok 13 - walk on main # time=7.705ms
     
     # Subtest: walkSync
         ok 1 - should be equivalent
         1..1
     ok 14 - walkSync # time=6.298ms
     
     1..14
 ok 35 - test/stream.ts # time=4008.296ms
 # Subtest: test/url-cwd.ts
     # Subtest: can use file url as cwd option
         ok 1 - should be equal
         ok 2 - should be equal
         ok 3 - should be equal
         1..3
     ok 1 - can use file url as cwd option # time=17.825ms
     
     1..1
 ok 36 - test/url-cwd.ts # time=3647.917ms
 # Subtest: test/windows-paths-fs.ts
     # Subtest: treat backslash as escape
         1..3
         # Subtest: a[x]b/y
             ok 1 - sync
             ok 2 - async
             1..2
         ok 1 - a[x]b/y # time=30.91ms
         
         # Subtest: a\\[x\\]b/y
             ok 1 - sync
             ok 2 - async
             1..2
         ok 2 - a\\[x\\]b/y # time=5.073ms
         
         # Subtest: a\\[x\\]b\\y
             ok 1 - sync
             ok 2 - async
             1..2
         ok 3 - a\\[x\\]b\\y # time=3.349ms
         
     ok 1 - treat backslash as escape # time=50.284ms
     
     # Subtest: treat backslash as separator
         1..3
         # Subtest: a[x]b/y
             ok 1 - sync
             ok 2 - async
             1..2
         ok 1 - a[x]b/y # time=10.089ms
         
         # Subtest: a\\[x\\]b/y
             ok 1 - sync
             ok 2 - async
             1..2
         ok 2 - a\\[x\\]b/y # time=4.265ms
         
         # Subtest: a\\[x\\]b\\y
             ok 1 - sync
             ok 2 - async
             1..2
         ok 3 - a\\[x\\]b\\y # time=3.843ms
         
     ok 2 - treat backslash as separator # time=25.078ms
     
     1..2
 ok 37 - test/windows-paths-fs.ts # time=3481.619ms
 not ok 38 - timeout!
   ---
   expired: test/progra-tilde.ts
   ...
 # { total: 1104, pass: 1102, fail: 2 }
 # time=40206.969ms
   dist/commonjs/index.min.js       86.4kb
   dist/commonjs/index.min.js.map  482.3kb
  Done in 62ms
   dist/esm/index.min.js       80.8kb
   dist/esm/index.min.js.map  479.9kb
  Done in 58ms
   dist/commonjs/index.min.js       86.4kb
   dist/commonjs/index.min.js.map  482.3kb
  Done in 62ms
   dist/esm/index.min.js       80.8kb
   dist/esm/index.min.js.map  479.9kb
  Done in 62ms
 Windows, or TEST_REGEN unset.  Using cached fixtures.
 #
 # Fatal error in , line 0
 # unreachable code
 #
 #
 #
 #FailureMessage Object: 111227cf0
 ----- Native stack trace -----
  • coffeescript fails on Linux x64 (it wasn't run on ppc64le or s390x because it is still being skipped on all rhel)
Details
 added 349 packages in 12s
 > coffeescript@2.7.0 test
 > node ./bin/cake test
 [0;31mfailed 5 and passed 1456 tests in 13.27 seconds[0m[0m 
 [0;31m  #4418: stack traces for compiled files reference the correct line number[0m 
 [0;31m  AssertionError [ERR_ASSERTION]: Expected [0m7[0;31m to equal [0m3[0;31m
     at exports.eq (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/support/helpers.coffee:49:12)
     at Function.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:122:14)
     at global.test (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:596:21)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:100:5)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:1305:4)
     at Module._compile (node:internal/modules/cjs/loader:1781:14)
     at CoffeeScript.run (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/index.js:67:23)
     at runTests (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:670:22)
     at Object.action (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:684:12)
     at invoke (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/cake.js:57:26)
     at exports.run (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/cake.js:87:20)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/bin/cake:22:42)
     at Module._compile (node:internal/modules/cjs/loader:1781:14)
     at Object..js (node:internal/modules/cjs/loader:1913:10)
     at Module.<anonymous> (node:internal/modules/cjs/loader:1505:32)
     at Function._load (node:internal/modules/cjs/loader:1309:12)
     at wrapModuleLoad (node:internal/modules/cjs/loader:254:19)
     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:171:5)
     at node:internal/main/run_main_module:36:49[0m 
   function() {
       var error, fileContents, filePath;
       // The browser is already compiling other anonymous scripts (the tests)
       // which will conflict.
       if (global.testingBrowser) {
         return;
       }
       filePath = path.join(os.tmpdir(), 'StackTraceLineNumberTestFile.coffee');
       fileContents = `testCompiledFileStackTraceLineNumber = ->
   # \`a\` on the next line is undefined and should throw a ReferenceError
   console.log a if true
 do testCompiledFileStackTraceLineNumber`;
       fs.writeFileSync(filePath, fileContents);
       try {
         require(filePath);
       } catch (error1) {
         error = error1;
       }
       fs.unlinkSync(filePath);
       // Make sure the line number reported is line 3 (the original Coffee source)
       // and not line 6 (the generated JavaScript).
       return eq(/StackTraceLineNumberTestFile.coffee:(\d)/.exec(error.stack.toString())[1], '3');
     }
 [0;31m  #4418: stack traces for compiled strings reference the correct line number[0m 
 [0;31m  AssertionError [ERR_ASSERTION]: Expected [0m7[0;31m to equal [0m3[0;31m
     at exports.eq (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/support/helpers.coffee:49:12)
     at Function.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:144:12)
     at global.test (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:596:21)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:126:3)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:1305:4)
     at Module._compile (node:internal/modules/cjs/loader:1781:14)
     at CoffeeScript.run (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/index.js:67:23)
     at runTests (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:670:22)
     at Object.action (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:684:12)
     at invoke (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/cake.js:57:26)
     at exports.run (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/cake.js:87:20)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/bin/cake:22:42)
     at Module._compile (node:internal/modules/cjs/loader:1781:14)
     at Object..js (node:internal/modules/cjs/loader:1913:10)
     at Module.<anonymous> (node:internal/modules/cjs/loader:1505:32)
     at Function._load (node:internal/modules/cjs/loader:1309:12)
     at wrapModuleLoad (node:internal/modules/cjs/loader:254:19)
     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:171:5)
     at node:internal/main/run_main_module:36:49[0m 
   function() {
     var error;
     // The browser is already compiling other anonymous scripts (the tests)
     // which will conflict.
     if (global.testingBrowser) {
       return;
     }
     try {
       CoffeeScript.run(`testCompiledStringStackTraceLineNumber = ->
   # \`a\` on the next line is undefined and should throw a ReferenceError
   console.log a if true
 do testCompiledStringStackTraceLineNumber`);
     } catch (error1) {
       error = error1;
     }
     // Make sure the line number reported is line 3 (the original Coffee source)
     // and not line 6 (the generated JavaScript).
     return eq(/testCompiledStringStackTraceLineNumber.*:(\d):/.exec(error.stack.toString())[1], '3');
   }
 [0;31m  #4558: compiling a string inside a script doesnt screw up stack trace line number[0m 
 [0;31m  TypeError: Cannot read properties of null (reading '1')
     at Function.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:167:113)
     at global.test (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:596:21)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:147:3)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/test/error_messages.coffee:1305:4)
     at Module._compile (node:internal/modules/cjs/loader:1781:14)
     at CoffeeScript.run (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/index.js:67:23)
     at runTests (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:670:22)
     at Object.action (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/Cakefile:684:12)
     at invoke (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/cake.js:57:26)
     at exports.run (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/lib/coffeescript/cake.js:87:20)
     at Object.<anonymous> (/home/iojs/tmp/citgm_tmp/42adab93/coffeescript/bin/cake:22:42)
     at Module._compile (node:internal/modules/cjs/loader:1781:14)
     at Object..js (node:internal/modules/cjs/loader:1913:10)
     at Module.<anonymous> (node:internal/modules/cjs/loader:1505:32)
     at Function._load (node:internal/modules/cjs/loader:1309:12)
     at wrapModuleLoad (node:internal/modules/cjs/loader:254:19)
     at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:171:5)
     at node:internal/main/run_main_module:36:49[0m 
   function() {
     var error;
     // The browser is already compiling other anonymous scripts (the tests)
     // which will conflict.
     if (global.testingBrowser) {
       return;
     }
     try {
       CoffeeScript.run(`testCompilingInsideAScriptDoesntScrewUpStackTraceLineNumber = ->
   if require?
     CoffeeScript = require './lib/coffeescript'
     CoffeeScript.compile ''
   throw new Error 'Some Error'
 do testCompilingInsideAScriptDoesntScrewUpStackTraceLineNumber`);
     } catch (error1) {
       error = error1;
     }
     // Make sure the line number reported is line 5 (the original Coffee source)
     // and not line 10 (the generated JavaScript).
     return eq(/testCompilingInsideAScriptDoesntScrewUpStackTraceLineNumber.*:(\d):/.exec(error.stack.toString())[1], '5');
   }
 [0;31m  dynamic import assertion[0m 
 [0;31m  TypeError [ERR_IMPORT_ATTRIBUTE_MISSING]: Module "data:application/json,{"ofLife":42}" needs an import attribute of "type: json"
     at validateAttributes (node:internal/modules/esm/assert:88:15)
     at defaultLoadSync (node:internal/modules/esm/load:168:3)
     at ModuleLoader.load (node:internal/modules/esm/loader:831:12)
     at ModuleLoader.loadAndTranslate (node:internal/modules/esm/loader:609:31)
     at #createModuleJob (node:internal/modules/esm/loader:640:36)
     at #getJobFromResolveResult (node:internal/modules/esm/loader:353:34)
     at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:321:41)
     at process.processTicksAndRejections (node:internal/process/task_queues:103:5)
     at async onImport.tracePromise.__proto__ (node:internal/modules/esm/loader:680:25)[0m 
   async function() {
     var exception, secret;
     try {
       ({
         default: secret
       } = (await import('data:application/json,{"ofLife":42}', {
         assert: {
           type: 'json'
         }
       })));
       return eq(secret.ofLife, 42);
     } catch (error) {
       exception = error;
       // This parses on Node 16.14.x but throws an error because JSON modules arent unflagged there yet; remove this try/catch once the unflagging of `--experimental-json-modules` is backported (see https://github.com/nodejs/node/pull/41736#issuecomment-1086738670)
       if (exception.message !== 'Invalid module "data:application/json,{"ofLife":42}" has an unsupported MIME type "application/json"') {
         throw exception;
       }
     }
   }
 [0;31m  assert keyword[0m 
 [0;31m  TypeError [ERR_IMPORT_ATTRIBUTE_MISSING]: Module "data:application/json,{"thatIAm":42}" needs an import attribute of "type: json"
     at validateAttributes (node:internal/modules/esm/assert:88:15)
     at defaultLoadSync (node:internal/modules/esm/load:168:3)
     at ModuleLoader.load (node:internal/modules/esm/loader:831:12)
     at ModuleLoader.loadAndTranslate (node:internal/modules/esm/loader:609:31)
     at #createModuleJob (node:internal/modules/esm/loader:640:36)
     at #getJobFromResolveResult (node:internal/modules/esm/loader:353:34)
     at ModuleLoader.getModuleJobForImport (node:internal/modules/esm/loader:321:41)
     at process.processTicksAndRejections (node:internal/process/task_queues:103:5)
     at async onImport.tracePromise.__proto__ (node:internal/modules/esm/loader:680:25)[0m 
   async function() {
     var assert, exception;
     assert = 1;
     try {
       ({
         default: assert
       } = (await import('data:application/json,{"thatIAm":42}', {
         assert: {
           type: 'json'
         }
       })));
       eq(assert.thatIAm, 42);
     } catch (error) {
       exception = error;
       // This parses on Node 16.14.x but throws an error because JSON modules arent unflagged there yet; remove this try/catch once the unflagging of `--experimental-json-modules` is backported (see https://github.com/nodejs/node/pull/41736#issuecomment-1086738670)
       if (exception.message !== 'Invalid module "data:application/json,{"thatIAm":42}" has an unsupported MIME type "application/json"') {
         throw exception;
       }
     }
     return eqJS(`import assert from 'regression-test'`, `import assert from 'regression-test';`);
   }
 Browserslist: caniuse-lite is outdated. Please run:
   npx browserslist@latest --update-db
   Why you should do it regularly: https://github.com/browserslist/browserslist#browsers-data-updating

@abhayagarwal-dev abhayagarwal-dev changed the title lookup: unskip glob and coffeescript lookup: unskip glob Sep 23, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants