Changelog for configuration-tools-0.4.0
0.4.0 (2018-08-21)
-
Drop support for GHC < 7.10 and base < 4.8
-
Drop support for Cabal < 1.24
-
Drop support for transformers < 0.4
-
Don't run CI tests for Cabal < 2
-
With Cabal 2.0 or later package info modules are placed in per component
autogen
directories. All package info modules are named justPkgInfo
. For backward compatibility modules with the old legacy names (PkgInfo_*
) are still generated but marked deprecated. With Cabal 1.24 only the legacy behavior is available and a deprecation warning is raised.
0.3.1 (2018-03-16)
- Support GHC-8.4.1 and Cabal-2.2
- Replaced the use of non-ascii identifiers in the public API
0.3.0
- Remove built in short options
-p
,-c
, and-i
- Support GHC-8.2 and Cabal-2.0
0.2.15
- Support for http-client >= 0.5
0.2.14
- Support for GHC-8 and Cabal-1.24
0.2.13
-
Eliminate most compiler warnings when compiling with GHC-7.10.
-
Bump lower bound on the version of
optparse-applicative
to0.11.0.2
. This avoids issues when building withtransformers-compat
. -
Reduce compilation time with
text<1.2.0.5
by avoiding usage oftoCaseFold
from thecase-insensitive
package. -
Dropped dependency on the error package.
-
Issue 43: Support detection of the version control system when the package directory and thus the cabal file is in sub-directory of the repository.
0.2.12
- Added support for transformers-0.3.0.0. This changes allows usage of configuration-tools along with packages that depend on ghc, which in turn depends on transformers-0.3.0.0.
0.2.11
- Added support for Cabal-1.18. This is supposed to make the build more robust and simplify integration with existing build infrastructure and other packages.
0.2.10
-
Moved all internal APIs to the
Internal
name space. Exposing them in 0.2.9 was considered a bug. -
Configuration files can be formatted either as JSON or as YAML. For remote configuration files the HTTP
Content-Type
header is used to determine the format, for local files the file suffix is used. The default format is YAML. -
Set the HTTP
accept
header for JSON and YAML when requesting remote configuration files.
0.2.9
-
Use tight constraint for all validation functions. Previously the constraint where unnecessarily restrictive.
-
Added
updateProperty
function that generalized%.:
in the same way assetProperty
generalizes..:
. -
Added a validation function for configuration file arguments.
-
Allow usage of more than a single
--config-file
option on the command line. -
Support for static configuration file locations. Configuration files can be marked as
required
oroptional
. -
Support for loading of configuration files form HTTP and HTTPS URLs. There are new flags for disabling validation of SSL certificates and white listing SSL certificates based on their fingerprint.
-
Added tools for updating configurations with a monoid instance.
-
Added two new option parsers for boolean flags.
-
The
boolOption_
parser uses the syntax--feature
and--no-feature
to enable and respectively disable a feature. -
The
enableDisableFlag
parser uses the syntax--enable-feature
and--disable-feature
to enable and respectively disable a feature.
-
-
Refactored the module layout. The API of the existing modules is is backward compatible, but a lot of code got moved into submodules.
-
Improved documentation.
-
Improved test suite.
0.2.8
-
Added validation functions for Boolean values, numeric values and orders.
-
Added operator
!..:
for parsing of configuration values that are required to be present in a configuration file, thus preventing the default value from being used. -
More consistent usage of case in metavar values.
-
Drop support for optparse-applicative < 0.10.
0.2.7
-
Added
view
function for lenses toConfiguration.Utils.Internal
. -
Added support for validation of configuration values.
-
Added module
Configuration.Utils.Validation
that provides primitives for validating different basic configuration values.
0.2.6
-
For git repositories include also light-weight (non-annotated) tags in the version description.
-
Added new function
boolReader
,boolOption
,fileOption
, andeitherReadP
toUtils
. -
Added new function
maybeOption
and improved documentation aboutMaybe
config values. -
Included optimisation level into long info.
0.2.5
Configuration.Utils.Setup
: exportmkPkgInfoModules
function that modifies a givenUserHooks
record to generate anPkgInfo
module during configuration.
0.2.4.1
- Support for optparse-applicative >= 0.10.
0.2.4
-
Configuration.Utils.Setup: fixed generation of
PkgInfo
module for package configurations with explicit flags. -
Improved documentation for
Maybe
values.
0.2.3
-
Show the help options in the options summary message.
-
Add
-?
as short version of for--help
in addition to-h
. -
Remove
showHelpOnError
anddisambiguate
from option parser preferences. -
Added file
INSTALL_ON_WINDOWS.md
with installation instructions for windows to the package.
0.2.2
-
Add Lens
piOptionParserAndDefaultConfiguration
that gives simultaneous accesses topiOptionParser
andpiDefaultConfiguration
which allows changing the type parameter ofProgramInfo a
. -
Introduce function
setProperty
. It is used as the..:
operator but allows to specify a custom parser for the property value instead of the defaultparseJSON
from theFromJSON
instance. -
Introduce operators
(<*<)
,(>*>)
,(<$<)
,(>$>)
and deprecate(⊙)
and(<.>)
.
0.2.1
- Fix build with GHC-7.6 by relaxing lower bounds on some dependencies.
0.2
First release.