82f2b76e25
We now use webpack instead of SystemJS, effectively bundling modules into one file (plus commons chunks) for every entry point. This results in a much smaller extension size (almost half). Furthermore we use yarn/npm even for extension run-time dependencies. This relieves us from manually vendoring and building dependencies. It's also easier to understand for new developers familiar with node. |
||
---|---|---|
.. | ||
.npmignore | ||
cli.js | ||
custom.js | ||
index.js | ||
LICENSE | ||
loose-envify.js | ||
package.json | ||
README.md | ||
replace.js |
loose-envify
Fast (and loose) selective process.env
replacer using js-tokens instead of an AST. Works just like envify but much faster.
Gotchas
- Doesn't handle broken syntax.
- Doesn't look inside embedded expressions in template strings.
- this won't work:
console.log(`the current env is ${process.env.NODE_ENV}`);
- Doesn't replace oddly-spaced or oddly-commented expressions.
- this won't work:
console.log(process./*won't*/env./*work*/NODE_ENV);
Usage/Options
loose-envify has the exact same interface as envify, including the CLI.
Benchmark
envify:
$ for i in {1..5}; do node bench/bench.js 'envify'; done
708ms
727ms
791ms
719ms
720ms
loose-envify:
$ for i in {1..5}; do node bench/bench.js '../'; done
51ms
52ms
52ms
52ms
52ms