1
0
Fork 0
mirror of https://github.com/actions/setup-python.git synced 2024-12-23 12:46:13 +00:00
setup-python/node_modules/loose-envify
Danny McCormick 39c08a0eaa Initial pass
2019-06-26 21:12:00 -04:00
..
cli.js Initial pass 2019-06-26 21:12:00 -04:00
custom.js Initial pass 2019-06-26 21:12:00 -04:00
index.js Initial pass 2019-06-26 21:12:00 -04:00
LICENSE Initial pass 2019-06-26 21:12:00 -04:00
loose-envify.js Initial pass 2019-06-26 21:12:00 -04:00
package.json Initial pass 2019-06-26 21:12:00 -04:00
README.md Initial pass 2019-06-26 21:12:00 -04:00
replace.js Initial pass 2019-06-26 21:12:00 -04:00

loose-envify

Build Status

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