Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump github.com/labstack/echo/v4 from 4.12.0 to 4.13.3 #40

Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Dec 20, 2024

Bumps github.com/labstack/echo/v4 from 4.12.0 to 4.13.3.

Release notes

Sourced from github.com/labstack/echo/v4's releases.

v4.13.3

Security

Full Changelog: labstack/echo@v4.13.2...v4.13.3

v4.13.2 - update dependencies

Security

Full Changelog: labstack/echo@v4.13.1...v4.13.2

v4.13.1

Fixes

Full Changelog: labstack/echo@v4.13.0...v4.13.1

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 or see alternative implementation

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](labstack/echo#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

... (truncated)

Changelog

Sourced from github.com/labstack/echo/v4's changelog.

v4.13.3 - 2024-12-19

Security

v4.13.2 - 2024-12-12

Security

v4.13.1 - 2024-12-11

Fixes

v4.13.0 - 2024-12-04

BREAKING CHANGE JWT Middleware Removed from Core use labstack/echo-jwt instead

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](labstack/echo#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

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [github.com/labstack/echo/v4](https://github.com/labstack/echo) from 4.12.0 to 4.13.3.
- [Release notes](https://github.com/labstack/echo/releases)
- [Changelog](https://github.com/labstack/echo/blob/master/CHANGELOG.md)
- [Commits](labstack/echo@v4.12.0...v4.13.3)

---
updated-dependencies:
- dependency-name: github.com/labstack/echo/v4
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file go Pull requests that update Go code labels Dec 20, 2024
Copy link

Benchmark Result

goos: linux
goarch: amd64
pkg: github.com/mazrean/formstream
cpu: AMD EPYC 7763 64-Core Processor                
BenchmarkFormStreamFastPath/1MB-4 	    2827	    414086 ns/op	   10013 B/op	      64 allocs/op
BenchmarkFormStreamFastPath/10MB-4         	     303	   3893883 ns/op	   10021 B/op	      64 allocs/op
BenchmarkFormStreamFastPath/100MB-4        	      27	  41585387 ns/op	   10421 B/op	      64 allocs/op
BenchmarkFormStreamFastPath/1GB-4          	       3	 433068707 ns/op	   15637 B/op	      65 allocs/op
BenchmarkFormStreamSlowPath/1MB-4          	    2522	    463411 ns/op	   15121 B/op	      69 allocs/op
BenchmarkFormStreamSlowPath/10MB-4         	     256	   4597851 ns/op	  272355 B/op	      69 allocs/op
BenchmarkFormStreamSlowPath/100MB-4        	       7	 154433883 ns/op	19220938 B/op	      80 allocs/op
BenchmarkFormStreamSlowPath/1GB-4          	       1	1743351208 ns/op	134286016 B/op	     103 allocs/op
BenchmarkStdMultipartNextPart/1MB-4        	    2784	    440016 ns/op	   39302 B/op	      32 allocs/op
BenchmarkStdMultipartNextPart/10MB-4       	     276	   4191358 ns/op	   39349 B/op	      32 allocs/op
BenchmarkStdMultipartNextPart/100MB-4      	      27	  42001412 ns/op	   39611 B/op	      32 allocs/op
BenchmarkStdMultipartNextPart/1GB-4        	       3	 424682683 ns/op	   42250 B/op	      33 allocs/op
BenchmarkStdMultipartReadForm/1MB-4        	    1236	   1012601 ns/op	 4204287 B/op	      61 allocs/op
BenchmarkStdMultipartReadForm/10MB-4       	     132	   9295744 ns/op	33566555 B/op	      64 allocs/op
BenchmarkStdMultipartReadForm/100MB-4      	       6	 184850468 ns/op	134268420 B/op	      79 allocs/op
BenchmarkStdMultipartReadForm/1GB-4        	       1	1902044037 ns/op	134267216 B/op	      80 allocs/op
PASS
ok  	github.com/mazrean/formstream	28.875s
pprof command
gh api /repos/mazrean/formstream/actions/artifacts/2349024674/zip > /tmp/profile.zip
unzip /tmp/profile.zip -d profile
rm -rf /tmp/profile.zip
go tool pprof -http :6060 profile/cpu.out

@codecov-commenter
Copy link

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 57.70%. Comparing base (dc3fa7a) to head (1b3f887).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #40   +/-   ##
=======================================
  Coverage   57.70%   57.70%           
=======================================
  Files          12       12           
  Lines         506      506           
=======================================
  Hits          292      292           
  Misses        193      193           
  Partials       21       21           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@mazrean mazrean merged commit 387ef21 into main Jan 3, 2025
3 checks passed
@mazrean mazrean deleted the dependabot/go_modules/github.com/labstack/echo/v4-4.13.3 branch January 3, 2025 16:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file go Pull requests that update Go code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants