3846 Commits

Author SHA1 Message Date
leonklingele
a0645af1ed
Fix and optimize memory storage (#2207)
* internal/memory: cache timestamp

* internal/memory: ensure to never delete non-expired items

This fixes a TOCTOU problem between a mutex rlock and a mutex lock.

* internal/memory: move costly operations outside of locked area

* internal/storage: cache timestamp

* internal/storage: ensure to never delete non-expired items

This fixes a TOCTOU problem between a mutex rlock and a mutex lock.

* internal/storage: move costly operations outside of locked area
2022-11-14 08:21:03 +01:00
M. Efe Çetin
e5ae764139
🧹 update: replace UnsafeBytes util with suggested way (#2204) 2022-11-13 16:58:42 +01:00
M. Efe Çetin
8aeb147c75
feature: add multiple-prefix support to app.Use() and group.Use() (#2205) 2022-11-13 16:56:34 +01:00
hs son
20109922aa
Add korean translate in Installation section (#2213) 2022-11-13 15:39:15 +03:00
Muhammed Efe Çetin
73b43cc93e
🧹 v3 (chore): replace dictpool with sync.Map 2022-11-12 11:50:02 +03:00
leonklingele
5cac575ad0
utils: reduce diff to external utils package (#2206)
f33fd2c5f7/bytes.go
2022-11-12 08:27:57 +01:00
Muhammed Efe Çetin
938e0fcea4
♻️ sync other langs with README.md 2022-11-12 09:26:47 +03:00
leonklingele
4d562923aa
README: update list of third-party library licenses (#2211) 2022-11-12 09:10:07 +03:00
leonklingele
e388e0edb3
Update HTTP status codes (#2203)
* helpers: add HTTP status code 306

* helpers: show numeric HTTP status code instead of status code RFC next to errors

* utils: add HTTP status code 425

* helpers,utils: update list of HTTP status codes
2022-11-11 08:40:37 +01:00
Rafi Muhammad
878c9549d8
Feat: Register custom methods (#2107)
* Implementing register custom methods

* Return timout time to 1000

* Update app_test.go

* Change update stack to add custom request method

* Feat: Register custom methods #2107

* Feat: Register custom methods #2107

* update logic

* optimization.

* fix

Co-authored-by: Rafi Muhammad <rafi.muhammad@mekari.com>
Co-authored-by: RW <rene@gofiber.io>
Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
2022-11-11 08:23:30 +01:00
M. Efe Çetin
581af0052d
🐛 bug: fix naming of routes inside groups (#2199)
* 🐛 bug: fix naming of routes inside groups

* fix tests

* bug: fix naming of routes inside groups

Co-authored-by: René Werner <rene@gofiber.io>
2022-11-09 16:03:16 +01:00
Glenn Lewis
13247206ab
Add URL prefix to pprof middleware (#2194)
* Add URL prefix to pprof middleware

Signed-off-by: Glenn Lewis <6598971+gmlewis@users.noreply.github.com>

* Minor tweak

Signed-off-by: Glenn Lewis <6598971+gmlewis@users.noreply.github.com>

Signed-off-by: Glenn Lewis <6598971+gmlewis@users.noreply.github.com>
2022-11-09 07:59:33 +01:00
skyenought
55fcddda6f
📝 Update README_zh-CN.md (#2186) 2022-11-09 07:56:58 +01:00
kinggo
486f3709ed
ci: add check-latest param in vulncheck.yml (#2197)
ci: add check-latest param
2022-11-08 14:20:14 +01:00
Eren BALCI
24fd165660
v3 (feature): new mounting system (#2022)
* 🔥 chore: removed mount from router

*  feat: new mounting system

*  feat: mount for group

*  test: updated and improve for new mount system

* ♻️ refactor: better variable name

* ♻️ refactor: better function naming

* 🐛 fix: not mounted check

*  test: update onmount test if sub app is not mounted to parent

* 🎨 perf: fix allocs problem

*  test: add benchmark for MountPath

*  feat: access to app's mountpath

*  test: remove parent app's mountpath test

* remove some parts

* add comment

* fix

Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
Co-authored-by: RW <rene@gofiber.io>
2022-11-03 10:55:31 +01:00
M. Efe Çetin
87cedc2022
👷 ci: replace snyk with govulncheck (#2178) 2022-11-01 08:50:33 +01:00
James R T
c63a569a92
🚀 [Feature]: Allow optional params with route constraints (#2179)
Signed-off-by: James R T <jamestiotio@gmail.com>

Signed-off-by: James R T <jamestiotio@gmail.com>
2022-11-01 08:49:44 +01:00
pj
709e0952e2
v3 (feature): router interface changes (#2176)
* Add(methods []string, path string, handlers ...Handler) Router

* - proposed Router interface changes

Co-authored-by: rocketlaunchr-cto <rocketlaunchr.cloud@gmail.com>
2022-11-01 08:45:43 +01:00
Andy Pan
24a6170323
♻️ Leverage runtime/debug to print the full stack trace info (#2183) 2022-10-31 15:12:43 +01:00
Kris Carr
f26d9b1d4e
v3 (deps): update to use gofiber/utils/v2 (#2184) 2022-10-31 16:44:53 +03:00
Muhammed Efe Çetin
543e8bb7ea
v3: fix tests 2022-10-28 18:19:02 +03:00
Muhammed Efe Çetin
9428befb9c
Merge remote-tracking branch 'origin/master' into v3-beta 2022-10-28 17:26:17 +03:00
pj
ff4602980a
- update Locals function to accept interface{} key (#2144)
- update Locals function to accept interface{} key (Requires new version of fasthttp)

Co-authored-by: rocketlaunchr-cto <rocketlaunchr.cloud@gmail.com>
2022-10-27 07:51:08 +02:00
dependabot[bot]
fd5045edf9
Bump github.com/valyala/fasthttp from 1.40.0 to 1.41.0 (#2171)
Bumps [github.com/valyala/fasthttp](https://github.com/valyala/fasthttp) from 1.40.0 to 1.41.0.
- [Release notes](https://github.com/valyala/fasthttp/releases)
- [Commits](https://github.com/valyala/fasthttp/compare/v1.40.0...v1.41.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>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-26 12:16:49 +02:00
M. Efe Çetin
691d2e6ad5
🗑️ deprecate: go 1.14 & go 1.15 support deprecation (#2172)
* 🗑️ deprecate: go 1.14 & go 1.15 support deprecation
https://github.com/valyala/fasthttp/pull/1379

* fix tests
2022-10-26 11:51:50 +02:00
Diego Parisi
eb692727c5
✏️ Fix: comment typo (#2173)
Just a typo

I think there's a typo "unmashal" for "unmarshal"
2022-10-25 19:05:57 +03:00
marcmartin13
4d584c9c9b
📝 Cache readme and docs update (#2169)
* Update README.md

* update no-store request directive

added cache status unreachable

* Update cache.go
2022-10-25 07:52:28 +02:00
M. Efe Çetin
156b81c768
🐛 bug: improve mounting behavior (#2120)
* 🐛 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
2022-10-25 07:51:44 +02:00
RW
5b1885a44c
prepare release 2.39.0 v2.39.0 2022-10-23 10:01:35 +02:00
marcmartin13
c187c6a2f5
🚀 [Feature]: Cache-Control: no-cache (#2159)
* Added noCache field

Check if the request header Cache-Control contains no-cache

* Update cache.go

* Update config.go

* Update cache.go

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1

* patch-1
2022-10-21 10:28:31 +02:00
kinggo
5fb93fdff6
🐛 fix: multi-byte AppName displays confusion (#2148)
fix: solve wrong print width
2022-10-21 08:30:56 +02:00
José Roberto Vasconcelos
917c937c76
[Bug] Fix query string parameter pass to fiber context (#2164)
* Remove dump to keep querystring param when test

* Remove unused import
2022-10-20 20:42:06 +02:00
RW
ce2d087394
Improve memory storage (#2162)
* improve memory storage code and performance

* improve memory storage code and performance

* improve memory storage code and performance

* improve memory storage code and performance

* improve memory storage code and performance

* improve memory storage code and performance
2022-10-19 16:22:42 +02:00
sadfun
5316f0823d
🚀 Make IP validation 2x faster (#2158)
* 🚀 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 😳
2022-10-18 11:59:23 +02:00
Supakorn Wongsawang
709b132dca
🩹 Fix: handle multiple X-Forwarded header (#2154)
* fix: handle multiple XForwarded

* fix: use strings.Index instead of strings.Split

Co-authored-by: Supakorn Wongsawang <supakorn.wongsawang@agoda.com>
2022-10-18 11:23:35 +02:00
kinggo
2b7a632a19
style: update logger's comment (#2157) 2022-10-17 18:42:05 +03:00
kinggo
d275091a2f
🐛 fix: solve data race in middleware/proxy's test (#2153)
fix: solve data race in middleware/proxy's test
2022-10-17 17:20:41 +02:00
xbt573
a023fc2947
🐛 Fix: Reset d.Data instead of deleting keys in it (#2156)
🐛 Reset d.Data instead of deleting keys in it
2022-10-17 16:30:34 +02:00
Dio Rovelino
f3c7c424b7
Update ReadmeID (#2150) 2022-10-11 09:52:00 +03:00
Soham Sen
9a6002056c
Switch to text/javascript as per RFC9239 (#2146)
* Switch to text/javascript as per RFC9239

* Add deprecated flag to application/javascript
2022-10-10 14:29:51 +02:00
M. Efe Çetin
23b817083b
v3: fix benchmark results related to handler, next (#2130) 2022-10-10 12:59:19 +02:00
M. Efe Çetin
925d5d03dc
📝 docs: add doc about usage of CSRF and EncryptCookie middlewares. (#2141) 2022-10-06 07:54:29 +02:00
Nathan Faucett
6a5fc64edd
add CacheControl to Static config (#2140)
* add CacheControl to Static config

* change config name to ModifyResponse

Co-authored-by: Nathan Faucett <nfaucett@utility.com>
2022-10-05 18:14:37 +02:00
kinggo
00ebb216d4
test: add nil jsonDecoder test case (#2139)
test: add nil jsonDecoder test case
2022-10-05 15:46:14 +02:00
leonklingele
902e30efb6
utils: update mime extensions (#2133) 2022-10-05 09:10:20 +02:00
RW
2a3ee9ca41
fix - agent.Struct fails to unmarshal response since 2.33.0 #2134 (#2137) 2022-10-05 09:04:29 +02:00
Ilhan
e85a29abf3
📝 docs: Update language count (#2131) 2022-10-01 10:23:47 +03:00
Muhammed Efe Çetin
7fb50f11f6
✏️ v3 : replace utils.AssertEqual with require in filesystem mw tests 2022-09-30 18:34:38 +03:00
M. Efe Çetin
668b0c85f8
v3 (enhancement): refactor filesystem middleware with io/fs (#2027)
*  v3 (feature): refactor filesystem middleware with `io/fs`

* update docs

* attachment support.

* fix
2022-09-29 08:28:52 +02:00
kinggo
8e8ad95079
feat: support to set client in proxy mw (#2117)
optimize: add WithClient
2022-09-28 14:27:58 +02:00