v0.61.0
This release brings improvements and new features across several parts of Scriggo: the command-line tool gains new commands and flags, the template engine adds new builtins and API, and several bugs have been fixed.
Scriggo command
- New
buildcommand that compiles a template and writes the output to files. This makes it easy to deploy a site by uploading the generated files to a static file hosting platform — a simple and fast way to bring a website to production. Thebuildcommand also accepts a-llmsflag to generate LLM-friendly Markdown output. - New
-httpflag forscriggo serveto specify the address to listen on. - The
servecommand now has the-contsflag, aligning its behavior with the existingruncommand. - The
servecommand now also checks forpath/index.htmlorpath/index.mdwhen neitherpath.htmlnorpath.mdis found.
Builtins and API
- New
indentJSONbuiltin that indents ajsonvalue while preserving the existing object key order. - New
Template.Formatmethod. - New tree transformation APIs: the transformations methods of the tree now allow transforming the syntax tree at different stages of the compilation pipeline — one before the expansion of imported and extended files, and one after. This gives greater flexibility and control over how the AST tree is transformed.
Other fixes and improvements
- Fixed the handling of
panic(nil). - Various improvements and fixes to the template and the rest of Scriggo. See the full list of changes.
Breaking changes
BuildOptions.TreeTransformerhas been renamed toExpandedTransformerto better reflect when it is executed.
Go version
The minimum required Go version is now Go 1.25, while the Scriggo command is compiled with Go 1.26.