|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## v4.13.3 - 2024-12-19 |
| 4 | + |
| 5 | +**Security** |
| 6 | + |
| 7 | +* Update golang.org/x/net dependency [GO-2024-3333](https://pkg.go.dev/vuln/GO-2024-3333) in https://github.com/labstack/echo/pull/2722 |
| 8 | + |
| 9 | + |
| 10 | +## v4.13.2 - 2024-12-12 |
| 11 | + |
| 12 | +**Security** |
| 13 | + |
| 14 | +* Update dependencies (dependabot reports [GO-2024-3321](https://pkg.go.dev/vuln/GO-2024-3321)) in https://github.com/labstack/echo/pull/2721 |
| 15 | + |
| 16 | + |
| 17 | +## v4.13.1 - 2024-12-11 |
| 18 | + |
| 19 | +**Fixes** |
| 20 | + |
| 21 | +* Fix BindBody ignoring `Transfer-Encoding: chunked` requests by @178inaba in https://github.com/labstack/echo/pull/2717 |
| 22 | + |
| 23 | + |
| 24 | + |
| 25 | +## v4.13.0 - 2024-12-04 |
| 26 | + |
| 27 | +**BREAKING CHANGE** JWT Middleware Removed from Core use [labstack/echo-jwt](https://github.com/labstack/echo-jwt) instead |
| 28 | + |
| 29 | +The JWT middleware has been **removed from Echo core** due to another security vulnerability, [CVE-2024-51744](https://nvd.nist.gov/vuln/detail/CVE-2024-51744). For more details, refer to issue [#2699](https://github.com/labstack/echo/issues/2699). A drop-in replacement is available in the [labstack/echo-jwt](https://github.com/labstack/echo-jwt) repository. |
| 30 | + |
| 31 | +**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"`. |
| 32 | + |
| 33 | + |
| 34 | +Background: |
| 35 | + |
| 36 | +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](https://github.com/labstack/echo/pull/1946). |
| 37 | +JWT middleware was marked as deprecated in Echo core as of [v4.10.0](https://github.com/labstack/echo/releases/tag/v4.10.0) on 2022-12-27. If you did not notice that, consider leveraging tools like [Staticcheck](https://staticcheck.dev/) to catch such deprecations earlier in you dev/CI flow. For bonus points - check out [gosec](https://github.com/securego/gosec). |
| 38 | + |
| 39 | +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. |
| 40 | + |
| 41 | +**Enhancements** |
| 42 | + |
| 43 | +* remove jwt middleware by @stevenwhitehead in https://github.com/labstack/echo/pull/2701 |
| 44 | +* optimization: struct alignment by @behnambm in https://github.com/labstack/echo/pull/2636 |
| 45 | +* bind: Maintain backwards compatibility for map[string]interface{} binding by @thesaltree in https://github.com/labstack/echo/pull/2656 |
| 46 | +* Add Go 1.23 to CI by @aldas in https://github.com/labstack/echo/pull/2675 |
| 47 | +* improve `MultipartForm` test by @martinyonatann in https://github.com/labstack/echo/pull/2682 |
| 48 | +* `bind` : add support of multipart multi files by @martinyonatann in https://github.com/labstack/echo/pull/2684 |
| 49 | +* Add TemplateRenderer struct to ease creating renderers for `html/template` and `text/template` packages. by @aldas in https://github.com/labstack/echo/pull/2690 |
| 50 | +* Refactor TestBasicAuth to utilize table-driven test format by @ErikOlson in https://github.com/labstack/echo/pull/2688 |
| 51 | +* Remove broken header by @aldas in https://github.com/labstack/echo/pull/2705 |
| 52 | +* fix(bind body): content-length can be -1 by @phamvinhdat in https://github.com/labstack/echo/pull/2710 |
| 53 | +* CORS middleware should compile allowOrigin regexp at creation by @aldas in https://github.com/labstack/echo/pull/2709 |
| 54 | +* Shorten Github issue template and add test example by @aldas in https://github.com/labstack/echo/pull/2711 |
| 55 | + |
| 56 | + |
| 57 | +## v4.12.0 - 2024-04-15 |
| 58 | + |
| 59 | +**Security** |
| 60 | + |
| 61 | +* Update golang.org/x/net dep because of [GO-2024-2687](https://pkg.go.dev/vuln/GO-2024-2687) by @aldas in https://github.com/labstack/echo/pull/2625 |
| 62 | + |
| 63 | + |
| 64 | +**Enhancements** |
| 65 | + |
| 66 | +* binder: make binding to Map work better with string destinations by @aldas in https://github.com/labstack/echo/pull/2554 |
| 67 | +* README.md: add Encore as sponsor by @marcuskohlberg in https://github.com/labstack/echo/pull/2579 |
| 68 | +* Reorder paragraphs in README.md by @aldas in https://github.com/labstack/echo/pull/2581 |
| 69 | +* CI: upgrade actions/checkout to v4 by @aldas in https://github.com/labstack/echo/pull/2584 |
| 70 | +* Remove default charset from 'application/json' Content-Type header by @doortts in https://github.com/labstack/echo/pull/2568 |
| 71 | +* CI: Use Go 1.22 by @aldas in https://github.com/labstack/echo/pull/2588 |
| 72 | +* binder: allow binding to a nil map by @georgmu in https://github.com/labstack/echo/pull/2574 |
| 73 | +* Add Skipper Unit Test In BasicBasicAuthConfig and Add More Detail Explanation regarding BasicAuthValidator by @RyoKusnadi in https://github.com/labstack/echo/pull/2461 |
| 74 | +* fix some typos by @teslaedison in https://github.com/labstack/echo/pull/2603 |
| 75 | +* fix: some typos by @pomadev in https://github.com/labstack/echo/pull/2596 |
| 76 | +* Allow ResponseWriters to unwrap writers when flushing/hijacking by @aldas in https://github.com/labstack/echo/pull/2595 |
| 77 | +* Add SPDX licence comments to files. by @aldas in https://github.com/labstack/echo/pull/2604 |
| 78 | +* Upgrade deps by @aldas in https://github.com/labstack/echo/pull/2605 |
| 79 | +* Change type definition blocks to single declarations. This helps copy… by @aldas in https://github.com/labstack/echo/pull/2606 |
| 80 | +* Fix Real IP logic by @cl-bvl in https://github.com/labstack/echo/pull/2550 |
| 81 | +* Default binder can use `UnmarshalParams(params []string) error` inter… by @aldas in https://github.com/labstack/echo/pull/2607 |
| 82 | +* Default binder can bind pointer to slice as struct field. For example `*[]string` by @aldas in https://github.com/labstack/echo/pull/2608 |
| 83 | +* Remove maxparam dependence from Context by @aldas in https://github.com/labstack/echo/pull/2611 |
| 84 | +* When route is registered with empty path it is normalized to `/`. by @aldas in https://github.com/labstack/echo/pull/2616 |
| 85 | +* proxy middleware should use httputil.ReverseProxy for SSE requests by @aldas in https://github.com/labstack/echo/pull/2624 |
| 86 | + |
| 87 | + |
3 | 88 | ## v4.11.4 - 2023-12-20
|
4 | 89 |
|
5 | 90 | **Security**
|
|
0 commit comments