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

umputun / reproxy
80%

Build:
DEFAULT BRANCH: master
Repo Added 10 Apr 2021 12:20AM UTC
Files 19
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 master
branch: master
CHANGE BRANCH
x
Reset
  • master
  • add-X-Forwarded-URL
  • assets-cache
  • assets404
  • basic-auth
  • chore/go-1.26-and-deps
  • ci/workflow-hardening
  • dependabot/docker/goreleaser/goreleaser-v1.25.1
  • dependabot/github_actions/github-actions-updates-a2e7793ad6
  • dependabot/go_modules/go-modules-updates-07f3a6036d
  • dependabot/go_modules/go-modules-updates-1d93b033d5
  • dependabot/go_modules/go-modules-updates-89f9fe7d2d
  • dependabot/go_modules/go-modules-updates-a76f434722
  • dependabot/go_modules/go-modules-updates-b6eb7de9c2
  • dependabot/go_modules/go-modules-updates-b9a07c6e8d
  • dependabot/go_modules/go-modules-updates-c2f73b432e
  • dependabot/go_modules/go-modules-updates-c741a0ad90
  • dependabot/go_modules/golang.org/x/crypto-0.45.0
  • dependabot/go_modules/golang.org/x/net-0.23.0
  • dependabot/go_modules/golang.org/x/net-0.38.0
  • dependabot/go_modules/golang.org/x/text-0.3.8
  • dependabot/npm_and_yarn/site/browserslist-4.16.6
  • dependabot/npm_and_yarn/site/follow-redirects-1.14.7
  • dependabot/npm_and_yarn/site/follow-redirects-1.14.8
  • dependabot/npm_and_yarn/site/markdown-it-12.3.2
  • dependabot/npm_and_yarn/site/minimist-1.2.6
  • dependabot/npm_and_yarn/site/nanoid-3.2.0
  • dependabot/npm_and_yarn/site/normalize-url-4.5.1
  • dependabot/npm_and_yarn/site/shell-quote-1.7.3
  • dependabot/npm_and_yarn/site/ws-7.4.6
  • docker-maker
  • docker-multi-routes
  • dockerhub
  • drop-default-conflict
  • dynamic-server
  • feat/low-cardinality-metrics
  • feature/add-dns-providers
  • feature/upstream-connection-limits
  • fix-dbl-headers
  • fix-header-parsing
  • fix/bump-x-net
  • fix/catchall-default-route-dedup
  • fix/ci-security-hardening
  • fix/critical-major-audit-findings
  • fix/docker-api-version-240
  • fix/dynamic-ssl-fqdns-207
  • fix/file-provider-debounce
  • fix/metrics-flusher-sse-streaming
  • fix/roundrobin-shrinking-n
  • fqdn-async-discovery
  • header-comma
  • lb-selector
  • libdns-update
  • limit-ips
  • listen
  • maint/deps-update-nov2025
  • max-request-url
  • mgmt
  • mime-cache
  • multi-match
  • multi-static
  • nice-error
  • paskal/dependabot-disable-updates
  • paskal/dependabot-security-updates
  • paskal/docker-user-improvements
  • paskal/dockerfile-improvements
  • per-route-auth
  • per-route-timeout-throttle
  • plugin-headers
  • redirect
  • refs/tags/v0.1.0
  • refs/tags/v0.10.0
  • refs/tags/v0.11.0
  • refs/tags/v0.2.0
  • refs/tags/v0.3.0
  • refs/tags/v0.4.0
  • refs/tags/v0.5.0
  • refs/tags/v0.5.1
  • refs/tags/v0.6.0
  • refs/tags/v0.6.1
  • refs/tags/v0.6.2
  • refs/tags/v0.7.0
  • refs/tags/v0.8.0
  • refs/tags/v0.9.0
  • refs/tags/v1.0.0
  • refs/tags/v1.1.0
  • refs/tags/v1.1.1
  • refs/tags/v1.2.0
  • refs/tags/v1.2.1
  • refs/tags/v1.2.2
  • refs/tags/v1.2.3
  • refs/tags/v1.3.0
  • refs/tags/v1.4.0
  • refs/tags/v1.5.0
  • refs/tags/v1.6.0
  • release-automation
  • rpc
  • server-simple-pattern
  • spa
  • throttle

04 Jul 2026 03:41AM UTC coverage: 79.735% (+0.1%) from 79.631%
28693833391

push

github

umputun
Fix file provider dropping config changes made within the delay window

Previously, the debounce compared the file modification time against the
previously submitted modification time, and that baseline only advanced
on submission. A single change landing within file.delay of the last
delivered one kept failing the check on every tick, so the update was
never picked up and routes stayed stale until the file was touched
again.

After this change, the debounce measures stability on the host clock
from when a new modification time is first observed: a change is
delivered once its mtime has held steady for the delay period, and a
newly observed mtime restarts the timer. Rapid writes still coalesce
into a single event, and because a single clock is used throughout it is
immune to filesystem/host clock skew, future- or past-dated mtimes are
debounced normally instead of stalling or bypassing the window (the
earlier wall-clock-age approach delivered future-dated mtimes with no
coalescing on skewed mounts).

The trailing-edge semantics add up to one poll cycle of latency on top
of the delay; the --file.delay help text now describes them. Tests cover
a change within the delay window, rapid writes coalescing, future-dated
writes coalescing on a skewed clock, and a file that appears mid-run
after the loop survives stat errors.

16 of 16 new or added lines in 1 file covered. (100.0%)

2 existing lines in 1 file now uncovered.

2644 of 3316 relevant lines covered (79.73%)

40.74 hits per line

Relevant lines Covered
Build:
Build:
3316 RELEVANT LINES 2644 COVERED LINES
40.74 HITS PER LINE
Source Files on master
  • Tree
  • List 19
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
28693833391 master Fix file provider dropping config changes made within the delay window Previously, the debounce compared the file modification time against the previously submitted modification time, and that baseline only advanced on submission. A single change... push 04 Jul 2026 03:42AM UTC umputun github
79.73
28693733133 master Fix load balancing on catch-all server broken by default-route dedup Previously, the dedup added for #192 removed a default-server route whenever more than one route matched, without checking that a concrete server match was actually present. Wit... push 04 Jul 2026 03:38AM UTC umputun github
79.63
28690718277 master Bump golang.org/x/net to v0.55.0 to fix GO-2026-5026 golang.org/x/net v0.54.0 is affected by GO-2026-5026 (idna: failure to reject ASCII-only Punycode-encoded labels), reachable from the TLS certificate path via certmagic's GetCertificate -> idna... push 04 Jul 2026 01:29AM UTC umputun github
79.49
26734019528 master fix: critical and major issues from code audit (#254) * docs: add plan for critical and major audit findings * fix: dedup consul services with multiple reproxy tags * fix: release plugin lock before blocking RPC call * fix: guard mappersCache ... push 01 Jun 2026 03:48AM UTC web-flow github
79.49
25770167686 master feat: per-route timeout and throttle (#140) * add plan: per-route-timeout-throttle * feat: add Timeout and Throttle fields to URLMapper with file provider parsing Adds per-route Timeout (time.Duration) and Throttle (int) fields to the URLMapper... push 13 May 2026 12:22AM UTC web-flow github
79.21
25722912491 master chore(deps): bump go to 1.26 and update all dependencies Update go directive in go.mod, CI workflows (ci.yml, release.yml), and Dockerfile from 1.25 to 1.26. Run `go get -u ./...` and `go mod vendor` to bump all direct and transitive deps to thei... push 12 May 2026 08:33AM UTC umputun github
78.31
25721950550 master fix(proxy): bound RoundRobinSelector return to current n (#250) (#251) * fix(proxy): bound RoundRobinSelector return to current n When alive-backend count shrinks between calls (e.g. health-check flips a backend dead), the previously stored last... push 12 May 2026 08:12AM UTC web-flow github
78.34
23132077120 master docs: document forward-health-checks for file and static providers push 16 Mar 2026 07:13AM UTC umputun github
78.36
23132036129 master Add per-route forward-health-checks option (#246) * add ForwardHealthChecks field to URLMapper and all providers Add a new per-route boolean option `forward-health-checks` to URLMapper, parsed by all providers (docker, file, consul-catalog, stat... push 16 Mar 2026 07:10AM UTC web-flow github
78.36
23094110714 master Merge pull request #248 from paskal/ci/workflow-hardening ci: harden workflows, upgrade actions, fix caching push 14 Mar 2026 06:51PM UTC web-flow github
78.23
See All Builds (690)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc