@hairyhenderson hairyhenderson released this Feb 8, 2019 · 14 commits to master since this release

There's lots of in this first release of 2019! 🎉🎊

Now, you can ignore files, merge datasources, and use .env files as datasoures. Also, you can do a whole pile of new things with lists and maps with the functions in the new coll namespace! See below for details...

v3.2.0 (2019-02-07)

Full Changelog

Release Notes

New features and changes

  • #450 Documented newline suppression (@carlosonunez)
  • #225 Add .gomplateignore support (@zealic)
    • An extension to the --exclude flag, allows ignoring certain files when processing directories with the --input-dir argument. Works just like the .gitignore file
  • #477 New merge: datasource, for merging multiple datasources
  • #481 Adding support for .env files
    • Parses files containing lines like KEY=value as key-value pairs
    • See the docs for details

New functions

Bug fixes

  • #442 Support subpaths for http datasources
  • #465 AWS region detection for SSM param store datasources
  • #468 Sort YAML objects alphabetically by key
  • #473 Propagate signals to post-run processes
Assets 17

@hairyhenderson hairyhenderson released this Nov 30, 2018 · 72 commits to master since this release

This may be a minor version bump, but it contains some major features! 💪 🚀

Aside from some new functions, behind-the-scenes updates, and docs updates, there's a new way to interact with datasources, a way to process templates in-line, and support for encrypted JSON files! Read on for details...

Note: The Homebrew release of gomplate will likely lag for a while, as there is a known bug with UPX that's blocking it from being released. You can brew install hairyhenderson/tap/gomplate in the meantime to get the latest version.

v3.1.0 (2018-11-29)

Full Changelog

Release Notes

New features and changes

  • #415 Changed the hairyhenderson/gomplate Docker image so that it's easier to pipe templates in without any commandline arguments. Thanks to @strokyl for this!
  • #420 Support decrypting ejson files
    • Adds support for ejson-encrypted JSON files, both in datasources and the json function
  • #424 New --context flag for adding datasources to context
    • Allows you to reference a datasource with dot-notation (i.e. {{ .foo }} instead of {{ ds "foo" }}) - multi-arg datasources still require the datasource/ds function
  • #431 Added some missing documentation for AWS environment variables
  • #439 Adding option to suppress empty output files
    • Perhaps a niche feature, but hopefully useful to some! Enable this with GOMPLATE_SUPPRESS_EMPTY=true. If you feel this should be more widely supported (through a commandline flag), please file an issue!

New functions

Assets 17

@hairyhenderson hairyhenderson released this Sep 25, 2018 · 122 commits to master since this release

Finally, gomplate has support for nested templates! 🎉 This, and some API changes, means it's time for the next major release! Welcome to gomplate 3.0! 🤖

v3.0.0 (2018-09-25)

Full Changelog

Release Notes

New features and changes

  • Improved documentation at https://gomplate.hairyhenderson.ca/syntax/ (#394)
  • Improved documentation for the conv namespace (added more examples/usage info) (#396)
  • New support for nested templates with the --template/-t flag (#403)
    • Currently templates may be loaded from the local filesystem, but remote template support is likely to be added in the future. Please file an issue if you have a specific use-case for this!
  • For developers who may be using gomplate as a library, #380 has made some changes to function signatures, and so may introduce incompatibilities in your code. Most of the changes involve template functions which should not be called directly (only through text/template). If this is a problem, please file an issue!

New functions

Bug fixes

Assets 17

@hairyhenderson hairyhenderson released this Aug 30, 2018 · 156 commits to master since this release

No new functions for once 😅, but still plenty of improvements under the hood!

v2.8.0 (2018-08-29)

Full Changelog

Release Notes

New features and changes

  • New --verbose flag (#385)
  • New --chmod flag to explicitly set output file modes (#369)
  • Export Funcs function to help enable usage of gomplate as library (#372) - Thank you, @dcwangmit01!
  • Updated to Go 1.11 (#382)
    • This adds a very useful feature for template authors: "Modifying template variables via assignments is now permitted via the = token:"
      {{ $v := "init" }}
      {{ if true }}
        {{ $v = "changed" }}
      {{ end }}
      v: {{ $v }} {{/* "changed" */}}
      
  • For those who may have been using gomplate as a library, (#376) removed unexported a number of functions that were never meant to be exported. If this is a problem, please file an issue!
  • MIME type detection precedence has been fixed (#374)
Assets 16
Aug 30, 2018
Releasing v2.8.0

@hairyhenderson hairyhenderson released this Jul 27, 2018 · 185 commits to master since this release

☀️ gomplate's big fancy summer release! 😎

v2.7.0 (2018-07-27)

Full Changelog

Release Notes

New features and changes

  • Datasources can now be defined dynamically (#357) - see datasource docs for details
    • instead of giving datasource an alias, you can provide a URL directly - useful for building new datasource URLs on the fly
  • conv.Has can search arrays now
  • Template errors now produce much less output (#362)

New functions

New namespaces

  • filepath, for manipulating local filesystem paths
    • filepath.Base, filepath.Clean, filepath.Dir, filepath.Ext, filepath.FromSlash, filepath.IsAbs, filepath.Join, filepath.Match, filepath.Rel, filepath.Split, filepath.ToSlash, filepath.VolumeName
  • path, for manipulating slash-based paths (such as URLs)
    • path.Base, path.Clean, path.Dir, path.Ext, path.IsAbs, path.Join, path.Match, path.Split
  • test, helpers for validating assumptions and can cause template generation to fail
    • test.Fail, test.Assert
Assets 17

@hairyhenderson hairyhenderson released this Jun 9, 2018 · 225 commits to master since this release

More functions, more features!

Highlights

v2.6.0 (2018-06-09)

Full Changelog

Implemented enhancements:

  • Directory datasource #215

Fixed bugs:

  • The sockaddr.Include and sockaddr.Exclude do not have "private" selector. #328
  • Support commas in number conversion #345 (hairyhenderson)

Closed issues:

  • Add slugify #336
  • Action Required: Fix Renovate Configuration #335
  • Consider publishing sha256sums of release files #318
  • Vault list support #229

Merged pull requests:

Assets 17

@hairyhenderson hairyhenderson released this May 4, 2018 · 271 commits to master since this release

A huge release this time around, with lots of community contributions!

Highlights:

v2.5.0 (2018-05-04)

Full Changelog

Implemented enhancements:

Fixed bugs:

Closed issues:

  • Writing an output file from a template provided via --in sets no FileMode when run using Docker #304
  • function "dict" not defined #291
  • unexpected "|" in template clause #290
  • Conditional statement as default value in getenv? #285
  • Pull in sprig functions? #283
  • Consider breaking the gomplate cmd into a sub-package #147

Merged pull requests:

Assets 16

@hairyhenderson hairyhenderson released this Mar 4, 2018 · 338 commits to master since this release

Another big gomplate release!

  • New sockaddr namespace
  • New file namespace
  • a bunch of bug-fixes, and more solid tests

v2.4.0 (2018-03-04)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • Solaris build is broken 💥 #255
  • strings.Indent should not indent when width is 0 #268 (keitwb)
  • Attempting to fix intermittent Integration Test failure #260 (hairyhenderson)

Closed issues:

  • docker run hairyhenderson/gomplate --version doesn't print version #266

Merged pull requests:

Assets 15

@hairyhenderson hairyhenderson released this Feb 16, 2018 · 374 commits to master since this release

The first release of 2018 - an enormous and overdue one! Sorry for the delay 😬

Highlights:

Many thanks to the contributors who have helped make this and other releases!

v2.3.0 (2018-02-12)

Full Changelog

Implemented enhancements:

Fixed bugs:

  • "unexpected {{end}}" error that only happens when using --input-dir #238

Closed issues:

  • gomplate should output which template was being parsed when an error is encountered #239
  • function "math" not defined #224

Merged pull requests:

Assets 14