Commit Graph

3903 Commits (55138fa506537821f1f7606a14e53e657fe3db43)

Author SHA1 Message Date
Juan Calderon-Perez 55138fa506
v3: Update benchmarks for Logger Middleware (#3061)
Add regular and parallel benchmarks for Logger middleware
2024-07-05 08:57:09 +02:00
Juan Calderon-Perez 04528f7d81
v3: Updates to fiberlog benchmarks and documentation (#3059)
* Add missing benchmarks for fiberlog. Rewrite docs

* Update log.md
2024-07-05 08:53:36 +02:00
René 6108475ccb reduce time for longRun test workflow 2024-07-01 15:30:14 +02:00
René a3768a2598 reduce time for longRun test workflow 2024-07-01 15:26:46 +02:00
René 1e84c183b3 do not create a new version in docs 2024-07-01 14:49:39 +02:00
RW 49ba8dfbaf
Update release.yml 2024-06-30 22:08:19 +02:00
M. Efe Çetin 56d60a084e
v3 (feature): add CHIPS support to Cookie (#3047)
*  v3 (feature): add CHIPS support to Cookie

* update docs

* Update docs/whats_new.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update docs/api/ctx.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2024-06-30 21:38:46 +02:00
Juan Calderon-Perez a18e8a8967
feat: Add support for longtests during CI (#3054)
* Add support for longtests during CI

* Reduce count from 25 to 15
2024-06-30 21:34:14 +02:00
Jason McNeil 0400af6e47
fix(middleware/session): fix data-race with sync.Pool (#3051)
* feat: Add session mutex lock for thread safety

* chore: Refactor releaseSession mutex

* docs: Improve session.Save() function

The changes include updating the comments to provide clearer explanations of the function's behavior.
2024-06-30 21:18:11 +02:00
M. Efe Çetin 21ede5954c
v3 (feature): add configuration support to c.SendFile() (#3017)
*  v3 (feature): add configuration support to c.SendFile()

* update

* cover more edge-cases

* optimize

* update compression, add mutex for sendfile slice

* fix data races

* add benchmark

* update docs

* update docs

* update

* update tests

* fix linter

* update

* update tests

---------

Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
2024-06-30 21:15:22 +02:00
Jason McNeil 83731cef85
fix(middleware/session): mutex for thread safety (#3049)
* fix(middleware/session): mutex for thread safety

* chore: Remove extra release and acquire ctx calls in session_test.go

* feat: Remove unnecessary session mutex lock in decodeSessionData function
2024-06-29 21:47:09 +02:00
RW dbba6cfa69
fixes #3038 "v3 Flash Message with redirect is not working" (#3046)
* fixes #3038
🐞 [Bug]: v3 Flash Message with redirect is not working #3038

* fixes #3038
🐞 [Bug]: v3 Flash Message with redirect is not working #3038
2024-06-28 15:51:26 +02:00
Dave 2db1858513
🔥 Feature: Add support for custom KeyLookup functions in the Keyauth middleware (#3028)
* port over FallbackKeyLookups from v2 middleware to v3

Signed-off-by: Dave Lee <dave@gray101.com>

* bot pointed out that I missed the format variable

Signed-off-by: Dave Lee <dave@gray101.com>

* fix lint and gofumpt issues

Signed-off-by: Dave Lee <dave@gray101.com>

* major revision: instead of FallbackKeyLookups, expose CustomKeyLookup as function, with utility functions to make creating these easy

Signed-off-by: Dave Lee <dave@gray101.com>

* add more tests to boost coverage

Signed-off-by: Dave Lee <dave@gray101.com>

* teardown code and cleanup

Signed-off-by: Dave Lee <dave@gray101.com>

* test fixes

Signed-off-by: Dave Lee <dave@gray101.com>

* slight boost to test coverage

Signed-off-by: Dave Lee <dave@gray101.com>

* docs: fix md table alignment

* fix comments - change some names, expose functions, improve docs

Signed-off-by: Dave Lee <dave@gray101.com>

* missed one old name

Signed-off-by: Dave Lee <dave@gray101.com>

* fix some suggestions from the bot - error messages, test coverage, mark purely defensive code

Signed-off-by: Dave Lee <dave@gray101.com>

---------

Signed-off-by: Dave Lee <dave@gray101.com>
Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
Co-authored-by: Jason McNeil <sixcolors@mac.com>
Co-authored-by: RW <rene@gofiber.io>
2024-06-27 20:30:47 +02:00
Can Celik c9b7b1aefb
🔥 Add Cache Invalidation Option to Cache Middleware (#3036)
* Add an option to invalidate cache

* Add a summary about the cache middleware update

* Rename the option to make it clearer

* Rename hard tab

* Fix markdown formatting

* Revert unnecessary change

* Clarify the description of cache invalidator

* Add empty line

---------

Co-authored-by: RW <rene@gofiber.io>
2024-06-26 16:02:48 +02:00
Juan Calderon-Perez b9936a339d
🔥 Feature: Add support for zstd compression (#3041)
* Add support for zstd compression

* Update whats_new.md

* Add benchmarks for Compress middleware

---------

Co-authored-by: RW <rene@gofiber.io>
2024-06-26 16:00:38 +02:00
Jason McNeil dd2625661d
test(middleware/session): Remove extra release and acquire ctx calls in session_test.go (#3044) 2024-06-26 15:30:31 +02:00
René 7a2e99bc8c prepare release v3.0.0-beta.3 2024-06-26 12:17:58 +02:00
Jason McNeil b53802a5cb
Merge pull request from GHSA-98j2-3j3p-fw2v
* fix: token injection vulnerability GHSA-98j2-3j3p-fw2v

- Ensure session IDs are securely generated server-side.
- Add validation to prevent user-supplied session IDs.
- Update tests to verify correct session token use.

This update addresses the critical session middleware vulnerability identified in versions 2 and above of GoFiber.

* chore: Remove unused code and dependencies in session store

* test(middleware/csrf): Save session after generating new session ID

This commit saves the session after generating a new session ID to ensure that the updated session ID is persisted. This change is necessary to address a critical session middleware vulnerability identified in versions 2 and above of GoFiber.

* chore: Save session ID in context for middleware chain

The code changes add functionality to save the newly generated session ID in the context, allowing it to be accessible to subsequent middlewares in the chain. This improvement ensures that the session ID is available for use throughout the middleware stack.

* refactor(session.go): general clean-up

* chore: Revert session freshness behavior

The code changes in `session_test.go` fix the session freshness check by updating the assertions for `sess.Fresh()` and `sess.ID()`. The previous assertions were incorrect and have been corrected to ensure the session ID remains the same and the session is not fresh.

* chore: Update session.Get method signature to use fiber.Ctx instead of *fiber.Ctx
2024-06-26 09:17:41 +02:00
dependabot[bot] ba6ea675ba
build(deps): bump github.com/valyala/fasthttp from 1.54.0 to 1.55.0 (#3037)
Bumps [github.com/valyala/fasthttp](https://github.com/valyala/fasthttp) from 1.54.0 to 1.55.0.
- [Release notes](https://github.com/valyala/fasthttp/releases)
- [Commits](https://github.com/valyala/fasthttp/compare/1.54.0...v1.55.0)

---
updated-dependencies:
- dependency-name: github.com/valyala/fasthttp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-20 15:14:56 +02:00
Juan Calderon-Perez 5914e92e41
Add zero-allocation section to README (#3039)
Add zero-allocation section README
2024-06-20 15:14:35 +02:00
Jason McNeil 011e83b390
docs: Improve ctx.Locals method description, godoc and example (#3032)
* docs: Improve ctx.Locals method description, godoc and example

* docs: Update ctx.md to use value receiver for fiber.Ctx in app.Use and app.Get

* chore: Update userKey type in ctx.md

* docs: Update ctx.md

* chore: Add description for Locals method in Ctx interface
2024-06-18 08:27:38 +02:00
Oliver Maskery d19b893c63
📚 Doc: Update intro.md to make clear `fiber.Ctx` is not thread-safe. (#3014)
* 📚 Update intro.md to make clear fiber.Ctx is not thread-safe.

Closes #3012

* Update intro.md

---------

Co-authored-by: RW <rene@gofiber.io>
2024-06-17 09:26:13 +02:00
dependabot[bot] 9caa11fd71
build(deps): bump codecov/codecov-action from 4.4.1 to 4.5.0 (#3035)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.4.1 to 4.5.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v4.4.1...v4.5.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-17 09:22:08 +02:00
Orville Simba 23bcbd3324
🩹 Fix: Optimize Cache middleware handler (#3031)
* Optimize cache handler

* revert to cfg.KeyGenerator(c) + _ + requestMethod

---------

Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
2024-06-12 16:22:36 +02:00
Juan Calderon-Perez 46fffe4397
Bump golangci-lint to v1.59.1 (#3029) 2024-06-11 08:52:49 +02:00
René e561026384 [v3 Maintenance]: Consolidate and Document Core Changes in v3 2024-06-07 17:01:07 +02:00
RW 046b4a9d4e
Adding a generator to generate the CTX interface (#3024) 2024-06-03 08:37:22 +02:00
René ed9d7cf3e3 change filesystem example in ctx.md for static mw 2024-05-28 10:09:15 +02:00
M. Efe Çetin 38fb8064c6
middleware: add static middleware (#3006)
* middleware: add static middleware

* uncomment broken tests

* introduce isfile config property to fix file issues

* test

* add io/fs support to static mw

* add io/fs support to static mw

* remove filesystem and app.Static

* fix linter

* apply review

* support disablecache

* support multi indexes

* add an example for io/fs

* update whats new & apply reviews

* update

* use fasthttp from master

* Update .github/README.md

Co-authored-by: RW <rene@gofiber.io>

* update1

* apply reviews

* update

* update

* update examples

* add more examples

---------

Co-authored-by: RW <rene@gofiber.io>
2024-05-28 09:29:25 +02:00
dependabot[bot] fca62c1853
build(deps): bump golangci/golangci-lint-action from 5 to 6 (#2994)
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 5 to 6.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v5...v6)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
2024-05-24 15:01:55 +02:00
Rob Baruch 0a14c55dc3
updated fasthttp to 1.54.0 release (#3010) 2024-05-23 23:16:54 +02:00
dependabot[bot] ade7d4783f
build(deps): bump codecov/codecov-action from 4.4.0 to 4.4.1 (#3009)
---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-22 23:11:08 +03:00
dependabot[bot] 4bc4e610a7
build(deps): bump codecov/codecov-action from 4.3.1 to 4.4.0 (#2999)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.3.1 to 4.4.0.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v4.3.1...v4.4.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: RW <rene@gofiber.io>
2024-05-21 08:57:37 +02:00
dependabot[bot] c420ddbfa9
build(deps): bump benchmark-action/github-action-benchmark from 1.20.1 to 1.20.3 (#3008)
build(deps): bump benchmark-action/github-action-benchmark

Bumps [benchmark-action/github-action-benchmark](https://github.com/benchmark-action/github-action-benchmark) from 1.20.1 to 1.20.3.
- [Release notes](https://github.com/benchmark-action/github-action-benchmark/releases)
- [Changelog](https://github.com/benchmark-action/github-action-benchmark/blob/master/CHANGELOG.md)
- [Commits](https://github.com/benchmark-action/github-action-benchmark/compare/v1.20.1...v1.20.3)

---
updated-dependencies:
- dependency-name: benchmark-action/github-action-benchmark
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-21 08:56:11 +02:00
dependabot[bot] dbeca39a07
build(deps): bump github.com/valyala/fasthttp from 1.52.0 to 1.53.0 (#3000)
Bumps [github.com/valyala/fasthttp](https://github.com/valyala/fasthttp) from 1.52.0 to 1.53.0.
- [Release notes](https://github.com/valyala/fasthttp/releases)
- [Commits](https://github.com/valyala/fasthttp/compare/v1.52.0...v1.53.0)

---
updated-dependencies:
- dependency-name: github.com/valyala/fasthttp
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-14 23:53:57 +02:00
René bf62cef394 docs: add docs for new client 2024-05-13 15:20:56 +02:00
M. Efe Çetin 3ba90c0fb0
docs: add docs for new client (#2991)
* docs: add docs for new client

* Add docs for client hooks

* Add docs for client examples

* Some fixes.

* docs: add docs for new client

* docs: add docs for new client

* Add more examples for methods

* Update docs/client/examples.md

Co-authored-by: Jason McNeil <sixcolors@mac.com>

* Add one more example for cookiejar

* apply review

* apply review

* apply review

* docs: add docs for new client

* docs: add docs for new client

---------

Co-authored-by: René <rene@gofiber.io>
Co-authored-by: Jason McNeil <sixcolors@mac.com>
2024-05-13 14:49:01 +02:00
dependabot[bot] 109ccdd4ad
build(deps): bump codecov/codecov-action from 4.3.0 to 4.3.1 (#2993)
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v4.3.0...v4.3.1)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-01 15:36:51 +02:00
René cb7f09fe6b [v3 Maintenance]: Consolidate and Document Core Changes in v3 2024-04-29 08:13:00 +02:00
René 17b93abd4b [v3 Maintenance]: Consolidate and Document Core Changes in v3 2024-04-26 22:37:25 +02:00
René 090b702dfc [v3 Maintenance]: Consolidate and Document Core Changes in v3 2024-04-26 22:26:45 +02:00
dependabot[bot] aea2981798
build(deps): bump golangci/golangci-lint-action from 4 to 5 (#2986)
Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 4 to 5.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](https://github.com/golangci/golangci-lint-action/compare/v4...v5)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-25 15:23:37 +02:00
Juan Calderon-Perez 24388b335c
chore: Add Benchmarks for IsProxyTrusted() (#2933)
* Add benchmarks for IsTrustedProxy

* Update Benchmarks for IsTrustedProxy()

---------

Co-authored-by: Jason McNeil <sixcolors@mac.com>
2024-04-25 13:47:39 +02:00
Jason McNeil 69f5b6b1b1
docs(whats_new.md): CORS middleware (#2979)
* docs(whats_new.md): CORS middleware

* docs(whats_new.md): Update to long description of changes, CORS middleware.
2024-04-25 10:27:44 +02:00
dockercui 3a0313de85
Fix some comments (#2983)
Signed-off-by: dockercui <dockercui@aliyun.com>
2024-04-24 11:12:06 +02:00
RW 077968abec
[v3 Maintenance]: Consolidate and Document Core Changes in v3 (#2934)
* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3

* [v3 Maintenance]: Consolidate and Document Core Changes in v3
2024-04-23 08:18:19 +02:00
Jason McNeil 4d1e993cdb
chore(middleware/csrf): Update config TrustedOrigin comments (#2963) 2024-04-17 19:28:08 +02:00
Jason McNeil 726c4991ba
refactor(middleware/cors)!: Config, lists as list types. (#2962)
* fix(middleware/cors): Config, lists as list types.

Improve insecure config error text.

* chore: Add tests for CORS preflight requests with Access-Control-Request-Headers

* test(middleware/cors): explicit wildcard in test

---------

Co-authored-by: Juan Calderon-Perez <835733+gaby@users.noreply.github.com>
2024-04-17 19:27:24 +02:00
deferdeter 2f8ff5662d
chore: fix some struct names in comments (#2974)
Signed-off-by: deferdeter <deferdeter@outlook.com>
2024-04-16 08:15:13 +02:00
Juan Calderon-Perez 5f72d0489b
📒 [docs]: Fix broken link to slim template in FAQ (#2969)
Fix broken link in FAQ
2024-04-15 08:07:30 +02:00