• 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: SELECT
CHANGE BRANCH
x
  • No branch selected
  • 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-404-gzip-encoding
  • fix-dbl-headers
  • fix-header-parsing
  • fix/bound-mappers-cache
  • fix/bump-x-net
  • fix/catchall-default-route-dedup
  • fix/ci-security-hardening
  • fix/critical-major-audit-findings
  • fix/dns-propagation-timeout
  • fix/docker-api-version-240
  • fix/dynamic-ssl-fqdns-207
  • fix/encoded-path-match
  • fix/file-provider-debounce
  • fix/health-test-timing
  • 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
  • master
  • 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
  • refs/tags/v1.7.1
  • release-automation
  • release-pipeline
  • rpc
  • server-simple-pattern
  • spa
  • throttle

06 Sep 2026 06:00PM UTC coverage: 79.881% (+0.05%) from 79.827%
34050351647

push

github

web-flow
fix: keep Content-Encoding on gzip-compressed error responses (#265)

* fix: keep Content-Encoding on compressed error responses

With gzip enabled, the file server's error path (custom or default 404,
416) drops Content-Encoding while the body still goes through the
compressing writer, so browsers render gzip bytes as text. The stdlib
file server clears the header on errors since Go 1.23.

gzipHandler now wraps the writer only when CompressHandler actually
compresses the request and restores the header on error statuses.
The wrapper exposes Flush and Unwrap so streamed responses still flush.

Related to #264

* test: read the flushed gzip chunk in full

* fix: recover panics inside the gzip layer

A panic unwinding through CompressHandler runs its deferred close, which
commits a 200 with an empty gzip body before the outer recoverer can
write the 500, and its error text then lands as a plaintext tail.
gzipHandler now wraps the next handler in a recoverer inside the
compressor, so the 500 goes out compressed and labeled.

* docs: backlog item for Recoverer swallowing ErrAbortHandler

22 of 24 new or added lines in 1 file covered. (91.67%)

1 existing line in 1 file now uncovered.

2696 of 3375 relevant lines covered (79.88%)

86.01 hits per line

Relevant lines Covered
Build:
Build:
3375 RELEVANT LINES 2696 COVERED LINES
86.01 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
34050351647 master fix: keep Content-Encoding on gzip-compressed error responses (#265) * fix: keep Content-Encoding on compressed error responses With gzip enabled, the file server's error path (custom or default 404, 416) drops Content-Encoding while the body st... push 06 Sep 2026 06:02PM UTC web-flow github
79.88
34050129306 fix-404-gzip-encoding docs: backlog item for Recoverer swallowing ErrAbortHandler Pull #265 06 Sep 2026 05:56PM UTC umputun github
79.88
34046072946 fix-404-gzip-encoding fix: recover panics inside the gzip layer A panic unwinding through CompressHandler runs its deferred close, which commits a 200 with an empty gzip body before the outer recoverer can write the 500, and its error text then lands as a plaintext ta... push 06 Sep 2026 04:40PM UTC umputun github
79.88
32434321318 master fix: bound mapper cache and reuse host regexes (#262) push 21 Aug 2026 12:54AM UTC web-flow github
79.83
32434312810 master test: stabilize health handler timing (#263) push 21 Aug 2026 12:54AM UTC web-flow github
79.72
32434317301 master fix: match routes on canonical escaped paths (#261) push 21 Aug 2026 12:54AM UTC web-flow github
79.75
32434056085 fix/bound-mappers-cache fix: bound mapper cache and reuse host regexes Pull #262 21 Aug 2026 12:50AM UTC umputun github
79.76
32434053240 fix/encoded-path-match fix: match routes on canonical escaped paths Pull #261 21 Aug 2026 12:50AM UTC umputun github
79.75
32434057895 fix/health-test-timing test: stabilize health handler timing Pull #263 21 Aug 2026 12:49AM UTC umputun github
79.75
32433610961 fix/bound-mappers-cache fix: bound mapper cache and reuse host regexes push 21 Aug 2026 12:43AM UTC umputun github
79.82
See All Builds (709)
  • 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