Skip to content

@hairyhenderson hairyhenderson released this Jan 26, 2021

This is largely a bug-fix and stability release, but also contains some fairly
major internal refactoring, specifically to better support some future changes
that will make gomplate easier to use as a library!

Be sure to check out the multi-platform Docker images available at hairyhenderson/gomplate.

If you've gained value out of gomplate and want to find a way to encourage development, please consider sponsoring gomplate!

v3.9.0 (2021-01-24)

Full Changelog

Release Notes

New features and changes

Bug fixes

  • #1051 Fixing potential data race in signal handling code (possible when gomplate is used as a library)
  • #1027 & #1043 Fix ignored left/right delim env vars (fixes #1018)
  • #1029 & #1041 Only extra print newline with console output (fixes #996)
  • #956 Properly support Windows file modes (fixes #948)

Documentation fixes/updates

  • #981 Fixing docker image tag reference (fixes #996)
Assets 20

@hairyhenderson hairyhenderson released this Aug 30, 2020

It's time for another gomplate release, and this time we have a good number of bug fixes, new functions, and updated dependencies.

Thanks to @surki and @jen20 for their contributions to this release!

Of particular note is the new experimental mode which you can use to try out some new functionality that isn't ready to be "locked in" just yet.

In particular, there are now some new RSA Encryption/Decryption functions, including crypto.RSAGenerateKey, which gives you a way to quickly generate an RSA encryption key pair! The reason these are experimental is because I'm not sure about the UX yet, and the function names may change in a future release.

Be sure to check out the multi-platform Docker images available at hairyhenderson/gomplate.

If you've gained value out of gomplate and want to find a way to encourage development, please consider sponsoring me!

v3.8.0 (2020-08-29)

Full Changelog

Release Notes

New features and changes

  • #919 New experimental mode!
    • Some functions and features will be provided for early feedback behind the experimental configuration option. These features may change before being permanently enabled, and feedback is encouraged from early adopters!
  • #926 Fall back to JSON/YAML arrays when parsing datasources instead of refusing to parse (implements #924)
  • #925 Gomplate is now built with Go 1.15

New functions

Bug fixes

  • #874 Allow referencing aws+sm and aws+smp keys that don't start with / (fixes #868)
  • #875 Reverted to UPX v3.94 for compressing the slim variant of gomplate, to avoid some bugs caused by a newer version (fixes #861)
  • #934 Only open input/output files when necessary (fixes #928)
  • #935 Fixing "wrong type for value" error when parsing YAML documents containing anchors (fixes #909)

Documentation fixes/updates

Assets 20

@hairyhenderson hairyhenderson released this May 22, 2020

It's high time for another gomplate release! 🎉

The main feature this time around is new support for configuration files! Now you can store config files alongside templates and replace complicated command lines with a single call to gomplate!

We now also have multi-platform Docker images available at hairyhenderson/gomplate,
including support for ARM platforms and Windows.

And finally, if you've gained value out of gomplate and want to find a way to encourage development, please consider sponsoring me!

v3.7.0 (2020-05-21)

Full Changelog

Release Notes

New features and changes

  • #692 Config file support - see the docs for details
  • #743 Recognizing non-standard application/x-yaml and application/text mime types used in GCP
  • #791 (internal) Adding context.Context support and a logger
  • #805 Support more data types as input to data.ToCSV
  • #811 Produce multi-platform Docker images (adds support for Linux on ARMv6, ARMv7, and ARM64, and for Windows on AMD64)
  • #840 Defer writing until output differs, so that files are left unmodified when the output is the same
  • #842 Add directory datasource support to aws+smp datasources

New functions

Bug fixes

  • #819 Fix broken file datasource URL parsing (query string was ignored) (fixes #809)
  • #833 Fix AWS Session unknown region bug (fixes #795)
  • #841 Apply --chmod before opening output file

Documentation fixes/updates

  • #720 Documenting the initial context ($) variable
  • #742 Added missing documentation for gs datasources (fixes #737)
  • #830 Add references to the built-in Go text/template actions
  • #845 Add documentation about variable scopes
Assets 20

@hairyhenderson hairyhenderson released this Nov 16, 2019

A big release after a bit of a hiatus. 😅

Big new features include plugin support and 3 new datasources (AWS S3, Google Cloud Storage, and Git!).

Also for those who are using the hairyhenderson/gomplate
Docker images, there are some new tags which will make it easier to stay up to date!

v3.6.0 (2019-11-15)

Full Changelog

Release Notes

New features and changes

  • #625 New s3 datasource for reading datasources from AWS S3. See the docs for full information.

  • #632 New gs datasource for reading datasources from Google Cloud Storage. See the docs for full information.

  • #661 New git datasource! Supports git over HTTP(s), SSH, the "classic" Git protocol, and repos on local filesystems. See the docs for full information.

  • #581 New --exec-pipe flag - allows piping output directly into a post-execution command

  • #586 New --include flag (opposite of --exclude)

  • #635 With the new --plugin/-p flag you can plug in your own custom functions!

  • #683 When parsing a YAML stream with multiple documents (separated with ---), gomplate will now return the first non-empty document

  • #651 New stable and major (v3) docker image tags - (fixes #648) thanks to @docwhat

    • New Docker image tags available stable, v3, stable-slim, v3-slim, stable-alpine, v3-alpine
  • #598 and #677 Moved to go modules. As a result, if you import gomplate into your own code, your import paths need to change to github.com/hairyhenderson/gomplate/v3

New functions

Bug fixes

  • #617 Fix example in docs for coll.Uniq
  • #623 Fix parsing of media types with + character
  • #641 Fix markdown rendering in docs - thanks to @Ilyes512 for this one!
  • #673 Fix bug where subpath was ignored when inferring MIME type (fixes #672)
Assets 17

@hairyhenderson hairyhenderson released this Jun 1, 2019

A small but mighty release, almost entirely powered by the community! 💪

The major features this time around are support for a AWS Secrets Manager data source, and list support for Consul data sources!

v3.5.0 (2019-06-01)

Full Changelog

Release Notes

New features and changes

Assets 17

@hairyhenderson hairyhenderson released this May 7, 2019

A tiny bug-fix release... 🐛

v3.4.1 (2019-05-06)

Full Changelog

Release Notes

Bug fixes

  • #543 Fixing file-mode inheritance bug (Fixes #542)
Assets 17

@hairyhenderson hairyhenderson released this Apr 10, 2019

In this release we've got some spring cleaning, 20 new functions, and a new way to dynamically name output files! 🚀🌷

Also, a new website is up at https://gomplate.ca, and the docs have moved to https://docs.gomplate.ca 📖

There's also now a #gomplate Slack channel on the Gophers Slack instance. Get invited by going to https://invite.slack.golangbridge.org, then join #gomplate and chat with the community and developers.

v3.4.0 (2019-04-09)

Full Changelog

Release Notes

New features and changes

  • #529 Adding new --output-map argument for templating output paths (see docs for details)
  • #521 Adding another way to install gomplate - with npm: npm install -g gomplate

New functions

Bug fixes

  • #507 & #527 Fixed loads of outstanding Windows bugs - plus adding more Windows-specific tests!
  • #533 Fixing merge behaviour for booleans
  • #513 Fixing file.Write's behaviour - it now truncates existing files as expected
Assets 17

@hairyhenderson hairyhenderson released this Mar 9, 2019

Just a bug-fix release... 🐛

v3.3.1 (2019-03-09)

Full Changelog

Release Notes

Bug fixes

  • #510 Fix .env file parsing so merging works properly (Fixes #509)
Assets 17

@hairyhenderson hairyhenderson released this Mar 3, 2019

A smaller relase this time, almost entirely full of new functions. An exciting new use-case is that a single template can now produce multiple outputs (with file.Write)! 🚀

v3.3.0 (2019-03-03)

Full Changelog

Release Notes

New features and changes

  • #497 docs: generating rest of string functions from YAML source
  • #501 docs: YAMLifying the rest of the function docs, improving the doc template
  • #506 Upgrading Go & Dockerfile dependencies

New functions

Assets 17

@hairyhenderson hairyhenderson released this Feb 8, 2019

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