Repository navigation
Releases
v2.104.5
v2.103.4
- Negotiate the Docker Engine API version with the daemon rather than pin v1.41, which Docker 29.0 refuses with "client version 1.41 is too old. Minimum supported API version is 1.44" (#13): the client asks the unversioned GET /version once, speaks the daemon's newest version capped at NewestAPI (1.56, the newest Docker release's, every change since 1.41 read against the fields Portical sends and reads, none of which moved), never below the daemon's MinAPIVersion, and keeps it; a Docker it cannot ask is spoken to at NewestAPI with the reason logged, and a call refused as too old or too new, as after an upgrade under a running Portical, renegotiates and is asked once more. NewClient takes the log, which says the version spoken and what Docker offers, and the fake Docker answers /version and refuses a version outside its range as Docker does (46ffbc5)
Image: danielbodart/portical:2.103.4 or ghcr.io/danielbodart/portical:2.103.4
v2.102.3
- Keep RELEASE_PATHS in mise.toml and ask
mise run release-due, as every one of danielbodart's repos does, from CI and from the weekly update, which now dispatches a release with exactlyif mise run release-due; then gh workflow run ci.yml ... -f release=true; fi; run every step under bash, so -eo pipefail stops a failed flake update or digest lookup on the left of a pipe from going ahead with what it printed (and a lookup that names no digest fails the week rather than writing one into the Dockerfile); name the tarballs as every tool's are, -linux-x86_64, -aarch64 and -armv7.tar.gz, the plain binaries keeping the names links point at; write each release's notes from the commits since the last one; and say how it ships under Channels in the shape every README uses (73b7998)
Image: danielbodart/portical:2.102.3 or ghcr.io/danielbodart/portical:2.102.3
v2.101.2
Weekly update: github.com/danielbodart/gokit, github.com/danielbodart/gokit/dbusx, golang.org/x/sys
Image: danielbodart/portical:2.101.2 or ghcr.io/danielbodart/portical:2.101.2
v2.100.1
Move every dependency weekly in one Weekly update, replacing the flake.lock bump: the flake's inputs, mise's tools to the latest patch of their minor, the base image's digest and the Go modules with the vendorHash to match, committed straight to master once everything CI tests passes with them, the package pushed to Cachix, and CI dispatched with release when something a release is built from moved
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
Image: danielbodart/portical:2.100.1 or ghcr.io/danielbodart/portical:2.100.1
v2.97.33
Move the workflows to mise-action v5, the current major
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
Image: danielbodart/portical:2.97.33 or ghcr.io/danielbodart/portical:2.97.33
v2.96.32
Stop the weekly flake.lock bump publishing a release: what portical ships is not built from the flake, so the release would be the same code under a new version. The lock goes out with the next release a real change makes
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
Image: danielbodart/portical:2.96.32 or ghcr.io/danielbodart/portical:2.96.32
v2.95.31
Bump flake.lock: nixpkgs
Image: danielbodart/portical:2.95.31 or ghcr.io/danielbodart/portical:2.95.31
v2.94.30
Bump flake.lock weekly, on Sunday at 21:23 UTC, the window all my flakes share two hours before nix-config takes its own: the new lock is checked as docker.yml's nix job checks it before only flake.lock is committed, and docker.yml is then dispatched on master, since a GITHUB_TOKEN push starts no workflow, so the bumped commit is tested and published as a push would be
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
Image: danielbodart/portical:2.94.30 or ghcr.io/danielbodart/portical:2.94.30
v2.93.29
Log through gokit logx, tell systemd when ready, and name Portical to the router and Docker
- Type=notify: ready once the first pass is done and Portical is watching,
with the forwards summarised in STATUS=, and STOPPING on shutdown. The
start timeout is 5 minutes, as a first pass that pulls a relay helper can
outlast 90s. - Every line goes through a logx.Logger, failures as Error, and tests record
them in logtest. - Requests to the router and Docker carry User-Agent portical/.
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01R65JzNnjhep9Jzk24JUiby
Image: danielbodart/portical:2.93.29 or ghcr.io/danielbodart/portical:2.93.29