diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..9f17ced --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,33 @@ +# Changelog + +All notable changes to SSG will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to +[Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## Next/Unreleased + +### Added + +- A `tagBuilder` of type `DynamicTagBuilder` is available in Templates, SpecialPages, and Parts. + ```groovy + def simpleTag = tagBuilder.test() + assert simpleTag == '' + + def tagWithBody = tagBuilder.title 'Hello, World!' + assert tagWithBody == 'Hello, World!' + + def tagWithAttributes = tagBuilder.meta name: 'og:title', content: 'Hello, World!' + assert tagWithAttributes == '' + + def tagWithAttributesAndBody = tagBuilder.p([id: 'my-paragraph'], 'Hello, World!') + assert tagWithAttributesAndBody == '

Hello, World!

' + ``` + This is likely most useful for building simple, one-line html/xml tags. + [93687d](https://github.com/JesseBrault0709/ssg/commit/936587d). +- **Breaking**: the `text` object in Templates is now an instance of `EmbeddableText` instead of `String`. Thus, one must + use `text.render()` to obtain the rendered text. [34d9cd5](https://github.com/JesseBrault0709/ssg/commit/34d9cd5). +- Parts have a `text` object of type `EmbeddableText`. If we are rendering a part called from anything other than a Template + (which has an associated text), this will be `null`. [34d9cd5](https://github.com/JesseBrault0709/ssg/commit/34d9cd5). + +### Fixed