Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 34 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,31 @@ useful than saying where the real one is.

## [Unreleased]

## [0.10.0] — 2026-10-12

The engine moves to 29.9.0, built with the Go release that fixes five
standard-library vulnerabilities in `dockerd`. Two bugs that kept the engine
from idling or from starting cleanly are fixed.

### Security

- **The default engine is 29.9.0, built with Go 1.26.9.** Moby 29.9.0 ships on
Go 1.26.9, which fixes CVE-2026-97032, CVE-2026-78659, CVE-2026-78663 and
CVE-2026-78669 (an HTTP/2 client could crash the daemon, exhaust its memory,
bypass its flow control or burn its CPU) and CVE-2026-56857 (on Windows, a
directory created outside the data root through a junction). containerd,
runc and BuildKit stay at 2.3.6, 1.5.2 and 0.33.1: moby's own Dockerfile
names newer ones, but those values describe its dev container and are not
a reason to move ours. Existing installs move with `skrog engine upgrade`;
29.8.2 stays in the manifest, so `skrog engine rollback` returns to it.

**Use `rootfs-v29.9.0-2`, not `-1`.** The first rootfs for 29.9.0 was built
with Go 1.26.8, the floor in moby's `go.mod`, and so does not have those
five fixes. It was superseded within the day; the manifest in this release
points at `-2`, and the bump procedure in
[docs/bumping-upstream.md](docs/bumping-upstream.md) now says to match
moby's own Go version rather than its floor.

### Fixed

- **A short `prune.every` no longer stops the engine idling**
Expand All @@ -31,6 +56,13 @@ useful than saying where the real one is.
and a start always wins over that verdict. Found by the nightly e2e, which
failed this way on roughly one run in three.

### Removed

- **The `prune-idle` check in `skrog doctor`.** It warned when `prune.every`
was at or below `idle-timeout`, because the scheduled prune used to keep the
engine awake. That is fixed above, so the warning would now describe
something that no longer happens.

## [0.9.0] — 2026-10-05

The engine moves to 29.8.2 and takes containerd, runc and BuildKit with it,
Expand Down Expand Up @@ -1347,7 +1379,8 @@ Below are not ours, but you will hit them.
both preserved. If you use the wslc backend with non-root containers, this
is a reason to update WSL. The distro backend was never affected.

[Unreleased]: https://github.com/wslkit/skrog/compare/v0.9.0...HEAD
[Unreleased]: https://github.com/wslkit/skrog/compare/v0.10.0...HEAD
[0.10.0]: https://github.com/wslkit/skrog/compare/v0.9.0...v0.10.0
[0.9.0]: https://github.com/wslkit/skrog/compare/v0.8.0...v0.9.0
[0.8.0]: https://github.com/wslkit/skrog/compare/v0.7.1...v0.8.0
[0.7.1]: https://github.com/wslkit/skrog/compare/v0.7.0...v0.7.1
Expand Down
6 changes: 3 additions & 3 deletions docs/ci-runners.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ jobs:
- uses: actions/checkout@v4
- uses: wslkit/setup-skrog@v2
with:
version: 0.9.0 # pin it; "latest" resolves the newest release
version: 0.10.0 # pin it; "latest" resolves the newest release
- run: docker run --rm alpine:3.20 echo hello
```

Expand Down Expand Up @@ -84,7 +84,7 @@ jobs:
- uses: actions/checkout@v4
- uses: wslkit/setup-skrog@v2
with:
version: 0.9.0 # pin it; "latest" resolves the newest release
version: 0.10.0 # pin it; "latest" resolves the newest release
- run: docker run --rm alpine:3.20 echo hello
```

Expand All @@ -111,7 +111,7 @@ talks to:
default:
before_script:
- Invoke-WebRequest https://raw.githubusercontent.com/wslkit/setup-skrog/v2/scripts/install-skrog.ps1 -OutFile install-skrog.ps1
- pwsh -File install-skrog.ps1 -Version 0.9.0
- pwsh -File install-skrog.ps1 -Version 0.10.0
- $env:DOCKER_CONTEXT = 'skrog'

build:
Expand Down
2 changes: 1 addition & 1 deletion docs/install.md
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ elevation). It provisions nothing — that is step 2.
Options come from the environment, because `irm | iex` cannot take arguments:

```powershell
$env:SKROG_VERSION = '0.9.0' # default: newest release
$env:SKROG_VERSION = '0.10.0' # default: newest release
$env:SKROG_DIR = 'C:\tools\skrog' # default: %LOCALAPPDATA%\Programs\skrog
$env:SKROG_NO_PATH = '1' # do not touch PATH
```
Expand Down
Loading