coder / code-marketplace

Open source extension marketplace for VS Code.
GNU Affero General Public License v3.0
226 stars 24 forks source link

Bump github.com/go-chi/httprate from 0.9.0 to 0.14.0 #59

Closed dependabot[bot] closed 2 months ago

dependabot[bot] commented 3 months ago

Bumps github.com/go-chi/httprate from 0.9.0 to 0.14.0.

Release notes

Sourced from github.com/go-chi/httprate's releases.

v0.14.0

What's Changed

Add support to rate-limit by custom key from HTTP handler (e.g. by request payload fields)

// Rate-limiter for login endpoint.
loginRateLimiter := httprate.NewRateLimiter(5, time.Minute)

r.Post("/login", func(w http.ResponseWriter, r *http.Request) {
var payload struct {
Username string json:"username"
Password string json:"password"
}
err := json.NewDecoder(r.Body).Decode(&payload)
if err != nil || payload.Username == "" || payload.Password == "" {
w.WriteHeader(400)
return
}

// Rate-limit login at 5 req/min.
if loginRateLimiter.RespondOnLimit(w, r, payload.Username) {
    return
}

w.Write([]byte("login at 5 req/min\n"))

})

Full Changelog: https://github.com/go-chi/httprate/compare/v0.12.1...v0.14.0

v0.13.1

What's Changed

Full Changelog: https://github.com/go-chi/httprate/compare/v0.13.0...v0.13.1

v0.13.0

Full Changelog: https://github.com/go-chi/httprate/compare/v0.13.0...v0.13.0

Add support to rate-limit by custom key from HTTP handler (e.g. by request payload fields)

// Rate-limiter for login endpoint.
loginRateLimiter := httprate.NewRateLimiter(5, time.Minute)

r.Post("/login", func(w http.ResponseWriter, r *http.Request) {
var payload struct {
</tr></table>

... (truncated)

Commits
  • 5e681e3 Introduce RespondOnLimit() vs. OnLimit() (#44)
  • c4c778c Export RateLimiter type (#43)
  • 80029e2 Implement rate-limiting from HTTP handler (e.g. by request payload) (#42)
  • 99b3b69 README: Fix typo
  • 62dba55 Implement httprate.WithErrorHandler() (#41)
  • 6aa26b0 Local counter: Don't re-allocate maps in Go 1.21+ (#40)
  • 9e50ad6 Export in-memory counter for external use (#39)
  • 05a79e9 Upgrade to actions/setup-go@v5, improve README (#38)
  • 4afd620 Improve example, add go module (#37)
  • 7fd4d55 Remove unused func argument (#36)
  • Additional commits viewable in compare view


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 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)
dependabot[bot] commented 2 months ago

Superseded by #60.