dotenv 0.8.0.4 → 0.8.0.6
raw patch · 13 files changed
+94/−73 lines, 13 filesdep ~optparse-applicativePVP ok
version bump matches the API change (PVP)
Dependency ranges changed: optparse-applicative
API changes (from Hackage documentation)
Files
- CHANGELOG.md +6/−0
- LICENSE +1/−1
- README.md +4/−2
- dotenv.cabal +11/−3
- src/Configuration/Dotenv.hs +18/−14
- src/Configuration/Dotenv/Parse.hs +7/−7
- src/Configuration/Dotenv/ParsedVariable.hs +8/−8
- src/Configuration/Dotenv/Scheme.hs +9/−8
- src/Configuration/Dotenv/Scheme/Helpers.hs +5/−5
- src/Configuration/Dotenv/Scheme/Parser.hs +7/−7
- src/Configuration/Dotenv/Scheme/Types.hs +12/−12
- src/Configuration/Dotenv/Text.hs +5/−5
- src/Configuration/Dotenv/Types.hs +1/−1
CHANGELOG.md view
@@ -1,4 +1,10 @@ ## MASTER+## Dotenv 0.8.0.6+* Allow optparse-applicative-0.16.0.0++## Dotenv 0.8.0.5+* Extend ghc support to 8.8 and 8.10+ ## Dotenv 0.8.0.4 * Fix test fixtures
LICENSE view
@@ -1,4 +1,4 @@-Copyright (c) 2016 Justin Leitgeb+Copyright (c) 2015-2020 Justin Leitgeb Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the
README.md view
@@ -20,7 +20,9 @@ ## Installation In most cases you will just add `dotenv` to your cabal file. You can-also install the library and executable by invoking `stack install dotenv`.+also install the library and executable by invoking `stack install dotenv` or+you can download the dotenv binaries from our+[releases](https://github.com/stackbuilders/dotenv-hs/releases) page. ## Usage @@ -243,4 +245,4 @@ ## Copyright -(C) 2015-2017 [Stack Builders Inc.](http://www.stackbuilders.com)+(C) 2015-2020 [Stack Builders Inc.](http://www.stackbuilders.com)
dotenv.cabal view
@@ -1,5 +1,5 @@ name: dotenv-version: 0.8.0.4+version: 0.8.0.6 synopsis: Loads environment variables from dotenv files homepage: https://github.com/stackbuilders/dotenv-hs description:@@ -36,7 +36,7 @@ license-file: LICENSE author: Justin Leitgeb maintainer: hackage@stackbuilders.com-copyright: 2015-2017 Stack Builders Inc.+copyright: 2015-2020 Stack Builders Inc. category: Configuration build-type: Simple extra-source-files: spec/fixtures/.dotenv@@ -52,6 +52,11 @@ .scheme.yml .dotenv.safe +flag static+ description: Creates static binary.+ manual: True+ default: False+ flag dev description: Turn on development settings. manual: True@@ -62,7 +67,7 @@ build-depends: base >=4.7 && <5.0 , base-compat >= 0.4 , dotenv- , optparse-applicative >=0.11 && < 0.16+ , optparse-applicative >=0.11 && < 0.17 , megaparsec , process , text@@ -71,6 +76,9 @@ other-modules: Paths_dotenv hs-source-dirs: app+ if flag(static)+ ghc-options: -Wall -Werror+ ld-options: -static -pthread if flag(dev) ghc-options: -Wall -Werror else
src/Configuration/Dotenv.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -26,19 +26,23 @@ ) where -import Control.Monad (liftM, when)-import Configuration.Dotenv.Parse (configParser)-import Configuration.Dotenv.ParsedVariable (interpolateParsedVariables)-import Configuration.Dotenv.Scheme-import Configuration.Dotenv.Scheme.Types (ValidatorMap, defaultValidatorMap)-import Configuration.Dotenv.Types (Config(..), defaultConfig)-import Configuration.Dotenv.Environment (getEnvironment, lookupEnv, setEnv)-import Control.Monad.Catch-import Control.Monad.IO.Class (MonadIO(..))-import Data.List (union, intersectBy, unionBy)-import System.Directory (doesFileExist)-import System.IO.Error (isDoesNotExistError)-import Text.Megaparsec (parse, errorBundlePretty)+import Configuration.Dotenv.Environment (getEnvironment, lookupEnv,+ setEnv)+import Configuration.Dotenv.Parse (configParser)+import Configuration.Dotenv.ParsedVariable (interpolateParsedVariables)+import Configuration.Dotenv.Scheme+import Configuration.Dotenv.Scheme.Types (ValidatorMap,+ defaultValidatorMap)+import Configuration.Dotenv.Types (Config (..),+ defaultConfig)+import Control.Monad (liftM, when)+import Control.Monad.Catch+import Control.Monad.IO.Class (MonadIO (..))+import Data.List (intersectBy, union,+ unionBy)+import System.Directory (doesFileExist)+import System.IO.Error (isDoesNotExistError)+import Text.Megaparsec (errorBundlePretty, parse) -- | Loads the given list of options into the environment. Optionally -- override existing variables with values from Dotenv files.
src/Configuration/Dotenv/Parse.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -26,12 +26,12 @@ #endif import Control.Monad (void) import Data.Void (Void)-import Text.Megaparsec (Parsec, anySingle, between, eof,- sepEndBy, (<?>), oneOf,- noneOf)-import Text.Megaparsec.Char (alphaNumChar, char, eol,- spaceChar, digitChar,- letterChar)+import Text.Megaparsec (Parsec, anySingle,+ between, eof, noneOf,+ oneOf, sepEndBy, (<?>))+import Text.Megaparsec.Char (alphaNumChar, char,+ digitChar, eol,+ letterChar, spaceChar) import qualified Text.Megaparsec.Char.Lexer as L type Parser = Parsec Void String
src/Configuration/Dotenv/ParsedVariable.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -18,13 +18,13 @@ VarFragment(..), interpolateParsedVariables) where -import Control.Monad (foldM)-import Configuration.Dotenv.Environment (lookupEnv)+import Configuration.Dotenv.Environment (lookupEnv)+import Control.Monad (foldM) #if !MIN_VERSION_base(4,8,0)-import Data.Functor ((<$>))+import Data.Functor ((<$>)) #endif-import Control.Applicative ((<|>))-import System.Process (readCreateProcess, shell)+import Control.Applicative ((<|>))+import System.Process (readCreateProcess, shell) data ParsedVariable = ParsedVariable VarName VarValue deriving (Show, Eq)@@ -68,5 +68,5 @@ joinContents = concatMap fragmentToString where fragmentToString (CommandInterpolation value) = value- fragmentToString (VarInterpolation value) = value- fragmentToString (VarLiteral value) = value+ fragmentToString (VarInterpolation value) = value+ fragmentToString (VarLiteral value) = value
src/Configuration/Dotenv/Scheme.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -16,14 +16,15 @@ ) where -import Control.Monad+import Control.Monad -import Data.List-import Data.Yaml (decodeFileEither, prettyPrintParseException)+import Data.List+import Data.Yaml (decodeFileEither,+ prettyPrintParseException) -import Configuration.Dotenv.Scheme.Helpers-import Configuration.Dotenv.Scheme.Parser-import Configuration.Dotenv.Scheme.Types+import Configuration.Dotenv.Scheme.Helpers+import Configuration.Dotenv.Scheme.Parser+import Configuration.Dotenv.Scheme.Types readScheme :: FilePath -> IO [Env] readScheme schemeFile = do@@ -66,4 +67,4 @@ ++ " must be in your scheme.yml") case parseEnvsWithScheme mapFormat valuesAndTypes of Left errors -> error (unlines errors)- _ -> return ()+ _ -> return ()
src/Configuration/Dotenv/Scheme/Helpers.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -24,12 +24,12 @@ where #if !MIN_VERSION_base(4,8,0)-import Data.Functor ((<$>))-import Control.Applicative ((<*>))+import Control.Applicative ((<*>))+import Data.Functor ((<$>)) #endif-import Data.List+import Data.List -import Configuration.Dotenv.Scheme.Types+import Configuration.Dotenv.Scheme.Types matchValueAndType :: [(Env, (String, String))]
src/Configuration/Dotenv/Scheme/Parser.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -21,17 +21,17 @@ where #if !MIN_VERSION_base(4,8,0)-import Control.Applicative ((*>), pure)-import Data.Functor ((<$>))+import Control.Applicative (pure, (*>))+import Data.Functor ((<$>)) #endif -import Data.Either+import Data.Either -import qualified Data.Map.Lazy as ML+import qualified Data.Map.Lazy as ML -import qualified Data.Text as T+import qualified Data.Text as T -import Configuration.Dotenv.Scheme.Types+import Configuration.Dotenv.Scheme.Types -- |
src/Configuration/Dotenv/Scheme/Types.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -9,28 +9,28 @@ -- -- Types for 'loadSafeFile' (e. g., 'ValidatorMap') -{-# LANGUAGE CPP #-}+{-# LANGUAGE CPP #-} {-# LANGUAGE OverloadedStrings #-} module Configuration.Dotenv.Scheme.Types where #if !MIN_VERSION_base(4,8,0)-import Control.Applicative ((<*>), pure)-import Data.Functor ((<$>))+import Control.Applicative (pure, (<*>))+import Data.Functor ((<$>)) #endif -import Data.Maybe (isJust)+import Data.Maybe (isJust) -import Data.Map.Lazy (Map)+import Data.Map.Lazy (Map) -import Data.Yaml+import Data.Yaml -import qualified Data.Map.Lazy as ML+import qualified Data.Map.Lazy as ML -import Data.Text (Text)-import qualified Data.Text as T+import Data.Text (Text)+import qualified Data.Text as T -import Text.Read (readMaybe)+import Text.Read (readMaybe) -- |@@ -42,7 +42,7 @@ -- instance FromJSON EnvType where parseJSON (String value) = pure (EnvType value)- parseJSON anyOther = fail ("Not an object: " ++ show anyOther)+ parseJSON anyOther = fail ("Not an object: " ++ show anyOther) -- | --
src/Configuration/Dotenv/Text.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>@@ -13,12 +13,12 @@ import qualified Configuration.Dotenv -import qualified Data.Text as T-import Control.Arrow ((***))+import Control.Arrow ((***))+import qualified Data.Text as T -import Control.Monad (liftM)+import Control.Monad (liftM) -import Control.Monad.IO.Class (MonadIO(..))+import Control.Monad.IO.Class (MonadIO (..)) -- | Parses the given dotenv file and returns values /without/ adding them to -- the environment.
src/Configuration/Dotenv/Types.hs view
@@ -1,6 +1,6 @@ -- | -- Module : Configuration.Dotenv.Types--- Copyright : © 2015–2018 Stack Builders Inc.+-- Copyright : © 2015–2020 Stack Builders Inc. -- License : MIT -- -- Maintainer : Stack Builders <hackage@stackbuilders.com>