Skip to content

Commit 9fe7d3a

Browse files
committed
benchmark: test fs.glob, if available
1 parent 561601d commit 9fe7d3a

File tree

1 file changed

+36
-16
lines changed

1 file changed

+36
-16
lines changed

benchmark.sh

+36-16
Original file line numberDiff line numberDiff line change
@@ -57,13 +57,13 @@ for p in "${patterns[@]}"; do
5757
# t zsh -c 'echo '"$p"' | wc -w'
5858
# fi
5959

60-
# echo -n $'node glob v7 sync \t'
60+
# echo -n $'glob v7 sync \t'
6161
# t node -e '
6262
# var glob=require(process.argv[1])
6363
# console.log(glob.sync(process.argv[2]).length)
6464
# ' "$wd/bench-working-dir/node_modules/glob7" "$p"
6565

66-
# echo -n $'node glob v7 async \t'
66+
# echo -n $'glob v7 async \t'
6767
# t node -e '
6868
# var glob=require(process.argv[1])
6969
# glob(process.argv[2], (er, files) => {
@@ -72,49 +72,58 @@ for p in "${patterns[@]}"; do
7272

7373
echo '~~ sync ~~'
7474

75-
echo -n $'node fast-glob sync \t'
75+
echo -n $'fast-glob sync \t'
7676
cat > "$wd"/bench-working-dir/fast-glob-sync.cjs <<CJS
7777
const fg = require('fast-glob')
7878
console.log(fg.sync([process.argv[2]]).length)
7979
CJS
8080
t node "$wd/bench-working-dir/fast-glob-sync.cjs" "$p"
8181

82-
echo -n $'node globby sync \t'
82+
echo -n $'globby sync \t'
8383
cat > "$wd"/bench-working-dir/globby-sync.mjs <<MJS
8484
import { globbySync } from "globby"
8585
console.log(globbySync([process.argv[2]]).length)
8686
MJS
8787
t node "$wd/bench-working-dir/globby-sync.mjs" "$p"
8888

89-
# echo -n $'node current globSync cjs \t'
89+
if node -e "require('fs').globSync || process.exit(1)"; then
90+
echo -n $'fs.globSync \t'
91+
cat > "$wd"/bench-working-dir/node-fs-glob-sync.js <<CJS
92+
const { globSync } = require('fs')
93+
console.log(globSync([process.argv[2]]).length)
94+
CJS
95+
t node "$wd/bench-working-dir/node-fs-glob-sync.js" "$p"
96+
fi
97+
98+
# echo -n $'current globSync cjs \t'
9099
# cat > "$wd/bench-working-dir/sync.cjs" <<CJS
91100
# const {globSync} = require("$wd/dist/cjs/index-cjs.js")
92101
# console.log(globSync(process.argv[2]).length)
93102
#CJS
94103
# t node "$wd/bench-working-dir/sync.cjs" "$p"
95104
#
96-
# echo -n $'node current glob async cjs \t'
105+
# echo -n $'current glob async cjs \t'
97106
# cat > "$wd/bench-working-dir/async.cjs" <<CJS
98107
# const glob = require("$wd/dist/cjs/index-cjs.js")
99108
# glob(process.argv[2]).then(files => console.log(files.length))
100109
#CJS
101110
# t node "$wd/bench-working-dir/async.cjs" "$p"
102111

103-
# echo -n $'node glob v8 sync \t'
112+
# echo -n $'glob v8 sync \t'
104113
# cat > "$wd/bench-working-dir/glob-8-sync.cjs" <<CJS
105114
# var glob=require('glob8')
106115
# console.log(glob.sync(process.argv[2]).length)
107116
# CJS
108117
# t node "$wd/bench-working-dir/glob-8-sync.cjs" "$p"
109118

110-
echo -n $'node current globSync mjs \t'
119+
echo -n $'current globSync mjs \t'
111120
cat > "$wd/bench-working-dir/sync.mjs" <<MJS
112121
import {globSync} from '$wd/dist/esm/index.js'
113122
console.log(globSync(process.argv[2]).length)
114123
MJS
115124
t node "$wd/bench-working-dir/sync.mjs" "$p"
116125

117-
echo -n $'node current glob syncStream \t'
126+
echo -n $'current glob syncStream \t'
118127
cat > "$wd/bench-working-dir/stream-sync.mjs" <<MJS
119128
import {globStreamSync} from '$wd/dist/esm/index.js'
120129
let c = 0
@@ -126,14 +135,14 @@ MJS
126135

127136
echo '~~ async ~~'
128137

129-
echo -n $'node fast-glob async \t'
138+
echo -n $'fast-glob async \t'
130139
cat > "$wd"/bench-working-dir/fast-glob-async.cjs <<CJS
131140
const fg = require('fast-glob')
132141
fg([process.argv[2]]).then(r => console.log(r.length))
133142
CJS
134143
t node "$wd/bench-working-dir/fast-glob-async.cjs" "$p"
135144

136-
echo -n $'node globby async \t'
145+
echo -n $'globby async \t'
137146
cat > "$wd"/bench-working-dir/globby-async.mjs <<MJS
138147
import { globby } from "globby"
139148
globby([process.argv[2]]).then((files) => {
@@ -142,7 +151,18 @@ CJS
142151
MJS
143152
t node "$wd/bench-working-dir/globby-async.mjs" "$p"
144153

145-
# echo -n $'node glob v8 async \t'
154+
if node -e "require('fs').glob || process.exit(1)"; then
155+
echo -n $'fs.glob \t'
156+
cat > "$wd"/bench-working-dir/node-fs-glob.js <<CJS
157+
const { glob } = require('fs')
158+
glob(process.argv[2], (er, results) => {
159+
console.log(er ? 0 : results.length)
160+
})
161+
CJS
162+
t node "$wd/bench-working-dir/node-fs-glob.js" "$p"
163+
fi
164+
165+
# echo -n $'glob v8 async \t'
146166
# cat > "$wd/bench-working-dir/glob-8-async.cjs" <<CJS
147167
# var glob=require('glob8')
148168
# glob(process.argv[2], (er, results) =>
@@ -151,14 +171,14 @@ MJS
151171
# CJS
152172
# t node "$wd/bench-working-dir/glob-8-async.cjs" "$p"
153173

154-
echo -n $'node current glob async mjs \t'
174+
echo -n $'current glob async mjs \t'
155175
cat > "$wd/bench-working-dir/async.mjs" <<MJS
156176
import { glob } from '$wd/dist/esm/index.js'
157177
glob(process.argv[2]).then(files => console.log(files.length))
158178
MJS
159179
t node "$wd/bench-working-dir/async.mjs" "$p"
160180

161-
echo -n $'node current glob stream \t'
181+
echo -n $'current glob stream \t'
162182
cat > "$wd/bench-working-dir/stream.mjs" <<MJS
163183
import {globStream} from '$wd/dist/esm/index.js'
164184
let c = 0
@@ -168,12 +188,12 @@ MJS
168188
MJS
169189
t node "$wd/bench-working-dir/stream.mjs" "$p"
170190

171-
# echo -n $'node current glob sync cjs -e \t'
191+
# echo -n $'current glob sync cjs -e \t'
172192
# t node -e '
173193
# console.log(require(process.argv[1]).sync(process.argv[2]).length)
174194
# ' "$wd/dist/cjs/index-cjs.js" "$p"
175195

176-
# echo -n $'node current glob async cjs -e\t'
196+
# echo -n $'current glob async cjs -e\t'
177197
# t node -e '
178198
# require(process.argv[1])(process.argv[2]).then((files) => console.log(files.length))
179199
# ' "$wd/dist/cjs/index-cjs.js" "$p"

0 commit comments

Comments
 (0)