๐ New Features
- Middleware/basicAuth: Add Fiber Context to BasicAuth Authorizer by @gaby in #3621
- Middleware/basicAuth: Add HeaderLimit option to BasicAuth middleware by @gaby in #3620
- Middleware/basicAuth: Support hashed BasicAuth passwords by @gaby in #3631
- Middleware/csrf: Enhance extractor functionality with metadata and security validation by @sixcolors in #3630
- Middleware/limiter: Support for disabling response headers in Limiter Middleware by @gaby in #3618
- Middleware/proxy: Add KeepConnectionHeader option to Proxy middleware by @gaby in #3662
- Middleware/session: Introduce Extractor pattern for session ID retrieval by @sixcolors in #3625
- Support for SendEarlyHints by @pjebs in #3483
- Support generic configurable logger by @ReneWerner87 in #3705
- Add conditional copy helpers by @ReneWerner87 in #3703
- Add support for embedded Koa-Style Req and Res structs by @grivera64 in #3533
- Add default UTF-8 charset by @Copilot in #3583
๐งน Updates
- Middleware/basicAuth: Remove SHA-1/MD5 support in BasicAuth middleware by @gaby in #3634
- Middleware/basicAuth: Remove support for PasswordFromContext from BasicAuth middleware by @gaby in #3638
- Middleware/cors: Fix CORS docs and comments by @gaby in #3637
- Middleware/csrf: Fix CSRF error message mismatch with documentation by @gaby in #3636
- Middleware/csrf: Fix CSRF subdomain wildcard boundary by @gaby in #3694
- Middleware/keyAuth: Extractor-Based Configuration and Enhanced Flexibility by @sixcolors in #3685
- Middleware/keyAuth: Return generic errors in KeyAuth middleware by @gaby in #3692
- Middleware/pprof: Fix pprof middleware docs and default config by @gaby in #3642
- Add tests for quoteRawString by @gaby in #3613
- Replace math/rand with crypto/rand by @gaby in #3508
- Enable govet shadow by @ReneWerner87 in #3617
- Fix Cookie SameSite constants to Pascal case per RFC specification by @Copilot in #3608
- Fix timing for streaming test by @ReneWerner87 in #3628
- Reduce allocation in AutoFormat by @ReneWerner87 in #3652
- Add sync pool and release helpers for Bind by @ReneWerner87 in #3660
- Add CBOR support to AutoFormat() by @gaby in #3665
- Add missing checks in Ctx tests by @gaby in #3670
- Stabilize interrupted stream writer test by @ReneWerner87 in #3669
- Fix AcceptsLanguages() RFC compliance by @gaby in #3672
- Respect immutable config in Params(), Protocol(), and Body() by @gaby in #3676
- Optimize Fresh header parsing for fasthttp 1.65 by @ReneWerner87 in #3687
- Use ephemeral ports in unit tests by @ReneWerner87 in #3686
- Delay routing error creation by @ReneWerner87 in #3683
- Improve Req/Res Benchmarks by @grivera64 in #3693
- Using reflect.TypeAssert by @cuiweixie in #3698
- Skip unstable GenericParseType benchmarks by @ReneWerner87 in #3614
- Require Go 1.25 by @ReneWerner87 in #3682
๐ Bug Fixes
- Middleware/cors: Fix CORS subdomain wildcard boundary by @gaby in #3690
- Middleware/limiter: Fix limiter middleware not counting fiber.NewErrorf responses as failed requests by @Copilot in #3623
- Middleware/static: Fix Static middleware browser support for subdirectories by @efectn in #3673
- Fix retry config handling by @gaby in #3609
- Fix race in cookie tests by @ReneWerner87 in #3629
- Fix bind All() merging logic by @gaby in #3659
๐ ๏ธ Maintenance
- build(deps): bump kenchan0130/actions-system-info from 1.3.1 to 1.4.0 by @dependabot[bot] in #3679
- build(deps): bump github.com/shamaton/msgpack/v2 from 2.2.3 to 2.3.0 by @dependabot[bot] in #3678
- build(deps): bump actions/checkout from 4 to 5 by @dependabot[bot] in #3681
- build(deps): bump github.com/valyala/fasthttp from 1.64.0 to 1.65.0 by @dependabot[bot] in #3684
- build(deps): bump github.com/gofiber/utils/v2 from 2.0.0-beta.14 to 2.0.0-rc.1 by @dependabot[bot] in #3689
- build(deps): bump codecov/codecov-action from 5.4.3 to 5.5.0 by @dependabot[bot] in #3701
- build(deps): bump github.com/stretchr/testify from 1.10.0 to 1.11.0 by @dependabot[bot] in #3712
๐ Documentation
- Add early hints documentation by @ReneWerner87 in #3697
- Add migration tool info by @ReneWerner87 in #3708
- Add context guide by @gaby in #3677
- Fix EarlyData middleware docs by @gaby in #3646
- Fix Skip middleware docs by @gaby in #3649
- Fix context changes doc by @ReneWerner87 in #3650
- Fix RequestID docs by @gaby in #3648
- Fix Proxy middleware docs by @gaby in #3647
- Fix Compress middleware docs by @gaby in #3645
- Fix Cache middleware docs by @gaby in #3644
- Fix Favicon middleware documentation by @gaby in #3640
- Fix Static middleware docs by @gaby in #3643
- Fix Healthcheck middleware documentation by @gaby in #3657
- Fix KeyAuth middleware docs by @gaby in #3641
- Improve Timeout middleware documentation by @gaby in #3675
- Add Learning Resources section with Go Interview Practice platform by @RezaSi in #3691
- Fix typos in documentation by @kianmeng in #3695
- document utils package migration by @ReneWerner87 in #3704
- Note CSRF ContextKey removal by @ReneWerner87 in #3706
- Note removal of context keys by @ReneWerner87 in #3707
New Contributors
- @RezaSi made their first contribution in #3691
- @kianmeng made their first contribution in #3695
- @cuiweixie made their first contribution in #3698
A fully-detailed view of all new features and the migration guide is available in our
https://docs.gofiber.io/next/whats_new
Full Changelog: v3.0.0-beta.5...v3.0.0-rc.1