Skip to content

Releases: hairyhenderson/gomplate

v3.11.3

13 Sep 16:44
v3.11.3
ee4de43
Compare
Choose a tag to compare

This is a very minor patch release to update a dependency that's causing gomplate to trigger vulnerability scanners for CVE-2022-27664.

To the best of my understanding gomplate is not vulnerable, as it doesn't expose any HTTP servers - this patch release is purely to help vulnerability scans pass!

What's Changed

Full Changelog: v3.11.2...v3.11.3

v3.11.2

05 Aug 00:34
v3.11.2
c8ed3cd
Compare
Choose a tag to compare

Another patch release to allow gomplate to be compiled with Go 1.19.

What's Changed

Full Changelog: v3.11.1...v3.11.2

v3.11.1

19 Jun 21:07
v3.11.1
e689ca7
Compare
Choose a tag to compare

Just a simple patch release to fix a bug that prevented the go install installation method.

What's Changed

Full Changelog: v3.11.0...v3.11.1

v3.11.0

12 Jun 21:36
v3.11.0
a7685b1
Compare
Choose a tag to compare

👋 Welcome to another gomplate release! Once more, a number of bug fixes and new
features. Thanks to the community, gomplate is now available via
MacPorts as well!

Thanks

Plenty of people have contributed to gomplate by filing issues, suggesting new
features, or submitting pull requests. I'd like to especially thank the
following people for submitting pull requests in this release:

Deprecations

I'm starting to work on gomplate v4, the next major release (with breaking
changes). In preparation for this, I'm listing some features as deprecated (see
the deprecation policy). Note that some of these may have been
deprecated for a while, but I'd like to call them out explicitly here.

  • The BoltDB
    datasource is now deprecated (see this discussion),
    and will be removed in v4.0.0.
  • The slim binaries are deprecated, and will no longer be produced starting
    with v4.0.0.
  • A number of functions are deprecated, though not all will be removed in v4:
  • The array form of configuring nested templates is deprecated, and a new map-
    based form is now available. This will be removed in v4.

Be sure to also 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.11.0 (2022-06-12)

Full Changelog

Release Notes

New features and changes

  • #1422 New experimental gomplate.Renderer API is available for rendering templates programmatically. This should be of interest for developers wishing to use gomplate as a library. See the Go docs for examples.
  • #1410 Nested templates can now be referenced by URL and not just by path.
    • Notes:
      • Currently, only the file: URL scheme is supported. The full set of datasource URL schemes will be supported in a future release.
      • This also introduces a new format for the templates config option, and deprecates the previous format. See the docs for templates for more information.
  • #1402 Support for AWS IMDSv2 (EC2 instance metadata) is now available - thanks to @surki for the contribution!
  • #1358 Adding warning messages when using deprecated functions and datasources.
  • #1335 Now built with Go 1.18, which adds two new functions: break, and continue.
  • #1317 Plugins now support piping input arguments to the plugin's stdin, rather than a commandline argument. This can be configured in the config file (see the docs for details).
  • #1307 Missing directories are now automatically created for output files

New functions

Bug fixes

  • #1349 Fix bug in JSON and YAML functions where escaped forward slashes (\/) were not being correctly interpreted
  • #1350 Fix config merging when context/datasources are provided on the command line but not in the config file - thanks to @paddycarey for the contribution!
  • #1334 Fix file directory reading (fixes #1333)
  • #1310 Fix strings.Title to handle unicode punctuation (moves to alternate implementation after Go 1.18 deprecated the standard library function)
  • #1308 Fix bug where strings.Indent would not work correctly when a new-line character is used (now disallowed)
  • #1296 The aws+sm datasource will now correctly read a secret written as binary (SecretBinary) rather than a string (SecretString)

Documentation fixes/updates

  • #1338 Clarify that inputDir is read recursively
  • #1313 Add MacPorts installation instructions - thanks to @herbygillot for the contribution!
  • #1312 Improved plugin documentation
  • #1309 Updated install docs to remove mention of the deprecated slim binary, and update the Go install instructions for recent Go versions
  • #1301 conv.URL: Add example of how to redact the password
  • #1300 time.Now: Add example of how to use Time.IsDST
  • #1279 strings.Split: More examples to clarify how to use strings.Split - thanks to @karlschriek for the contribution!

v3.10.0

24 Sep 21:08
v3.10.0
e11e134
Compare
Choose a tag to compare

🥳 It's high time for another gomplate release! This release contains quite a few
bug fixes and improvements.

Some packaging updates:

  • There is now a binary built for macOS on the Apple Silicon (M1/etc - darwin-arm64) platform!
  • For Windows users, there is now a Chocolatey package available!
  • Docker images are now also pushed to GitHub Container Registry

Be sure to also 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.10.0 (2021-09-24)

Full Changelog

Release Notes

New features and changes

New functions

Bug fixes

  • #1217 Support git repos with default branches other than master (fixes #1049)
  • #1210 Fix CONSUL_HTTP_ADDR parsing (fixes #1209)
  • #1199 Fix a few filehandle leaks (fixes #995)
  • #1128 Fix data race in random functions
  • #1127 Fix data race when gomplate is used programatically - fixed by removing use of globals in func namespaces (fixes #1126)
  • #1104 Stop emitting ANSI colour codes on Windows in unsupported terminals (partial fix for #1095)
  • #1082 Fix error when using --input-dir=. (found in #1081)
  • #1063 Fix difficulty in using gomplate programatically - bumped k8s.io/client-go to valid semver (fixes #1061)

Documentation fixes/updates

  • #1136 Fix files.IsDir typo in doc example (fixes #1133)
  • #1120 Add chocolatey package badges (thanks to @adriens!)
  • #1121 Explain how to install gomplate on Windows (thanks to @adriens!)

v3.9.0

26 Jan 01:10
v3.9.0
9d11ac0
Compare
Choose a tag to compare

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)

v3.8.0

30 Aug 00:42
v3.8.0
d71e73f
Compare
Choose a tag to compare

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

v3.7.0

22 May 17:28
v3.7.0
ed380be
Compare
Choose a tag to compare

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

v3.6.0

16 Nov 03:04
v3.6.0
564f558
Compare
Choose a tag to compare

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)

v3.5.0

01 Jun 14:58
v3.5.0
fd00d0f
Compare
Choose a tag to compare

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