Accent CMS 0.27.3 — search, index and validation fixes
Accent CMS 0.27.3 is available. It is a bug-fix release for the 0.27 line, and it does not contain the 0.28 development work. A licence with a 0.27 ceiling covers it.
Do these steps after you upgrade
Most fixes start to operate when you install the new binary. Four changes can need an action from you.
Search island. The search island now contains the same form as
search_form(). In your theme, put this line in
<accent-island data-component="search">:
{{ search_form("Search...", 5, script=false) }}
The island props endpoint, min_chars and debounce are removed. A form
that you wrote yourself in the island does not search now. The results use
the .acms-search-* classes. If your theme styles .island-search-results
or .search-hit, change these styles to the new classes.
Tag templates. If a configured taxonomy has no templates of its own,
Accent uses the tag templates. A site that you made with accent init
before 0.27.3 keeps its old tag templates. To show the correct terms, change
tags.html.jinja and tag.html.jinja:
- List
taxonomy.terms, nottaxonomy.tags. - Make the links with
term_url(taxonomy.name, term). - Compare terms with
taxonomy.current_term.
Taxonomy names. These names for a configured taxonomy now cause a
configuration error: name, singular, terms, pages, current_term,
current_label and current_tag. The singular label also causes the
error. Rename the taxonomy, or its singular.
Diagrams turned off. With diagrams.enabled: false, a {% diagram %}
tag and a diagram() call now show the diagram source as a code block, as a
fenced block does. To show diagrams, set diagrams.enabled: true.
Fixes
Search shows results in the language of the page. On a site with two or
more languages, search showed pages of all languages. Now a search form and
the search island show only the pages in the language of the current page.
To translate the text for no results and the name of the results list, give
search_form() the arguments no_results and results_label. The
{% search %} tag takes attributes with the same names. To search all
languages, use all_languages=true.
Redirect pages are not in the indexes. A page with redirect: was in
sitemap.xml, the search index, llms.txt, llms-full.txt, the feeds and
the term pages. A translation with a redirect was also an hreflang
alternate and an item in page.translations. Now Accent removes redirect
pages from all these outputs.
Each taxonomy shows its own terms. A configured taxonomy without its own
templates showed the tags, for example on /categories. Its term pages
linked to /tags. Now each taxonomy page shows the terms of its taxonomy.
The new keys taxonomy.name, taxonomy.singular, taxonomy.terms and
taxonomy.current_term give this data to your templates.
accent validate reports the line in the file. The line number of a
component error started after the frontmatter. Now it counts from the first
line of the file. This is also true in a ---section: region and in the
admin validation report.
The dev server watches static/. When you add or remove a file in
static/, accent serve now checks the links again.
accent serve sends static files under a versioned root. On a site with
versions under /docs, the server redirected /docs/a.pdf to
/docs/v1/a.pdf. Now it sends static/docs/a.pdf, as the build does.
accent serve sends the same script policy as your deployed site. The
server allowed WebAssembly when search was off, and the Mermaid CDN when
diagrams were off. Now it allows each one only when you use the feature.
Install or upgrade
curl -fsSL https://accentcms.dev/install.sh | sh
Binaries for all platforms, checksums and signatures are on the GitHub release page.