What's changing in 0.7.0
Statac 0.7.0 is a breaking release. This page is what an author of a site made with 0.6 needs to know before upgrading. The work isn’t released yet, so details may change before it is; when it is, this page becomes 0.7.0’s upgrade notes.
New words
Settings and messages take the word you would search for: URL, slug, pagination, scheduled post, list page, hook and image.
| Until 0.7.0 | From 0.7.0 |
|---|---|
later_pages: | pagination.permalink: |
left_behind: | exclude: |
page.photo() | page.image() |
not_ours: | served_elsewhere: |
also_at: | other_hosts: |
after_build_makes: | after_build_outputs: |
Fifteen problem names change, among them same-address (now
same-url), undescribed-picture (missing-alt-text), missing-words
(missing-translation) and waiting-for-its-day (scheduled-post).
Four go, with what they reported on: missing-address,
not-a-web-address, newer-starter and code-colours-not-loaded. The
old names’ pages under Problems explained redirect: a renamed
problem’s to its new page, a retired one’s to a related page.
An old name, of a setting or of a problem in quiet:, stops the build.
Statac says what to write in its place, or, for a retired problem, that
it no longer exists.
Commands
| Until 0.7.0 | From 0.7.0 |
|---|---|
statac new --update, --missing, --cards, --no-starter | Gone, with nothing in their place: Statac writes no templates into a site, so there is nothing for them to update or add. |
statac refuse <address> | refuse_webmentions_from:, a list of refused URLs in statac.yaml |
--site= | Gone: name the site’s folder after the command, as statac build my-site. |
statac new asks five questions and writes the new site’s settings
from the answers.
A refused URL’s mentions are left out of the next build, and
statac refresh deletes their files for good. Taking a URL off the list
only stops its future mentions being refused.
New sites start with no templates
Statac no longer writes templates, snippets, a stylesheet or sample
content into a site. statac new asks five questions (the site’s
title, the author’s name, the site’s URL, its language and its time
zone) and writes statac.yaml with the answers, a .gitignore, and an
empty content/ folder. statac import writes no templates either.
A page with no template is published as its content alone, so a new site works from its first page, and you add templates as you want them. These docs will have ready-made templates and snippets to copy, for feeds, social cards, search and the rest.
A site made before 0.7.0 keeps every file: its templates are its own, and Statac changes none of them. Where a template uses an old name, the build stops with the new one offered.
Nothing made unasked
Statac makes no page that nothing asked for:
- A page with no template is written as its content alone, with no wrapper.
- A home page is made only where there is
content/index.mdortemplates/home.html. - A folder’s list page is made only where the folder has an
index.md. - Tag and series pages are made only where a setting or a page asks for them.
- A feed is made only where a list asks for one with
feed:. Until 0.7.0 every top-level folder has a feed; from 0.7.0 a folder’s feed needs that line.
statac check says once what Statac no longer makes.
Feeds
A list’s feed: can name several feeds, each built with the template
named after its file, such as templates/rss.xml for rss.xml. These
docs will have an Atom and an RSS template to copy.
Code colours
Code is coloured only where a setting turns it on. code_style and
code.css go. These docs will give each theme’s stylesheet, to copy
into the site’s own. Statac says where a template still links
code.css.
Dates
Each language’s date formats come from
CLDR, the Unicode Consortium’s data on
languages. English follows the region: language: en writes
“December 31, 2025”. Write language: en-GB to keep
“31 December 2025”.
Also new
statac lsp, a language server, with packages for Sublime Text,
VS Code and Zed: problems as you type, completion, and renaming a page
with its links.
Something unclear or wrong? Open an issue on GitHub.