Skip to content

Releases: dogmatiq/ferrite

Version 1.4.0

16 Aug 23:12
v1.4.0
c40bb23
Compare
Choose a tag to compare

Added

  • Added FileBuilder.WithMustExist() constraint.
  • Added Dir() builder for directory paths.

Changed

  • Bumped minimum Go version to v1.22.

Version 1.3.0

14 Mar 04:40
v1.3.0
769b1f6
Compare
Choose a tag to compare

Added

  • Added StringBuilder.WithMinimumLength(), WithMaximumLength(), WithLength().
  • Added BytesBuilder.WithMinimumLength(), WithMaximumLength(), WithLength().

Fixed

  • Fixed wording of error message when a variable exceeds the maximum length.

Version 1.2.1

13 Aug 23:59
v1.2.1
3a3d6be
Compare
Choose a tag to compare

Changed

  • Dropped support for Go v1.19, which reached end-of-life on 2023-08-08
  • Removed use of the slices and maps packages from golang.org/x/exp. These package are not versioned and as such breaking changes can cause conflicts with other dependencies. The experimental constraints package is still used, with the expectation that these will always remain valid for use as type parameter constraints.

Version 1.2.0

11 Jun 21:27
v1.2.0
4a4f23a
Compare
Choose a tag to compare

Added

  • Added Registry and NewRegistry()
  • Added RegistryOption and WithDocumentationURL()

Changed

  • Changed WithRegistry() to accept a ferrite.Registry instead of the experimental variable.Registry type
  • Passing WithRegistry() to Init() is now additive, instead of replacing the default registry

Removed

  • Removed the experimental maybe and variable sub-packages

Fixed

  • Prevent registration of multiple environment variables with the same name

Version 1.1.0

06 Jun 02:50
v1.1.0
c603cf6
Compare
Choose a tag to compare

Added

  • Added Binary() and BinaryAs() builders for binary variables
  • Added variable.LengthLimited schema for values that have minimum or maximum lengths

Changed

  • variable.String now implements the new LengthLimited interface
  • Rename the variable.[Min|Max]LengthError.String to ViolatedSchema and change its type to LengthLimited

Removed

  • Removed "platform" examples from generated documentation. These are too opinionated and organization-specific to be included in every project's documentation. Instead, we will provide different export modes that can be used to generate Docker/Kubernetes/etc configurations, similar to the existing export/dotenv mode.

Version 1.0.3

19 Apr 21:49
v1.0.3
b9baf1c
Compare
Choose a tag to compare

Changed

  • export/dotenv mode now includes sensitive values in the output

Version 1.0.2

29 Mar 00:21
v1.0.2
ca1559d
Compare
Choose a tag to compare

Fixed

  • Added export keyword to output of export/dotenv mode

Changed

  • Improve example values for File() builder

Version 1.0.1

28 Mar 04:16
v1.0.1
f71fc66
Compare
Choose a tag to compare

Changed

  • Render a table of environment variables in Markdown documentation instead of bullet points
  • Simplify language in generated documentation

Version 1.0.0

17 Mar 01:43
v1.0.0
284bcb9
Compare
Choose a tag to compare
  • No changes from v0.6.0.

Version 0.6.0

14 Mar 09:06
v0.6.0
b17f3de
Compare
Choose a tag to compare
Version 0.6.0 Pre-release
Pre-release

Added

  • Added SeeAlso() option
  • Added RelevantIf() option

Changed

  • [BC] SupersededBy() now accepts a single variable set and variadic options
  • [BC] Renamed Input to VariableSet
  • Refactored internal variable.Variable to allow for more flexible implementations

Removed

  • [BC] Removed SeeAlso() method from all builder types, use the new SeeAlso() option instead