package/package.json000644 0000001633 13245071004011564 0ustar00000000 000000 { "name": "dotenv", "version": "5.0.1", "description": "Loads environment variables from .env file", "main": "lib/main.js", "scripts": { "pretest": "npm run lint", "test": "lab", "ci:coverage": "lab test/* -r lcov | coveralls", "lint": "standard", "postlint": "npm run lint-md", "lint-md": "standard-markdown" }, "repository": { "type": "git", "url": "git://github.com/motdotla/dotenv.git" }, "keywords": [ "dotenv", "env", ".env", "environment", "variables", "config", "settings" ], "readmeFilename": "README.md", "author": "scottmotte", "license": "BSD-2-Clause", "devDependencies": { "babel": "5.8.23", "coveralls": "^2.11.9", "lab": "^14.3.2", "should": "11.1.1", "sinon": "1.17.6", "standard": "8.4.0", "standard-markdown": "2.2.0" }, "dependencies": {}, "engines": { "node": ">=4.6.0" } } package/appveyor.yml000644 0000000401 13245070676011674 0ustar00000000 000000 version: "{build}" build: off environment: matrix: - nodejs_version: "4" - nodejs_version: "6" - nodejs_version: "8" - nodejs_version: "9" install: - ps: Install-Product node $env:nodejs_version - npm install test_script: - npm test package/CHANGELOG.md000644 0000005727 13233725266011134 0ustar00000000 000000 # Change Log All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] ## [5.0.0] - 2018-01-29 ### Added - Testing against Node v8 and v9 - Documentation on trim behavior of values - Documentation on how to use with `import` ### Changed - *Breaking*: default `path` is now `path.resolve(process.cwd(), '.env')` - *Breaking*: does not write over keys already in `process.env` if the key has a falsy value - using `const` and `let` instead of `var` ### Removed - Testing aginst Node v7 ## [4.0.0] - 2016-12-23 ### Changed - Return Object with parsed content or error instead of false ([#165](https://github.com/motdotla/dotenv/pull/165)). ### Removed - `verbose` option removed in favor of returning result. ## [3.0.0] - 2016-12-20 ### Added - `verbose` option will log any error messages. Off by default. - parses email addresses correctly - allow importing config method directly in ES6 ### Changed - Suppress error messages by default ([#154](https://github.com/motdotla/dotenv/pull/154)) - Ignoring more files for NPM to make package download smaller ### Fixed - False positive test due to case-sensitive variable ([#124](https://github.com/motdotla/dotenv/pull/124)) ### Removed - `silent` option removed in favor of `verbose` ## [2.0.0] - 2016-01-20 ### Added - CHANGELOG to ["make it easier for users and contributors to see precisely what notable changes have been made between each release"](http://keepachangelog.com/). Linked to from README - LICENSE to be more explicit about what was defined in `package.json`. Linked to from README - Testing nodejs v4 on travis-ci - added examples of how to use dotenv in different ways - return parsed object on success rather than boolean true ### Changed - README has shorter description not referencing ruby gem since we don't have or want feature parity ### Removed - Variable expansion and escaping so environment variables are encouraged to be fully orthogonal ## [1.2.0] - 2015-06-20 ### Added - Preload hook to require dotenv without including it in your code ### Changed - clarified license to be "BSD-2-Clause" in `package.json` ### Fixed - retain spaces in string vars ## [1.1.0] - 2015-03-31 ### Added - Silent option to silence `console.log` when `.env` missing ## [1.0.0] - 2015-03-13 ### Removed - support for multiple `.env` files. should always use one `.env` file for the current environment [Unreleased]: https://github.com/motdotla/dotenv/compare/v5.0.0...HEAD [5.0.0]: https://github.com/motdotla/dotenv/compare/v4.0.0...v5.0.0 [4.0.0]: https://github.com/motdotla/dotenv/compare/v3.0.0...v4.0.0 [3.0.0]: https://github.com/motdotla/dotenv/compare/v2.0.0...v3.0.0 [2.0.0]: https://github.com/motdotla/dotenv/compare/v1.2.0...v2.0.0 [1.2.0]: https://github.com/motdotla/dotenv/compare/v1.1.0...v1.2.0 [1.1.0]: https://github.com/motdotla/dotenv/compare/v1.0.0...v1.1.0 [1.0.0]: https://github.com/motdotla/dotenv/compare/v0.4.0...v1.0.0 package/config.js000644 0000000377 13233641564011120 0ustar00000000 000000 (function () { var options = {} process.argv.forEach(function (val, idx, arr) { var matches = val.match(/^dotenv_config_(.+)=(.+)/) if (matches) { options[matches[1]] = matches[2] } }) require('./lib/main').config(options) })() package/LICENSE000644 0000002416 13233641564010316 0ustar00000000 000000 Copyright (c) 2015, Scott Motte All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. package/README.md000644 0000022607 13233722525010571 0ustar00000000 000000 # dotenv dotenv Dotenv is a zero-dependency module that loads environment variables from a `.env` file into [`process.env`](https://nodejs.org/docs/latest/api/process.html#process_process_env). Storing configuration in the environment separate from code is based on [The Twelve-Factor App](http://12factor.net/config) methodology. [![BuildStatus](https://img.shields.io/travis/motdotla/dotenv/master.svg?style=flat-square)](https://travis-ci.org/motdotla/dotenv) [![Build status](https://ci.appveyor.com/api/projects/status/rnba2pyi87hgc8xw/branch/master?svg=true)](https://ci.appveyor.com/project/maxbeatty/dotenv/branch/master) [![NPM version](https://img.shields.io/npm/v/dotenv.svg?style=flat-square)](https://www.npmjs.com/package/dotenv) [![js-standard-style](https://img.shields.io/badge/code%20style-standard-brightgreen.svg?style=flat-square)](https://github.com/feross/standard) [![Coverage Status](https://img.shields.io/coveralls/motdotla/dotenv/master.svg?style=flat-square)](https://coveralls.io/github/motdotla/dotenv?branch=coverall-intergration) ## Install ```bash npm install dotenv --save ``` ## Usage As early as possible in your application, require and configure dotenv. ```javascript require('dotenv').config() ``` Create a `.env` file in the root directory of your project. Add environment-specific variables on new lines in the form of `NAME=VALUE`. For example: ```dosini DB_HOST=localhost DB_USER=root DB_PASS=s1mpl3 ``` That's it. `process.env` now has the keys and values you defined in your `.env` file. ```javascript const db = require('db') db.connect({ host: process.env.DB_HOST, username: process.env.DB_USER, password: process.env.DB_PASS }) ``` ### Preload You can use the `--require` (`-r`) command line option to preload dotenv. By doing this, you do not need to require and load dotenv in your application code. This is the preferred approach when using `import` instead of `require`. ```bash $ node -r dotenv/config your_script.js ``` The configuration options below are supported as command line arguments in the format `dotenv_config_