Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

nconf

Package Overview
Dependencies
Maintainers
3
Versions
38
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

nconf - npm Package Compare versions

Comparing version 0.8.5 to 0.9.0

.eslintignore

659

CHANGELOG.md

@@ -1,334 +0,543 @@

v0.8.0 / Sun, 20 Sep 2015
0.9.0 / Tue, 31 Oct 2017
========================
* [b1ee63c](https://github.com/projects/nconf/commit/b1ee63c) fix error in transform function when dealing with dropped entries (#287) (`Augusto Franzoia`)
* [9f70ba1](https://github.com/projects/nconf/commit/9f70ba1) [doc] Update changelog (`Matt Hamann`)
* [8afcf99](https://github.com/projects/nconf/commit/8afcf99) [dist] Version bump. 0.9.0 (`Matt Hamann`)
* [b41c505](https://github.com/projects/nconf/commit/b41c505) Save conf to dedicated file (#283) (`Adrien Becchis`)
* [52e0a35](https://github.com/projects/nconf/commit/52e0a35) Update changelog (`Matt Hamann`)
* [fa215a4](https://github.com/projects/nconf/commit/fa215a4) add tests for the normal configuration of yargs via argv (`AdrieanKhisbe`)
* [802a8d6](https://github.com/projects/nconf/commit/802a8d6) test for yargs custom instance (more flexible check isYargs) (`AdrieanKhisbe`)
* [3e26bb2](https://github.com/projects/nconf/commit/3e26bb2) Add posibility to pass a yargs instance to argv() method (`Nicolas Deveaud`)
* [856fdf8](https://github.com/projects/nconf/commit/856fdf8) First pass at transform functions (#279) (`Matt Hamann`)
* [b9c345b](https://github.com/projects/nconf/commit/b9c345b) Fix `parseValues` option name (`Matt Hamann`)
* [35088a3](https://github.com/projects/nconf/commit/35088a3) Added nconf.any method (#278) (`Matt Hamann`)
* [ca10d0e](https://github.com/projects/nconf/commit/ca10d0e) Add basic linting rules (`Matt Hamann`)
* [bfb0220](https://github.com/projects/nconf/commit/bfb0220) Remove unused module (#277) (`Brian Harrington`)
* [532ac9c](https://github.com/projects/nconf/commit/532ac9c) Support parsing simple values from env/argv strings (#273) (`Matt Hamann`)
* [b8402d4](https://github.com/projects/nconf/commit/b8402d4) Enable support for parsing JSON environment variables (#272) (`Matt Hamann`)
v0.8.5 / Tue, 15 Aug 2017
=========================
* [0922563](https://github.com/indexzero/nconf/commit/0922563) [doc fix] Remove unused and outdated literate coding documentation. (`indexzero`)
* [4b5030d](https://github.com/indexzero/nconf/commit/4b5030d) [fix] Only merge actual objects, not `null` values. Fixes #150. (`indexzero`)
* [a3589fa](https://github.com/indexzero/nconf/commit/a3589fa) Fixing provider issue in source (`Rob Rodriguez`)
* [51653e6](https://github.com/indexzero/nconf/commit/51653e6) Passing the value parameter to the providers (`Rob Rodriguez`)
* [2030144](https://github.com/indexzero/nconf/commit/2030144) [test dist] Add `test/fixtures/secure.json`. (`indexzero`)
* [9dbed2d](https://github.com/indexzero/nconf/commit/9dbed2d) [doc minor] Update docs for secure information. (`indexzero`)
* [0358545](https://github.com/indexzero/nconf/commit/0358545) [test api] Make the format capable of sub-objects. (`indexzero`)
* [04c0f3a](https://github.com/indexzero/nconf/commit/04c0f3a) [api test] Encrypt individual keys instead of entire stringified contents. Added basic unit tests. (`indexzero`)
* [d2b3561](https://github.com/indexzero/nconf/commit/d2b3561) [dist] Update `.travis.yml`. (`indexzero`)
* [442d2b4](https://github.com/indexzero/nconf/commit/442d2b4) [api] Allow for `secure` to be simply a secret string. (`indexzero`)
* [2de2bc0](https://github.com/indexzero/nconf/commit/2de2bc0) [api] Allow for "secure" option to be passed to `nconf.stores.File` to perform content encryption / decryption with `crypto.createCipher`. (`indexzero`)
* [5d95f13](https://github.com/indexzero/nconf/commit/5d95f13) filter out undefined values (`Christian Murphy`)
* [7d6be32](https://github.com/indexzero/nconf/commit/7d6be32) [travis] fix yaml syntax (supposed to solve nvm bugs #182) (`Joseph Page`)
* [abeeca0](https://github.com/indexzero/nconf/commit/abeeca0) [travis] fix npm bugs for node 0.8 (recommended way) (`Joseph Page`)
* [59056fe](https://github.com/indexzero/nconf/commit/59056fe) Update Async and ini (`Christian Murphy`)
* [a2b812f](https://github.com/indexzero/nconf/commit/a2b812f) Add travis tests for iojs (`Joseph Page`)
* [32d560c](https://github.com/indexzero/nconf/commit/32d560c) Add tests for node 0.12 (`Joseph Page`)
* [8a21ef3](https://github.com/indexzero/nconf/commit/8a21ef3) env({lowerCase:true}) option to make it possible to get() keys in lower case (`Olivier Lalonde`)
* [89dff39](https://github.com/indexzero/nconf/commit/89dff39) Quick grammar fix (`Nick Heiner`)
* [339e59a](https://github.com/indexzero/nconf/commit/339e59a) fix random fails on tests that use child process (`Pierre Beaujeu`)
* [a65e1a3](https://github.com/indexzero/nconf/commit/a65e1a3) update async (`Christian Murphy`)
* [a82b539](https://github.com/indexzero/nconf/commit/a82b539) update badge and use container build (`Christian Murphy`)
* [e5b33ce](https://github.com/indexzero/nconf/commit/e5b33ce) Add license attribute (`Gilad Peleg`)
* [f46c449](https://github.com/projects/nconf/commit/f46c449) 0.8.5 (`Matt Hamann`)
* [552300a](https://github.com/projects/nconf/commit/552300a) [doc] Document lowerCase option in .env(options) (#268) (`Matt Hamann`)
* [5e8a34d](https://github.com/projects/nconf/commit/5e8a34d) enable use with webpack by removing unnecessary fs call (#252) (`evoye`)
* [608b607](https://github.com/projects/nconf/commit/608b607) Add test for merging with defaults (#255) (`Chris Manson`)
* [d70b6a0](https://github.com/projects/nconf/commit/d70b6a0) Fixed some issues with code escaping (`Charter Jacobson`)
* [392c602](https://github.com/projects/nconf/commit/392c602) Copy `process.env` before lower-casing the keys (`Jan Klosinski`)
0.8.4 / Wed, 3 Feb 2016
=======================
* [3d4e589](https://github.com/projects/nconf/commit/3d4e589) [dist] Version bump. 0.8.4 (`Jarrett Cruger`)
* [4431c33](https://github.com/projects/nconf/commit/4431c33) [fix] handle buffers so we dont get ambiguous errors when we dont strictly read the file as utf8 (`Jarrett Cruger`)
0.8.3 / Mon, 1 Feb 2016
=======================
* [54cab20](https://github.com/projects/nconf/commit/54cab20) [dist] Version bump. 0.8.3 (`Jarrett Cruger`)
* [b447268](https://github.com/projects/nconf/commit/b447268) [fix] cleanup secure with new module (`Jarrett Cruger`)
* [de551d4](https://github.com/projects/nconf/commit/de551d4) Update README.md (`Mark Oberemk`)
* [c242f77](https://github.com/projects/nconf/commit/c242f77) [travis test] setup coveralls config + update README badges (`AdrieanKhisbe`)
* [c8dbede](https://github.com/projects/nconf/commit/c8dbede) [test] setup istanbul coverage (`AdrieanKhisbe`)
* [bdecdc2](https://github.com/projects/nconf/commit/bdecdc2) [travis] add v5 to node version tested (`AdrieanKhisbe`)
* [5d6e236](https://github.com/projects/nconf/commit/5d6e236) fixed (`Wojtek Turyn`)
* [37a84ae](https://github.com/projects/nconf/commit/37a84ae) required() method (`Wojtek Turyn`)
0.8.2 / Wed, 7 Oct 2015
=======================
* [ddee9bc](https://github.com/projects/nconf/commit/ddee9bc) [dist] Version bump. 0.8.2 (`indexzero`)
* [86bfd7c](https://github.com/projects/nconf/commit/86bfd7c) [fix] Do not trim `\n` from files read in. (`indexzero`)
0.8.1 / Fri, 2 Oct 2015
=======================
* [ff0f174](https://github.com/projects/nconf/commit/ff0f174) [dist] Version bump. 0.8.1 (`indexzero`)
* [11b2448](https://github.com/projects/nconf/commit/11b2448) [fix] Correct property path. Trim read secret keys from disk. (`indexzero`)
* [438a2c8](https://github.com/projects/nconf/commit/438a2c8) [doc] Remove `node@0.8.0` from travis. Drop `nodeci` because it is 503 atm`. (`indexzero`)
0.8.0 / Sun, 20 Sep 2015
========================
* [ebd8e48](https://github.com/projects/nconf/commit/ebd8e48) [dist] Version bump. 0.8.0 (`indexzero`)
* [be085c9](https://github.com/projects/nconf/commit/be085c9) [doc] Update CHANGELOG.md. (`indexzero`)
* [0922563](https://github.com/projects/nconf/commit/0922563) [doc fix] Remove unused and outdated literate coding documentation. (`indexzero`)
* [4b5030d](https://github.com/projects/nconf/commit/4b5030d) [fix] Only merge actual objects, not `null` values. Fixes #150. (`indexzero`)
* [a3589fa](https://github.com/projects/nconf/commit/a3589fa) Fixing provider issue in source (`Rob Rodriguez`)
* [51653e6](https://github.com/projects/nconf/commit/51653e6) Passing the value parameter to the providers (`Rob Rodriguez`)
* [2030144](https://github.com/projects/nconf/commit/2030144) [test dist] Add `test/fixtures/secure.json`. (`indexzero`)
* [9dbed2d](https://github.com/projects/nconf/commit/9dbed2d) [doc minor] Update docs for secure information. (`indexzero`)
* [0358545](https://github.com/projects/nconf/commit/0358545) [test api] Make the format capable of sub-objects. (`indexzero`)
* [04c0f3a](https://github.com/projects/nconf/commit/04c0f3a) [api test] Encrypt individual keys instead of entire stringified contents. Added basic unit tests. (`indexzero`)
* [d2b3561](https://github.com/projects/nconf/commit/d2b3561) [dist] Update `.travis.yml`. (`indexzero`)
* [442d2b4](https://github.com/projects/nconf/commit/442d2b4) [api] Allow for `secure` to be simply a secret string. (`indexzero`)
* [2de2bc0](https://github.com/projects/nconf/commit/2de2bc0) [api] Allow for "secure" option to be passed to `nconf.stores.File` to perform content encryption / decryption with `crypto.createCipher`. (`indexzero`)
* [5d95f13](https://github.com/projects/nconf/commit/5d95f13) filter out undefined values (`Christian Murphy`)
* [7d6be32](https://github.com/projects/nconf/commit/7d6be32) [travis] fix yaml syntax (supposed to solve nvm bugs #182) (`Joseph Page`)
* [abeeca0](https://github.com/projects/nconf/commit/abeeca0) [travis] fix npm bugs for node 0.8 (recommended way) (`Joseph Page`)
* [59056fe](https://github.com/projects/nconf/commit/59056fe) Update Async and ini (`Christian Murphy`)
* [a2b812f](https://github.com/projects/nconf/commit/a2b812f) Add travis tests for iojs (`Joseph Page`)
* [32d560c](https://github.com/projects/nconf/commit/32d560c) Add tests for node 0.12 (`Joseph Page`)
* [8a21ef3](https://github.com/projects/nconf/commit/8a21ef3) env({lowerCase:true}) option to make it possible to get() keys in lower case (`Olivier Lalonde`)
* [89dff39](https://github.com/projects/nconf/commit/89dff39) Quick grammar fix (`Nick Heiner`)
* [339e59a](https://github.com/projects/nconf/commit/339e59a) fix random fails on tests that use child process (`Pierre Beaujeu`)
* [a65e1a3](https://github.com/projects/nconf/commit/a65e1a3) update async (`Christian Murphy`)
* [a82b539](https://github.com/projects/nconf/commit/a82b539) update badge and use container build (`Christian Murphy`)
* [e5b33ce](https://github.com/projects/nconf/commit/e5b33ce) Add license attribute (`Gilad Peleg`)
0.7.2 / Tue, 4 Aug 2015
=======================
* [c2b8b97](https://github.com/indexzero/nconf/commit/c2b8b97) [dist] Version bump. 0.7.2 (`indexzero`)
* [3c11ef5](https://github.com/indexzero/nconf/commit/3c11ef5) fix: env.match test (`Remy Sharp`)
* [372521b](https://github.com/indexzero/nconf/commit/372521b) [doc] Add the badges!. (`indexzero`)
* [80ec01b](https://github.com/indexzero/nconf/commit/80ec01b) replace optimist with yargs (`Christian Murphy`)
* [6d86950](https://github.com/indexzero/nconf/commit/6d86950) Grammar nit (`Nick Heiner`)
* [c2b8b97](https://github.com/projects/nconf/commit/c2b8b97) [dist] Version bump. 0.7.2 (`indexzero`)
* [3c11ef5](https://github.com/projects/nconf/commit/3c11ef5) fix: env.match test (`Remy Sharp`)
* [372521b](https://github.com/projects/nconf/commit/372521b) [doc] Add the badges!. (`indexzero`)
* [80ec01b](https://github.com/projects/nconf/commit/80ec01b) replace optimist with yargs (`Christian Murphy`)
* [6d86950](https://github.com/projects/nconf/commit/6d86950) Grammar nit (`Nick Heiner`)
v0.7.1 / Wed, 26 Nov 2014
=========================
* [dc6aed2](https://github.com/indexzero/nconf/commit/dc6aed2) [dist] Version bump. 0.7.1 (`Jarrett Cruger`)
* [87a3b82](https://github.com/indexzero/nconf/commit/87a3b82) [fix] we shouldnt be reversing here fixes #127 (`Jarrett Cruger`)
* [6271cdb](https://github.com/indexzero/nconf/commit/6271cdb) Revert "fixing the tests" (`Jarrett Cruger`)
* [f0d5b6e](https://github.com/indexzero/nconf/commit/f0d5b6e) [dist] Fix travis. (`indexzero`)
v0.7.1 / Wed, 26 Nov 2014
=========================
* [dc6aed2](https://github.com/projects/nconf/commit/dc6aed2) [dist] Version bump. 0.7.1 (`Jarrett Cruger`)
* [87a3b82](https://github.com/projects/nconf/commit/87a3b82) [fix] we shouldnt be reversing here fixes #127 (`Jarrett Cruger`)
* [6271cdb](https://github.com/projects/nconf/commit/6271cdb) Revert "fixing the tests" (`Jarrett Cruger`)
* [f0d5b6e](https://github.com/projects/nconf/commit/f0d5b6e) [dist] Fix travis. (`indexzero`)
v0.7.0 / Wed, 26 Nov 2014
=========================
* [a2a1321](https://github.com/indexzero/nconf/commit/a2a1321) [dist] Version bump. 0.7.0 (`indexzero`)
* [352f075](https://github.com/indexzero/nconf/commit/352f075) [dist] "Real" CHANGELOG.md again. (`indexzero`)
* [af0e9fb](https://github.com/indexzero/nconf/commit/af0e9fb) [dist fix] Cleanup some whitespace. (`indexzero`)
* [0934255](https://github.com/indexzero/nconf/commit/0934255) [fix] Fixed regression introduced by #98. (`indexzero`)
* [8d5fb25](https://github.com/indexzero/nconf/commit/8d5fb25) [fix] Fix my own sloppy coding fixing the sloppy coding from #76. (`indexzero`)
* [f07bc40](https://github.com/indexzero/nconf/commit/f07bc40) [fix] Fix inconsistent style from #98. (`indexzero`)
* [0b8aa90](https://github.com/indexzero/nconf/commit/0b8aa90) [fix test] Remove leftover `console.log()` from #79. (`indexzero`)
* [f771500](https://github.com/indexzero/nconf/commit/f771500) [dist] Semantic cleanup from sloppy coding in #76. (`indexzero`)
* [ffce2cb](https://github.com/indexzero/nconf/commit/ffce2cb) [dist] Update package.json versions. (`indexzero`)
* [6301d7d](https://github.com/indexzero/nconf/commit/6301d7d) Update Readme; multiple file() needs custom key (`Mitchell McKenna`)
* [f69e43a](https://github.com/indexzero/nconf/commit/f69e43a) fixing the tests (`Chris Manson`)
* [c8b6c98](https://github.com/indexzero/nconf/commit/c8b6c98) Adding helpful information in case parsing failed. (`Martin Heidegger`)
* [8105c76](https://github.com/indexzero/nconf/commit/8105c76) [fix] only reverse keys for "get" action to be safe. (`Christopher Jeffrey`)
* [2241a36](https://github.com/indexzero/nconf/commit/2241a36) [fix] have latter stores precede the former stores again. (`Christopher Jeffrey`)
* [0bb89ee](https://github.com/indexzero/nconf/commit/0bb89ee) [fix] have latter stores precede the former stores. (`Christopher Jeffrey`)
* [43505a5](https://github.com/indexzero/nconf/commit/43505a5) Use ~ for dependencies (`Gabe Gorelick`)
* [05d73de](https://github.com/indexzero/nconf/commit/05d73de) [fix] No need to test 0.6 anymore (`Jarrett Cruger`)
* [79b9b84](https://github.com/indexzero/nconf/commit/79b9b84) [doc] Add a Literal example to add() (`Tommy Stanton`)
* [3a7b788](https://github.com/indexzero/nconf/commit/3a7b788) [doc] The store for File is empty if non-existent (`Tommy Stanton`)
* [9891814](https://github.com/indexzero/nconf/commit/9891814) Delete CHANGELOG.md (`Alexey Simonenko`)
* [120f5f0](https://github.com/indexzero/nconf/commit/120f5f0) added documentation (`joaoafrmartins`)
* [681fd2f](https://github.com/indexzero/nconf/commit/681fd2f) added regexp filtering to nconf env store (`joaoafrmartins`)
* [039057c](https://github.com/indexzero/nconf/commit/039057c) allow different separator for memorystore (`José F. Romaniello`)
* [b73b0e1](https://github.com/indexzero/nconf/commit/b73b0e1) attach help and showHelp arguments to the argv store (`Johnny Domino`)
* [4894c8f](https://github.com/indexzero/nconf/commit/4894c8f) resolves #64 passing usage string to optimist (`Johnny Domino`)
v0.7.0 / Wed, 26 Nov 2014
=========================
* [a2a1321](https://github.com/projects/nconf/commit/a2a1321) [dist] Version bump. 0.7.0 (`indexzero`)
* [352f075](https://github.com/projects/nconf/commit/352f075) [dist] "Real" CHANGELOG.md again. (`indexzero`)
* [af0e9fb](https://github.com/projects/nconf/commit/af0e9fb) [dist fix] Cleanup some whitespace. (`indexzero`)
* [0934255](https://github.com/projects/nconf/commit/0934255) [fix] Fixed regression introduced by #98. (`indexzero`)
* [8d5fb25](https://github.com/projects/nconf/commit/8d5fb25) [fix] Fix my own sloppy coding fixing the sloppy coding from #76. (`indexzero`)
* [f07bc40](https://github.com/projects/nconf/commit/f07bc40) [fix] Fix inconsistent style from #98. (`indexzero`)
* [0b8aa90](https://github.com/projects/nconf/commit/0b8aa90) [fix test] Remove leftover `console.log()` from #79. (`indexzero`)
* [f771500](https://github.com/projects/nconf/commit/f771500) [dist] Semantic cleanup from sloppy coding in #76. (`indexzero`)
* [ffce2cb](https://github.com/projects/nconf/commit/ffce2cb) [dist] Update package.json versions. (`indexzero`)
* [6301d7d](https://github.com/projects/nconf/commit/6301d7d) Update Readme; multiple file() needs custom key (`Mitchell McKenna`)
* [f69e43a](https://github.com/projects/nconf/commit/f69e43a) fixing the tests (`Chris Manson`)
* [c8b6c98](https://github.com/projects/nconf/commit/c8b6c98) Adding helpful information in case parsing failed. (`Martin Heidegger`)
* [8105c76](https://github.com/projects/nconf/commit/8105c76) [fix] only reverse keys for "get" action to be safe. (`Christopher Jeffrey`)
* [2241a36](https://github.com/projects/nconf/commit/2241a36) [fix] have latter stores precede the former stores again. (`Christopher Jeffrey`)
* [0bb89ee](https://github.com/projects/nconf/commit/0bb89ee) [fix] have latter stores precede the former stores. (`Christopher Jeffrey`)
* [43505a5](https://github.com/projects/nconf/commit/43505a5) Use ~ for dependencies (`Gabe Gorelick`)
* [05d73de](https://github.com/projects/nconf/commit/05d73de) [fix] No need to test 0.6 anymore (`Jarrett Cruger`)
* [79b9b84](https://github.com/projects/nconf/commit/79b9b84) [doc] Add a Literal example to add() (`Tommy Stanton`)
* [3a7b788](https://github.com/projects/nconf/commit/3a7b788) [doc] The store for File is empty if non-existent (`Tommy Stanton`)
* [9891814](https://github.com/projects/nconf/commit/9891814) Delete CHANGELOG.md (`Alexey Simonenko`)
* [120f5f0](https://github.com/projects/nconf/commit/120f5f0) added documentation (`joaoafrmartins`)
* [681fd2f](https://github.com/projects/nconf/commit/681fd2f) added regexp filtering to nconf env store (`joaoafrmartins`)
* [039057c](https://github.com/projects/nconf/commit/039057c) allow different separator for memorystore (`José F. Romaniello`)
* [b73b0e1](https://github.com/projects/nconf/commit/b73b0e1) attach help and showHelp arguments to the argv store (`Johnny Domino`)
* [4894c8f](https://github.com/projects/nconf/commit/4894c8f) resolves #64 passing usage string to optimist (`Johnny Domino`)
v0.6.9 / Sun, 1 Dec 2013
========================
* [022b9bc](https://github.com/indexzero/nconf/commit/022b9bc) [dist] Version bump. 0.6.9 (`Jarrett Cruger`)
* [9aa33b5](https://github.com/indexzero/nconf/commit/9aa33b5) [dist] bump optimist version, fixes #89 (`Jarrett Cruger`)
* [92311c8](https://github.com/indexzero/nconf/commit/92311c8) [rm] kill pkginfo (`Jarrett Cruger`)
* [c713936](https://github.com/indexzero/nconf/commit/c713936) [dist] bump async (`Jarrett Cruger`)
v0.6.9 / Sun, 1 Dec 2013
========================
* [022b9bc](https://github.com/projects/nconf/commit/022b9bc) [dist] Version bump. 0.6.9 (`Jarrett Cruger`)
* [9aa33b5](https://github.com/projects/nconf/commit/9aa33b5) [dist] bump optimist version, fixes #89 (`Jarrett Cruger`)
* [92311c8](https://github.com/projects/nconf/commit/92311c8) [rm] kill pkginfo (`Jarrett Cruger`)
* [c713936](https://github.com/projects/nconf/commit/c713936) [dist] bump async (`Jarrett Cruger`)
v0.6.8 / Tue, 29 Oct 2013
=========================
* [cd81efa](https://github.com/indexzero/nconf/commit/cd81efa) [dist] Version bump. 0.6.8 (`Jarrett Cruger`)
* [6c1eb5e](https://github.com/indexzero/nconf/commit/6c1eb5e) fixed white spacing and added (embarrassing absent) variable declarations (`midknight41`)
* [5546469](https://github.com/indexzero/nconf/commit/5546469) updated .travis.yml as travis doesn't support node 0.4 or 0.9 (`midknight41`)
* [29f1ca2](https://github.com/indexzero/nconf/commit/29f1ca2) added support for BOM in load() and loadSync() (`midknight41`)
* [ada15db](https://github.com/indexzero/nconf/commit/ada15db) Test that invalid file name is indicated (`Marcin Floryan`)
* [0135d95](https://github.com/indexzero/nconf/commit/0135d95) Additional error information when JSON config file cannot be read (`Marcin Floryan`)
* [5d2ebfb](https://github.com/indexzero/nconf/commit/5d2ebfb) Added test to confirm merging an Object and null behaves as expected. (`Michael Schoonmaker`)
* [ed41c51](https://github.com/indexzero/nconf/commit/ed41c51) Updated Memory.merge to handle null values (`Michael Schoonmaker`)
v0.6.8 / Tue, 29 Oct 2013
=========================
* [cd81efa](https://github.com/projects/nconf/commit/cd81efa) [dist] Version bump. 0.6.8 (`Jarrett Cruger`)
* [6c1eb5e](https://github.com/projects/nconf/commit/6c1eb5e) fixed white spacing and added (embarrassing absent) variable declarations (`midknight41`)
* [ccd609c](https://github.com/projects/nconf/commit/ccd609c) updated version of vows as v0.6 didn't work with node 0.10 (`midknight41`)
* [5546469](https://github.com/projects/nconf/commit/5546469) updated .travis.yml as travis doesn't support node 0.4 or 0.9 (`midknight41`)
* [6641ed2](https://github.com/projects/nconf/commit/6641ed2) made bom tests more meaningful (`midknight41`)
* [2ce8aea](https://github.com/projects/nconf/commit/2ce8aea) made bom tests more meaningful (`midknight41`)
* [f7733c1](https://github.com/projects/nconf/commit/f7733c1) included bom test fixtures (`midknight41`)
* [24f77a0](https://github.com/projects/nconf/commit/24f77a0) included bom test fixtures (`midknight41`)
* [29f1ca2](https://github.com/projects/nconf/commit/29f1ca2) added support for BOM in load() and loadSync() (`midknight41`)
* [ada15db](https://github.com/projects/nconf/commit/ada15db) Test that invalid file name is indicated (`Marcin Floryan`)
* [0135d95](https://github.com/projects/nconf/commit/0135d95) Additional error information when JSON config file cannot be read (`Marcin Floryan`)
* [5d2ebfb](https://github.com/projects/nconf/commit/5d2ebfb) Added test to confirm merging an Object and null behaves as expected. (`Michael Schoonmaker`)
* [ed41c51](https://github.com/projects/nconf/commit/ed41c51) Updated Memory.merge to handle null values (`Michael Schoonmaker`)
v0.6.7 / Thu, 20 Dec 2012
=========================
* [d77c55d](https://github.com/flatiron/nconf/commit/d77c55d) [dist] Version bump. 0.6.7 (`indexzero`)
* [bb57c49](https://github.com/flatiron/nconf/commit/bb57c49) Prefer this fix for #65 to 6045618 (`Michael Hart`)
v0.6.7 / Thu, 20 Dec 2012
=========================
* [d77c55d](https://github.com/projects/nconf/commit/d77c55d) [dist] Version bump. 0.6.7 (`indexzero`)
* [bb57c49](https://github.com/projects/nconf/commit/bb57c49) Prefer this fix for #65 to 6045618 (`Michael Hart`)
v0.6.6 / Thu, 20 Dec 2012
=========================
* [aec2b4e](https://github.com/flatiron/nconf/commit/aec2b4e) [dist] Version bump. 0.6.6 (`indexzero`)
* [6045618](https://github.com/flatiron/nconf/commit/6045618) [fix] Fix for #65 (`indexzero`)
* [0d795ec](https://github.com/flatiron/nconf/commit/0d795ec) [test] Better tests to show #65 (`indexzero`)
* [f19f0b6](https://github.com/flatiron/nconf/commit/f19f0b6) [test] Added failing test to illustrate #65 (`indexzero`)
* [bcbaf3a](https://github.com/flatiron/nconf/commit/bcbaf3a) [dist] Bump version to 0.6.5 (`Maciej Małecki`)
* [8b65e19](https://github.com/flatiron/nconf/commit/8b65e19) [test] Test on newer node versions (`Maciej Małecki`)
* [8e987b8](https://github.com/flatiron/nconf/commit/8e987b8) make it possible to use other formats than json in common.loadFiles and common.loadFilesSync (`Christian Tellnes`)
* [da39d3c](https://github.com/flatiron/nconf/commit/da39d3c) [fix] null values should merge properly instead of throwing errors (`Bradley Meck`)
* [7421836](https://github.com/flatiron/nconf/commit/7421836) [fix] heirarchy fixture file path wrong in tests (`Bradley Meck`)
* [683f789](https://github.com/flatiron/nconf/commit/683f789) [fix] #59 root get/set should work via null/undefined as key (`Bradley Meck`)
* [0f092ab](https://github.com/flatiron/nconf/commit/0f092ab) Added docs for options hash to optimist. (`Ethan Winn`)
v0.6.6 / Thu, 20 Dec 2012
=========================
* [aec2b4e](https://github.com/projects/nconf/commit/aec2b4e) [dist] Version bump. 0.6.6 (`indexzero`)
* [6045618](https://github.com/projects/nconf/commit/6045618) [fix] Fix for #65 (`indexzero`)
* [0d795ec](https://github.com/projects/nconf/commit/0d795ec) [test] Better tests to show #65 (`indexzero`)
* [f19f0b6](https://github.com/projects/nconf/commit/f19f0b6) [test] Added failing test to illustrate #65 (`indexzero`)
v0.6.5 / Fri, 2 Nov 2012
========================
v0.6.5 / Fri, 2 Nov 2012
========================
* [bcbaf3a](https://github.com/projects/nconf/commit/bcbaf3a) [dist] Bump version to 0.6.5 (`Maciej Małecki`)
* [8b65e19](https://github.com/projects/nconf/commit/8b65e19) [test] Test on newer node versions (`Maciej Małecki`)
* [8e987b8](https://github.com/projects/nconf/commit/8e987b8) make it possible to use other formats than json in common.loadFiles and common.loadFilesSync (`Christian Tellnes`)
* [da39d3c](https://github.com/projects/nconf/commit/da39d3c) [fix] null values should merge properly instead of throwing errors (`Bradley Meck`)
* [7421836](https://github.com/projects/nconf/commit/7421836) [fix] heirarchy fixture file path wrong in tests (`Bradley Meck`)
* [683f789](https://github.com/projects/nconf/commit/683f789) [fix] #59 root get/set should work via null/undefined as key (`Bradley Meck`)
* [0f092ab](https://github.com/projects/nconf/commit/0f092ab) Added docs for options hash to optimist. (`Ethan Winn`)
v0.6.4 / Tue, 10 Jul 2012
=========================
* [7279bc1](https://github.com/flatiron/nconf/commit/7279bc1) [dist] Version bump. 0.6.4 (`indexzero`)
* [d96d254](https://github.com/flatiron/nconf/commit/d96d254) [fix] Fix regression introduced by 36e061c4bda8d79f657dc24b1dcf1937f31d7efe (`indexzero`)
* [7e8d9d6](https://github.com/flatiron/nconf/commit/7e8d9d6) [test] Added failing test for `.save()` regression introduced by @russfrank in 36e061c4bda8d79f657dc24b1dcf1937f31d7efe (`indexzero`)
* [04e2230](https://github.com/flatiron/nconf/commit/04e2230) [minor doc] Update file header in test/provider-test.js (`indexzero`)
v0.6.4 / Tue, 10 Jul 2012
=========================
* [7279bc1](https://github.com/projects/nconf/commit/7279bc1) [dist] Version bump. 0.6.4 (`indexzero`)
* [d96d254](https://github.com/projects/nconf/commit/d96d254) [fix] Fix regression introduced by 36e061c4bda8d79f657dc24b1dcf1937f31d7efe (`indexzero`)
* [7e8d9d6](https://github.com/projects/nconf/commit/7e8d9d6) [test] Added failing test for `.save()` regression introduced by @russfrank in 36e061c4bda8d79f657dc24b1dcf1937f31d7efe (`indexzero`)
* [04e2230](https://github.com/projects/nconf/commit/04e2230) [minor doc] Update file header in test/provider-test.js (`indexzero`)
v0.6.3 / Tue, 10 Jul 2012
=========================
* [c7c6b6f](https://github.com/flatiron/nconf/commit/c7c6b6f) [dist] Version bump. 0.6.3 (`indexzero`)
* [3073430](https://github.com/flatiron/nconf/commit/3073430) [api test doc] Make options to `Provider.prototype.file` take more flexible options (`indexzero`)
* [8b53c12](https://github.com/flatiron/nconf/commit/8b53c12) [minor] Use locally scoped `path` variable (`indexzero`)
v0.6.3 / Tue, 10 Jul 2012
=========================
* [c7c6b6f](https://github.com/projects/nconf/commit/c7c6b6f) [dist] Version bump. 0.6.3 (`indexzero`)
* [3073430](https://github.com/projects/nconf/commit/3073430) [api test doc] Make options to `Provider.prototype.file` take more flexible options (`indexzero`)
* [8b53c12](https://github.com/projects/nconf/commit/8b53c12) [minor] Use locally scoped `path` variable (`indexzero`)
v0.6.2 / Tue, 10 Jul 2012
=========================
* [80a7973](https://github.com/flatiron/nconf/commit/80a7973) [dist] Version bump. 0.6.2 (`indexzero`)
* [7515f66](https://github.com/flatiron/nconf/commit/7515f66) [fix] Ensure that all options are passed to `Provider.prototype.add` in `Provider.prototype.file`. Fixes #51 [doc] Update README.md and method documentation [dist] Remove vim comments (`indexzero`)
v0.6.2 / Tue, 10 Jul 2012
=========================
* [80a7973](https://github.com/projects/nconf/commit/80a7973) [dist] Version bump. 0.6.2 (`indexzero`)
* [7515f66](https://github.com/projects/nconf/commit/7515f66) [fix] Ensure that all options are passed to `Provider.prototype.add` in `Provider.prototype.file`. Fixes #51 [doc] Update README.md and method documentation [dist] Remove vim comments (`indexzero`)
v0.6.1 / Sun, 8 Jul 2012
========================
* [eeddb70](https://github.com/flatiron/nconf/commit/eeddb70) [dist] Version bump. 0.6.1 (`indexzero`)
* [9aaafc5](https://github.com/flatiron/nconf/commit/9aaafc5) Ugh, fixed whitespace (`Michael Hart`)
* [3c08fad](https://github.com/flatiron/nconf/commit/3c08fad) Changed to as it's more accurate (`Michael Hart`)
* [e15f787](https://github.com/flatiron/nconf/commit/e15f787) Updated README and allowed a simpley syntax (`Michael Hart`)
* [92d4e9e](https://github.com/flatiron/nconf/commit/92d4e9e) Added test and updated docs (`Michael Hart`)
* [8921d05](https://github.com/flatiron/nconf/commit/8921d05) Added support for nested configs via env (`Michael Hart`)
* [6cbc323](https://github.com/flatiron/nconf/commit/6cbc323) Add reset to the list of destructive commands (`Michael Hart`)
* [26d81e8](https://github.com/flatiron/nconf/commit/26d81e8) Merge objects if necessary when traversing stores on get() (`Michael Hart`)
* [83440f9](https://github.com/flatiron/nconf/commit/83440f9) fix spelling in error message (`Christian Tellnes`)
* [87b0dd0](https://github.com/flatiron/nconf/commit/87b0dd0) [minor] Use `fs.exists` when available (`Maciej Małecki`)
* [1f67d35](https://github.com/flatiron/nconf/commit/1f67d35) [dist] Fix maintainers field (`Christian Howe`)
* [6353d02](https://github.com/flatiron/nconf/commit/6353d02) api and doc change for flatiron/nconf#28 (`.file` may now take a string instead of an object) (`Jonathan Stewmon`)
* [d3e6897](https://github.com/flatiron/nconf/commit/d3e6897) Proper teardowns in `complete-test.js` (`Russell Frank`)
* [94bdb7d](https://github.com/flatiron/nconf/commit/94bdb7d) Added `complete-test.js` & fixture. (`Russell Frank`)
* [36e061c](https://github.com/flatiron/nconf/commit/36e061c) Fixes to `Provider.save()` and tests. (`Russell Frank`)
* [29eb5f9](https://github.com/flatiron/nconf/commit/29eb5f9) [minor] Fix whitespaces (`Pavan Kumar Sunkara`)
* [6ce0b7a](https://github.com/flatiron/nconf/commit/6ce0b7a) Surfacing additional JSON.stringify arguments in formats.json.stringify, and adding the json_spacing option to the File constructor. (`Jordan Harband`)
* [b369931](https://github.com/flatiron/nconf/commit/b369931) [minor] Use `fs.existsSync` when available (`Maciej Małecki`)
* [d8c4749](https://github.com/flatiron/nconf/commit/d8c4749) [test] Test on `node@0.7` (`Maciej Małecki`)
* [464af41](https://github.com/flatiron/nconf/commit/464af41) [fix test] Fix bad test assertion (`indexzero`)
v0.6.1 / Sun, 8 Jul 2012
========================
* [eeddb70](https://github.com/projects/nconf/commit/eeddb70) [dist] Version bump. 0.6.1 (`indexzero`)
* [9aaafc5](https://github.com/projects/nconf/commit/9aaafc5) Ugh, fixed whitespace (`Michael Hart`)
* [3c08fad](https://github.com/projects/nconf/commit/3c08fad) Changed to as it's more accurate (`Michael Hart`)
* [e15f787](https://github.com/projects/nconf/commit/e15f787) Updated README and allowed a simpley syntax (`Michael Hart`)
* [92d4e9e](https://github.com/projects/nconf/commit/92d4e9e) Added test and updated docs (`Michael Hart`)
* [8921d05](https://github.com/projects/nconf/commit/8921d05) Added support for nested configs via env (`Michael Hart`)
* [6cbc323](https://github.com/projects/nconf/commit/6cbc323) Add reset to the list of destructive commands (`Michael Hart`)
* [26d81e8](https://github.com/projects/nconf/commit/26d81e8) Merge objects if necessary when traversing stores on get() (`Michael Hart`)
* [83440f9](https://github.com/projects/nconf/commit/83440f9) fix spelling in error message (`Christian Tellnes`)
* [87b0dd0](https://github.com/projects/nconf/commit/87b0dd0) [minor] Use `fs.exists` when available (`Maciej Małecki`)
* [1f67d35](https://github.com/projects/nconf/commit/1f67d35) [dist] Fix maintainers field (`Christian Howe`)
* [6353d02](https://github.com/projects/nconf/commit/6353d02) api and doc change for flatiron/nconf#28 (`.file` may now take a string instead of an object) (`Jonathan Stewmon`)
* [d3e6897](https://github.com/projects/nconf/commit/d3e6897) Proper teardowns in `complete-test.js` (`Russell Frank`)
* [94bdb7d](https://github.com/projects/nconf/commit/94bdb7d) Added `complete-test.js` & fixture. (`Russell Frank`)
* [36e061c](https://github.com/projects/nconf/commit/36e061c) Fixes to `Provider.save()` and tests. (`Russell Frank`)
* [29eb5f9](https://github.com/projects/nconf/commit/29eb5f9) [minor] Fix whitespaces (`Pavan Kumar Sunkara`)
* [6ce0b7a](https://github.com/projects/nconf/commit/6ce0b7a) Surfacing additional JSON.stringify arguments in formats.json.stringify, and adding the json_spacing option to the File constructor. (`Jordan Harband`)
* [b369931](https://github.com/projects/nconf/commit/b369931) [minor] Use `fs.existsSync` when available (`Maciej Małecki`)
* [d8c4749](https://github.com/projects/nconf/commit/d8c4749) [test] Test on `node@0.7` (`Maciej Małecki`)
* [464af41](https://github.com/projects/nconf/commit/464af41) [fix test] Fix bad test assertion (`indexzero`)
v0.5.1 / Mon, 2 Jan 2012
========================
* [6a6e092](https://github.com/flatiron/nconf/commit/6a6e092) [dist] Version bump. 0.5.1 (`indexzero`)
* [6242caa](https://github.com/flatiron/nconf/commit/6242caa) [api minor] Add `.loadSync()` to Memory store. Fixes #24 (`indexzero`)
* [d0a9121](https://github.com/flatiron/nconf/commit/d0a9121) [test dist] Remove unused `eyes` dependency (`indexzero`)
* [9e9e37b](https://github.com/flatiron/nconf/commit/9e9e37b) [minor] Update whitespace (`indexzero`)
* [fdb73f0](https://github.com/flatiron/nconf/commit/fdb73f0) updated tests to verify that Provider.load respects hierarchy (`Jonathan Stewmon`)
* [a216336](https://github.com/flatiron/nconf/commit/a216336) updated Provider.load to respect sources hierarchy (`Jonathan Stewmon`)
* [6b6bf85](https://github.com/flatiron/nconf/commit/6b6bf85) updated optimist to version 0.3.x (`Jonathan Stewmon`)
* [5c43d54](https://github.com/flatiron/nconf/commit/5c43d54) fixed merge issue in Provider.load by reversing store keys in getStores (`Jonathan Stewmon`)
* [2804b1f](https://github.com/flatiron/nconf/commit/2804b1f) fixed issue caused by using same name for defaults and overrides (`Jonathan Stewmon`)
* [e0e070a](https://github.com/flatiron/nconf/commit/e0e070a) [test] Test if `File.saveSync()` returns store content (`Maciej Małecki`)
* [963387c](https://github.com/flatiron/nconf/commit/963387c) [api] `File.saveSync()` should return store content (`Maciej Małecki`)
* [d5ce1ed](https://github.com/flatiron/nconf/commit/d5ce1ed) [test] Test `saveSync()` method of file store (`Maciej Małecki`)
* [cf9889e](https://github.com/flatiron/nconf/commit/cf9889e) [dist] Upgrade vows to 0.6.x (`Pavan Kumar Sunkara`)
v0.5.1 / Mon, 2 Jan 2012
========================
* [6a6e092](https://github.com/projects/nconf/commit/6a6e092) [dist] Version bump. 0.5.1 (`indexzero`)
* [6242caa](https://github.com/projects/nconf/commit/6242caa) [api minor] Add `.loadSync()` to Memory store. Fixes #24 (`indexzero`)
* [d0a9121](https://github.com/projects/nconf/commit/d0a9121) [test dist] Remove unused `eyes` dependency (`indexzero`)
* [9e9e37b](https://github.com/projects/nconf/commit/9e9e37b) [minor] Update whitespace (`indexzero`)
* [fdb73f0](https://github.com/projects/nconf/commit/fdb73f0) updated tests to verify that Provider.load respects hierarchy (`Jonathan Stewmon`)
* [a216336](https://github.com/projects/nconf/commit/a216336) updated Provider.load to respect sources hierarchy (`Jonathan Stewmon`)
* [6b6bf85](https://github.com/projects/nconf/commit/6b6bf85) updated optimist to version 0.3.x (`Jonathan Stewmon`)
* [5c43d54](https://github.com/projects/nconf/commit/5c43d54) fixed merge issue in Provider.load by reversing store keys in getStores (`Jonathan Stewmon`)
* [2804b1f](https://github.com/projects/nconf/commit/2804b1f) fixed issue caused by using same name for defaults and overrides (`Jonathan Stewmon`)
* [e0e070a](https://github.com/projects/nconf/commit/e0e070a) [test] Test if `File.saveSync()` returns store content (`Maciej Małecki`)
* [963387c](https://github.com/projects/nconf/commit/963387c) [api] `File.saveSync()` should return store content (`Maciej Małecki`)
* [d5ce1ed](https://github.com/projects/nconf/commit/d5ce1ed) [test] Test `saveSync()` method of file store (`Maciej Małecki`)
* [cf9889e](https://github.com/projects/nconf/commit/cf9889e) [dist] Upgrade vows to 0.6.x (`Pavan Kumar Sunkara`)
v0.5.0 / Thu, 24 Nov 2011
=========================
* [62cb7fb](https://github.com/flatiron/nconf/commit/62cb7fb) [dist] Version bump. 0.5.0 (`indexzero`)
* [6c720ee](https://github.com/flatiron/nconf/commit/6c720ee) [dist] Update Copyright and Author to Nodejitsu Inc. (`indexzero`)
* [4643a14](https://github.com/flatiron/nconf/commit/4643a14) [doc] Updated README and added CHANGELOG.md (`indexzero`)
* [90b0297](https://github.com/flatiron/nconf/commit/90b0297) [test] Update tests to use optional options API (`indexzero`)
* [53d854a](https://github.com/flatiron/nconf/commit/53d854a) [api] Default to `options` if `options.store` is not available in nconf.Literal (`indexzero`)
* [b658f68](https://github.com/flatiron/nconf/commit/b658f68) [test] Add additional test coverage for hierarchical configuration (`indexzero`)
* [a9c3540](https://github.com/flatiron/nconf/commit/a9c3540) [fix test] Fix overwritten tests in file-store-test.js (`indexzero`)
* [f4f1fdf](https://github.com/flatiron/nconf/commit/f4f1fdf) [fix test] Update to respected `.sources` option correctly (`indexzero`)
* [bbcb271](https://github.com/flatiron/nconf/commit/bbcb271) [api fix] Dont eagerly create config files in `.load()` and `.loadSync()` (`indexzero`)
* [021850a](https://github.com/flatiron/nconf/commit/021850a) [test] Move around test .json files (`indexzero`)
* [0fbc9a2](https://github.com/flatiron/nconf/commit/0fbc9a2) [test] Added tests (which are now passing) for #15 (`indexzero`)
* [16a18bf](https://github.com/flatiron/nconf/commit/16a18bf) [refactor] Expose all store prototypes on `nconf.*`. Expose store instances on Provider.stores and Provider.sources (`indexzero`)
* [c3cebe7](https://github.com/flatiron/nconf/commit/c3cebe7) [refactor] Rename `.sources` to `._stores` and bring back `._sources` (`indexzero`)
* [78ce556](https://github.com/flatiron/nconf/commit/78ce556) [minor] Dont allow `.set()` calls to change values in readOnly stores: argv, env, and literal (`indexzero`)
* [1aa2f1f](https://github.com/flatiron/nconf/commit/1aa2f1f) [doc] Updated README.md (`indexzero`)
* [47a56cc](https://github.com/flatiron/nconf/commit/47a56cc) [test] Test for hierarchical argv options get() (`Sander Tolsma`)
* [c3c315d](https://github.com/flatiron/nconf/commit/c3c315d) [refactor] Refactor to make using nconf more fluent. (`indexzero`)
* [2c1ef71](https://github.com/flatiron/nconf/commit/2c1ef71) [dist] Bump to v0.4.6 (`Marak Squires`)
* [1b258bf](https://github.com/flatiron/nconf/commit/1b258bf) [fix] Fix option parsing (`Maciej Małecki`)
* [ef3222e](https://github.com/flatiron/nconf/commit/ef3222e) [dist] Make `repository` point to `flatiron/nconf` (`Maciej Małecki`)
v0.5.0 / Thu, 24 Nov 2011
=========================
* [62cb7fb](https://github.com/projects/nconf/commit/62cb7fb) [dist] Version bump. 0.5.0 (`indexzero`)
* [6c720ee](https://github.com/projects/nconf/commit/6c720ee) [dist] Update Copyright and Author to Nodejitsu Inc. (`indexzero`)
* [4643a14](https://github.com/projects/nconf/commit/4643a14) [doc] Updated README and added CHANGELOG.md (`indexzero`)
* [90b0297](https://github.com/projects/nconf/commit/90b0297) [test] Update tests to use optional options API (`indexzero`)
* [53d854a](https://github.com/projects/nconf/commit/53d854a) [api] Default to `options` if `options.store` is not available in nconf.Literal (`indexzero`)
* [b658f68](https://github.com/projects/nconf/commit/b658f68) [test] Add additional test coverage for hierarchical configuration (`indexzero`)
* [a9c3540](https://github.com/projects/nconf/commit/a9c3540) [fix test] Fix overwritten tests in file-store-test.js (`indexzero`)
* [f4f1fdf](https://github.com/projects/nconf/commit/f4f1fdf) [fix test] Update to respected `.sources` option correctly (`indexzero`)
* [bbcb271](https://github.com/projects/nconf/commit/bbcb271) [api fix] Dont eagerly create config files in `.load()` and `.loadSync()` (`indexzero`)
* [021850a](https://github.com/projects/nconf/commit/021850a) [test] Move around test .json files (`indexzero`)
* [0fbc9a2](https://github.com/projects/nconf/commit/0fbc9a2) [test] Added tests (which are now passing) for #15 (`indexzero`)
* [16a18bf](https://github.com/projects/nconf/commit/16a18bf) [refactor] Expose all store prototypes on `nconf.*`. Expose store instances on Provider.stores and Provider.sources (`indexzero`)
* [c3cebe7](https://github.com/projects/nconf/commit/c3cebe7) [refactor] Rename `.sources` to `._stores` and bring back `._sources` (`indexzero`)
* [78ce556](https://github.com/projects/nconf/commit/78ce556) [minor] Dont allow `.set()` calls to change values in readOnly stores: argv, env, and literal (`indexzero`)
* [1aa2f1f](https://github.com/projects/nconf/commit/1aa2f1f) [doc] Updated README.md (`indexzero`)
* [47a56cc](https://github.com/projects/nconf/commit/47a56cc) [test] Test for hierarchical argv options get() (`Sander Tolsma`)
* [c3c315d](https://github.com/projects/nconf/commit/c3c315d) [refactor] Refactor to make using nconf more fluent. (`indexzero`)
* [2c1ef71](https://github.com/projects/nconf/commit/2c1ef71) [dist] Bump to v0.4.6 (`Marak Squires`)
* [1b258bf](https://github.com/projects/nconf/commit/1b258bf) [fix] Fix option parsing (`Maciej Małecki`)
* [ef3222e](https://github.com/projects/nconf/commit/ef3222e) [dist] Make `repository` point to `flatiron/nconf` (`Maciej Małecki`)
v0.4.5 / Sun, 20 Nov 2011
=========================
* [f4723e9](https://github.com/flatiron/nconf/commit/f4723e9) [dist] Version bump. 0.4.5 (`indexzero`)
* [2475d06](https://github.com/flatiron/nconf/commit/2475d06) [test] Test command line arguments reparsing (`Maciej Małecki`)
* [bbc5885](https://github.com/flatiron/nconf/commit/bbc5885) [api] Reparse argv arguments on `system.loadArgv()` (`Maciej Małecki`)
* [51700ca](https://github.com/flatiron/nconf/commit/51700ca) [test minor] Use `process.argv[0]` when spawning processes (`Maciej Małecki`)
* [07f8c3e](https://github.com/flatiron/nconf/commit/07f8c3e) [doc] Add Travis build status image (`Maciej Małecki`)
* [bab96b0](https://github.com/flatiron/nconf/commit/bab96b0) [test] Add `.travis.yml` for testing on Travis CI (`Maciej Małecki`)
v0.4.5 / Sun, 20 Nov 2011
=========================
* [f4723e9](https://github.com/projects/nconf/commit/f4723e9) [dist] Version bump. 0.4.5 (`indexzero`)
* [2475d06](https://github.com/projects/nconf/commit/2475d06) [test] Test command line arguments reparsing (`Maciej Małecki`)
* [bbc5885](https://github.com/projects/nconf/commit/bbc5885) [api] Reparse argv arguments on `system.loadArgv()` (`Maciej Małecki`)
* [51700ca](https://github.com/projects/nconf/commit/51700ca) [test minor] Use `process.argv[0]` when spawning processes (`Maciej Małecki`)
* [07f8c3e](https://github.com/projects/nconf/commit/07f8c3e) [doc] Add Travis build status image (`Maciej Małecki`)
* [bab96b0](https://github.com/projects/nconf/commit/bab96b0) [test] Add `.travis.yml` for testing on Travis CI (`Maciej Małecki`)
v0.4.4 / Sat, 22 Oct 2011
=========================
* [b96151e](https://github.com/flatiron/nconf/commit/b96151e) [dist] Version bump. 0.4.4 (`indexzero`)
* [d8a3020](https://github.com/flatiron/nconf/commit/d8a3020) [fix] filename --> file in a few file transport examples (`Joshua Holbrook`)
* [2e33082](https://github.com/flatiron/nconf/commit/2e33082) [api] Automatically search for a file if `options.search` is true in File store (`indexzero`)
v0.4.4 / Sat, 22 Oct 2011
=========================
* [b96151e](https://github.com/projects/nconf/commit/b96151e) [dist] Version bump. 0.4.4 (`indexzero`)
* [d8a3020](https://github.com/projects/nconf/commit/d8a3020) [fix] filename --> file in a few file transport examples (`Joshua Holbrook`)
* [2e33082](https://github.com/projects/nconf/commit/2e33082) [api] Automatically search for a file if `options.search` is true in File store (`indexzero`)
v0.4.3 / Sun, 25 Sep 2011
=========================
* [86e22cb](https://github.com/flatiron/nconf/commit/86e22cb) [dist] Version bump. 0.4.3 (`indexzero`)
* [a2464d2](https://github.com/flatiron/nconf/commit/a2464d2) [api] Load sources into the default system store so they are permenantly cached (`indexzero`)
v0.4.3 / Sun, 25 Sep 2011
=========================
* [86e22cb](https://github.com/projects/nconf/commit/86e22cb) [dist] Version bump. 0.4.3 (`indexzero`)
* [a2464d2](https://github.com/projects/nconf/commit/a2464d2) [api] Load sources into the default system store so they are permenantly cached (`indexzero`)
v0.4.2 / Sun, 25 Sep 2011
=========================
* [e243b0b](https://github.com/flatiron/nconf/commit/e243b0b) [dist] Version bump. 0.4.2 (`indexzero`)
* [d0aee0d](https://github.com/flatiron/nconf/commit/d0aee0d) [api test] Added `.sources` option for `nconf.Provider` for readonly configuration data (`indexzero`)
* [0234e17](https://github.com/flatiron/nconf/commit/0234e17) [fix] Update bad variable reference (`indexzero`)
v0.4.2 / Sun, 25 Sep 2011
=========================
* [e243b0b](https://github.com/projects/nconf/commit/e243b0b) [dist] Version bump. 0.4.2 (`indexzero`)
* [d0aee0d](https://github.com/projects/nconf/commit/d0aee0d) [api test] Added `.sources` option for `nconf.Provider` for readonly configuration data (`indexzero`)
* [0234e17](https://github.com/projects/nconf/commit/0234e17) [fix] Update bad variable reference (`indexzero`)
v0.4.1 / Mon, 19 Sep 2011
=========================
* [d334d07](https://github.com/flatiron/nconf/commit/d334d07) [dist] Version bump. 0.4.1 (`indexzero`)
* [a490c77](https://github.com/flatiron/nconf/commit/a490c77) [fix] Match case in `require` statements (`indexzero`)
v0.4.1 / Mon, 19 Sep 2011
=========================
* [d334d07](https://github.com/projects/nconf/commit/d334d07) [dist] Version bump. 0.4.1 (`indexzero`)
* [a490c77](https://github.com/projects/nconf/commit/a490c77) [fix] Match case in `require` statements (`indexzero`)
v0.4.0 / Sun, 18 Sep 2011
=========================
* [0addce4](https://github.com/flatiron/nconf/commit/0addce4) [dist] Version bump. 0.4.0 (`indexzero`)
* [c4c8d7b](https://github.com/flatiron/nconf/commit/c4c8d7b) [doc] Updated docco docs (`indexzero`)
* [f867e74](https://github.com/flatiron/nconf/commit/f867e74) [dist] Remove unused test fixtures (`indexzero`)
* [1ef5797](https://github.com/flatiron/nconf/commit/1ef5797) [api test] Finished API and tests for hierarchical configuration storage. (`indexzero`)
* [7ef9b11](https://github.com/flatiron/nconf/commit/7ef9b11) [doc] Minor update to library `title` (`indexzero`)
* [a063880](https://github.com/flatiron/nconf/commit/a063880) [doc] Updated usage.js and README.md for the next hierarchical syntax. (`indexzero`)
* [da2da7a](https://github.com/flatiron/nconf/commit/da2da7a) [api test breaking refactor] Significant refactor to how nconf works. Now a fully hierarchical configuration storage mechanism capable of multiple levels of stores of the same type. (`indexzero`)
* [2bda7b6](https://github.com/flatiron/nconf/commit/2bda7b6) [api] Added `nconf.stores.System` (`indexzero`)
v0.4.0 / Sun, 18 Sep 2011
=========================
* [0addce4](https://github.com/projects/nconf/commit/0addce4) [dist] Version bump. 0.4.0 (`indexzero`)
* [c4c8d7b](https://github.com/projects/nconf/commit/c4c8d7b) [doc] Updated docco docs (`indexzero`)
* [f867e74](https://github.com/projects/nconf/commit/f867e74) [dist] Remove unused test fixtures (`indexzero`)
* [1ef5797](https://github.com/projects/nconf/commit/1ef5797) [api test] Finished API and tests for hierarchical configuration storage. (`indexzero`)
* [7ef9b11](https://github.com/projects/nconf/commit/7ef9b11) [doc] Minor update to library `title` (`indexzero`)
* [a063880](https://github.com/projects/nconf/commit/a063880) [doc] Updated usage.js and README.md for the next hierarchical syntax. (`indexzero`)
* [da2da7a](https://github.com/projects/nconf/commit/da2da7a) [api test breaking refactor] Significant refactor to how nconf works. Now a fully hierarchical configuration storage mechanism capable of multiple levels of stores of the same type. (`indexzero`)
* [2bda7b6](https://github.com/projects/nconf/commit/2bda7b6) [api] Added `nconf.stores.System` (`indexzero`)
v0.3.1 / Mon, 29 Aug 2011
=========================
* [54ea095](https://github.com/flatiron/nconf/commit/54ea095) [dist] Version bump. 0.3.1 (`indexzero`)
* [e631d23](https://github.com/flatiron/nconf/commit/e631d23) [fix] Lazy-load any CLI arguments from `optimist` (`indexzero`)
v0.3.1 / Mon, 29 Aug 2011
=========================
* [54ea095](https://github.com/projects/nconf/commit/54ea095) [dist] Version bump. 0.3.1 (`indexzero`)
* [e631d23](https://github.com/projects/nconf/commit/e631d23) [fix] Lazy-load any CLI arguments from `optimist` (`indexzero`)
v0.3.0 / Sun, 28 Aug 2011
=========================
* [8a31728](https://github.com/flatiron/nconf/commit/8a31728) [dist] Version bump. 0.3.0 (`indexzero`)
* [2e47d02](https://github.com/flatiron/nconf/commit/2e47d02) [doc] Updated README.md (`indexzero`)
* [954b5fd](https://github.com/flatiron/nconf/commit/954b5fd) [doc] Updated docco docs (`indexzero`)
* [fb392dd](https://github.com/flatiron/nconf/commit/fb392dd) [api test] Updated test/provider-test.js and associated merge implementation (`indexzero`)
* [e8904e9](https://github.com/flatiron/nconf/commit/e8904e9) [api] Added `nconf.loadFiles()` method (`indexzero`)
* [a6533aa](https://github.com/flatiron/nconf/commit/a6533aa) [dist api test] Finished integrating features from reconf and updating associated tests (`indexzero`)
* [add8922](https://github.com/flatiron/nconf/commit/add8922) [api dist] Begin to integrate features from reconf (`indexzero`)
* [57f0742](https://github.com/flatiron/nconf/commit/57f0742) [doc] Update README.md for nconf-redis (`indexzero`)
v0.3.0 / Sun, 28 Aug 2011
=========================
* [8a31728](https://github.com/projects/nconf/commit/8a31728) [dist] Version bump. 0.3.0 (`indexzero`)
* [2e47d02](https://github.com/projects/nconf/commit/2e47d02) [doc] Updated README.md (`indexzero`)
* [954b5fd](https://github.com/projects/nconf/commit/954b5fd) [doc] Updated docco docs (`indexzero`)
* [fb392dd](https://github.com/projects/nconf/commit/fb392dd) [api test] Updated test/provider-test.js and associated merge implementation (`indexzero`)
* [e8904e9](https://github.com/projects/nconf/commit/e8904e9) [api] Added `nconf.loadFiles()` method (`indexzero`)
* [a6533aa](https://github.com/projects/nconf/commit/a6533aa) [dist api test] Finished integrating features from reconf and updating associated tests (`indexzero`)
* [add8922](https://github.com/projects/nconf/commit/add8922) [api dist] Begin to integrate features from reconf (`indexzero`)
* [57f0742](https://github.com/projects/nconf/commit/57f0742) [doc] Update README.md for nconf-redis (`indexzero`)
v0.2.0 / Fri, 8 Jul 2011
========================
* [b6adab2](https://github.com/flatiron/nconf/commit/b6adab2) [dist] Version bump. 0.2.0 (`indexzero`)
* [8620e6b](https://github.com/flatiron/nconf/commit/8620e6b) [api test] Remove Redis store in preparation for nconf-redis (`indexzero`)
* [49a1a6d](https://github.com/flatiron/nconf/commit/49a1a6d) [dist] Added LICENSE (MIT ftw) (`indexzero`)
v0.2.0 / Fri, 8 Jul 2011
========================
* [b6adab2](https://github.com/projects/nconf/commit/b6adab2) [dist] Version bump. 0.2.0 (`indexzero`)
* [8620e6b](https://github.com/projects/nconf/commit/8620e6b) [api test] Remove Redis store in preparation for nconf-redis (`indexzero`)
* [49a1a6d](https://github.com/projects/nconf/commit/49a1a6d) [dist] Added LICENSE (MIT ftw) (`indexzero`)
0.1.14 / Sat, 25 Jun 2011
=========================
* [d485f5e](https://github.com/flatiron/nconf/commit/d485f5e) [dist] Version bump. 0.1.14 (`indexzero`)
* [7e4623e](https://github.com/flatiron/nconf/commit/7e4623e) [api test] Update `nconf.Provider` to create a new instance of the store if the options are different (`indexzero`)
* [d485f5e](https://github.com/projects/nconf/commit/d485f5e) [dist] Version bump. 0.1.14 (`indexzero`)
* [7e4623e](https://github.com/projects/nconf/commit/7e4623e) [api test] Update `nconf.Provider` to create a new instance of the store if the options are different (`indexzero`)
v0.1.13 / Fri, 24 Jun 2011
==========================
* [1b0f347](https://github.com/flatiron/nconf/commit/1b0f347) [dist] Version bump. 0.1.13 (`indexzero`)
* [d8b5a80](https://github.com/flatiron/nconf/commit/d8b5a80) [minor] Small style updates to the File store (`indexzero`)
* [c436851](https://github.com/flatiron/nconf/commit/c436851) [refactor]: Cleaned up error handling on File.loadSync and File.load [refactor]: Using path module to determine if file exists instead of throwing error [api]: File.load and File.loadSync will now automatically create the requested JSON file path if no file is found. (`Marak Squires`)
* [6c6887a](https://github.com/flatiron/nconf/commit/6c6887a) move callback outside of try / catch (`Dominic Tarr`)
v0.1.13 / Fri, 24 Jun 2011
==========================
* [1b0f347](https://github.com/projects/nconf/commit/1b0f347) [dist] Version bump. 0.1.13 (`indexzero`)
* [d8b5a80](https://github.com/projects/nconf/commit/d8b5a80) [minor] Small style updates to the File store (`indexzero`)
* [c436851](https://github.com/projects/nconf/commit/c436851) [refactor]: Cleaned up error handling on File.loadSync and File.load [refactor]: Using path module to determine if file exists instead of throwing error [api]: File.load and File.loadSync will now automatically create the requested JSON file path if no file is found. (`Marak Squires`)
* [6c6887a](https://github.com/projects/nconf/commit/6c6887a) move callback outside of try / catch (`Dominic Tarr`)
v0.1.12 / Wed, 8 Jun 2011
=========================
* [ae5aec6](https://github.com/flatiron/nconf/commit/ae5aec6) [dist] Version bump. 0.1.12 (`indexzero`)
* [76db254](https://github.com/flatiron/nconf/commit/76db254) [fix test] Update nconf.stores.File to respond with an error when loading malformed JSON async (`indexzero`)
v0.1.12 / Wed, 8 Jun 2011
=========================
* [ae5aec6](https://github.com/projects/nconf/commit/ae5aec6) [dist] Version bump. 0.1.12 (`indexzero`)
* [76db254](https://github.com/projects/nconf/commit/76db254) [fix test] Update nconf.stores.File to respond with an error when loading malformed JSON async (`indexzero`)
v0.1.11 / Tue, 7 Jun 2011
=========================
* [d7495f8](https://github.com/flatiron/nconf/commit/d7495f8) [dist] Version bump. 0.1.11 (`indexzero`)
* [4c7aea9](https://github.com/flatiron/nconf/commit/4c7aea9) [doc] Update docco docs (`indexzero`)
* [f611066](https://github.com/flatiron/nconf/commit/f611066) [dist] Update to pkginfo 0.2.0 (`indexzero`)
v0.1.11 / Tue, 7 Jun 2011
=========================
* [d7495f8](https://github.com/projects/nconf/commit/d7495f8) [dist] Version bump. 0.1.11 (`indexzero`)
* [4c7aea9](https://github.com/projects/nconf/commit/4c7aea9) [doc] Update docco docs (`indexzero`)
* [f611066](https://github.com/projects/nconf/commit/f611066) [dist] Update to pkginfo 0.2.0 (`indexzero`)
v0.1.10 / Sun, 5 Jun 2011
=========================
* [be76887](https://github.com/flatiron/nconf/commit/be76887) [dist] Version bump. 0.1.10 (`indexzero`)
* [7ffbf0a](https://github.com/flatiron/nconf/commit/7ffbf0a) [doc] Regenerate docco docs (`indexzero`)
* [13f5753](https://github.com/flatiron/nconf/commit/13f5753) [minor] Update `nconf.version` to use pkginfo (`indexzero`)
* [c9e60d9](https://github.com/flatiron/nconf/commit/c9e60d9) [doc] Update code docs (`indexzero`)
* [4459ba5](https://github.com/flatiron/nconf/commit/4459ba5) [api] Added `.merge()` to stores.Memory and stores.Redis (`indexzero`)
* [a4f00be](https://github.com/flatiron/nconf/commit/a4f00be) [dist] Update package.json and .gitignore (`indexzero`)
* [8a79ef0](https://github.com/flatiron/nconf/commit/8a79ef0) test retrieving non-existent keys and drilling into non-objects (`Sami Samhuri`)
* [6acc1fc](https://github.com/flatiron/nconf/commit/6acc1fc) allow storing null in redis (`Sami Samhuri`)
* [faa8ab9](https://github.com/flatiron/nconf/commit/faa8ab9) correctly retrieve falsy values from memory (hence file) (`Sami Samhuri`)
* [bdf2fc8](https://github.com/flatiron/nconf/commit/bdf2fc8) [fix] Fixed spelling error (`avian`)
* [e7c216e](https://github.com/flatiron/nconf/commit/e7c216e) [minor] Clarified error message returned when a config file contains invalid JSON. (`avian`)
* [e26bbe2](https://github.com/flatiron/nconf/commit/e26bbe2) [doc] Updated code samples for GitHub flavored markdown with Javascript (`indexzero`)
v0.1.10 / Sun, 5 Jun 2011
=========================
* [be76887](https://github.com/projects/nconf/commit/be76887) [dist] Version bump. 0.1.10 (`indexzero`)
* [7ffbf0a](https://github.com/projects/nconf/commit/7ffbf0a) [doc] Regenerate docco docs (`indexzero`)
* [13f5753](https://github.com/projects/nconf/commit/13f5753) [minor] Update `nconf.version` to use pkginfo (`indexzero`)
* [c9e60d9](https://github.com/projects/nconf/commit/c9e60d9) [doc] Update code docs (`indexzero`)
* [4459ba5](https://github.com/projects/nconf/commit/4459ba5) [api] Added `.merge()` to stores.Memory and stores.Redis (`indexzero`)
* [a4f00be](https://github.com/projects/nconf/commit/a4f00be) [dist] Update package.json and .gitignore (`indexzero`)
* [8a79ef0](https://github.com/projects/nconf/commit/8a79ef0) test retrieving non-existent keys and drilling into non-objects (`Sami Samhuri`)
* [6acc1fc](https://github.com/projects/nconf/commit/6acc1fc) allow storing null in redis (`Sami Samhuri`)
* [faa8ab9](https://github.com/projects/nconf/commit/faa8ab9) correctly retrieve falsy values from memory (hence file) (`Sami Samhuri`)
* [bdf2fc8](https://github.com/projects/nconf/commit/bdf2fc8) [fix] Fixed spelling error (`avian`)
* [e7c216e](https://github.com/projects/nconf/commit/e7c216e) [minor] Clarified error message returned when a config file contains invalid JSON. (`avian`)
* [e26bbe2](https://github.com/projects/nconf/commit/e26bbe2) [doc] Updated code samples for GitHub flavored markdown with Javascript (`indexzero`)
v0.1.9 / Mon, 16 May 2011
=========================
* [78202ec](https://github.com/flatiron/nconf/commit/78202ec) [dist] Version bump. 0.1.9 (`indexzero`)
* [87351ca](https://github.com/flatiron/nconf/commit/87351ca) [fix] Use the memory engine by default (`indexzero`)
v0.1.9 / Mon, 16 May 2011
=========================
* [78202ec](https://github.com/projects/nconf/commit/78202ec) [dist] Version bump. 0.1.9 (`indexzero`)
* [87351ca](https://github.com/projects/nconf/commit/87351ca) [fix] Use the memory engine by default (`indexzero`)
v0.1.8 / Mon, 16 May 2011
=========================
* [badbb59](https://github.com/flatiron/nconf/commit/badbb59) [dist] Version bump. 0.1.8 (`indexzero`)
* [9da37df](https://github.com/flatiron/nconf/commit/9da37df) [dist api test] Refactor pluggable nconf-level logic into nconf.Provider. Update .gitignore for npm 1.0. Update pathing in source and tests to be more `require.paths` future-proof (`indexzero`)
v0.1.8 / Mon, 16 May 2011
=========================
* [badbb59](https://github.com/projects/nconf/commit/badbb59) [dist] Version bump. 0.1.8 (`indexzero`)
* [9da37df](https://github.com/projects/nconf/commit/9da37df) [dist api test] Refactor pluggable nconf-level logic into nconf.Provider. Update .gitignore for npm 1.0. Update pathing in source and tests to be more `require.paths` future-proof (`indexzero`)
v0.1.7 / Wed, 20 Apr 2011
=========================
* [4a61560](https://github.com/flatiron/nconf/commit/4a61560) [dist] Version bump. 0.1.7 (`indexzero`)
* [3b104f2](https://github.com/flatiron/nconf/commit/3b104f2) [doc] Update docco docs (`indexzero`)
* [d65922d](https://github.com/flatiron/nconf/commit/d65922d) [api] Add `.saveSync()` and `.loadSync()` methods to File store (`indexzero`)
v0.1.7 / Wed, 20 Apr 2011
=========================
* [4a61560](https://github.com/projects/nconf/commit/4a61560) [dist] Version bump. 0.1.7 (`indexzero`)
* [3b104f2](https://github.com/projects/nconf/commit/3b104f2) [doc] Update docco docs (`indexzero`)
* [d65922d](https://github.com/projects/nconf/commit/d65922d) [api] Add `.saveSync()` and `.loadSync()` methods to File store (`indexzero`)
v0.1.6 / Tue, 19 Apr 2011
=========================
* [b9951b4](https://github.com/flatiron/nconf/commit/b9951b4) [dist] Version bump. 0.1.6. (`indexzero`)
* [da85594](https://github.com/flatiron/nconf/commit/da85594) [doc] Update docco docs (`indexzero`)
* [067d58a](https://github.com/flatiron/nconf/commit/067d58a) [minor test] Add tests for File store `save()`. Improve default file format to pretty print the JSON output (`indexzero`)
v0.1.6 / Tue, 19 Apr 2011
=========================
* [b9951b4](https://github.com/projects/nconf/commit/b9951b4) [dist] Version bump. 0.1.6. (`indexzero`)
* [da85594](https://github.com/projects/nconf/commit/da85594) [doc] Update docco docs (`indexzero`)
* [067d58a](https://github.com/projects/nconf/commit/067d58a) [minor test] Add tests for File store `save()`. Improve default file format to pretty print the JSON output (`indexzero`)
v0.1.5 / Wed, 13 Apr 2011
=========================
* [96859f9](https://github.com/flatiron/nconf/commit/96859f9) [dist] Version bump. 0.1.5 (`indexzero`)
* [d99ab32](https://github.com/flatiron/nconf/commit/d99ab32) [fix] Dont allow `async.forEach` to be called on undefined or null arrays (`indexzero`)
v0.1.5 / Wed, 13 Apr 2011
=========================
* [96859f9](https://github.com/projects/nconf/commit/96859f9) [dist] Version bump. 0.1.5 (`indexzero`)
* [d99ab32](https://github.com/projects/nconf/commit/d99ab32) [fix] Dont allow `async.forEach` to be called on undefined or null arrays (`indexzero`)
v0.1.4 / Tue, 5 Apr 2011
========================
* [7484fdb](https://github.com/flatiron/nconf/commit/7484fdb) [dist] Version bump. 0.1.4 (`indexzero`)
* [04a59e9](https://github.com/flatiron/nconf/commit/04a59e9) [fix] Supress errors from Redis (`indexzero`)
v0.1.4 / Tue, 5 Apr 2011
========================
* [7484fdb](https://github.com/projects/nconf/commit/7484fdb) [dist] Version bump. 0.1.4 (`indexzero`)
* [04a59e9](https://github.com/projects/nconf/commit/04a59e9) [fix] Supress errors from Redis (`indexzero`)
v0.1.3 / Tue, 5 Apr 2011
========================
* [9bd6e26](https://github.com/flatiron/nconf/commit/9bd6e26) [dist] Version bump. 0.1.3 (`indexzero`)
* [4094125](https://github.com/flatiron/nconf/commit/4094125) [api] Add support for Redis auth and optional callbacks. (`indexzero`)
v0.1.3 / Tue, 5 Apr 2011
========================
* [9bd6e26](https://github.com/projects/nconf/commit/9bd6e26) [dist] Version bump. 0.1.3 (`indexzero`)
* [4094125](https://github.com/projects/nconf/commit/4094125) [api] Add support for Redis auth and optional callbacks. (`indexzero`)
v0.1.2 / Sun, 3 Apr 2011
========================
* [81e1883](https://github.com/flatiron/nconf/commit/81e1883) [dist] Version bump. 0.1.2 (`indexzero`)
* [b850ae2](https://github.com/flatiron/nconf/commit/b850ae2) [fix] Update path to require statement in Redis store (`indexzero`)
v0.1.2 / Sun, 3 Apr 2011
========================
* [81e1883](https://github.com/projects/nconf/commit/81e1883) [dist] Version bump. 0.1.2 (`indexzero`)
* [b850ae2](https://github.com/projects/nconf/commit/b850ae2) [fix] Update path to require statement in Redis store (`indexzero`)
v0.1.1 / Sat, 2 Apr 2011
========================
* [6f16bc7](https://github.com/flatiron/nconf/commit/6f16bc7) [dist] Version bump. 0.1.1 (`indexzero`)
* [752bb98](https://github.com/flatiron/nconf/commit/752bb98) [api] Improve the `.use()` method. Use the memory engine by default (`indexzero`)
v0.1.1 / Sat, 2 Apr 2011
========================
* [6f16bc7](https://github.com/projects/nconf/commit/6f16bc7) [dist] Version bump. 0.1.1 (`indexzero`)
* [752bb98](https://github.com/projects/nconf/commit/752bb98) [api] Improve the `.use()` method. Use the memory engine by default (`indexzero`)
v0.1.0 / Sat, 2 Apr 2011
========================

@@ -8,4 +8,3 @@ /*

var async = require('async'),
common = require('./nconf/common'),
var common = require('./nconf/common'),
Provider = require('./nconf/provider').Provider;

@@ -12,0 +11,0 @@

@@ -124,1 +124,53 @@ /*

};
//
// ### function parseValues (any)
// #### @any {string} String to parse as native data-type or return as is
// try to parse `any` as a native data-type
//
common.parseValues = function (value) {
var val = value;
try {
val = JSON.parse(value);
} catch (ignore) {
// Check for any other well-known strings that should be "parsed"
if (value === 'undefined'){
val = void 0;
}
}
return val;
};
//
// ### function transform(map, fn)
// #### @map {object} Object of key/value pairs to apply `fn` to
// #### @fn {function} Transformation function that will be applied to every key/value pair
// transform a set of key/value pairs and return the transformed result
common.transform = function(map, fn) {
var pairs = Object.keys(map).map(function(key) {
var obj = { key: key, value: map[key]};
var result = fn.call(null, obj);
if (!result) {
return null;
} else if (result.key && typeof result.value !== 'undefined') {
return result;
}
var error = new Error('Transform function passed to store returned an invalid format: ' + JSON.stringify(result));
error.name = 'RuntimeError';
throw error;
});
return pairs
.filter(function(pair) {
return pair !== null;
})
.reduce(function(accumulator, pair) {
accumulator[pair.key] = pair.value;
return accumulator;
}, {});
}

@@ -94,3 +94,2 @@ /*

options = options || {};
var type = options.type || name;

@@ -280,3 +279,60 @@ function sameOptions (store) {

//
// ### function any (keys, callback)
// #### @keys {array|string...} Array of keys to query, or a variable list of strings
// #### @callback {function} **Optional** Continuation to respond to when complete.
// Retrieves the first truthy value (if any) for the specified list of keys.
//
Provider.prototype.any = function (keys, callback) {
if (!Array.isArray(keys)) {
keys = Array.prototype.slice.call(arguments);
if (keys.length > 0 && typeof keys[keys.length - 1] === 'function') {
callback = keys.pop();
} else {
callback = null;
}
}
//
// If there is no callback, use the short-circuited "get"
// on each key in turn.
//
if (!callback) {
var val;
for (var i = 0; i < keys.length; ++i) {
val = this._execute('get', 1, keys[i], callback);
if (val) {
return val;
}
}
return null;
}
var keyIndex = 0,
result,
self = this;
async.whilst(function() {
return !result && keyIndex < keys.length;
}, function(next) {
var key = keys[keyIndex];
keyIndex++;
self.get(key, function(err, v) {
if (err) {
next(err);
} else {
result = v;
next();
}
});
}, function(err) {
return err ? callback(err) : callback(null, result);
});
};
//
// ### function set (key, value, callback)

@@ -283,0 +339,0 @@ // #### @key {string} Key to set in this instance

@@ -9,2 +9,3 @@ /*

var util = require('util'),
common = require('../common'),
Memory = require('./memory').Memory;

@@ -21,6 +22,9 @@

options = options || {};
this.type = 'argv';
this.readOnly = true;
this.options = options || false;
this.options = options;
this.usage = usage;
this.parseValues = options.parseValues || false;
this.transform = options.transform || false;
};

@@ -49,5 +53,7 @@

yargs = typeof this.options === 'object'
? require('yargs')(process.argv.slice(2)).options(this.options)
: require('yargs')(process.argv.slice(2));
yargs = isYargs(this.options) ?
this.options :
typeof this.options === 'object' ?
require('yargs')(process.argv.slice(2)).options(this.options) :
require('yargs')(process.argv.slice(2));

@@ -62,6 +68,16 @@ if (typeof this.usage === 'string') { yargs.usage(this.usage) }

if (this.transform) {
argv = common.transform(argv, this.transform);
}
this.readOnly = false;
Object.keys(argv).forEach(function (key) {
if (typeof argv[key] !== 'undefined') {
self.set(key, argv[key]);
var val = argv[key];
if (typeof val !== 'undefined') {
if (self.parseValues) {
val = common.parseValues(val);
}
self.set(key, val);
}

@@ -76,1 +92,5 @@ });

};
function isYargs(obj) {
return (typeof obj === 'function' || typeof obj === 'object') && ('argv' in obj);
}

@@ -27,2 +27,4 @@ /*

this.lowerCase = options.lowerCase || false;
this.parseValues = options.parseValues || false;
this.transform = options.transform || false;

@@ -70,2 +72,6 @@ if (({}).toString.call(options.match) === '[object RegExp]'

if (this.transform) {
env = common.transform(env, this.transform);
}
this.readOnly = false;

@@ -83,7 +89,14 @@ Object.keys(env).filter(function (key) {

}).forEach(function (key) {
var val = env[key];
if (self.parseValues) {
val = common.parseValues(val);
}
if (self.separator) {
self.set(common.key.apply(common, key.split(self.separator)), env[key]);
self.set(common.key.apply(common, key.split(self.separator)), val);
}
else {
self.set(key, env[key]);
self.set(key, val);
}

@@ -90,0 +103,0 @@ });

@@ -8,4 +8,3 @@ /*

var crypto = require('crypto'),
fs = require('fs'),
var fs = require('fs'),
path = require('path'),

@@ -15,4 +14,5 @@ util = require('util'),

formats = require('../formats'),
Memory = require('./memory').Memory,
exists = fs.exists || path.exists,
Memory = require('./memory').Memory;
var exists = fs.exists || path.exists,
existsSync = fs.existsSync || path.existsSync;

@@ -28,3 +28,3 @@

if (!options || !options.file) {
throw new Error ('Missing required option `file`');
throw new Error('Missing required option `file`');
}

@@ -80,8 +80,20 @@

File.prototype.save = function (value, callback) {
this.saveToFile(this.file, value, callback);
};
//
// ### function saveToFile (path, value, callback)
// #### @path {string} The path to the file where we save the configuration to
// #### @format {Object} Optional formatter, default behing the one of the store
// #### @callback {function} Continuation to respond to when complete.
// Saves the current configuration object to disk at `this.file`
// using the format specified by `this.format`.
//
File.prototype.saveToFile = function (path, format, callback) {
if (!callback) {
callback = value;
value = null;
callback = format;
format = this.format;
}
fs.writeFile(this.file, this.stringify(), callback);
fs.writeFile(path, this.stringify(format), callback);
};

@@ -91,8 +103,6 @@

// ### function saveSync (value, callback)
// #### @value {Object} _Ignored_ Left here for consistency
// #### @callback {function} **Optional** Continuation to respond to when complete.
// Saves the current configuration object to disk at `this.file`
// using the format specified by `this.format` synchronously.
//
File.prototype.saveSync = function (value) {
File.prototype.saveSync = function () {
fs.writeFileSync(this.file, this.stringify());

@@ -176,5 +186,7 @@ return this.store;

//
File.prototype.stringify = function () {
var data = this.store,
self = this;
File.prototype.stringify = function (format) {
var data = this.store;
if (!format) {
format = this.format
}

@@ -185,3 +197,3 @@ if (this.secure) {

return this.format.stringify(data, null, this.spacing);
return format.stringify(data, null, this.spacing);
};

@@ -195,4 +207,3 @@

File.prototype.parse = function (contents) {
var parsed = this.format.parse(contents),
self = this;
var parsed = this.format.parse(contents);

@@ -199,0 +210,0 @@ if (!this.secure) {

@@ -26,2 +26,3 @@ /*

this.logicalSeparator = options.logicalSeparator || ':';
this.parseValues = options.parseValues || false;

@@ -104,2 +105,5 @@ if (this.loadFrom) {

key = path.shift();
if (this.parseValues) {
value = common.parseValues.call(common, value);
}
target[key] = value;

@@ -106,0 +110,0 @@ return true;

{
"name": "nconf",
"description": "Hierarchical node.js configuration with files, environment variables, command-line arguments, and atomic object merging.",
"version": "0.8.5",
"version": "0.9.0",
"author": "Charlie Robbins <charlie.robbins@gmail.com>",
"contributors": [
"Matt Hamann <matthew.hamann@gmail.com>",
"Maciej Małecki <me@mmalecki.com>",
"Jarrett Cruger <jcrugzz@gmail.com>",
"Adrien Becchis"
],
"repository": {

@@ -23,3 +29,5 @@ "type": "git",

"coveralls": "^2.11.4",
"eslint": "^4.9.0",
"istanbul": "^0.4.1",
"nconf-yaml": "^1.0.2",
"vows": "0.8.x"

@@ -31,3 +39,4 @@ },

"cover": "istanbul cover vows -- test/*-test.js test/**/*-test.js --spec",
"coveralls": "cat coverage/lcov.info | coveralls"
"coveralls": "cat coverage/lcov.info | coveralls",
"lint": "eslint ."
},

@@ -34,0 +43,0 @@ "engines": {

@@ -132,2 +132,20 @@ # nconf

### nconf.any(names, callback)
Given a set of key names, gets the value of the first key found to be truthy. The key names can be given as separate arguments
or as an array. If the last argument is a function, it will be called with the result; otherwise, the value is returned.
``` js
//
// Get one of 'NODEJS_PORT' and 'PORT' as a return value
//
var port = nconf.any('NODEJS_PORT', 'PORT');
//
// Get one of 'NODEJS_IP' and 'IPADDRESS' using a callback
//
nconf.any(['NODEJS_IP', 'IPADDRESS'], function(err, value) {
console.log('Connect to IP address ' + value);
});
```
### nconf.use(name, options)

@@ -179,2 +197,28 @@ Similar to `nconf.add`, except that it can replace an existing store if new options are provided

#### Options
##### `parseValues: {true|false}` (default: `false`)
Attempt to parse well-known values (e.g. 'false', 'true', 'null', 'undefined', '3', '5.1' and JSON values)
into their proper types. If a value cannot be parsed, it will remain a string.
##### `transform: function(obj)`
Pass each key/value pair to the specified function for transformation.
The input `obj` contains two properties passed in the following format:
```
{
key: '<string>',
value: '<string>'
}
```
The transformation function may alter both the key and the value.
The function may return either an object in the asme format as the input or a value that evaluates to false.
If the return value is falsey, the entry will be dropped from the store, otherwise it will replace the original key/value.
*Note: If the return value doesn't adhere to the above rules, an exception will be thrown.*
#### Examples
``` js

@@ -189,3 +233,10 @@ //

demand: true,
default: 'some-value'
default: 'some-value',
parseValues: true,
transform: function(obj) {
if (obj.key === 'foo') {
obj.value = 'baz';
}
return obj;
}
}

@@ -195,5 +246,54 @@ });

It's also possible to pass a configured yargs instance
``` js
nconf.argv(require('yargs')
.version('1.2.3')
.usage('My usage definition')
.strict()
.options({
"x": {
alias: 'example',
describe: 'Example description for usage generation',
demand: true,
default: 'some-value'
}
}));
```
### Env
Responsible for loading the values parsed from `process.env` into the configuration hierarchy.
By default, the env variables values are loaded into the configuration as strings.
#### Options
##### `lowerCase: {true|false}` (default: `false`)
Convert all input keys to lower case. Values are not modified.
If this option is enabled, all calls to `nconf.get()` must pass in a lowercase string (e.g. `nconf.get('port')`)
##### `parseValues: {true|false}` (default: `false`)
Attempt to parse well-known values (e.g. 'false', 'true', 'null', 'undefined', '3', '5.1' and JSON values)
into their proper types. If a value cannot be parsed, it will remain a string.
##### `transform: function(obj)`
Pass each key/value pair to the specified function for transformation.
The input `obj` contains two properties passed in the following format:
```
{
key: '<string>',
value: '<string>'
}
```
The transformation function may alter both the key and the value.
The function may return either an object in the asme format as the input or a value that evaluates to false.
If the return value is falsey, the entry will be dropped from the store, otherwise it will replace the original key/value.
*Note: If the return value doesn't adhere to the above rules, an exception will be thrown.*
#### Examples
``` js

@@ -232,3 +332,10 @@ //

whitelist: ['database__host', 'only', 'load', 'these', 'values', 'if', 'whatever_doesnt_match_but_is_whitelisted_gets_loaded_too'],
lowerCase: true
lowerCase: true,
parseValues: true,
transform: function(obj) {
if (obj.key === 'foo') {
obj.value = 'baz';
}
return obj;
}
});

@@ -235,0 +342,0 @@ var dbHost = nconf.get('database:host');

@@ -11,3 +11,2 @@ /*

vows = require('vows'),
assert = require('assert'),
helpers = require('./helpers'),

@@ -14,0 +13,0 @@ nconf = require('../lib/nconf');

@@ -9,3 +9,2 @@ /*

var fs = require('fs'),
path = require('path'),
vows = require('vows'),

@@ -26,2 +25,4 @@ assert = require('assert'),

process.env.FOOBAR = 'should not load';
process.env.json_array = JSON.stringify(['foo', 'bar', 'baz']);
process.env.json_obj = JSON.stringify({foo: 'bar', baz: 'foo'});

@@ -161,2 +162,114 @@ vows.describe('nconf/multiple-stores').addBatch({

}
}).addBatch({
// Threw this in it's own batch to make sure it's run separately from the
// sync check
"When using env with parseValues:true": {
topic: function () {
var that = this;
helpers.cp(complete, completeTest, function () {
nconf.env({ parseValues: true });
that.callback();
});
},
"env vars": {
"JSON keys properly parsed": function () {
Object.keys(process.env).forEach(function (key) {
var val = process.env[key];
try {
val = JSON.parse(val);
} catch (err) {}
assert.deepEqual(nconf.get(key), val);
});
}
},
teardown: function () {
nconf.remove('env');
}
},
}).addBatch({
// Threw this in it's own batch to make sure it's run separately from the
// sync check
"When using env with transform:fn": {
topic: function () {
function testTransform(obj) {
if (obj.key === 'FOO') {
obj.key = 'FOOD';
obj.value = 'BARFOO';
}
return obj;
}
var that = this;
helpers.cp(complete, completeTest, function () {
nconf.env({ transform: testTransform })
that.callback();
});
}, "env vars": {
"port key/value properly transformed": function() {
assert.equal(nconf.get('FOOD'), 'BARFOO');
}
}
},
teardown: function () {
nconf.remove('env');
}
}).addBatch({
// Threw this in it's own batch to make sure it's run separately from the
// sync check
"When using env with a transform:fn that drops an entry": {
topic: function () {
function testTransform(obj) {
if (obj.key === 'FOO') {
return false;
}
return obj;
}
var that = this;
helpers.cp(complete, completeTest, function () {
nconf.env({ transform: testTransform });
that.callback();
});
}, "env vars": {
"port key/value properly transformed": function() {
assert.equal(typeof nconf.get('FOO'), 'undefined');
}
}
},
teardown: function () {
nconf.remove('env');
}
}).addBatch({
// Threw this in it's own batch to make sure it's run separately from the
// sync check
"When using env with a bad transform:fn": {
topic: function () {
function testTransform() {
return {foo: 'bar'};
}
var that = this;
helpers.cp(complete, completeTest, function () {
try {
nconf.env({ transform: testTransform });
that.callback();
} catch (err) {
that.callback(null, err);
}
});
}, "env vars": {
"port key/value throws transformation error": function(err) {
assert.equal(err.name, 'RuntimeError');
}
}
},
teardown: function () {
nconf.remove('env');
}
}).export(module);

@@ -8,4 +8,3 @@ /*

var fs = require('fs'),
path = require('path'),
var path = require('path'),
nconf = require('../../../lib/nconf');

@@ -12,0 +11,0 @@

@@ -10,3 +10,2 @@ /*

spawn = require('child_process').spawn,
util = require('util'),
fs = require('fs'),

@@ -13,0 +12,0 @@ path = require('path'),

@@ -57,3 +57,5 @@ /*

try { fs.unlinkSync(configFile) }
catch (ex) { }
catch (ex) {
// No-op
}

@@ -60,0 +62,0 @@ child = spawn('node', [script].concat(argv));

@@ -12,4 +12,3 @@ /*

assert = require('assert'),
nconf = require('../lib/nconf'),
data = require('./fixtures/data').data;
nconf = require('../lib/nconf')

@@ -22,2 +21,3 @@ vows.describe('nconf').addBatch({

assert.isFunction(nconf.use);
assert.isFunction(nconf.any);
assert.isFunction(nconf.get);

@@ -24,0 +24,0 @@ assert.isFunction(nconf.set);

@@ -11,3 +11,2 @@ /*

path = require('path'),
spawn = require('child_process').spawn,
vows = require('vows'),

@@ -51,3 +50,38 @@ helpers = require('./helpers'),

env: { SOMETHING: 'foobar' }
})
}),
"when 'env' is true and 'parseValues' option is true": {
topic: function() {
var env = {
SOMETHING: 'foobar',
SOMEBOOL: 'true',
SOMENULL: 'null',
SOMEUNDEF: 'undefined',
SOMEINT: '3600',
SOMEFLOAT: '0.5',
SOMEBAD: '5.1a'
};
var oenv = {};
Object.keys(env).forEach(function (key) {
if (process.env[key]) oenv[key] = process.env[key];
process.env[key] = env[key];
});
var provider = new nconf.Provider().use('env', {parseValues: true});
Object.keys(env).forEach(function (key) {
delete process.env[key];
if (oenv[key]) process.env[key] = oenv[key];
});
return provider;
},
"should respond with parsed values": function (provider) {
assert.equal(provider.get('SOMETHING'), 'foobar');
assert.strictEqual(provider.get('SOMEBOOL'), true);
assert.notEqual(provider.get('SOMEBOOL'), 'true');
assert.strictEqual(provider.get('SOMENULL'), null);
assert.strictEqual(provider.get('SOMEUNDEF'), undefined);
assert.strictEqual(provider.get('SOMEINT'), 3600);
assert.strictEqual(provider.get('SOMEFLOAT'), .5);
assert.strictEqual(provider.get('SOMEBAD'), '5.1a');
}
}
},

@@ -172,2 +206,71 @@ "the default nconf provider": {

}
}).addBatch({
"When using nconf": {
"an instance of 'nconf.Provider'": {
"the any() method": {
topic: new nconf.Provider({
type: 'literal',
store: {
key: "getThisValue"
}
}),
"without a callback": {
"given an array of keys with one matching": {
"should respond with the correct value": function (provider) {
assert.equal(provider.any(["notthis", "orthis", "key"]), 'getThisValue');
}
},
"given an array of keys with no match": {
"should respond with null": function (provider) {
assert.isNull(provider.any(["notthis", "orthis"]));
}
},
"given a variable argument list of keys with one matching": {
"should respond with the correct value": function (provider) {
assert.equal(provider.any("notthis", "orthis", "key"), 'getThisValue');
}
},
"given no arguments": {
"should respond with null": function (provider) {
assert.isNull(provider.any());
}
}
},
"with a callback": {
"given an array of keys with one matching": {
topic: function(provider) {
provider.any(["notthis", "orthis", "key"], this.callback);
},
"should respond with the correct value": function (err, value) {
assert.equal(value, 'getThisValue');
}
},
"given an array of keys with no match": {
topic: function(provider) {
provider.any(["notthis", "orthis"], this.callback);
},
"should respond with an undefined value": function (err, value) {
assert.isUndefined(value);
}
},
"given a variable argument list of keys with one matching": {
topic: function(provider) {
provider.any("notthis", "orthis", "key", this.callback);
},
"should respond with the correct value": function (err, value) {
assert.equal(value, 'getThisValue');
}
},
"given no keys": {
topic: function(provider) {
provider.any(this.callback);
},
"should respond with an undefined value": function (err, value) {
assert.isUndefined(value);
}
}
}
}
}
}
}).export(module);

@@ -10,3 +10,3 @@ /*

assert = require('assert'),
helpers = require('../helpers'),
yargs = require('yargs')
nconf = require('../../lib/nconf');

@@ -20,5 +20,36 @@

assert.isFunction(argv.loadArgv);
assert.isFalse(argv.options);
assert.deepEqual(argv.options, {});
},
"can be created with a custom yargs":{
topic: function(){
var yargsInstance = yargs.alias('v', 'verbose').default('v', 'false');
return [yargsInstance, new nconf.Argv(yargsInstance)];
},
"and can give access to them": function (argv) {
var yargsInstance = argv[0];
argv = argv[1]
assert.equal(argv.options, yargsInstance)
},
"values are the one from the custom yargv": function (argv) {
argv = argv[1]
argv.loadSync()
assert.equal(argv.get('verbose'), 'false');
assert.equal(argv.get('v'), 'false');
}
},
"can be created with a nconf yargs":{
topic: function(){
var options = {verbose: {alias: 'v', default: 'false'}};
return new nconf.Argv(options);
},
"and can give access to them": function (argv) {
assert.deepEqual(argv.options, {verbose: {alias: 'v', default: 'false'}})
},
"values are the one from the custom yargv": function (argv) {
argv.loadSync()
assert.equal(argv.get('verbose'), 'false');
assert.equal(argv.get('v'), 'false');
}
}
}
}).export(module);

@@ -10,3 +10,2 @@ /*

assert = require('assert'),
helpers = require('../helpers'),
nconf = require('../../lib/nconf');

@@ -13,0 +12,0 @@

@@ -13,2 +13,3 @@ /*

nconf = require('../../lib/nconf'),
yamlFormat = require('nconf-yaml'),
data = require('../fixtures/data').data,

@@ -132,2 +133,49 @@ store;

}
},
"the saveToFile() method": {
topic: function (tmpStore) {
var that = this,
pathFile = '/tmp/nconf-save-toFile.json';
Object.keys(data).forEach(function (key) {
tmpStore.set(key, data[key]);
});
tmpStore.saveToFile(pathFile, function () {
fs.readFile(pathFile, function (err, d) {
fs.unlinkSync(pathFile);
return err
? that.callback(err)
: that.callback(err, JSON.parse(d.toString()));
});
});
},
"should save the data correctly": function (err, read) {
assert.isNull(err);
assert.deepEqual(read, data);
}
},
"the saveToFile() method with custom format": {
topic: function (tmpStore) {
var that = this,
pathFile = '/tmp/nconf-save-toFile.yaml';
Object.keys(data).forEach(function (key) {
tmpStore.set(key, data[key]);
});
tmpStore.saveToFile(pathFile, yamlFormat, function () {
fs.readFile(pathFile, function (err, d) {
fs.unlinkSync(pathFile);
return err
? that.callback(err)
: that.callback(err, yamlFormat.parse(d.toString()));
});
});
},
"should save the data correctly": function (err, read) {
assert.isNull(err);
assert.deepEqual(read, data);
}
}

@@ -200,3 +248,4 @@ }

topic: function () {
var filePath = this.filePath = path.join(process.env.HOME, '.nconf');
var searchBase = this.searchBase = process.env.HOME;
var filePath = this.filePath = path.join(searchBase, '.nconf');
fs.writeFileSync(filePath, JSON.stringify(data, null, 2));

@@ -208,3 +257,3 @@ return new (nconf.File)({

"should update the file appropriately": function (store) {
store.search();
store.search(this.searchBase);
assert.equal(store.file, this.filePath);

@@ -211,0 +260,0 @@ fs.unlinkSync(this.filePath);

@@ -10,3 +10,2 @@ /*

assert = require('assert'),
helpers = require('../helpers'),
nconf = require('../../lib/nconf');

@@ -13,0 +12,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc