Skip to content

Releases: KyoriPowered/blossom

🌼 blossom 2.1.0

16 Sep 17:55
Compare
Choose a tag to compare

blossom 2.1.0 is a feature release introducing some minor QOL features, and fixing handling of included files. It should be a straightforward upgrade for existing users of Blossom 2.0.1.

✨ Features

  • Add default variant template property when using variants by @jpenilla in #37
  • feat: Add helper API to make it easier to register custom sets by @zml2008 in #38

🐛 Fixes

Full Changelog: v2.0.1...v2.1.0

🌼 blossom 2.0.1

04 Sep 02:35
Compare
Choose a tag to compare

A hotfix release for blossom 2.0.0. See its release notes for information about the major changes in that release.

🐛 Fixes

  • fix: Correct inverted header newline condition by @zml2008 in #27

Full Changelog: v2.0.0...v2.0.1

🌼 blossom 2.0.0

04 Sep 02:16
Compare
Choose a tag to compare

NOTE 2.0.1 has been released as a hotfix to this version, resolving an issue with applying headers. See its release notes for details about those changes. We recommend using 2.0.1 instead, but the following release notes still provide helpful migration advice.

Blossom 2.0.0 is a complete redesign of the Blossom plugin to provide a fully featured solution for source and resource templating. It is based on the template engine used to build Sponge's math library. See the README for an introduction to Blossom v2's features.

Migrating from Blossom v1

The key difference in functionality with v2 is that only source files within the specific templates root will be processed as templates -- all other source files will have no other change.

This allows more efficient execution since templates only need to be regenerated when there are actual changes, and means that any compile errors in non-templated files will be linked correctly in IDE logs. Template output will also be exposed correctly to any IDE run configurations, since templates are processed at project import time.

The quickest migration from v1 starts with a buildscript like:

sourceSets {
  main {
    blossom {
      javaSources {
        // template values here
        property("token", value)
      }
    }
  }
}

Then place files that should be processed as templates in src/main/java-templates. These are Pebble templates, so the variable syntax is {{ token }}. See their documentation for more of the language's features.

Substitute java with groovy, kotlin, or scala as desired.

blossom 1.3.1

26 Jul 02:59
Compare
Choose a tag to compare

🐛 Fixes

  • Fix compatibility with Kotlin 1.7.0

Full Changelog: v1.3.0...v1.3.1