Diff of the two buildlogs: -- --- b1/build.log 2025-03-20 00:09:31.348535188 +0000 +++ b2/build.log 2025-03-20 00:20:30.854688032 +0000 @@ -1,6 +1,6 @@ I: pbuilder: network access will be disabled during build -I: Current time: Tue Apr 21 18:31:04 -12 2026 -I: pbuilder-time-stamp: 1776839464 +I: Current time: Thu Mar 20 14:09:34 +14 2025 +I: pbuilder-time-stamp: 1742429374 I: Building the build Environment I: extracting base tarball [/var/cache/pbuilder/unstable-reproducible-base.tgz] I: copying local configuration @@ -22,52 +22,84 @@ dpkg-source: info: unpacking alertmanager-irc-relay_0.5.1-3.debian.tar.xz I: Not using root during the build. I: Installing the build-deps -I: user script /srv/workspace/pbuilder/3963998/tmp/hooks/D02_print_environment starting +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/D01_modify_environment starting +debug: Running on ionos1-amd64. +I: Changing host+domainname to test build reproducibility +I: Adding a custom variable just for the fun of it... +I: Changing /bin/sh to bash +'/bin/sh' -> '/bin/bash' +lrwxrwxrwx 1 root root 9 Mar 20 00:09 /bin/sh -> /bin/bash +I: Setting pbuilder2's login shell to /bin/bash +I: Setting pbuilder2's GECOS to second user,second room,second work-phone,second home-phone,second other +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/D01_modify_environment finished +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/D02_print_environment starting I: set - BUILDDIR='/build/reproducible-path' - BUILDUSERGECOS='first user,first room,first work-phone,first home-phone,first other' - BUILDUSERNAME='pbuilder1' - BUILD_ARCH='amd64' - DEBIAN_FRONTEND='noninteractive' - DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=42 ' - DISTRIBUTION='unstable' - HOME='/root' - HOST_ARCH='amd64' + BASH=/bin/sh + BASHOPTS=checkwinsize:cmdhist:complete_fullquote:extquote:force_fignore:globasciiranges:globskipdots:hostcomplete:interactive_comments:patsub_replacement:progcomp:promptvars:sourcepath + BASH_ALIASES=() + BASH_ARGC=() + BASH_ARGV=() + BASH_CMDS=() + BASH_LINENO=([0]="12" [1]="0") + BASH_LOADABLES_PATH=/usr/local/lib/bash:/usr/lib/bash:/opt/local/lib/bash:/usr/pkg/lib/bash:/opt/pkg/lib/bash:. + BASH_SOURCE=([0]="/tmp/hooks/D02_print_environment" [1]="/tmp/hooks/D02_print_environment") + BASH_VERSINFO=([0]="5" [1]="2" [2]="37" [3]="1" [4]="release" [5]="x86_64-pc-linux-gnu") + BASH_VERSION='5.2.37(1)-release' + BUILDDIR=/build/reproducible-path + BUILDUSERGECOS='second user,second room,second work-phone,second home-phone,second other' + BUILDUSERNAME=pbuilder2 + BUILD_ARCH=amd64 + DEBIAN_FRONTEND=noninteractive + DEB_BUILD_OPTIONS='buildinfo=+all reproducible=+all parallel=20 ' + DIRSTACK=() + DISTRIBUTION=unstable + EUID=0 + FUNCNAME=([0]="Echo" [1]="main") + GROUPS=() + HOME=/root + HOSTNAME=i-capture-the-hostname + HOSTTYPE=x86_64 + HOST_ARCH=amd64 IFS=' ' - INVOCATION_ID='98c2a980a2b94b65b0c2b1e3f9df53aa' - LANG='C' - LANGUAGE='en_US:en' - LC_ALL='C' - MAIL='/var/mail/root' - OPTIND='1' - PATH='/usr/sbin:/usr/bin:/sbin:/bin:/usr/games' - PBCURRENTCOMMANDLINEOPERATION='build' - PBUILDER_OPERATION='build' - PBUILDER_PKGDATADIR='/usr/share/pbuilder' - PBUILDER_PKGLIBDIR='/usr/lib/pbuilder' - PBUILDER_SYSCONFDIR='/etc' - PPID='3963998' - PS1='# ' - PS2='> ' + INVOCATION_ID=78b26b1d5eb84646b5522b193c458902 + LANG=C + LANGUAGE=et_EE:et + LC_ALL=C + MACHTYPE=x86_64-pc-linux-gnu + MAIL=/var/mail/root + OPTERR=1 + OPTIND=1 + OSTYPE=linux-gnu + PATH=/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path + PBCURRENTCOMMANDLINEOPERATION=build + PBUILDER_OPERATION=build + PBUILDER_PKGDATADIR=/usr/share/pbuilder + PBUILDER_PKGLIBDIR=/usr/lib/pbuilder + PBUILDER_SYSCONFDIR=/etc + PIPESTATUS=([0]="0") + POSIXLY_CORRECT=y + PPID=724678 PS4='+ ' - PWD='/' - SHELL='/bin/bash' - SHLVL='2' - SUDO_COMMAND='/usr/bin/timeout -k 18.1h 18h /usr/bin/ionice -c 3 /usr/bin/nice /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.oRJnxZNk/pbuilderrc_6jpR --distribution unstable --hookdir /etc/pbuilder/first-build-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.oRJnxZNk/b1 --logfile b1/build.log alertmanager-irc-relay_0.5.1-3.dsc' - SUDO_GID='110' - SUDO_UID='105' - SUDO_USER='jenkins' - TERM='unknown' - TZ='/usr/share/zoneinfo/Etc/GMT+12' - USER='root' - _='/usr/bin/systemd-run' - http_proxy='http://213.165.73.152:3128' + PWD=/ + SHELL=/bin/bash + SHELLOPTS=braceexpand:errexit:hashall:interactive-comments:posix + SHLVL=3 + SUDO_COMMAND='/usr/bin/timeout -k 24.1h 24h /usr/bin/ionice -c 3 /usr/bin/nice -n 11 /usr/bin/unshare --uts -- /usr/sbin/pbuilder --build --configfile /srv/reproducible-results/rbuild-debian/r-b-build.oRJnxZNk/pbuilderrc_ZMeY --distribution unstable --hookdir /etc/pbuilder/rebuild-hooks --debbuildopts -b --basetgz /var/cache/pbuilder/unstable-reproducible-base.tgz --buildresult /srv/reproducible-results/rbuild-debian/r-b-build.oRJnxZNk/b2 --logfile b2/build.log alertmanager-irc-relay_0.5.1-3.dsc' + SUDO_GID=110 + SUDO_UID=105 + SUDO_USER=jenkins + TERM=unknown + TZ=/usr/share/zoneinfo/Etc/GMT-14 + UID=0 + USER=root + _='I: set' + http_proxy=http://46.16.76.132:3128 I: uname -a - Linux ionos5-amd64 6.12.12+bpo-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.12-1~bpo12+1 (2025-02-23) x86_64 GNU/Linux + Linux i-capture-the-hostname 6.1.0-32-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.129-1 (2025-03-06) x86_64 GNU/Linux I: ls -l /bin - lrwxrwxrwx 1 root root 7 Mar 4 2025 /bin -> usr/bin -I: user script /srv/workspace/pbuilder/3963998/tmp/hooks/D02_print_environment finished + lrwxrwxrwx 1 root root 7 Mar 4 11:20 /bin -> usr/bin +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/D02_print_environment finished -> Attempting to satisfy build-dependencies -> Creating pbuilder-satisfydepends-dummy package Package: pbuilder-satisfydepends-dummy @@ -344,7 +376,7 @@ Get: 223 http://deb.debian.org/debian unstable/main amd64 golang-protobuf-extensions-dev all 1.0.4-2 [29.7 kB] Get: 224 http://deb.debian.org/debian unstable/main amd64 golang-uber-automaxprocs-dev all 1.5.3-1 [22.3 kB] Get: 225 http://deb.debian.org/debian unstable/main amd64 golang-github-prometheus-alertmanager-dev all 0.28.1+ds-1 [1139 kB] -Fetched 164 MB in 10s (16.0 MB/s) +Fetched 164 MB in 9s (17.4 MB/s) Preconfiguring packages ... Selecting previously unselected package tzdata. (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 19784 files and directories currently installed.) @@ -1078,8 +1110,8 @@ Setting up tzdata (2025a-2) ... Current default time zone: 'Etc/UTC' -Local time is now: Wed Apr 22 06:31:52 UTC 2026. -Universal Time is now: Wed Apr 22 06:31:52 UTC 2026. +Local time is now: Thu Mar 20 00:15:24 UTC 2025. +Universal Time is now: Thu Mar 20 00:15:24 UTC 2025. Run 'dpkg-reconfigure tzdata' if you wish to change it. Setting up golang-github-cespare-xxhash-dev (2.3.0-1) ... @@ -1265,7 +1297,11 @@ Building tag database... -> Finished parsing the build-deps I: Building the package -I: Running cd /build/reproducible-path/alertmanager-irc-relay-0.5.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games" HOME="/nonexistent/first-build" dpkg-genchanges -S > ../alertmanager-irc-relay_0.5.1-3_source.changes +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/A99_set_merged_usr starting +Not re-configuring usrmerge for unstable +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/A99_set_merged_usr finished +hostname: Name or service not known +I: Running cd /build/reproducible-path/alertmanager-irc-relay-0.5.1/ && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-buildpackage -us -uc -b && env PATH="/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/i/capture/the/path" HOME="/nonexistent/second-build" dpkg-genchanges -S > ../alertmanager-irc-relay_0.5.1-3_source.changes dpkg-buildpackage: info: source package alertmanager-irc-relay dpkg-buildpackage: info: source version 0.5.1-3 dpkg-buildpackage: info: source distribution unstable @@ -1283,244 +1319,244 @@ dh_autoreconf -O--buildsystem=golang dh_auto_configure -O--buildsystem=golang dh_auto_build -O--buildsystem=golang - cd obj-x86_64-linux-gnu && go install -trimpath -v -p 42 github.com/google/alertmanager-irc-relay github.com/google/alertmanager-irc-relay/logging -cmp -internal/profilerecord -container/list -google.golang.org/protobuf/internal/flags -internal/byteorder -internal/itoa -encoding -internal/nettrace -internal/unsafeheader -unicode/utf8 -internal/goarch -github.com/fluffle/goirc/logging -vendor/golang.org/x/crypto/cryptobyte/asn1 -log/slog/internal -github.com/klauspost/compress/internal/le -math/bits -crypto/internal/boring/sig -internal/asan -vendor/golang.org/x/crypto/internal/alias -log/internal + cd obj-x86_64-linux-gnu && go install -trimpath -v -p 20 github.com/google/alertmanager-irc-relay github.com/google/alertmanager-irc-relay/logging internal/goos -crypto/internal/fips140/alias -internal/cpu -sync/atomic -unicode/utf16 internal/msan internal/coverage/rtcov -internal/runtime/syscall +internal/goarch +internal/itoa +internal/unsafeheader +internal/profilerecord internal/godebugs +internal/asan +unicode/utf8 +internal/byteorder unicode -github.com/klauspost/compress/internal/cpuinfo +math/bits +crypto/internal/fips140/alias internal/goexperiment +container/list +internal/runtime/syscall +sync/atomic internal/runtime/atomic +internal/cpu internal/abi internal/runtime/math internal/runtime/sys -crypto/internal/fips140deps/byteorder -internal/chacha8rand +cmp +crypto/internal/boring/sig +unicode/utf16 +vendor/golang.org/x/crypto/cryptobyte/asn1 +vendor/golang.org/x/crypto/internal/alias +internal/nettrace +encoding crypto/internal/fips140/subtle +github.com/fluffle/goirc/logging +log/internal +internal/chacha8rand +crypto/internal/fips140deps/byteorder +log/slog/internal +google.golang.org/protobuf/internal/flags +github.com/klauspost/compress/internal/cpuinfo +github.com/klauspost/compress/internal/le google.golang.org/protobuf/internal/set -crypto/internal/fips140deps/cpu internal/bytealg +crypto/internal/fips140deps/cpu math internal/runtime/exithook internal/stringslite internal/race -internal/sync internal/runtime/maps +internal/sync github.com/klauspost/compress runtime +internal/reflectlite +sync iter crypto/subtle weak runtime/metrics -internal/reflectlite -sync -maps slices -errors -sort -internal/singleflight -internal/testlog +maps internal/bisect +internal/testlog +internal/singleflight unique log/slog/internal/buffer google.golang.org/protobuf/internal/pragma runtime/cgo -internal/oserror +errors +sort io +internal/godebug +internal/oserror +strconv path -vendor/golang.org/x/net/dns/dnsmessage math/rand/v2 -strconv -internal/godebug -syscall -hash +vendor/golang.org/x/net/dns/dnsmessage bytes +hash +syscall strings -github.com/beorn7/perks/quantile hash/crc32 hash/fnv -crypto/internal/randutil +github.com/beorn7/perks/quantile golang.org/x/text/internal/tag crypto/internal/fips140deps/godebug math/rand +crypto/internal/randutil +vendor/golang.org/x/text/transform +golang.org/x/text/transform crypto net/netip reflect -golang.org/x/text/transform -vendor/golang.org/x/text/transform -crypto/internal/impl crypto/internal/fips140 -github.com/munnerz/goautoneg -net/http/internal/ascii +crypto/internal/impl bufio +net/http/internal/ascii regexp/syntax +github.com/munnerz/goautoneg html -crypto/tls/internal/fips140tls +crypto/internal/fips140/sha256 crypto/internal/fips140/sha3 crypto/internal/fips140/sha512 -crypto/internal/fips140/sha256 -crypto/sha3 +crypto/tls/internal/fips140tls crypto/internal/fips140/hmac +crypto/sha3 crypto/internal/fips140/check crypto/internal/fips140hash -crypto/internal/fips140/hkdf -crypto/internal/fips140/tls12 -crypto/internal/fips140/bigmod -crypto/internal/fips140/edwards25519/field crypto/internal/fips140/aes +crypto/internal/fips140/edwards25519/field +crypto/internal/fips140/bigmod +crypto/internal/fips140/tls12 +crypto/internal/fips140/hkdf crypto/internal/fips140/nistec/fiat -internal/syscall/execenv +crypto/internal/fips140/tls13 internal/syscall/unix time -crypto/internal/fips140/tls13 +internal/syscall/execenv crypto/internal/fips140/edwards25519 regexp context io/fs internal/poll crypto/internal/fips140/nistec -internal/filepathlite embed +internal/filepathlite google.golang.org/protobuf/internal/editiondefaults os internal/fmtsort encoding/binary vendor/golang.org/x/crypto/internal/poly1305 +github.com/klauspost/compress/internal/snapref encoding/base64 github.com/cespare/xxhash -github.com/klauspost/compress/internal/snapref golang.org/x/sys/unix encoding/pem -io/ioutil -github.com/prometheus/procfs/internal/util crypto/internal/sysrand fmt -os/signal -path/filepath vendor/golang.org/x/sys/cpu +path/filepath google.golang.org/protobuf/internal/detrand +io/ioutil +github.com/prometheus/procfs/internal/util +os/signal net crypto/internal/entropy crypto/internal/fips140/drbg +crypto/internal/fips140/aes/gcm crypto/internal/fips140only crypto/internal/fips140/ecdh -crypto/internal/fips140/mlkem crypto/internal/fips140/ed25519 crypto/internal/fips140/ecdsa +crypto/internal/fips140/mlkem crypto/internal/fips140/rsa -crypto/internal/fips140/aes/gcm crypto/rc4 crypto/md5 crypto/cipher encoding/hex -log -google.golang.org/protobuf/internal/errors +math/big net/url -vendor/golang.org/x/net/http2/hpack -go/token +encoding/json mime/quotedprintable -github.com/prometheus/procfs/internal/fs -compress/flate +vendor/golang.org/x/net/http2/hpack +mime +github.com/golang/mock/gomock net/http/internal +go/token +google.golang.org/protobuf/internal/errors google.golang.org/protobuf/internal/version -github.com/golang/mock/gomock -flag runtime/debug -text/template/parse -encoding/json -mime -gopkg.in/yaml.v2 +flag vendor/golang.org/x/text/unicode/norm -github.com/klauspost/compress/fse -golang.org/x/text/unicode/norm -golang.org/x/text/internal/language -math/big -google.golang.org/protobuf/encoding/protowire -vendor/golang.org/x/crypto/chacha20 +compress/flate +log crypto/internal/boring crypto/des -google.golang.org/protobuf/reflect/protoreflect -vendor/golang.org/x/text/unicode/bidi +vendor/golang.org/x/crypto/chacha20 +google.golang.org/protobuf/encoding/protowire crypto/aes crypto/ecdh crypto/sha512 crypto/hmac -crypto/sha256 crypto/sha1 +crypto/sha256 +google.golang.org/protobuf/reflect/protoreflect +github.com/prometheus/procfs/internal/fs +golang.org/x/text/internal/language vendor/golang.org/x/crypto/chacha20poly1305 -github.com/klauspost/compress/huff0 -github.com/fluffle/goirc/state +vendor/golang.org/x/text/unicode/bidi +golang.org/x/text/unicode/norm +text/template/parse +github.com/klauspost/compress/fse +gopkg.in/yaml.v2 github.com/google/alertmanager-irc-relay/logging +github.com/klauspost/compress/huff0 compress/gzip -golang.org/x/text/internal/language/compact +github.com/fluffle/goirc/state vendor/golang.org/x/text/secure/bidirule -text/template -golang.org/x/text/language -google.golang.org/protobuf/internal/encoding/messageset -google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/descfmt +google.golang.org/protobuf/internal/strs google.golang.org/protobuf/internal/descopts -google.golang.org/protobuf/runtime/protoiface -google.golang.org/protobuf/internal/order +google.golang.org/protobuf/internal/encoding/messageset google.golang.org/protobuf/internal/genid +google.golang.org/protobuf/internal/order +google.golang.org/protobuf/runtime/protoiface +text/template +google.golang.org/protobuf/reflect/protoregistry google.golang.org/protobuf/internal/protolazy -vendor/golang.org/x/net/idna google.golang.org/protobuf/internal/encoding/text -google.golang.org/protobuf/reflect/protoregistry +golang.org/x/text/internal/language/compact log/slog +golang.org/x/text/language +vendor/golang.org/x/net/idna +google.golang.org/protobuf/proto +google.golang.org/protobuf/internal/encoding/defval +github.com/prometheus/alertmanager/featurecontrol +github.com/prometheus/common/promslog +golang.org/x/text/internal crypto/elliptic crypto/internal/boring/bbig crypto/rand -crypto/dsa encoding/asn1 -golang.org/x/text/internal -google.golang.org/protobuf/proto +crypto/dsa +golang.org/x/text/cases crypto/ed25519 crypto/internal/hpke crypto/rsa github.com/klauspost/compress/zstd -golang.org/x/text/cases -google.golang.org/protobuf/internal/encoding/defval html/template -crypto/x509/pkix -vendor/golang.org/x/crypto/cryptobyte -google.golang.org/protobuf/encoding/protodelim google.golang.org/protobuf/encoding/prototext +google.golang.org/protobuf/encoding/protodelim google.golang.org/protobuf/internal/filedesc -github.com/prometheus/alertmanager/featurecontrol -github.com/prometheus/common/promslog +crypto/x509/pkix +vendor/golang.org/x/crypto/cryptobyte crypto/ecdsa google.golang.org/protobuf/internal/encoding/tag google.golang.org/protobuf/internal/impl golang.org/x/net/internal/socks -vendor/golang.org/x/net/http/httpproxy net/textproto +vendor/golang.org/x/net/http/httpproxy crypto/x509 github.com/prometheus/procfs golang.org/x/net/proxy @@ -1531,19 +1567,19 @@ google.golang.org/protobuf/runtime/protoimpl google.golang.org/protobuf/types/known/timestamppb github.com/prometheus/client_model/go +github.com/fluffle/goirc/client +net/http/httptrace github.com/prometheus/common/model +net/http github.com/prometheus/alertmanager/pkg/labels -github.com/prometheus/common/helpers/templates github.com/prometheus/client_golang/prometheus/internal +github.com/prometheus/common/helpers/templates github.com/prometheus/alertmanager/matcher/parse github.com/prometheus/alertmanager/matcher/compat -net/http/httptrace -github.com/fluffle/goirc/client -net/http -github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header -expvar github.com/gorilla/mux +expvar github.com/prometheus/common/expfmt +github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil/header github.com/prometheus/client_golang/internal/github.com/golang/gddo/httputil github.com/prometheus/client_golang/prometheus github.com/prometheus/alertmanager/types @@ -1552,23 +1588,23 @@ github.com/prometheus/alertmanager/template github.com/google/alertmanager-irc-relay dh_auto_test -O--buildsystem=golang - cd obj-x86_64-linux-gnu && go test -vet=off -v -p 42 github.com/google/alertmanager-irc-relay github.com/google/alertmanager-irc-relay/logging + cd obj-x86_64-linux-gnu && go test -vet=off -v -p 20 github.com/google/alertmanager-irc-relay github.com/google/alertmanager-irc-relay/logging === RUN TestBackoffIncreasesAndReachesMax --- PASS: TestBackoffIncreasesAndReachesMax (0.00s) === RUN TestBackoffReset --- PASS: TestBackoffReset (0.00s) === RUN TestBackoffDelayContext -2026/04/21 18:32:19.544003 backoff.go:111: INFO Backoff for 0s starts -2026/04/21 18:32:19.544063 backoff.go:114: INFO Backoff for 0s ends -2026/04/21 18:32:19.544069 backoff.go:111: INFO Backoff for 2ms starts -2026/04/21 18:32:19.544074 backoff.go:116: INFO Backoff for 2ms canceled by context +2025/03/20 14:19:19.518836 backoff.go:111: INFO Backoff for 0s starts +2025/03/20 14:19:19.519019 backoff.go:114: INFO Backoff for 0s ends +2025/03/20 14:19:19.519032 backoff.go:111: INFO Backoff for 2ms starts +2025/03/20 14:19:19.519040 backoff.go:116: INFO Backoff for 2ms canceled by context --- PASS: TestBackoffDelayContext (0.00s) === RUN TestNoConfig --- PASS: TestNoConfig (0.00s) === RUN TestLoadGoodConfig ---- PASS: TestLoadGoodConfig (0.00s) +--- PASS: TestLoadGoodConfig (0.03s) === RUN TestLoadWithEnvironmentVariables ---- PASS: TestLoadWithEnvironmentVariables (0.00s) +--- PASS: TestLoadWithEnvironmentVariables (0.08s) === RUN TestLoadBadFile --- PASS: TestLoadBadFile (0.00s) === RUN TestLoadBadConfig @@ -1580,10 +1616,10 @@ === RUN TestGivenTemplateNotOverwritten --- PASS: TestGivenTemplateNotOverwritten (0.00s) === RUN TestTemplateErrorsCreateRawAlertMsg -2026/04/21 18:32:19.545916 format.go:59: ERROR Could not apply msg template on alert (template: msg:1:18: executing "msg" at <nil>: nil is not a command): {"status":"resolved","labels":{"alertname":"airDown","instance":"instance1:3456","job":"air","service":"prometheus","severity":"ticket","zone":"global"},"annotations":{"DESCRIPTION":"service /prometheus has irc gateway down on instance1","SUMMARY":"service /prometheus air down on instance1"},"startsAt":"2017-05-15T13:49:37.834Z","endsAt":"2017-05-15T13:50:37.835Z","generatorURL":"https://prometheus.example.com/prometheus/...","fingerprint":"66214a361160fb6f"} -2026/04/21 18:32:19.545934 format.go:61: WARN Sending raw alert -2026/04/21 18:32:19.545958 format.go:59: ERROR Could not apply msg template on alert (template: msg:1:18: executing "msg" at <nil>: nil is not a command): {"status":"resolved","labels":{"alertname":"airDown","instance":"instance2:7890","job":"air","service":"prometheus","severity":"ticket","zone":"global"},"annotations":{"DESCRIPTION":"service /prometheus has irc gateway down on instance2","SUMMARY":"service /prometheus air down on instance2"},"startsAt":"2017-05-15T11:47:37.834Z","endsAt":"2017-05-15T11:48:37.834Z","generatorURL":"https://prometheus.example.com/prometheus/...","fingerprint":"25a874c99325d1ce"} -2026/04/21 18:32:19.545965 format.go:61: WARN Sending raw alert +2025/03/20 14:19:19.637210 format.go:59: ERROR Could not apply msg template on alert (template: msg:1:18: executing "msg" at <nil>: nil is not a command): {"status":"resolved","labels":{"alertname":"airDown","instance":"instance1:3456","job":"air","service":"prometheus","severity":"ticket","zone":"global"},"annotations":{"DESCRIPTION":"service /prometheus has irc gateway down on instance1","SUMMARY":"service /prometheus air down on instance1"},"startsAt":"2017-05-15T13:49:37.834Z","endsAt":"2017-05-15T13:50:37.835Z","generatorURL":"https://prometheus.example.com/prometheus/...","fingerprint":"66214a361160fb6f"} +2025/03/20 14:19:19.637238 format.go:61: WARN Sending raw alert +2025/03/20 14:19:19.637298 format.go:59: ERROR Could not apply msg template on alert (template: msg:1:18: executing "msg" at <nil>: nil is not a command): {"status":"resolved","labels":{"alertname":"airDown","instance":"instance2:7890","job":"air","service":"prometheus","severity":"ticket","zone":"global"},"annotations":{"DESCRIPTION":"service /prometheus has irc gateway down on instance2","SUMMARY":"service /prometheus air down on instance2"},"startsAt":"2017-05-15T11:47:37.834Z","endsAt":"2017-05-15T11:48:37.834Z","generatorURL":"https://prometheus.example.com/prometheus/...","fingerprint":"25a874c99325d1ce"} +2025/03/20 14:19:19.637311 format.go:61: WARN Sending raw alert --- PASS: TestTemplateErrorsCreateRawAlertMsg (0.00s) === RUN TestAlertsDispatchedOnce --- PASS: TestAlertsDispatchedOnce (0.00s) @@ -1594,482 +1630,475 @@ === RUN TestMultilineTemplates --- PASS: TestMultilineTemplates (0.00s) === RUN TestAlertsDispatched -2026/04/21 18:32:19.546551 http.go:132: INFO Starting HTTP server +2025/03/20 14:19:19.638844 http.go:132: INFO Starting HTTP server --- PASS: TestAlertsDispatched (0.00s) === RUN TestRootReturnsError -2026/04/21 18:32:19.546787 http.go:132: INFO Starting HTTP server +2025/03/20 14:19:19.639487 http.go:132: INFO Starting HTTP server --- PASS: TestRootReturnsError (0.00s) === RUN TestInvalidDataReturnsError -2026/04/21 18:32:19.546939 http.go:132: INFO Starting HTTP server -2026/04/21 18:32:19.546978 http.go:96: ERROR Could not decode request body (invalid character '}' looking for beginning of object key string): {"this is not": "a valid alert",} +2025/03/20 14:19:19.639898 http.go:132: INFO Starting HTTP server +2025/03/20 14:19:19.639935 http.go:96: ERROR Could not decode request body (invalid character '}' looking for beginning of object key string): {"this is not": "a valid alert",} --- PASS: TestInvalidDataReturnsError (0.00s) === RUN TestServerPassword -2026/04/21 18:32:19.547257 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:43465 -2026/04/21 18:32:19.547302 irc.go:302: INFO Connecting to IRC 127.0.0.1:43465 -2026/04/21 18:32:19.547317 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.547325 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:43465. -2026/04/21 18:32:19.547583 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:59096 -2026/04/21 18:32:19.547603 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.547728 irc_server_for_test.go:119: INFO =Server= Received PASS hostsecret -2026/04/21 18:32:19.547761 irc_server_for_test.go:96: INFO =Server= No handler for command 'PASS', skipping -2026/04/21 18:32:19.547769 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.547774 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.547778 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.547921 irc.go:146: INFO Session established -2026/04/21 18:32:19.547974 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.547991 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.548002 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.548159 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.548184 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.548190 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.548216 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join -2026/04/21 18:32:19.548232 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.548250 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.548265 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.548321 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.548340 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.548407 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.548492 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.548528 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.548558 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections ---- PASS: TestServerPassword (0.00s) +2025/03/20 14:19:19.640529 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:44049 +2025/03/20 14:19:19.640598 irc.go:302: INFO Connecting to IRC 127.0.0.1:44049 +2025/03/20 14:19:19.640617 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.640632 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:44049. +2025/03/20 14:19:19.646387 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.646822 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:38324 +2025/03/20 14:19:19.646863 irc_server_for_test.go:119: INFO =Server= Received PASS hostsecret +2025/03/20 14:19:19.646880 irc_server_for_test.go:96: INFO =Server= No handler for command 'PASS', skipping +2025/03/20 14:19:19.646889 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.646899 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.646907 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.647014 irc.go:146: INFO Session established +2025/03/20 14:19:19.647050 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.647085 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.647098 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.647150 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.647164 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.647177 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.647207 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join +2025/03/20 14:19:19.647217 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.647225 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.647234 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.647262 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.647276 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.647342 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.647426 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.647448 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.647475 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +--- PASS: TestServerPassword (0.01s) === RUN TestSendAlertOnPreJoinedChannel -2026/04/21 18:32:19.548671 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:33121 -2026/04/21 18:32:19.548714 irc.go:302: INFO Connecting to IRC 127.0.0.1:33121 -2026/04/21 18:32:19.548729 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.548736 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:33121. -2026/04/21 18:32:19.548918 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:52916 -2026/04/21 18:32:19.549719 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.549779 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.549795 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.549799 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.549869 irc.go:146: INFO Session established -2026/04/21 18:32:19.549908 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.549928 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.549936 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.550063 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.550082 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.550087 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.550157 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.550170 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.550192 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.550243 irc_server_for_test.go:119: INFO =Server= Received NOTICE #foo :test message -2026/04/21 18:32:19.550274 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.550284 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.550294 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.550308 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.550379 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.550401 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.550452 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.550523 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.550556 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.550586 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.647634 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:41517 +2025/03/20 14:19:19.647735 irc.go:302: INFO Connecting to IRC 127.0.0.1:41517 +2025/03/20 14:19:19.647750 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.647764 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:41517. +2025/03/20 14:19:19.647953 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:55236 +2025/03/20 14:19:19.648015 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.648100 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.648113 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.648121 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.648189 irc.go:146: INFO Session established +2025/03/20 14:19:19.648214 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.648226 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.648236 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.648284 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.648298 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.648306 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.648364 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.648424 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.648476 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.648492 irc_server_for_test.go:119: INFO =Server= Received NOTICE #foo :test message +2025/03/20 14:19:19.648537 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring +2025/03/20 14:19:19.648547 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.648554 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.648562 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.648600 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.648614 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.648674 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.648737 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.648761 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.648786 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestSendAlertOnPreJoinedChannel (0.00s) === RUN TestUsePrivmsgToSendAlertOnPreJoinedChannel -2026/04/21 18:32:19.550698 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:41663 -2026/04/21 18:32:19.550730 irc.go:302: INFO Connecting to IRC 127.0.0.1:41663 -2026/04/21 18:32:19.550742 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.550748 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:41663. -2026/04/21 18:32:19.550914 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:57436 -2026/04/21 18:32:19.550930 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.550965 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.550995 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.551013 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.551090 irc.go:146: INFO Session established -2026/04/21 18:32:19.551126 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.551140 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.551151 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.551230 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.551248 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.551254 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.551332 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.551348 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.551375 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.551417 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG #foo :test message -2026/04/21 18:32:19.551444 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.551455 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.551464 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.551473 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.551523 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.551553 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.551595 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.551665 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.551696 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.551722 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.648894 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:44879 +2025/03/20 14:19:19.648926 irc.go:302: INFO Connecting to IRC 127.0.0.1:44879 +2025/03/20 14:19:19.648941 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.648953 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:44879. +2025/03/20 14:19:19.649114 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:45522 +2025/03/20 14:19:19.649202 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.649329 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.649344 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.649352 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.649447 irc.go:146: INFO Session established +2025/03/20 14:19:19.649477 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.649491 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.649503 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.649563 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.649577 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.649585 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.649645 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.649657 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.649698 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.649731 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG #foo :test message +2025/03/20 14:19:19.649753 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring +2025/03/20 14:19:19.649764 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.649773 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.649782 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.649828 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.649843 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.649898 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.650003 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.650032 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.650061 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestUsePrivmsgToSendAlertOnPreJoinedChannel (0.00s) === RUN TestSendAlertAndJoinChannel -2026/04/21 18:32:19.551861 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:38531 -2026/04/21 18:32:19.551904 irc.go:302: INFO Connecting to IRC 127.0.0.1:38531 -2026/04/21 18:32:19.551921 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.551929 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:38531. -2026/04/21 18:32:19.552103 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:54646 -2026/04/21 18:32:19.552198 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.552216 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.552233 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.552114 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.552310 irc.go:146: INFO Session established -2026/04/21 18:32:19.552355 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.552372 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.552386 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.552499 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.552525 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.552532 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.552572 reconciler.go:249: INFO Request to JOIN new channel #foobar -2026/04/21 18:32:19.552600 reconciler.go:105: INFO Channel #foobar monitor: waiting to join -2026/04/21 18:32:19.552612 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.552623 reconciler.go:114: INFO Channel #foobar monitor: join request sent -2026/04/21 18:32:19.552621 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.552650 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.552666 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.552695 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foobar -2026/04/21 18:32:19.552717 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.552739 irc_server_for_test.go:119: INFO =Server= Received JOIN #foobar -2026/04/21 18:32:19.552811 reconciler.go:205: INFO Received JOIN confirmation for channel #foobar -2026/04/21 18:32:19.552826 reconciler.go:79: INFO Setting JOIN state on channel #foobar -2026/04/21 18:32:19.552842 reconciler.go:118: INFO Channel #foobar monitor: join succeeded -2026/04/21 18:32:19.552912 irc_server_for_test.go:119: INFO =Server= Received NOTICE #foobar :test message -2026/04/21 18:32:19.552943 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.552956 reconciler.go:131: INFO Channel #foobar monitor: context canceled while monitoring -2026/04/21 18:32:19.552952 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.552965 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.552978 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.553038 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.553061 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.553107 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.553166 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.553191 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.553227 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections ---- PASS: TestSendAlertAndJoinChannel (0.00s) +2025/03/20 14:19:19.650179 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:45927 +2025/03/20 14:19:19.650218 irc.go:302: INFO Connecting to IRC 127.0.0.1:45927 +2025/03/20 14:19:19.650243 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.650258 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:45927. +2025/03/20 14:19:19.650473 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:46230 +2025/03/20 14:19:19.654323 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.654696 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.654721 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.654731 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.654842 irc.go:146: INFO Session established +2025/03/20 14:19:19.654903 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.654923 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.654937 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.655002 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.655016 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.655025 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.655061 reconciler.go:249: INFO Request to JOIN new channel #foobar +2025/03/20 14:19:19.655076 reconciler.go:105: INFO Channel #foobar monitor: waiting to join +2025/03/20 14:19:19.655089 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.655099 reconciler.go:114: INFO Channel #foobar monitor: join request sent +2025/03/20 14:19:19.655184 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foobar +2025/03/20 14:19:19.655214 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.655223 irc_server_for_test.go:119: INFO =Server= Received JOIN #foobar +2025/03/20 14:19:19.655292 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.655302 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.655327 reconciler.go:205: INFO Received JOIN confirmation for channel #foobar +2025/03/20 14:19:19.655336 reconciler.go:79: INFO Setting JOIN state on channel #foobar +2025/03/20 14:19:19.655350 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.655362 reconciler.go:118: INFO Channel #foobar monitor: join succeeded +2025/03/20 14:19:19.655418 irc_server_for_test.go:119: INFO =Server= Received NOTICE #foobar :test message +2025/03/20 14:19:19.655442 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring +2025/03/20 14:19:19.655452 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.655461 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.655470 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.655497 reconciler.go:131: INFO Channel #foobar monitor: context canceled while monitoring +2025/03/20 14:19:19.655523 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.655542 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.655632 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.655714 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.655737 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.655762 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +--- PASS: TestSendAlertAndJoinChannel (0.01s) === RUN TestSendAlertDisconnected -2026/04/21 18:32:19.553351 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:40609 -2026/04/21 18:32:19.553389 irc.go:302: INFO Connecting to IRC 127.0.0.1:40609 -2026/04/21 18:32:19.553406 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.553414 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:40609. -2026/04/21 18:32:19.553614 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.553617 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:37772 -2026/04/21 18:32:19.553645 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.553663 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.553674 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.553682 irc_test.go:294: INFO =Server= Wait before completing session -2026/04/21 18:32:19.553692 irc_test.go:296: INFO =Server= Completing session -2026/04/21 18:32:19.553790 irc.go:146: INFO Session established -2026/04/21 18:32:19.553831 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.553842 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.553849 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.553936 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.553958 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.553964 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.554030 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.554041 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.554073 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.554095 irc_server_for_test.go:119: INFO =Server= Received NOTICE #foo :connected test message -2026/04/21 18:32:19.554127 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.554132 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.554145 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.554158 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.554240 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.554261 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.554305 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.554385 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.554414 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.554447 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.655936 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:38401 +2025/03/20 14:19:19.655983 irc.go:302: INFO Connecting to IRC 127.0.0.1:38401 +2025/03/20 14:19:19.655998 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.656012 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:38401. +2025/03/20 14:19:19.656207 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:59036 +2025/03/20 14:19:19.656302 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.656402 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.656417 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.656429 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.656440 irc_test.go:294: INFO =Server= Wait before completing session +2025/03/20 14:19:19.656448 irc_test.go:296: INFO =Server= Completing session +2025/03/20 14:19:19.656525 irc.go:146: INFO Session established +2025/03/20 14:19:19.656569 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.656582 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.656594 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.656649 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.656663 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.656673 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.656730 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.656741 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.656782 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.656800 irc_server_for_test.go:119: INFO =Server= Received NOTICE #foo :connected test message +2025/03/20 14:19:19.656820 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring +2025/03/20 14:19:19.656830 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.656838 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.656847 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.656891 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.656906 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.656963 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.657047 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.657069 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.657092 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestSendAlertDisconnected (0.00s) === RUN TestReconnect -2026/04/21 18:32:19.554532 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:38611 -2026/04/21 18:32:19.554570 irc.go:302: INFO Connecting to IRC 127.0.0.1:38611 -2026/04/21 18:32:19.554582 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.554588 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:38611. -2026/04/21 18:32:19.554760 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:53218 -2026/04/21 18:32:19.554783 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.554847 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.554868 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.554878 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.554952 irc.go:146: INFO Session established -2026/04/21 18:32:19.554985 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.555006 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.555021 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.555062 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.555077 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.555096 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.555167 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.555193 irc_server_for_test.go:115: INFO =Server= Could not read from 127.0.0.1:53218: read tcp 127.0.0.1:38611->127.0.0.1:53218: use of closed network connection -2026/04/21 18:32:19.555242 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.555263 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.555283 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.555294 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.555315 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.555329 irc.go:302: INFO Connecting to IRC 127.0.0.1:38611 -2026/04/21 18:32:19.555334 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.555344 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:38611. -2026/04/21 18:32:19.555504 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:53220 -2026/04/21 18:32:19.555564 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.555613 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.555625 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.555526 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.555751 irc.go:146: INFO Session established -2026/04/21 18:32:19.555790 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.555817 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.555828 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.555903 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.555935 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.555943 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.555988 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.555993 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join -2026/04/21 18:32:19.555997 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.556008 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.556065 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.556089 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.556117 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.556151 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.556158 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.556230 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.556250 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.556277 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections ---- PASS: TestReconnect (0.00s) +2025/03/20 14:19:19.657203 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:33523 +2025/03/20 14:19:19.657237 irc.go:302: INFO Connecting to IRC 127.0.0.1:33523 +2025/03/20 14:19:19.657250 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.657261 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:33523. +2025/03/20 14:19:19.657409 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:35814 +2025/03/20 14:19:19.657499 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.657594 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.657608 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.657616 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.657694 irc.go:146: INFO Session established +2025/03/20 14:19:19.657723 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.657736 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.657759 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.657816 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.657829 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.657845 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.657909 irc_server_for_test.go:115: INFO =Server= Could not read from 127.0.0.1:35814: read tcp 127.0.0.1:33523->127.0.0.1:35814: use of closed network connection +2025/03/20 14:19:19.657946 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.658334 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.658434 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.658466 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.658491 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.658519 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring +2025/03/20 14:19:19.658538 irc.go:302: INFO Connecting to IRC 127.0.0.1:33523 +2025/03/20 14:19:19.658547 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.658579 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:33523. +2025/03/20 14:19:19.662271 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.662592 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:35830 +2025/03/20 14:19:19.662639 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.662658 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.662667 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.662768 irc.go:146: INFO Session established +2025/03/20 14:19:19.662814 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.662831 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.662845 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.662908 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.662923 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.662931 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.662980 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join +2025/03/20 14:19:19.662992 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.663000 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.663009 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.663057 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.663073 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.663146 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.663689 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.663762 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.663795 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.663826 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.663933 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +--- PASS: TestReconnect (0.01s) === RUN TestConnectErrorRetry -2026/04/21 18:32:19.556375 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:34905 -2026/04/21 18:32:19.556416 irc.go:302: INFO Connecting to IRC 127.0.0.1:34905 -2026/04/21 18:32:19.556434 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.556439 fake_delayer.go:45: INFO Waiting StopDelay signal -2026/04/21 18:32:19.556445 fake_delayer.go:47: INFO Received StopDelay signal -2026/04/21 18:32:19.556453 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:34905. -2026/04/21 18:32:19.556618 connection.go:399: INFO irc.Connect(): Performing SSL handshake. -2026/04/21 18:32:19.556636 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:59370 -2026/04/21 18:32:19.556649 irc_server_for_test.go:157: INFO =Server= Closing connection early -2026/04/21 18:32:19.556932 irc.go:307: ERROR Could not connect to IRC: EOF -2026/04/21 18:32:19.556946 irc.go:302: INFO Connecting to IRC 127.0.0.1:34905 -2026/04/21 18:32:19.556953 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.556958 fake_delayer.go:45: INFO Waiting StopDelay signal -2026/04/21 18:32:19.556972 fake_delayer.go:47: INFO Received StopDelay signal -2026/04/21 18:32:19.556983 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:34905. -2026/04/21 18:32:19.557148 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:59380 -2026/04/21 18:32:19.557175 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.557234 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.557254 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.557261 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.557356 irc.go:146: INFO Session established -2026/04/21 18:32:19.557406 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.557423 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.557437 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.557503 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.557520 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.557525 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.557562 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.557576 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.557563 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join -2026/04/21 18:32:19.557588 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.557626 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.557646 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.557659 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.557676 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.557694 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.557767 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.557808 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.557846 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections ---- PASS: TestConnectErrorRetry (0.00s) +2025/03/20 14:19:19.664274 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:38925 +2025/03/20 14:19:19.664368 irc.go:302: INFO Connecting to IRC 127.0.0.1:38925 +2025/03/20 14:19:19.664393 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.664403 fake_delayer.go:45: INFO Waiting StopDelay signal +2025/03/20 14:19:19.664412 fake_delayer.go:47: INFO Received StopDelay signal +2025/03/20 14:19:19.664436 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:38925. +2025/03/20 14:19:19.664784 connection.go:399: INFO irc.Connect(): Performing SSL handshake. +2025/03/20 14:19:19.664937 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:33614 +2025/03/20 14:19:19.664992 irc_server_for_test.go:157: INFO =Server= Closing connection early +2025/03/20 14:19:19.665317 irc.go:307: ERROR Could not connect to IRC: EOF +2025/03/20 14:19:19.665336 irc.go:302: INFO Connecting to IRC 127.0.0.1:38925 +2025/03/20 14:19:19.665344 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.665353 fake_delayer.go:45: INFO Waiting StopDelay signal +2025/03/20 14:19:19.665363 fake_delayer.go:47: INFO Received StopDelay signal +2025/03/20 14:19:19.665377 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:38925. +2025/03/20 14:19:19.670822 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.671309 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:33620 +2025/03/20 14:19:19.671355 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.671376 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.671386 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.671527 irc.go:146: INFO Session established +2025/03/20 14:19:19.671639 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.671657 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.671673 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.671732 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.671746 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.671754 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.671803 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join +2025/03/20 14:19:19.671816 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.671825 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.671837 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.671889 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.671909 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.671994 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.672102 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.672115 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.672138 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.672159 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.672191 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +--- PASS: TestConnectErrorRetry (0.01s) === RUN TestIdentify -2026/04/21 18:32:19.557951 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:36805 -2026/04/21 18:32:19.557986 irc.go:302: INFO Connecting to IRC 127.0.0.1:36805 -2026/04/21 18:32:19.558003 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.558011 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:36805. -2026/04/21 18:32:19.558137 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:39718 -2026/04/21 18:32:19.558208 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.558251 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.558270 irc.go:167: INFO Received NOTICE from NickServ: This nickname is registered. Please choose a different nickname, or identify yourself ktnxbye. -2026/04/21 18:32:19.558170 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.558320 irc.go:191: INFO Handling NickServ request to IDENTIFY -2026/04/21 18:32:19.558366 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG NickServ :IDENTIFY nickpassword -2026/04/21 18:32:19.558383 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.558350 irc.go:146: INFO Session established -2026/04/21 18:32:19.558423 irc.go:226: INFO Waiting for NickServ to notice us and issue an identify request -2026/04/21 18:32:19.558445 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.558460 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.558473 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.558544 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.558579 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.558590 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.558639 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join -2026/04/21 18:32:19.558639 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.558659 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.558671 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.558695 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.558708 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.558712 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.558726 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.558785 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.558881 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.558906 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.558932 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.672375 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:36181 +2025/03/20 14:19:19.672465 irc.go:302: INFO Connecting to IRC 127.0.0.1:36181 +2025/03/20 14:19:19.672482 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.672503 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:36181. +2025/03/20 14:19:19.672755 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.672880 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:57678 +2025/03/20 14:19:19.672912 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.672954 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.673040 irc.go:167: INFO Received NOTICE from NickServ: This nickname is registered. Please choose a different nickname, or identify yourself ktnxbye. +2025/03/20 14:19:19.673095 irc.go:191: INFO Handling NickServ request to IDENTIFY +2025/03/20 14:19:19.673135 irc.go:146: INFO Session established +2025/03/20 14:19:19.673177 irc.go:226: INFO Waiting for NickServ to notice us and issue an identify request +2025/03/20 14:19:19.673196 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.673209 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.673222 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.673279 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG NickServ :IDENTIFY nickpassword +2025/03/20 14:19:19.673292 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.673301 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.673311 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.673323 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.673356 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join +2025/03/20 14:19:19.673368 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.673376 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.673385 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.673598 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.673617 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.673682 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.673749 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.673760 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.673780 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.673800 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.673824 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestIdentify (0.00s) === RUN TestGhost -2026/04/21 18:32:19.559055 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:36685 -2026/04/21 18:32:19.559098 irc.go:302: INFO Connecting to IRC 127.0.0.1:36685 -2026/04/21 18:32:19.559115 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.559125 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:36685. -2026/04/21 18:32:19.559270 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:50544 -2026/04/21 18:32:19.559298 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.559353 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.559374 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.559459 irc.go:57: INFO Received: ':example.com 433 * foo :nick in use' -2026/04/21 18:32:19.559517 irc_server_for_test.go:119: INFO =Server= Received NICK foo^ -2026/04/21 18:32:19.559596 irc.go:146: INFO Session established -2026/04/21 18:32:19.559628 irc.go:206: INFO My nick is 'foo^', sending GHOST to NickServ to get 'foo' -2026/04/21 18:32:19.559643 irc.go:212: INFO Changing nick to 'foo' -2026/04/21 18:32:19.559655 irc.go:226: INFO Waiting for NickServ to notice us and issue an identify request -2026/04/21 18:32:19.559668 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.559684 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.559693 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.559712 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG NickServ :GHOST foo nickpassword -2026/04/21 18:32:19.559729 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.559737 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.559755 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.559767 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.559773 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.559825 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join -2026/04/21 18:32:19.559841 irc.go:296: INFO IRC routine asked to terminate -2026/04/21 18:32:19.559849 irc.go:271: INFO IRC client connected, quitting -2026/04/21 18:32:19.559856 irc.go:274: INFO Wait for IRC disconnect to complete -2026/04/21 18:32:19.559913 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.559937 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.559995 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.560059 irc.go:152: INFO Disconnected from IRC -2026/04/21 18:32:19.560099 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.560137 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.673940 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:33561 +2025/03/20 14:19:19.674061 irc.go:302: INFO Connecting to IRC 127.0.0.1:33561 +2025/03/20 14:19:19.674078 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.674103 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:33561. +2025/03/20 14:19:19.674285 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:44286 +2025/03/20 14:19:19.674374 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.674480 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.674495 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.674614 irc.go:57: INFO Received: ':example.com 433 * foo :nick in use' +2025/03/20 14:19:19.674655 irc_server_for_test.go:119: INFO =Server= Received NICK foo^ +2025/03/20 14:19:19.674717 irc.go:146: INFO Session established +2025/03/20 14:19:19.674741 irc.go:206: INFO My nick is 'foo^', sending GHOST to NickServ to get 'foo' +2025/03/20 14:19:19.674757 irc.go:212: INFO Changing nick to 'foo' +2025/03/20 14:19:19.674767 irc.go:226: INFO Waiting for NickServ to notice us and issue an identify request +2025/03/20 14:19:19.674785 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.674799 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.674810 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.674906 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG NickServ :GHOST foo nickpassword +2025/03/20 14:19:19.674919 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.674928 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.674937 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.674946 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.674953 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.674985 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join +2025/03/20 14:19:19.674997 irc.go:296: INFO IRC routine asked to terminate +2025/03/20 14:19:19.675005 irc.go:271: INFO IRC client connected, quitting +2025/03/20 14:19:19.675015 irc.go:274: INFO Wait for IRC disconnect to complete +2025/03/20 14:19:19.675238 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.675257 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.675333 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.675405 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.675428 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.675457 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestGhost (0.00s) === RUN TestStopRunningWhenHalfConnected -2026/04/21 18:32:19.560265 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:33467 -2026/04/21 18:32:19.560301 irc.go:302: INFO Connecting to IRC 127.0.0.1:33467 -2026/04/21 18:32:19.560318 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.560329 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:33467. -2026/04/21 18:32:19.560464 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:43472 -2026/04/21 18:32:19.560554 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.560576 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.560586 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.560596 irc_test.go:591: INFO =Server= NOT completing session -2026/04/21 18:32:19.560491 irc.go:310: INFO Connected to IRC server, waiting to establish session -2026/04/21 18:32:19.560610 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.560612 irc.go:323: INFO IRC routine asked to terminate -2026/04/21 18:32:19.560644 irc.go:282: INFO IRC shutdown complete -2026/04/21 18:32:19.560674 connection.go:466: ERROR irc.recv(): read tcp 127.0.0.1:43472->127.0.0.1:33467: use of closed network connection -2026/04/21 18:32:19.560706 irc_server_for_test.go:113: INFO =Server= Client 127.0.0.1:43472 disconnected -2026/04/21 18:32:19.560763 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.675558 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:39813 +2025/03/20 14:19:19.675590 irc.go:302: INFO Connecting to IRC 127.0.0.1:39813 +2025/03/20 14:19:19.675604 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.675617 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:39813. +2025/03/20 14:19:19.675755 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:49184 +2025/03/20 14:19:19.675819 irc.go:310: INFO Connected to IRC server, waiting to establish session +2025/03/20 14:19:19.675919 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.675945 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.675956 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.675967 irc_test.go:591: INFO =Server= NOT completing session +2025/03/20 14:19:19.675984 irc.go:323: INFO IRC routine asked to terminate +2025/03/20 14:19:19.675993 irc.go:282: INFO IRC shutdown complete +2025/03/20 14:19:19.676018 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.676060 connection.go:466: ERROR irc.recv(): read tcp 127.0.0.1:49184->127.0.0.1:39813: use of closed network connection +2025/03/20 14:19:19.676086 irc.go:152: INFO Disconnected from IRC +2025/03/20 14:19:19.676117 irc_server_for_test.go:113: INFO =Server= Client 127.0.0.1:49184 disconnected +2025/03/20 14:19:19.676163 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestStopRunningWhenHalfConnected (0.00s) -2026/04/21 18:32:19.560701 irc.go:152: INFO Disconnected from IRC === RUN TestPreJoinChannels -2026/04/21 18:32:19.560861 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:45593 -2026/04/21 18:32:19.560898 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:45593. -2026/04/21 18:32:19.561067 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:57004 -2026/04/21 18:32:19.561101 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.561114 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.561130 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.561215 reconciler.go:105: INFO Channel #baz monitor: waiting to join -2026/04/21 18:32:19.561234 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.561243 reconciler.go:114: INFO Channel #baz monitor: join request sent -2026/04/21 18:32:19.561281 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.561289 reconciler.go:105: INFO Channel #bar monitor: waiting to join -2026/04/21 18:32:19.561303 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.561312 reconciler.go:114: INFO Channel #bar monitor: join request sent -2026/04/21 18:32:19.561336 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #baz -2026/04/21 18:32:19.561354 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.561375 irc_server_for_test.go:119: INFO =Server= Received JOIN #baz -2026/04/21 18:32:19.561407 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #bar -2026/04/21 18:32:19.561421 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.561297 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.561427 irc_server_for_test.go:119: INFO =Server= Received JOIN #bar -2026/04/21 18:32:19.561434 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.561459 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.561472 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.561489 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.561538 reconciler.go:205: INFO Received JOIN confirmation for channel #baz -2026/04/21 18:32:19.561565 reconciler.go:79: INFO Setting JOIN state on channel #baz -2026/04/21 18:32:19.561587 reconciler.go:205: INFO Received JOIN confirmation for channel #bar -2026/04/21 18:32:19.561598 reconciler.go:79: INFO Setting JOIN state on channel #bar -2026/04/21 18:32:19.561614 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.561623 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.561550 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.561641 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.561655 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.561638 reconciler.go:118: INFO Channel #bar monitor: join succeeded -2026/04/21 18:32:19.561645 reconciler.go:118: INFO Channel #baz monitor: join succeeded -2026/04/21 18:32:19.561692 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.561783 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.561797 reconciler.go:131: INFO Channel #baz monitor: context canceled while monitoring -2026/04/21 18:32:19.561803 reconciler.go:131: INFO Channel #bar monitor: context canceled while monitoring -2026/04/21 18:32:19.561821 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.676250 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:45905 +2025/03/20 14:19:19.676274 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:45905. +2025/03/20 14:19:19.676398 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:50948 +2025/03/20 14:19:19.676551 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.676565 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.676573 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.676666 reconciler.go:105: INFO Channel #baz monitor: waiting to join +2025/03/20 14:19:19.676681 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.676693 reconciler.go:114: INFO Channel #baz monitor: join request sent +2025/03/20 14:19:19.676733 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.676746 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.676757 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.676797 reconciler.go:105: INFO Channel #bar monitor: waiting to join +2025/03/20 14:19:19.676869 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.676879 reconciler.go:114: INFO Channel #bar monitor: join request sent +2025/03/20 14:19:19.676935 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #baz +2025/03/20 14:19:19.676949 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.676957 irc_server_for_test.go:119: INFO =Server= Received JOIN #baz +2025/03/20 14:19:19.676981 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.676991 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.676998 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.677018 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #bar +2025/03/20 14:19:19.677042 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.677049 irc_server_for_test.go:119: INFO =Server= Received JOIN #bar +2025/03/20 14:19:19.677245 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.677261 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.677406 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.677781 reconciler.go:205: INFO Received JOIN confirmation for channel #baz +2025/03/20 14:19:19.677793 reconciler.go:79: INFO Setting JOIN state on channel #baz +2025/03/20 14:19:19.677828 reconciler.go:118: INFO Channel #baz monitor: join succeeded +2025/03/20 14:19:19.677850 reconciler.go:122: INFO Channel #foo monitor: context canceled while waiting for join +2025/03/20 14:19:19.677860 reconciler.go:131: INFO Channel #baz monitor: context canceled while monitoring +2025/03/20 14:19:19.677883 reconciler.go:122: INFO Channel #bar monitor: context canceled while waiting for join +2025/03/20 14:19:19.677924 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestPreJoinChannels (0.00s) === RUN TestKeepJoining -2026/04/21 18:32:19.561909 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:39833 -2026/04/21 18:32:19.561934 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:39833. -2026/04/21 18:32:19.562097 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:40372 -2026/04/21 18:32:19.562132 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.562149 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.562159 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.562242 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.562271 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.562281 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.562328 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.562353 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.562365 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.562385 reconciler.go:120: WARN Channel #foo monitor: could not join after 10 seconds, will retry -2026/04/21 18:32:19.562396 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.562402 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.562414 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.562479 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.562498 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.562504 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.562535 reconciler.go:120: WARN Channel #foo monitor: could not join after 10 seconds, will retry -2026/04/21 18:32:19.562546 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.562551 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.562559 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.562611 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.562638 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.562644 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.562713 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.562729 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.562729 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.562741 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.562743 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.562811 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.562882 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.562917 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections ---- PASS: TestKeepJoining (0.00s) +2025/03/20 14:19:19.678489 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:32879 +2025/03/20 14:19:19.678578 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:32879. +2025/03/20 14:19:19.678926 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:45110 +2025/03/20 14:19:19.686564 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.686687 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.686699 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.687140 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.687165 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.687181 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.687262 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.687278 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.687286 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.687317 reconciler.go:120: WARN Channel #foo monitor: could not join after 10 seconds, will retry +2025/03/20 14:19:19.687327 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.687335 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.687350 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.687406 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.687421 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.687429 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.687444 reconciler.go:120: WARN Channel #foo monitor: could not join after 10 seconds, will retry +2025/03/20 14:19:19.687452 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.687458 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.687468 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.687518 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.687531 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.687538 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.687604 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.687634 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.687752 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.687868 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.687879 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.687903 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.687918 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring +2025/03/20 14:19:19.687945 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +--- PASS: TestKeepJoining (0.01s) === RUN TestKickRejoin -2026/04/21 18:32:19.563015 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:41829 -2026/04/21 18:32:19.563052 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:41829. -2026/04/21 18:32:19.563229 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:33260 -2026/04/21 18:32:19.563290 irc_server_for_test.go:119: INFO =Server= Received NICK foo -2026/04/21 18:32:19.563307 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping -2026/04/21 18:32:19.563315 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : -2026/04/21 18:32:19.563412 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.563433 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.563447 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.563505 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.563523 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.563529 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.563563 irc_server_for_test.go:139: INFO =Server= sending to client: :test!~test@example.com KICK #foo foo :Bye! -2026/04/21 18:32:19.563594 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.563609 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.563624 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.563629 reconciler.go:223: INFO Received KICK for channel #foo -2026/04/21 18:32:19.563645 reconciler.go:93: INFO Removing JOIN state on channel #foo -2026/04/21 18:32:19.563658 reconciler.go:129: INFO Channel #foo monitor: channel no longer joined -2026/04/21 18:32:19.563664 reconciler.go:105: INFO Channel #foo monitor: waiting to join -2026/04/21 18:32:19.563670 fake_delayer.go:43: INFO Faking Backoff -2026/04/21 18:32:19.563679 reconciler.go:114: INFO Channel #foo monitor: join request sent -2026/04/21 18:32:19.563726 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo -2026/04/21 18:32:19.563740 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping -2026/04/21 18:32:19.563759 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo -2026/04/21 18:32:19.563851 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya -2026/04/21 18:32:19.563874 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate -2026/04/21 18:32:19.563860 reconciler.go:205: INFO Received JOIN confirmation for channel #foo -2026/04/21 18:32:19.563887 reconciler.go:79: INFO Setting JOIN state on channel #foo -2026/04/21 18:32:19.563899 reconciler.go:118: INFO Channel #foo monitor: join succeeded -2026/04/21 18:32:19.563934 connection.go:577: INFO irc.Close(): Disconnected from server. -2026/04/21 18:32:19.564004 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring -2026/04/21 18:32:19.564039 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections +2025/03/20 14:19:19.688123 irc_server_for_test.go:201: INFO =Server= Test server listening on 127.0.0.1:41433 +2025/03/20 14:19:19.688221 connection.go:390: INFO irc.Connect(): Connecting to 127.0.0.1:41433. +2025/03/20 14:19:19.688451 irc_server_for_test.go:171: INFO =Server= New client connected from 127.0.0.1:35262 +2025/03/20 14:19:19.688609 irc_server_for_test.go:119: INFO =Server= Received NICK foo +2025/03/20 14:19:19.688623 irc_server_for_test.go:96: INFO =Server= No handler for command 'NICK', skipping +2025/03/20 14:19:19.688630 irc_server_for_test.go:119: INFO =Server= Received USER foo 12 * : +2025/03/20 14:19:19.688701 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.688715 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.688726 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.688778 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.688792 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.688803 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.688833 irc_server_for_test.go:139: INFO =Server= sending to client: :test!~test@example.com KICK #foo foo :Bye! +2025/03/20 14:19:19.688900 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.688910 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.688934 reconciler.go:223: INFO Received KICK for channel #foo +2025/03/20 14:19:19.688942 reconciler.go:93: INFO Removing JOIN state on channel #foo +2025/03/20 14:19:19.688955 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.688963 reconciler.go:105: INFO Channel #foo monitor: waiting to join +2025/03/20 14:19:19.688970 fake_delayer.go:43: INFO Faking Backoff +2025/03/20 14:19:19.688981 reconciler.go:114: INFO Channel #foo monitor: join request sent +2025/03/20 14:19:19.689037 irc_server_for_test.go:119: INFO =Server= Received PRIVMSG ChanServ :UNBAN #foo +2025/03/20 14:19:19.689049 irc_server_for_test.go:96: INFO =Server= No handler for command 'PRIVMSG', skipping +2025/03/20 14:19:19.689057 irc_server_for_test.go:119: INFO =Server= Received JOIN #foo +2025/03/20 14:19:19.689134 irc_server_for_test.go:119: INFO =Server= Received QUIT :see ya +2025/03/20 14:19:19.689148 irc_server_for_test.go:127: INFO =Server= Closing connection: client asked to terminate +2025/03/20 14:19:19.689209 connection.go:577: INFO irc.Close(): Disconnected from server. +2025/03/20 14:19:19.689273 reconciler.go:205: INFO Received JOIN confirmation for channel #foo +2025/03/20 14:19:19.689282 reconciler.go:79: INFO Setting JOIN state on channel #foo +2025/03/20 14:19:19.689303 reconciler.go:118: INFO Channel #foo monitor: join succeeded +2025/03/20 14:19:19.689318 reconciler.go:131: INFO Channel #foo monitor: context canceled while monitoring +2025/03/20 14:19:19.689341 irc_server_for_test.go:168: INFO =Server= Stopped accepting new connections --- PASS: TestKickRejoin (0.00s) PASS -ok github.com/google/alertmanager-irc-relay 0.027s +ok github.com/google/alertmanager-irc-relay 0.328s ? github.com/google/alertmanager-irc-relay/logging [no test files] create-stamp debian/debhelper-build-stamp dh_testroot -O--buildsystem=golang @@ -2101,8 +2130,8 @@ dh_gencontrol -O--buildsystem=golang dh_md5sums -O--buildsystem=golang dh_builddeb -O--buildsystem=golang -dpkg-deb: building package 'alertmanager-irc-relay' in '../alertmanager-irc-relay_0.5.1-3_amd64.deb'. dpkg-deb: building package 'alertmanager-irc-relay-dbgsym' in '../alertmanager-irc-relay-dbgsym_0.5.1-3_amd64.deb'. +dpkg-deb: building package 'alertmanager-irc-relay' in '../alertmanager-irc-relay_0.5.1-3_amd64.deb'. dpkg-genbuildinfo --build=binary -O../alertmanager-irc-relay_0.5.1-3_amd64.buildinfo dpkg-genchanges --build=binary -O../alertmanager-irc-relay_0.5.1-3_amd64.changes dpkg-genchanges: info: binary-only upload (no source code included) @@ -2110,12 +2139,14 @@ dpkg-buildpackage: info: binary-only upload (no source included) dpkg-genchanges: info: not including original source code in upload I: copying local configuration +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/B01_cleanup starting +I: user script /srv/workspace/pbuilder/724678/tmp/hooks/B01_cleanup finished I: unmounting dev/ptmx filesystem I: unmounting dev/pts filesystem I: unmounting dev/shm filesystem I: unmounting proc filesystem I: unmounting sys filesystem I: cleaning the build env -I: removing directory /srv/workspace/pbuilder/3963998 and its subdirectories -I: Current time: Tue Apr 21 18:32:29 -12 2026 -I: pbuilder-time-stamp: 1776839549 +I: removing directory /srv/workspace/pbuilder/724678 and its subdirectories +I: Current time: Thu Mar 20 14:20:29 +14 2025 +I: pbuilder-time-stamp: 1742430029