* Feature Request: Support Square Bracket Notation in Multipart Form Data #3224
* Feature Request: Support Square Bracket Notation in Multipart Form Data #3224
* perf(ctx.Range): reduce allocations
strings.Split was causing extra allocations where using
strings.IndexByte can suffice. ALso switch from strconv.Atoi because it
causes an allocation when parsing a non-integer, which is common for
Ranges.
* chore: fix lint
* 🔥 add config to enable splitting by comma in parsers
🔥 add config to enable splitting by comma in parsers
* optimize if statements, remove escape char support
optimize if statements, remove escape char support
* update
* 🔧 feat: Decode body in order when sent a list on content-encoding
* 🚀 perf: Change `getSplicedStrList` to have 0 allocations
* 🍵 test: Add tests for the new features
* 🍵 test: Ensure session test will not raise an error unexpectedly
* 🐗 feat: Replace strings.TrimLeft by utils.TrimLeft
Add docs to functions to inform correctly what the change is
* 🌷 refactor: Apply linter rules
* 🍵 test: Add test cases to the new body method change
* 🔧 feat: Remove return problems to be able to reach original body
* 🌷 refactor: Split Body method into two to make it more maintainable
Also, with the previous fix to problems detected by tests, it becomes really hard to make the linter happy, so this change also helps in it
* 🚀 perf: Came back with Header.VisitAll, to improve speed
* 📃 docs: Update Context docs
* 🚀 FEATURE: add queries method
* 📚 DOCS: add documents for queries method.
* 🩹 Fix: fix wrap error returned from Queries function
* 🚨 tests: add url encoded tests
* 🔥 feature: add url encoded support for queries
* 🩹 Fix: fix wrap error returned from Queries function
* ♻️ Refactor: change error message of url.QueryUnescape
* ♻️ Refactor: refactor of mapping key and value queries
* 🚨 Test: Validate to fail parse queries
* 🚨 Test: Add benchmark test for Queries
* 🩹 Fix: remove parsing for encoded urls
* ♻️ Refactor: change string function to c.app.getString fucntion
Co-authored-by: cmd777 <83428931+cmd777@users.noreply.github.com>
* ♻️ Refactor: change name of benchamark function ctx queries
Co-authored-by: leonklingele <git@leonklingele.de>
* ♻️ Refactor: remove empty lines
Co-authored-by: leonklingele <git@leonklingele.de>
* Revert "♻️ Refactor: change string function to c.app.getString fucntion"
This reverts commit 28febf9e60.
* 📚 Docs: add documents for queries method
* 🚨 Tests: add more tests for queries function
* ♻️ Refactor: change string function to c.app.getString function
* 🚨 Tests: add more test for queries function
* 📚 Docs: add more documents to queries function
---------
Co-authored-by: cmd777 <83428931+cmd777@users.noreply.github.com>
Co-authored-by: leonklingele <git@leonklingele.de>
* internal: revert linting changes
Changes to the internal package should not have been made in 167a8b5e94.
* middleware/monitor: revert changes to exported field "ChartJSURL"
This is a breaking change introduced in 167a8b5e94.
* middleware/monitor: fix error checking
Fix the errorenous error checking introduced in 167a8b5e94.
* 🐛 Bug: Fix issues introduced in linting PR #2319
* 🐛 Bug: Fix issues introduced in linting PR #2319
* Bug: Fix issues introduced in linting PR #2319
---------
Co-authored-by: René Werner <rene@gofiber.io>
* golangci-lint: add and apply more stricter linting rules
* github: drop security workflow now that we use gosec linter inside golangci-lint
* github: use official golangci-lint CI linter
* Add editorconfig and gitattributes file
* app: do not use empty *net.IPNet in case of an error of "net.ParseCIDR"
* app: expose error returned by "net.ParseCIDR"
* ctx: do not repeatedly call method in loop
* ctx: add test for "IsProxyTrusted" func
* - logger: fix custom tag
- use real bytebufferpool dependency instead of the internal
* - logger: fix custom tag
- use real bytebufferpool dependency instead of the internal
* - logger: fix custom tag
- use real bytebufferpool dependency instead of the internal
* - logger: fix custom tag
- use real bytebufferpool dependency instead of the internal
* ctx: simplify Protocol()
* ctx: also mention "X-Url-Scheme" header in Protocol()
* ctx: use the same warning comment about enabling Config.EnableTrustedProxyCheck everywhere
- update Locals function to accept interface{} key (Requires new version of fasthttp)
Co-authored-by: rocketlaunchr-cto <rocketlaunchr.cloud@gmail.com>
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* 🐛 bug: fix mounting doesn't work if when to declare it before routes
* add onMount hooks, mountPath like express.js, better behavior for onName, onRoute, onGroup, onGroupName hooks on mounted apps
* add comment
* use once
* fix views when both app and sub-app have view engine, better behavior for mount path
* fix tests
* fix tests
* make some tasks
* make some tasks
* 🚀 Make IP vallidation 2x faster
* Add tests for IP validation
* phrasing & linter fix
* change test assert function
That was a surprise that testing style in gofiber/utils and in gofiber/fiber/utils are different 😳
* fix unhandled errors
* fix unhandled error in cache package test
* omit variable type
* omit variable type
* rename variable because collide with the imported package name
* handle file error on closing
* fix unhandled in common_linux.go
* fix unhandled errors in helpers_test.go
* fix unhandled errors in listen_test.go
* remove unused parameter in emptyHandler method
* refactor path.go
* unhandled error in hooks test
* fix unhandled errors in app_test.go
* fix unhandled errors in ctx_test.go
* ✨ fix unhandled errors in helpers_test.go
* revert app_test.go
* remove redundant parentheses and update comments
* update code comment for helping ide
* update code comment for helping ide
* fix unhandled error in app_test.go
* update code comments for helping IDEs