sic 0.2.1: fix the v2 stdin hang (sicd reaps on child-exit)
build and publish packages / distcc-avahi-aarch64 (push) Successful in 6s
build and publish packages / mesa-panvk-bifrost-aarch64 (push) Successful in 4s
build and publish packages / mesa-panvk-bifrost-video-aarch64 (push) Successful in 5s
build and publish packages / lmcp-any (push) Successful in 5s
build and publish packages / lmcp-debian (push) Successful in 5s
build and publish packages / claude-his-any (push) Successful in 5s
build and publish packages / aish-any (push) Successful in 4s
build and publish packages / ffmpeg-v4l2-request-aarch64 (push) Successful in 4s
build and publish packages / claude-his-debian (push) Successful in 4s
build and publish packages / aish-debian (push) Successful in 4s
build and publish packages / libva-v4l2-request-fourier-aarch64 (push) Successful in 5s
build and publish packages / reauktion-home-ca-any (push) Successful in 4s
build and publish packages / mpv-fourier-aarch64 (push) Successful in 4s
build and publish packages / reauktion-home-ca-debian (push) Successful in 4s
build and publish packages / sicd-arch (push) Successful in 18s
build and publish packages / sic-agent-arch (push) Successful in 17s
build and publish packages / sicd-debian (push) Successful in 17s
build and publish packages / sic-agent-debian (push) Successful in 15s
build and publish packages / ffmpeg-v4l2-request-debian (push) Has been cancelled
build and publish packages / libva-v4l2-request-fourier-debian (push) Has been cancelled
build and publish packages / mpv-fourier-debian (push) Has been cancelled
build and publish packages / daedalus-v4l2-debian (push) Has been cancelled
build and publish packages / daedalus-v4l2-dkms-debian (push) Has been cancelled
build and publish packages / distcc-avahi-aarch64 (push) Successful in 6s
build and publish packages / mesa-panvk-bifrost-aarch64 (push) Successful in 4s
build and publish packages / mesa-panvk-bifrost-video-aarch64 (push) Successful in 5s
build and publish packages / lmcp-any (push) Successful in 5s
build and publish packages / lmcp-debian (push) Successful in 5s
build and publish packages / claude-his-any (push) Successful in 5s
build and publish packages / aish-any (push) Successful in 4s
build and publish packages / ffmpeg-v4l2-request-aarch64 (push) Successful in 4s
build and publish packages / claude-his-debian (push) Successful in 4s
build and publish packages / aish-debian (push) Successful in 4s
build and publish packages / libva-v4l2-request-fourier-aarch64 (push) Successful in 5s
build and publish packages / reauktion-home-ca-any (push) Successful in 4s
build and publish packages / mpv-fourier-aarch64 (push) Successful in 4s
build and publish packages / reauktion-home-ca-debian (push) Successful in 4s
build and publish packages / sicd-arch (push) Successful in 18s
build and publish packages / sic-agent-arch (push) Successful in 17s
build and publish packages / sicd-debian (push) Successful in 17s
build and publish packages / sic-agent-debian (push) Successful in 15s
build and publish packages / ffmpeg-v4l2-request-debian (push) Has been cancelled
build and publish packages / libva-v4l2-request-fourier-debian (push) Has been cancelled
build and publish packages / mpv-fourier-debian (push) Has been cancelled
build and publish packages / daedalus-v4l2-debian (push) Has been cancelled
build and publish packages / daedalus-v4l2-dkms-debian (push) Has been cancelled
sicd + sic-agent -> 0.2.1-1 against sic tag v0.2.1 (tarball sha 0efe5acc…). The daemon fix: it no longer blocks the stdin pump after the child exits, so sic calls with a never-EOFing stdin (non-interactive callers holding the pipe open) return promptly instead of hanging to a timeout. Client unchanged. Pre-flight built (debian amd64 + arch verifysource).
This commit is contained in:
@@ -3,7 +3,7 @@
|
|||||||
# Source of truth: git.reauktion.de/marfrit/sic
|
# Source of truth: git.reauktion.de/marfrit/sic
|
||||||
|
|
||||||
pkgname=sic-agent
|
pkgname=sic-agent
|
||||||
pkgver=0.2.0
|
pkgver=0.2.1
|
||||||
pkgrel=1
|
pkgrel=1
|
||||||
pkgdesc="sic client + agent skills: frame argv as netstrings and run it on a remote host via sicd (foreground + background skills)"
|
pkgdesc="sic client + agent skills: frame argv as netstrings and run it on a remote host via sicd (foreground + background skills)"
|
||||||
arch=('x86_64' 'aarch64')
|
arch=('x86_64' 'aarch64')
|
||||||
@@ -12,7 +12,7 @@ license=('MIT')
|
|||||||
makedepends=('go')
|
makedepends=('go')
|
||||||
depends=('openssh')
|
depends=('openssh')
|
||||||
source=("sic-${pkgver}.tar.gz::https://git.reauktion.de/marfrit/sic/archive/v${pkgver}.tar.gz")
|
source=("sic-${pkgver}.tar.gz::https://git.reauktion.de/marfrit/sic/archive/v${pkgver}.tar.gz")
|
||||||
sha256sums=('fe0569013da5bfa248743cd04bc2f09da8217b04432aa69827ed5287a133a37c')
|
sha256sums=('0efe5acc0218fab02faf0c3c6f8cc1bcd57de64d0bff64bd08affe293b4f0bb6')
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
cd "${srcdir}/sic"
|
cd "${srcdir}/sic"
|
||||||
|
|||||||
+2
-2
@@ -3,7 +3,7 @@
|
|||||||
# Source of truth: git.reauktion.de/marfrit/sic
|
# Source of truth: git.reauktion.de/marfrit/sic
|
||||||
|
|
||||||
pkgname=sicd
|
pkgname=sicd
|
||||||
pkgver=0.2.0
|
pkgver=0.2.1
|
||||||
pkgrel=1
|
pkgrel=1
|
||||||
pkgdesc="sic daemon: reads netstring-framed argv from stdin and execvp's it (deploy on remote/target hosts)"
|
pkgdesc="sic daemon: reads netstring-framed argv from stdin and execvp's it (deploy on remote/target hosts)"
|
||||||
arch=('x86_64' 'aarch64')
|
arch=('x86_64' 'aarch64')
|
||||||
@@ -12,7 +12,7 @@ license=('MIT')
|
|||||||
makedepends=('go')
|
makedepends=('go')
|
||||||
optdepends=('openssh: run sicd as an ssh ForceCommand / authorized_keys command')
|
optdepends=('openssh: run sicd as an ssh ForceCommand / authorized_keys command')
|
||||||
source=("sic-${pkgver}.tar.gz::https://git.reauktion.de/marfrit/sic/archive/v${pkgver}.tar.gz")
|
source=("sic-${pkgver}.tar.gz::https://git.reauktion.de/marfrit/sic/archive/v${pkgver}.tar.gz")
|
||||||
sha256sums=('fe0569013da5bfa248743cd04bc2f09da8217b04432aa69827ed5287a133a37c')
|
sha256sums=('0efe5acc0218fab02faf0c3c6f8cc1bcd57de64d0bff64bd08affe293b4f0bb6')
|
||||||
|
|
||||||
build() {
|
build() {
|
||||||
cd "${srcdir}/sic"
|
cd "${srcdir}/sic"
|
||||||
|
|||||||
Vendored
+3
-3
@@ -6,9 +6,9 @@
|
|||||||
# Needs: go, dpkg-deb, curl.
|
# Needs: go, dpkg-deb, curl.
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
PKGVER=0.2.0
|
PKGVER=0.2.1
|
||||||
PKGREL=1
|
PKGREL=1
|
||||||
SIC_TARBALL_SHA256=fe0569013da5bfa248743cd04bc2f09da8217b04432aa69827ed5287a133a37c
|
SIC_TARBALL_SHA256=0efe5acc0218fab02faf0c3c6f8cc1bcd57de64d0bff64bd08affe293b4f0bb6
|
||||||
HERE=$(dirname "$(readlink -f "$0")")
|
HERE=$(dirname "$(readlink -f "$0")")
|
||||||
|
|
||||||
DEB_ARCH="${1:-$(dpkg --print-architecture)}"
|
DEB_ARCH="${1:-$(dpkg --print-architecture)}"
|
||||||
@@ -18,7 +18,7 @@ case "$DEB_ARCH" in
|
|||||||
*) echo "unsupported arch: $DEB_ARCH (use amd64 or arm64)" >&2; exit 1 ;;
|
*) echo "unsupported arch: $DEB_ARCH (use amd64 or arm64)" >&2; exit 1 ;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
export SOURCE_DATE_EPOCH=1784808000
|
export SOURCE_DATE_EPOCH=1784829600
|
||||||
|
|
||||||
work=$(mktemp -d)
|
work=$(mktemp -d)
|
||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|||||||
Vendored
+6
@@ -1,3 +1,9 @@
|
|||||||
|
sic-agent (0.2.1-1) unstable; urgency=low
|
||||||
|
|
||||||
|
* Version bump only (shares the sic v0.2.1 tag). No client changes; the fix is in sicd.
|
||||||
|
|
||||||
|
-- Markus Fritsche <mfritsche@reauktion.de> Thu, 23 Jul 2026 18:00:00 +0000
|
||||||
|
|
||||||
sic-agent (0.2.0-1) unstable; urgency=low
|
sic-agent (0.2.0-1) unstable; urgency=low
|
||||||
|
|
||||||
* Client rewritten onto the v2 wire: nested `host/hop1/hop2` targets resolved
|
* Client rewritten onto the v2 wire: nested `host/hop1/hop2` targets resolved
|
||||||
|
|||||||
Vendored
+3
-3
@@ -6,9 +6,9 @@
|
|||||||
# Needs: go, dpkg-deb, curl.
|
# Needs: go, dpkg-deb, curl.
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
PKGVER=0.2.0
|
PKGVER=0.2.1
|
||||||
PKGREL=1
|
PKGREL=1
|
||||||
SIC_TARBALL_SHA256=fe0569013da5bfa248743cd04bc2f09da8217b04432aa69827ed5287a133a37c
|
SIC_TARBALL_SHA256=0efe5acc0218fab02faf0c3c6f8cc1bcd57de64d0bff64bd08affe293b4f0bb6
|
||||||
HERE=$(dirname "$(readlink -f "$0")")
|
HERE=$(dirname "$(readlink -f "$0")")
|
||||||
|
|
||||||
DEB_ARCH="${1:-$(dpkg --print-architecture)}"
|
DEB_ARCH="${1:-$(dpkg --print-architecture)}"
|
||||||
@@ -19,7 +19,7 @@ case "$DEB_ARCH" in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
# Reproducible build: pin mtimes + ar timestamps (v0.1.0, 2026-07-19 12:00 UTC).
|
# Reproducible build: pin mtimes + ar timestamps (v0.1.0, 2026-07-19 12:00 UTC).
|
||||||
export SOURCE_DATE_EPOCH=1784808000
|
export SOURCE_DATE_EPOCH=1784829600
|
||||||
|
|
||||||
work=$(mktemp -d)
|
work=$(mktemp -d)
|
||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|||||||
Vendored
+12
@@ -1,3 +1,15 @@
|
|||||||
|
sicd (0.2.1-1) unstable; urgency=medium
|
||||||
|
|
||||||
|
* Fix a hang: the daemon's stdin pump blocked on the ssh stdin channel long after the child
|
||||||
|
command had exited, when the v2 client forwarded a stdin that never EOFs (a caller holding
|
||||||
|
the pipe open). sicd now races the stdin copy against the child's exit and reaps on
|
||||||
|
child-exit (like ssh itself), so `sic host cmd` returns as soon as cmd finishes instead of
|
||||||
|
hanging until stdin close or a timeout. Piped/redirected stdin still forwards; a genuine
|
||||||
|
truncation to a still-reading child is still a non-zero failure. Daemon-only; client
|
||||||
|
unchanged; v1/v2 dual-read unaffected.
|
||||||
|
|
||||||
|
-- Markus Fritsche <mfritsche@reauktion.de> Thu, 23 Jul 2026 18:00:00 +0000
|
||||||
|
|
||||||
sicd (0.2.0-1) unstable; urgency=low
|
sicd (0.2.0-1) unstable; urgency=low
|
||||||
|
|
||||||
* Nested targets + v2 argv-boundary wire. `sic host/hop1/hop2 cmd` peels
|
* Nested targets + v2 argv-boundary wire. `sic host/hop1/hop2 cmd` peels
|
||||||
|
|||||||
Reference in New Issue
Block a user