- Ensure support from GHC 8.10 up to GHC 9.6
- New attribute for
Config
data type to print env vars without actually running the command (kudos to @flandrade).
- Allow optparse-applicative 0.18
- Export internal module
Configuration.Dotenv.Internal
which exports all the internal modules. - Export
configParser
fromConfiguration.Dotenv
.
- Take last rather than first env var in dotenv file (reported by @rudymatela and solved by @anddriex). This will be the default behavior for the CLI, too.
- Short
-x
for--example
flag
- Fix
union
/unionBy
bug, refactor .env.example check, and improve error message (Kudos to @pbrisbin)
- Modify docs.
loadFile
change return type (back tom ()
)
- Parse multi-word command interpolations (Kudos to @pbrisbin)
- Support for GHC = 9.0
- Support for GHC < 8.6
- Allow optparse-applicative-0.17.0.0
- Remove
loadSafeFile
. Users must create their own parsers to convert the read values fromSystem.Environment
to another data type. Therefore,loadSafeFile
won't be needed. We'll remove this functionality to reduce dependencies.
- Correct bounds for base. GHC support for versions older than 8.0 was dropped.
- Allow megaparsec-0.9.0.0
- Allow optparse-applicative-0.16.0.0
- Extend ghc support to 8.8 and 8.10
- Fix test fixtures
- Add suppport for
megaparsec-8.0.0
- Add support for GHC 8.6
- Support for
optparse-applicative-0.15
- Add
Configuration.Dotenv.Environment
module exporting functions fromSystem.Environment
,System.Environment.Compat
, orSystem.Environment.Blank
, depending onbase
version. - Add support for blank environment variables for
base
>= 4.11.0.0.
- Hide helper modules in other-modules
- Reexport
defaultConfig
inConfiguration.Dotenv
(thanks to: matsubara0507)
- Support for
process-1.6.3.0
- Add support for
megaparsec-7.0.1
- Drop support for
GHC 7.8.4
- Move
loadSafeFile
toConfiguration.Dotenv
- Export
Configuration.Dotenv.Types
fromConfiguration.Dotenv
- Change
loadSafeFile
signature to accept different types of validators. - Add
type ValidatorMap = Map Text (Text -> Bool)
for custom validations.
- Update
exceptions
bounds>= 0.8 && < 0.11
- Add error message when there is more than one definition in the Scheme for the same env
- Update bounds
exceptions
== 0.9.* - Support
megaparsec
>= 6.4.0
- Update documentation for Configuration.Dotenv.Types
- Add
loadSafeFile
to typecheck the envs. - Add
(--schema|-s) FILE
flag to thedotenv
CLI tool to enable safe mode. - Add
(--no-schema)
flag to thedotenv
CLI tool to disable safe mode. - Turn safe mode on automatically when the
.schema.yml
file is present. - Make
required
optional in the.schema.yml
.
- Allow
.env
empty files
- Add support for command substitution on env vars.
- Set
.env
file as default file for environment variables. - Add
--version
flag to check the version of dotenv that is in use.
- Add dotenv-safe functionality
- Add the
Config
type with options to override env variables, and setting the path for .env and .env.example files. - Changed
loadFile
function to getConfig
with the paths for the .env file and the .env.example file.
- Use Megaparsec 6.0
- Dropped support for GHC 7.6
- Allow optparse-applicative 0.14
- Add support for variable expansion. Thanks to حبيب الامين (GitHub: habibalamin) for making this contribution.
- Add the option to pass arguments to the program passed to Dotenv. Thanks to Oleg Grenrus (GitHub: phadej) for making this contribution.
-
Made interface more polymorphic so the functions works in any instance of
MonadIO
, not onlyIO
. This should reduce amount of lifting in some cases. -
Added
onMissingFile
helper to deal with possibly missing files. -
Parser was rewritten to take full advantage of Megaparsec.
hspec-megaparsec
is now used for testing of the parser. -
Dropped support for GHC 7.4.
- Allow optparse-applicative 0.13
- Remove unnecessary package dependencies.
- Reverted change to Data.Text in favor of String, for maintaining compatibility with common Haskell system libraries. Added separate interface for parsing a file into tuples containing Data.Text values. Thanks to Daisuke Fujimura (GitHub: fujimura).
- Fixed parsing of CRLF characters for Windows users.
- Changed public interfaces to use Data.Text.
- Added function
parseFile
to read dotenv file without modifying the environment. Thanks to Daisuke Fujimura (GitHub: fujimura) for making this contribution.
- First public release.