labstack/echo
 Watch   
 Star   
 Fork   
2024-12-11 18:18:50
echo

v4.13.1

Fixes

Full Changelog: https://github.com/labstack/echo/compare/v4.13.0...v.4.13.1

2024-12-05 04:13:45
echo

JWT Middleware Removed

BREAKING CHANGE: JWT Middleware Removed from Core

The JWT middleware has been removed from Echo core due to another security vulnerability, CVE-2024-51744. For more details, refer to issue #2699. A drop-in replacement is available in the labstack/echo-jwt repository.

Important: Direct assignments like token := c.Get("user").(*jwt.Token) will now cause a panic due to an invalid cast. Update your code accordingly. Replace the current imports from "github.com/golang-jwt/jwt" in your handlers to the new middleware version using "github.com/golang-jwt/jwt/v5".

Background:

The version of golang-jwt/jwt (v3.2.2) previously used in Echo core has been in an unmaintained state for some time. This is not the first vulnerability affecting this library; earlier issues were addressed in PR #1946. JWT middleware was marked as deprecated in Echo core as of v4.10.0 on 2022-12-27. If you did not notice that, consider leveraging tools like Staticcheck to catch such deprecations earlier in you dev/CI flow. For bonus points - check out gosec.

We sincerely apologize for any inconvenience caused by this change. While we strive to maintain backward compatibility within Echo core, recurring security issues with third-party dependencies have forced this decision.

Enhancements

New Contributors

Full Changelog: https://github.com/labstack/echo/compare/v4.12.0...v4.13.0

2024-04-16 02:31:01
echo

v4.12.0

v4.12.0 - 2024-04-15

Security

Enhancements

New Contributors

Full Changelog: https://github.com/labstack/echo/compare/v4.11.4...v4.12.0

2023-12-20 21:24:30
echo

v4.11.4 upgrade dependencies

Security

  • Upgrade golang.org/x/crypto to v0.17.0 to fix vulnerability issue #2562

Enhancements

2023-11-07 20:19:32
echo

v4.11.3

Security

  • 'c.Attachment' and 'c.Inline' should escape filename in 'Content-Disposition' header to avoid 'Reflect File Download' vulnerability. #2541

Enhancements

  • Tests: refactor context tests to be separate functions #2540
  • Proxy middleware: reuse echo request context #2537
  • Mark unmarshallable yaml struct tags as ignored #2536
2023-10-11 13:32:23
echo

v4.11.2

Security

  • Bump golang.org/x/net to prevent CVE-2023-39325 / CVE-2023-44487 HTTP/2 Rapid Reset Attack #2527
  • fix(sec): randomString bias introduced by #2490 #2492
  • CSRF/RequestID mw: switch math/random usage to crypto/random #2490

Enhancements

  • Delete unused context in body_limit.go #2483
  • Use Go 1.21 in CI #2505
  • Fix some typos #2511
  • Allow CORS middleware to send Access-Control-Max-Age: 0 #2518
  • Bump dependancies #2522
2023-07-17 01:41:57
echo

v4.11.1

Fixes

  • Fix Gzip middleware not sending response code for no content responses (404, 301/302 redirects etc) #2481
2023-07-15 04:18:22
echo

v4.11.0

Fixes

  • Fixes the proxy middleware concurrency issue of calling the Next() proxy target on Round Robin Balancer #2409
  • Fix group.RouteNotFound not working when group has attached middlewares #2411
  • Fix global error handler return error message when message is an error #2456
  • Do not use global timeNow variables #2477

Enhancements

  • Added a optional config variable to disable centralized error handler in recovery middleware #2410
  • refactor: use strings.ReplaceAll directly #2424
  • Add support for Go1.20 http.rwUnwrapper to Response struct #2425
  • Check whether is nil before invoking centralized error handling #2429
  • Proper colon support in echo.Reverse method #2416
  • Fix misuses of a vs an in documentation comments #2436
  • Add link to slog.Handler library for Echo logging into README.md #2444
  • In proxy middleware Support retries of failed proxy requests #2414
  • gofmt fixes to comments #2452
  • gzip response only if it exceeds a minimal length #2267
  • Upgrade packages #2475