• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

EvergenEnergy / sparkplug-host
85%

Build:
DEFAULT BRANCH: main
Repo Added 16 Nov 2023 01:49AM UTC
Files 9
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: SELECT
CHANGE BRANCH
x
  • No branch selected
  • add-example
  • coverall
  • dependabot/go_modules/github.com/eclipse/paho.mqtt.golang-1.5.1
  • dependabot/go_modules/google.golang.org/protobuf-1.36.5
  • dependabot/go_modules/google.golang.org/protobuf-1.36.9
  • fix/pr-46-xnet-bump
  • goreleaser
  • main
  • test-go-1.24
  • test-lint-fix
  • update-go-1.23.5
  • update-osv-scanner-workflow
  • vulnerability

13 Jul 2026 03:50AM UTC coverage: 85.27% (-0.02%) from 85.285%
29222541534

push

github

web-flow
fix: set MQTT write timeout so AutoReconnect recovers from half-open connections (#48)

* fix: set MQTT write timeout so AutoReconnect recovers from half-open connections

paho's AutoReconnect only fires after the client observes ConnectionLost. On
a half-open TCP connection (e.g. broker recreated behind a proxy/sidecar with
no RST reaching the client) the keepalive PING is a socket write, and with
paho's default of no write timeout that write blocks forever on the dead
socket. ConnectionLost is never reported, AutoReconnect never fires, and the
host application sits silently disconnected.

Set a default MQTT write timeout (10s) and an explicit keepalive (30s, paho's
default) in initClients() so a stalled PING fails and the lost connection is
surfaced for AutoReconnect to recover. Both are configurable via the new
WithMqttWriteTimeout and WithMqttKeepAlive options; WithMqttWriteTimeout(0)
restores the previous blocking behaviour.

* feat: add WithMqttPingTimeout and correct write-timeout mechanism docs

Addresses review feedback on the write-timeout mechanism:

- Correct the doc comments: in paho v1.5.1 WriteTimeout is applied only to
  outbound application writes in the outgoing worker (net.go SetWriteDeadline),
  NOT to the keepalive PING (ping.go writes it with no deadline). The real
  benefit is unsticking a blocked outbound write on a half-open connection whose
  send buffer has filled (which can also stall the keepalive goroutine and stop
  the ping-timeout check from running). Reworded options.go and host.go
  accordingly.
- Add WithMqttPingTimeout: for an idle half-open connection the small PINGREQ is
  written without blocking and detection is governed by the ping timeout, so
  expose it as the knob for idle-detection latency. Default 10s (paho default).
- Document the WithMqttKeepAlive(0) footgun: paho stores keepalive as whole
  seconds, so sub-second truncates to 0 and 0 disables keepalive entirely.
- Add an internal test that calls initCl... (continued)

34 of 34 new or added lines in 2 files covered. (100.0%)

5 existing lines in 1 file now uncovered.

822 of 964 relevant lines covered (85.27%)

38.17 hits per line

Relevant lines Covered
Build:
Build:
964 RELEVANT LINES 822 COVERED LINES
38.17 HITS PER LINE
Source Files on main
  • Tree
  • List 9
  • Changed 2
  • Source Changed 0
  • Coverage Changed 2
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
29222541534 main fix: set MQTT write timeout so AutoReconnect recovers from half-open connections (#48) * fix: set MQTT write timeout so AutoReconnect recovers from half-open connections paho's AutoReconnect only fires after the client observes ConnectionLost. O... push 13 Jul 2026 03:51AM UTC web-flow github
85.27
28986100955 main ci: exclude examples and generated protobuf from coverage report These packages have no tests and never will, so their line count only dilutes the coverage ratio. Any churn in them (e.g. a lint fix in the example app) shifts the total and trips C... push 09 Jul 2026 12:49AM UTC lukespice github
85.28
28985430300 fix/pr-46-xnet-bump ci: exclude examples and generated protobuf from coverage report These packages have no tests and never will, so their line count only dilutes the coverage ratio. Any churn in them (e.g. a lint fix in the example app) shifts the total and trips C... Pull #49 09 Jul 2026 12:32AM UTC lukespice github
85.28
28985046629 fix/pr-46-xnet-bump test: fix flaky integration tests by removing timing-based synchronization The host was run with a fixed 300ms context timeout while tests waited for its retained STATE birth certificate. On a slow runner the death certificate (also retained) cou... Pull #49 09 Jul 2026 12:22AM UTC lukespice github
36.69
28854810729 fix/pr-46-xnet-bump fix: migrate golangci-lint config to v2 and update CI toolchain golang.org/x/net 0.55.0 requires Go 1.25, which the CI toolchain and golangci-lint v1.64.2 cannot handle. Migrate .golangci.yml to the v2 format (same linter set and exclusions as be... Pull #49 07 Jul 2026 09:09AM UTC lukespice github
36.69
20808776609 main chore(deps): bump google.golang.org/protobuf from 1.36.10 to 1.36.11 Bumps google.golang.org/protobuf from 1.36.10 to 1.36.11. --- updated-dependencies: - dependency-name: google.golang.org/protobuf dependency-version: 1.36.11 dependency-typ... push 08 Jan 2026 07:14AM UTC lukespice github
36.71
18299617425 main chore(deps): bump google.golang.org/protobuf from 1.36.9 to 1.36.10 (#44) Bumps google.golang.org/protobuf from 1.36.9 to 1.36.10. --- updated-dependencies: - dependency-name: google.golang.org/protobuf dependency-version: 1.36.10 dependency... push 07 Oct 2025 01:51AM UTC web-flow github
36.71
17961091891 main chore(deps): bump github.com/eclipse/paho.mqtt.golang from 1.5.0 to 1.5.1 (#42) * chore(deps): bump github.com/eclipse/paho.mqtt.golang Bumps [github.com/eclipse/paho.mqtt.golang](https://github.com/eclipse/paho.mqtt.golang) from 1.5.0 to 1.5.1.... push 23 Sep 2025 10:54PM UTC web-flow github
36.71
17938913780 dependabot/go_modules/github.com/eclipse/paho.mqtt.golang-1.5.1 update go Pull #42 23 Sep 2025 07:32AM UTC ch-evergen github
36.71
17938458668 dependabot/go_modules/github.com/eclipse/paho.mqtt.golang-1.5.1 Merge branch 'main' into dependabot/go_modules/github.com/eclipse/paho.mqtt.golang-1.5.1 Pull #42 23 Sep 2025 07:12AM UTC ch-evergen github
36.71
See All Builds (64)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc