Repository navigation
itos 8.3.3
itos 8.3.3
Cut by CI from the 9 commits since v8.3.2: 0 feats, 1 fix and 0 breaking changes, where a breaking change makes a major release, a feat a minor one and a fix a patch. Every change: v8.3.2...v8.3.3
What changed
Fixes
- Read the footers as git reads trailers, the message's last paragraph (
8b47336)
Documentation
- Edit p1-lint-leading-blank-hash-line (
8bcdcdd) - Add bug-110 (
44010c5) - Drop p1-lint-leading-blank-hash-line (
a4f9f47) - Specify bug 110, footers read as git reads trailers (
2702906) - Queue bug-110 (
2c0b939) - Close bug-109 (
180ec29) - Queue bug-109 (
16d716f) - Take bug-110 (
ec85519)
Upgrading
Commit these changes as your project's rules ask (the install script and the pin are build
commits, or whatever type your rules give itos.yaml and tools/bin/).
-
What the commits ask. No commit since v8.3.2 is a breaking change.
EachUpgrading:footer since v8.3.2 (itos commit footers Upgrading v8.3.2 v8.3.3):- 8b47336
fix: read the footers as git reads trailers, the message's last paragraph:footers must be the message's last paragraph, after a blank line, as git reads trailers
- 8b47336
-
What it changes on purpose. The old scenarios and conformance cases the range's
Changes:footers name,
which a fix changes because they held the bug (T-071):- 8b47336
fix: read the footers as git reads trailers, the message's last paragraph: @ID-HEADER-07 @ID-HEADER-08 - 8b47336
fix: read the footers as git reads trailers, the message's last paragraph: messages.yaml: the built-in lint's warnings are printed and do not reject the message - 8b47336
fix: read the footers as git reads trailers, the message's last paragraph: messages.yaml: the footer-leading-blank warning names the line that starts the footer - 8b47336
fix: read the footers as git reads trailers, the message's last paragraph: messages.yaml: --json gives the footer-leading-blank warning with the line it names
- 8b47336
-
The config. No key, type, value or default changed since v8.3.2: a config it accepts, this release
accepts and reads the same (tools/bin/schema-contract, T-070). -
Move the install script to 8.3.3. A project on the install script
(tools/bin/install-itos, v2.0.0's Upgrading, step 1) changes itsversion=line and each
platform's hash, from this release'schecksums.txt; the whole script, for a project that has
none yet:#!/bin/sh # tools/bin/install-itos: the pinned itos, into .tools/bin/ set -eu version=8.3.3 cd "$(git rev-parse --show-toplevel)" case "$(uname -s)-$(uname -m)" in Linux-x86_64) platform=linux-amd64 sum=df3a752de17ea14ba8d78ebc8a843671b03b0f2cfd6105c6a8d30b7e31f3687b ;; Linux-aarch64 | Linux-arm64) platform=linux-arm64 sum=5444a776ae420ce71937be9a3fbfa5dd1daaf3e99303397dc41cd481626e3420 ;; Darwin-x86_64) platform=darwin-amd64 sum=1734ddd56f67368b20bd07e7abe17ba535bb0e47d31738b7dba7185528c5fd50 ;; Darwin-arm64) platform=darwin-arm64 sum=3a4d030b84c5c155d8daa6746f19e4eaae9f5df53f6b781bd8cd304cc15497f1 ;; MINGW*-x86_64 | MSYS*-x86_64) platform=windows-amd64 sum=6f2d64246ef404b72d6a7b1b3bb24c895bbb799c82b35d2892cd3420b72e0fcd ;; *) echo "install-itos: no itos archive for $(uname -s)-$(uname -m)" >&2 && exit 1 ;; esac case "$platform" in windows-*) archive="itos-$version-$platform.zip" bin=.tools/bin/itos.exe ;; *) archive="itos-$version-$platform.tar.gz" bin=.tools/bin/itos ;; esac # What was installed, so a call with nothing to do runs nothing. pin=".tools/bin/itos.pin" if [ -x "$bin" ] && [ "$(cat "$pin" 2>/dev/null)" = "$version $sum" ]; then exit 0; fi tmp=$(mktemp -d) trap 'rm -rf "$tmp"' EXIT curl -fsSL -o "$tmp/$archive" "https://github.com/donvargax/itos/releases/download/v$version/$archive" if command -v sha256sum >/dev/null; then check="sha256sum -c -"; else check="shasum -a 256 -c -"; fi (cd "$tmp" && echo "$sum $archive" | $check) mkdir -p .tools/bin case "$archive" in *.zip) unzip -o -q "$tmp/$archive" itos.exe -d .tools/bin ;; *) tar -xzf "$tmp/$archive" -C .tools/bin itos ;; esac echo "$version $sum" > "$pin" echo "install-itos: itos $version in $bin"
-
Or move the pin to 8.3.3. A repository that pins a release in
itos.yaml
(v2.1.0's Upgrading, step 2) changes its two lines;pin.checksumsis the SHA-256 of this
release'schecksums.txtitself, one hash for every platform:pin: version: 8.3.3 checksums: c5138e7d52ec0772112e43bf89faa60ef0ae5515fec5713af8d47a03e2f08e99
A CI step that installs itos by
go installmoves to
go install github.com/donvargax/itos/v8/cmd/itos@v8.3.3. -
Point the schema line at v8.3.3's. If
itos.yaml's first line names a release's
itos.schema.json, make it
# yaml-language-server: $schema=https://github.com/donvargax/itos/releases/download/v8.3.3/itos.schema.json. -
Check:
tools/bin/itos version(oritos versionin the repository, with a pin)
printsitos 8.3.3,tools/bin/itos version --checkexits 0 (widen a cap in
requiresthat 8.3.3 is past), andtools/bin/itos config checkpasses. To report a
problem itos causes, open an issue on donvargax/itos with the labelconsumer-report
(https://github.com/donvargax/itos/issues/new?template=consumer-report.yml).
The archives are attested by the workflow that built them:
gh attestation verify <archive> -R donvargax/itos checks one, and
sha256sum --ignore-missing -c checksums.txt checks the ones downloaded beside it.