Everything else in 1.10

./blog.sh v1.10 — part 8 of 8

Six posts have covered what 1.10 is about: the archive that talks back, an icon instead of a terminal, the door for programs, what a listing says now, saved unchanged and a second language, one release later. This one is the rest, in the order an operator meets it. Most of it came from two sites that have run the pre-release since the end of September, and from readers who read the fixes of the fixes.

The wizards

./setup.sh --help said every question can be skipped. Five cannot while they hold the template's example, and the wizard's opening sentence named four of them; it names all five now. ./style.sh wrote half a sidebar card: a card whose one necessary answer — the account, the feed's address, the user name — was left empty was written all the same. Nothing is written, and the wizard says which answer is missing. And preview on a port already in use printed "Serving at…" and a stack trace; it says the port is taken, and which one to try.

The terminal

One thing, one word. The queue offered "[s] different time" and "[n] remove from queue" for what a post's own screen calls "[s] reschedule" and "[n] cancel the schedule"; both say the second now, in all three languages. Czech also called an unlisted post two things and taking a post off the site two things: it is "mimo výpisy" and "vrátit do konceptů" everywhere. The keys are the keys they were.

A slug typed into a picker could not be corrected past its first letter: the first key was read by the menu and the rest of the line by the terminal, which can take back only what it took in itself. The whole line is read a key at a time; with its last letter taken back, the menu is there again. list --tag cats, the value as the next word, answered with the whole archive, and so did list --tag=; both take the value, and an empty one is a refusal. A paragraph with an unclosed ** and backslashes after it hung the save for minutes; it is read at once. And on a volume that folds case, a post asked for as Venku was found as venku and then handled under the name asked for: deleted that way it went to trash/2026/Venku and came back as Venku.json with the slug venku inside, which the same archive on Linux cannot read. A post is found by its name to the letter, in the archive and in the trash.

The queue and cron

queue --json carries scheduler.last_run, null on a blog nothing has ever run the queue on. There a post past its time no longer says "wait for the cron": it says nothing publishes the queue here, and that the post is published with ./blog.sh publish <slug>. Nothing is published by looking — publishing announces.

What a cron wrapper refused, it said on standard output. The line the wizard hands to cron keeps that in a log and mails the rest, so a refusal by publish-scheduled.sh or refresh-sidebar.sh reached nobody. It goes to standard error now. And a site with the "On this day" card wants refresh-sidebar.sh in cron even with no other widget: it rewrites the card's file once a day, per language. The script leaves the moment it ran, and doctor says when the card is switched on and nothing runs it — without that the card shows the day of the last build and is gone the day after.

The page

banner.show_image: false: a header without its picture. The short name and the description stand on the page itself, in the page's own text colours, and the whole header is still the link home. The markup is the banner's with the <img> taken out and nothing else moved, and the default rules for it weigh nothing, so a skin that already draws its own header and hides the picture looks exactly as it did — only its readers stop downloading a file nobody showed them. banner.src stays: it is also the picture a page with none of its own is shared with.

The tag index has a way to a letter: above the list, the letters that have tags under them, each a link to its band, behind the words "jump to a letter". Count order has no bands, so the switch puts the row away while that order is shown. A thread reads as a conversation: a reply to somebody's comment, rather than to the post, is set in under it — one step, however deep the exchange goes. In a live thread the page reads it off the thread; on a moderated site cron writes reply: true into comments.json, so the indent appears with the next refresh. comment--reply for a skin.

The cheat sheet's section on pictures had a source and a sentence and nothing to look at. It now draws both — a picture with its caption, and a gallery of a landscape beside a portrait, which is exactly the crop the paragraph above it describes — from two drawings of under a kilobyte. Its contents list had lost two sections, the teaser from 1.5 and the link card from 1.7; they are back. And the skinning guide had advised :first-child for the first card since 1.3.2, a selector no card ever matched, because a listing's heading stands first in <main>; it says :first-of-type.

Pictures and files

![x](IMG (1).jpg) — what a phone calls the second download — was refused as a picture inside a paragraph, alone on its line as it was, and a post that already held such a file could not be saved from its own text. A name may hold a pair of parentheses, in a picture's, a clip's and an attachment's line alike. A new file sent under a name the post already has was ignored without a word: the post kept its picture, which is the rule, and the file lay in incoming/. The answer says so in warnings, and the file is tidied. A line starting with // is dropped by the editor on save, and the cheat sheet says so of any text; in a file handed to add it was saved as a paragraph, and with publish: yes it stood on the page. A file is read as the editor's buffer is. And a moved installation lost its teasers: an export writes //--more--// as <!--more-->, the line Jekyll and Hugo end an excerpt at, and the import did not read it back. It is read as the end of the teaser, from an export of this engine and from a tree of either generator.

The price

The first deploy after moving to 1.10 sends nearly every page once: listings, cards and headings say more. A cold build costs a few percent more than 1.9's; a cached rebuild costs what it did, so an ordinary day of publishing is unchanged.

Full notes, all of it, in CHANGELOG.md under 1.10.

Comments