Commit Graph

116 Commits (export-buildtree)

Author SHA1 Message Date
Javier Scappini d974cf3c99
Fix typo in requestid.md
Minor typo fix in requestid.md.
2023-10-13 11:37:06 +00:00
joey1123455 e70b2e28d6
Cookie parser (#2656)
* prep for branching

* feature: added a cookie parser and tests appropriate tests

*  feature: added a cookie parser and appropriate tests

* made correction to docs

* linted using gofumpt

* ctx_test linted, cookieParser schema added

* fix lint errors (Cookie parser #2656)

* removed extra lines, tested return values

---------

Co-authored-by: René Werner <rene.werner@verivox.com>
2023-10-12 10:44:15 +02:00
Jason McNeil b50d91d58e
Merge pull request from GHSA-94w9-97p3-p368
* feat: improved csrf with session support

* fix: double submit cookie

* feat: add warning cookie extractor without session

* feat: add warning CsrfFromCookie SameSite

* fix: use byes.Equal instead

* fix: Overriden CookieName KeyLookup cookie:<name>

* feat: Create helpers.go

* feat: use compareTokens (constant time compare)

* feat: validate cookie to prevent token injection

* refactor: clean up csrf.go

* docs: update comment about Double Submit Cookie

* docs: update docs for CSRF changes

* feat: add DeleteToken

* refactor: no else

* test: add more tests

* refactor: re-order tests

* docs: update safe methods RCF add note

* test: add CSRF_Cookie_Injection_Exploit

* feat: add SingleUseToken config

* test: check for new token

* docs: use warning

* fix: always register type Token

* feat: use UUIDv4

* test: swap in UUIDv4 here too
2023-10-11 14:41:42 +02:00
René Werner 59409f3841 improve sendFile documentation 2023-10-06 11:43:10 +02:00
René Werner 5171f6b505 improve compress middleware documentation 2023-10-05 09:00:11 +02:00
KaptinLin d00f0b8348
feat: add Reset method to Session struct in session middleware (#2654) 2023-10-02 15:19:35 +02:00
KaptinLin d86c257c89
feat: add Delete method to Store struct in session middleware (#2655)
*  feat: add Delete method to Store struct in session middleware

* ♻ refactor: enhance Delete method and test cases in session middleware
2023-10-02 15:19:18 +02:00
M. Efe Çetin a9447a5b49
ctx: change signatures of GetReqHeaders and GetRespHeaders (#2650)
* ctx: change signatures of GetReqHeaders and GetRespHeaders

* fix middlewares
2023-09-28 08:31:31 +02:00
Jimmy Li c0988de91e
📝 middleware: cors: update docs to better explain AllowOriginsFunc (#2652) 2023-09-28 08:28:35 +02:00
M. Efe Çetin e6d6fbe5a8
middleware: cors: allow disabling caching in preflight requests (#2649) 2023-09-27 15:06:24 +02:00
RW e547bea49e
Update cache.md 2023-09-20 09:14:58 +02:00
Jian Lim 35797e6639
📝 Docs: update io/ioutil package to io package (#2589)
Deprecation of io/ioutil
2023-08-22 08:57:00 +02:00
M. Efe Çetin 1dea615ddf
🔥 add config to enable splitting by comma in parsers (#2560)
* 🔥 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
2023-08-21 09:44:02 +02:00
Jacob 892b23bd46
Add custom data property to favicon middleware config (#2579)
* Add custom data property to favicon middleware

* Update favicon middleware docs

* Fix formatting
2023-08-17 15:04:53 +02:00
0bl a50df4fcdd
🩹 Fix: rename WithTlsConfig method to WithTLSConfig (#2570)
* 🩹 Fix: rename WithTlsConfig method to WithTLSConfig

* 🎨 Style: remove stylecheck and revive lint
2023-08-11 07:57:49 +02:00
João Victor Oliveira Couto f29f39b1b3
fix: Decompress request body when multi Content-Encoding sent on request headers (#2555)
* 🔧 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
2023-08-06 17:23:37 +02:00
Muhammed Efe Cetin 75bb02b87e
Merge remote-tracking branch 'origin/master' into v3-beta 2023-08-05 22:02:01 +03:00
M. Efe Çetin e91b02b345
📝 docs: fix wrong JSON docs (#2554) 2023-07-26 13:27:45 +02:00
Renan Bastos 3e5743bcac
doc: Improve *fiber.Client section (#2553)
* wip

* doc: Improve *fiber.Client section

Enhanced the documentation for the *fiber.Client section, providing
a clear and concise example to help users better understand its usage.

* chore: refactor message about example
2023-07-25 20:15:23 +02:00
René Werner 443804e95d improved the config section of the middleware readme´s 2023-07-24 17:03:11 +02:00
RW 51ea636b60
improved the config section of the middleware readme´s (#2552) 2023-07-24 16:46:50 +02:00
Lev Saminskij 5d74725a69
📝 added documentation about ctx Fresh (#2549)
added documentation about ctx Fresh
2023-07-24 15:36:18 +02:00
RW c0116f445f
Update ctx.md
Add hint for references to GetReqHeaders
2023-07-20 16:47:39 +02:00
RW 3b08646abf
Update ctx.md
Add additional documentation for GetRespHeaders
2023-07-20 16:43:49 +02:00
RW f6446ab0b9
Update log.md 2023-07-16 16:18:23 +02:00
f1rstmehul 08099b0635
📚 Docs: Fix link (#2542)
fix link
2023-07-15 20:20:29 +02:00
René Werner 032bde9452 use new template docs in fiber docs 2023-07-08 21:33:15 +02:00
Iliya 5c1e8a9cff
📚 Docs: fix bad documentation on queries function (#2522) 2023-06-27 17:20:50 +02:00
Ruan Heyns f68ec0dfbb
Update ctx.md: Add a warning on security implications when using X-Forwarded-For improperly (#2520)
Update ctx.md

Add a warning on security implications when using X-Forwarded-For improperly
2023-06-26 10:24:50 +02:00
Jiun Lee fefc533834
🚀 Add Logger interface and fiberlog (#2499)
* add log for fiber

* replace log in fiber

* add Log use to adapt for log libraries

* Update app.go

Co-authored-by: Tomás Warynyca <41587659+tomaswarynyca@users.noreply.github.com>

* wip: add log docs

* add WithLogger use to print key and value

* remove CtxLogger and add WithContext use to bind Context

* fix errcheck

* fix errcheck

* update log.md

---------

Co-authored-by: Tomás Warynyca <41587659+tomaswarynyca@users.noreply.github.com>
2023-06-26 08:16:57 +02:00
W. Xiaoyun 040aac94c6
✏️ Fix: typo in ctx.md (#2516)
Fix: typo in ctx.md
2023-06-23 11:44:52 +02:00
RW 1603a148fe
Update logger.md 2023-06-22 13:21:14 +02:00
RW b308b2b7a6
Update logger.md
correct spacings
2023-06-22 13:07:33 +02:00
cmd777 1b060cb150
🩹 Fix: default logger color behaviour (#2513)
* Fix logger colors

* Fix tests
Basically add ˙enableColors: true˙ back to default config
2023-06-22 13:06:37 +02:00
我的名字叫浩仔 3dc9e1df80
🐛 bug: fix docs api fiber custom config (#2510)
fix: docs api fiber custom config

Co-authored-by: haoc <haoc@opera.com>
2023-06-19 12:22:55 +02:00
RW 9bcdb560dc
Update ctx.md 2023-06-19 10:49:25 +02:00
RW 204b01aeb2
Update ctx.md 2023-06-19 10:47:45 +02:00
RW fa5935b7e9
Update ctx.md
reformat queries docu
2023-06-19 10:43:15 +02:00
RW f86423d625
Update ctx.md
reformat ctx.Queries() example
2023-06-19 10:41:53 +02:00
Iliya d87065f5f2
🚀 FEATURE: add queries function (#2475)
* 🚀 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>
2023-06-12 07:51:57 +02:00
Jason McNeil 0f5ffed3cc
🐛fix: update getOffer to consider quality and specificity (#2486)
* feat: getOffer consider q value and specificity

* fix: ignore q=0

* fix: float

* test: client-prefered order and q=0 not acceptable

* fix: always use my insertion sort.

* fix: sort.SliceStable if > 20

* fix: zero allocations

* perf: optimize the sort

* chore: fix lint issue

* fix: consider order

* chore: fix test func name

* chore: fix helper test func name

* chore: revert fix

* perf: use fasthttp.ParseUfloat

* test: GetOffer and SortAcceptedTypes

* chore: remote nil check

* test: sortAcceptedTypes

* fix: use utils.UnsafeBytes

* docs: update docs for fiber PR #2486

* docs: update docs for fiber PR #2486

* test: add test from docs

* fix: yaml
2023-06-07 17:51:45 +02:00
Anzhi 06ef450a8a
🚀 Add DisableColors to set the default output format (#2493)
Add DisableColor for default logger format
2023-06-05 13:20:45 +02:00
leonklingele c56b4e66a0
middleware/adaptor: allow to convert fiber.Ctx to (net/http).Request (#2461) 2023-05-15 13:04:58 +02:00
M. Efe Çetin c7c37d9b50
♻️ refactor: merge some external middlewares to core (#2453)
* ♻️ refactor: merge adaptor, helmet, keyauth, redirect, rewrite middlewares to core

* fix linting issues

* fix linting issues

* fix linting issues

* update
2023-05-10 08:01:49 +02:00
bcd 3c3f12b76c
[Feature]: Add filesystem config contentTypeCharset support (#2438)
* Update filesystem.go

* Update filesystem_test.go

* Update filesystem.md

* fmt
2023-05-02 08:40:20 +02:00
RW ee2b13c8c0
Update timeout.md 2023-04-14 12:18:00 +02:00
cmd777 3b7a7d491b
📚 Docs: Fix import and comma issues (#2410)
Fix import and comma issues
2023-04-13 12:32:39 +08:00
James Lucas 866d5b7628
feat(cors): Added new 'AllowOriginsFunc' function. (#2394)
*  feat(cors): Added new 'AllowOriginsFunc' function.

* feat(cors): Added warning log for when both 'AllowOrigins' and 'AllowOriginsFunc' are set.

* feat(docs): Updated docs to include note about discouraging the use of this function in production workloads.

---------

Co-authored-by: RW <rene@gofiber.io>
2023-04-11 10:24:29 +02:00
cmd777 8b1f9260a3
📚 Docs: Fix typos, and make middleware documentation more consistent (#2408)
Fix typos, and make docs more consistent
This fixes several typos in the ISSUE_TEMPLATES, as well as improve
their readability, also makes the documentation markdowns more
consistent
2023-04-10 10:48:12 +08:00
Hakan Kutluay 22b407e2e7
🐛 [Bug-Fix] add original timeout middleware (#2367)
* add original timeout middleware

* fix linter issues

* deprecate original timeout middleware

* update timeout middleware documentation
2023-04-09 16:05:51 +02:00
Juan C. Yamacho H 562d15db86
🚀 Feature: Public ShutdownWithContext (#2407)
* feat: public shutdown with context

* docs: add server shutdown option

* chore: revert spacing changes

* test: app shutdown with context
2023-04-09 21:08:03 +08:00
Shahriar Sohan 74a9fa96f5
docs: added code link to fiber config fields (#2385)
* docs: added code link to fiber config fields

* docs: added code link to fiber config fields [reference line link updated]

* docs: added code link to fiber config fields [reference line link updated]

* removed reference line link from docs

* docs/api: fix indentation

---------

Co-authored-by: leonklingele <git@leonklingele.de>
2023-04-04 11:12:53 +02:00
Iliya bf31f1f3c6
💊 Change default value of Querybool from true to false. (#2391)
* 🩹 Fix QueryBool function: change default value from true to false

* 📚 Update QueryBool function document

* Update ctx.md

---------

Co-authored-by: RW <rene@gofiber.io>
2023-03-30 13:26:26 +02:00
René Werner c9121189a9 Fix docu 2023-03-24 18:58:15 +01:00
René Werner cc5c793d83 Add documentation for ctx.QueryFloat and ctx.QueryBool 2023-03-24 18:54:09 +01:00
René Werner 1f52799686 Refresh middleware documentation 2023-03-24 13:23:52 +01:00
Kyle Manning 32c3961726
corrected coding typos in MountPath docs section (#2379)
* corrected coding typos in MountPath docs section

* Update app.md

---------

Co-authored-by: Kyle Manning <kyle@manning.jp>
Co-authored-by: M. Efe Çetin <efectn@protonmail.com>
2023-03-22 09:44:36 +03:00
Benjamin Grosse d7b36cde54
🐛 requestid.Config.ContextKey is interface{} (#2369)
requestid.Config.ContextKey is interface{}

Consistent with c.Locals(key inteface{}, ...).
Fixes #2356
2023-03-14 19:37:10 +01:00
RW 0dee42a57c
Update ctx.md ip documentation 2023-03-14 11:24:11 +01:00
Tumushimire Yves 634f163e3f
🚀 [Feature]: SessionOnly when cookie.Expires is 0 (#2152)
* feature: session only for zero expire cookie #2145

* refactor condition to set MaxAge and Expire on cookie

* move checking zero maxage and expire in session middleware

Signed-off-by: Yves Tumushimire <yvestumushimire@gmail.com>

* feature: session only for zero expire cookie #2145

* refactor condition to set MaxAge and Expire on cookie

* move checking zero maxage and expire in session middleware

Signed-off-by: Yves Tumushimire <yvestumushimire@gmail.com>

* CR changes

* some updates

---------

Signed-off-by: Yves Tumushimire <yvestumushimire@gmail.com>
Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
Co-authored-by: René Werner <rene.werner@verivox.com>
2023-03-12 19:14:22 +01:00
Muhammed Efe Çetin 15e9235383
📝 docs: remove README.mds from middleware dirs 2023-03-06 16:42:35 +03:00
lublak 2e7e879d6f
feature: allow preloaded certs with prefork (#2351)
* allow preloaded certs with prefork

* add to documentation

* add comments for ListenMutualTLSWithCertificate

* add test for WithCertificate

* Update benchmark.yml

* Update benchmark.yml

* Update benchmark.yml

* Update benchmark.yml

* Update benchmark.yml

* Update benchmark.yml

---------

Co-authored-by: RW <rene@gofiber.io>
2023-03-06 12:03:41 +01:00
René Werner f6b5ed6d26 update proxy docs 2023-02-25 10:57:12 +01:00
René Werner 35e6825614 update proxy docs 2023-02-25 10:55:27 +01:00
M. Efe Çetin a1eb0e69a6
📝 docs: fix example on envvar middleware 2023-02-25 12:43:57 +03:00
M. Efe Çetin b3643198f8
📝 docs: automated synchronization with `gofiber/docs` (#2344)
Automated Synchronization with gofiber/docs repo
2023-02-25 10:29:07 +01:00