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

alexferl / zerohttp / 22793459189
94%

Build:
DEFAULT BRANCH: master
Ran 07 Mar 2026 06:04AM UTC
Jobs 1
Files 46
Run time 1min
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

07 Mar 2026 06:03AM UTC coverage: 93.415% (-0.03%) from 93.445%
22793459189

push

github

web-flow
Validation (#36)

* refactor: convert all config from functional options to struct-based API (#34)

* refactor: convert all config from functional options to struct-based API

BREAKING CHANGE: Remove all `With*` functions in favor of direct struct configuration

- Server: `zh.New(config.Config{...})` instead of `zh.New(config.WithXxx(...))`
- Middleware: `middleware.CORS(config.CORSConfig{...})` instead of `middleware.CORS(config.WithCORSXxx(...))`
- Healthcheck: `healthcheck.New(app, healthcheck.Config{...})` with exported `DefaultConfig`
- Remove all `*Option` types and `With*` functions from config package
- Update all examples and documentation to use new API
- Add `config.Bool()` helper for `*bool` pointer fields

Signed-off-by: alexferl <me@alexferl.com>

* add config merging

Signed-off-by: alexferl <me@alexferl.com>

---------

Signed-off-by: alexferl <me@alexferl.com>

* feat: add struct tag-based validation system with 40+ validators

Core Changes:
- Add complete validation system (validate.go) with struct tag-based validation
- Implement 40+ validators: required, min/max, email, uuid, ip, url, datetime, etc.
- Add ValidationErrors type with field-level error handling
- Add Validator interface for custom validation libraries
- Add RenderAndValidate() for response validation
- Add V and Validate aliases for the default validator
- Register built-in validators on initialization

Testing:
- Add comprehensive test suite for all validators
- Cover string, numeric, format, network, collection validators
- Add tests for edge cases: non-string inputs, time fields, pointers, nested structs
- Add tests for pluggable validator interface

Documentation:
- Create VALIDATION.md documenting all 40+ validators with examples
- Create BINDING.md for request binding and parameters
- Create PLUGGABLE.md for pluggable features (Validator, HTTP/3, WebSocket, etc.)
- Create TESTING.md for testing utilities
- Restructure README.md: merge duplicate sections, link to... (continued)

1590 of 1686 new or added lines in 28 files covered. (94.31%)

3 existing lines in 3 files now uncovered.

5462 of 5847 relevant lines covered (93.42%)

28.6 hits per line

Uncovered Changes

Lines Coverage ∆ File
50
85.3
-4.67% server.go
39
96.26
validate.go
7
91.46
-8.54% middleware/recover.go

Coverage Regressions

Lines Coverage ∆ File
1
83.67
-0.11% middleware/circuit_breaker.go
1
99.2
-0.01% middleware/rate_limit.go
1
89.47
-0.11% middleware/timeout.go
Jobs
ID Job ID Ran Files Coverage
1 22793459189.1 07 Mar 2026 06:04AM UTC 46
93.42
GitHub Action Run
Source Files on build 22793459189
  • Tree
  • List 46
  • Changed 31
  • Source Changed 31
  • Coverage Changed 29
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #22793459189
  • a25490e8 on github
  • Prev Build on master (#22741691151)
  • Next Build on master (#22802805080)
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