3305 Commits

Author SHA1 Message Date
Muhammed Efe Çetin
319b8ea3a8
Merge remote-tracking branch 'origin/master' into v3-beta 2022-09-03 23:56:45 +03:00
Fufu
87faeda5c1
🐛 Fix: EnvVar middleware parses base64 incorrectly (#2069)
* Fix: EnvVar middleware parses base64 incorrectly

* Chore: fix typo in README.md

* Chore: standardize and simplify response
2022-09-03 19:03:51 +02:00
Amir Hossein
b7500a8d08
unhandled error in hooks test (#2070)
* 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
2022-09-02 08:01:55 +02:00
RW
1f18ae3549
prepare release v2.37.0 v2.37.0 2022-08-30 18:30:41 +02:00
RW
ec96d161a0
Fix csrf middleware behavior with header key lookup (#2063)
* 🐛 [Bug]: Strange CSRF middleware behavior with header KeyLookup configuration #2045
2022-08-30 14:48:31 +02:00
Carlos García Rosales
6026560c93
Sugerencia de cambios en traducción al español (#2064)
Saludos soy de Perú y me gustaría contribuir con una traducción más precisa al español mi lenguaje nativo.
2022-08-30 14:44:44 +02:00
M. Efe Çetin
cbfcac2c0a
🐛 bug: remove prefork support from custom listeners (#2060)
* 🐛 bug: remove prefork support from custom listeners

* Update listen_test.go
2022-08-30 13:01:24 +02:00
M. Efe Çetin
e72ea32dd2
🐛 bug: fix regex constraints (#2059) 2022-08-30 08:40:58 +02:00
Amir Hossein
349772d69a
fix unhandled errors and remove unused parameter (#2061)
* 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
2022-08-30 08:38:16 +02:00
RW
0ebc9113d5
Update README.md 2022-08-30 08:36:17 +02:00
Emre Savcı
d9257c2c1d
🚀 [Feature]: add envvar expose middleware (#2054)
* add envvar expose middleware

* fix readme remove redundant word

* change hard coded json marshal to app config marshaller

* update readme

* update all lang readme

* change t.setenv to os.setenv as backward compability reason

* change io.readall to ioutil.readall

* Update envvar.go

* remove get method that only used in test

* remove unused method from envvar struct

* remove path variable from config, update readme, add new test case

Co-authored-by: RW <rene@gofiber.io>
2022-08-30 08:30:13 +02:00
Amir Hossein
0734c9d3fc
🔍 fix unhandled errors in helpers_test.go (#2058)
* 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
2022-08-29 14:12:12 +02:00
Jason McNeil
6272d759eb
🚀 [Feature]: middleware/csrf custom extractor (#2052)
* feat(middleware/csrf): allow custom Extractor

* test: update Test_CSRF_From_Custom

* docs: add comma

* docs: update KeyLookup docs
2022-08-28 18:57:47 +02:00
Amir Hossein
506f0b21c5
fix unhandled error in common_linux.go (#2056)
* 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
2022-08-28 18:45:56 +02:00
Amir Hossein
b86f79eca4
handle file error on closing (#2050)
* 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
2022-08-26 15:46:45 +02:00
M. Efe Çetin
aef7ea53b3
🐛 bug: fix route constraints problems (#2033)
* 🐛 bug: fix route constraints problems

* escape support for data

* exactLen -> len
2022-08-26 14:16:06 +02:00
Amir Hossein
ffb2d4cb1a
fix unhandled error in cache package tests (#2049)
* 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
2022-08-26 14:10:46 +02:00
Amir Hossein
01ea139da4
🔎 fix unhandled errors (#2048)
fix unhandled errors
2022-08-26 12:02:46 +02:00
Muhammed Efe Çetin
235ff1649c
📝 docs: convert gitter, telegram links to discord 2022-08-25 19:27:15 +03:00
GalvinGao
b970457109
docs: change support claim up to go 1.19 (#2043) 2022-08-24 14:09:33 +02:00
micziz
6c6661a32d
📝 docs: Update Italian readme (#2042)
Update README_it.md
2022-08-24 13:50:45 +03:00
M. Efe Çetin
4d28b1e200
🐛 bug: make tlsHandler public to use it with Listener (#2034)
* 🐛 bug: ClientHelloInfo support for app.Listener

* 🐛 bug: ClientHelloInfo support for app.Listener

* fix

* make tlshandler public

* update

* 🐛 bug: make tlsHandler public to use it with Listener #2034

Co-authored-by: wernerr <rene@gofiber.io>
2022-08-24 09:47:37 +02:00
Jinquan Wang
9c98a1fb37
🐛 bug: Case sensitivity for parameters in GetRouteURL (#2010)
* 🐛 bug: Case sensitivity for parameters in GetRouteURL

* ✏️ perf: error spell
2022-08-24 09:16:19 +02:00
George Bolo
8540d0afdc
fixes #2016 - make IP() and IPs() more reliable (#2020)
* fixes #2016 - make IP() and IPs() more reliable

* improve the performance of IP validation functionality

* refactor IP validation and make it a configuration option
2022-08-23 08:32:21 +02:00
wernerr
f9e87097ab Improve pull request template 2022-08-22 08:53:22 +02:00
wernerr
917263c9e4 Improve pull request template 2022-08-22 08:47:55 +02:00
Trim21
80a6fdc215
client: fix Agent use after free (#2037)
* fix

* fix

* fix
2022-08-22 08:01:40 +02:00
Trim21
c964fda009
v3(tests): use testify for assertion (#2036)
* replace

* write

* rewrite more

* rewrite

* rewrite

* fix

* rewrite
2022-08-22 07:57:10 +02:00
Trim21
b161f805c2
v3(enhancement): remove utils.Trim* (#2030)
stdlib functions have same performance in go1.19
2022-08-20 13:52:09 +08:00
Trim21
73d0b712c8
v3 (enhancement): add []byte support to utils.EqualFold (#2029)
* EqualFold

* add comment
2022-08-19 16:39:52 +02:00
Jinquan Wang
32d311cd59
🐛 monitor middleware - fix ignore custom settings (#2024)
* 🐛 fix: ignore custom settings

* 🐛 fix: ignore custom settings

*  chore: add tests for config default
2022-08-19 15:09:16 +02:00
Muhammed Efe Çetin
4105b008c2
Merge remote-tracking branch 'origin/master' into v3-beta 2022-08-19 14:33:31 +03:00
Tushar Dahiya
1fec8757c4
Update README.md 📝 (#2023)
Update README.md

Grammatical Error
2022-08-19 08:20:33 +02:00
Gökhan Özeloğlu
4adda508b0
v3 (feature): add retry mechanism (#1972)
* v3-retry-mechanism: Add retry mechanism

* General logic is implemented.

* Unit tests are added.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* Refactor test assertion

* Replaced testify/assert with fiber's assert.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* Add test for next method

* currentInterval bug is fixed in Retry.

* If condition is fixed in next.

* struct definition refactored and if condtion is removed in TestExponentialBackoff_Retry.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* Add config for retry.

* Constant variables are removed.

* Helper function is added for default.

* Helper function is used in New function.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* Replace math/rand with crypto/rand

* Random number generation package has been replaced with more secure one,
crypto/rand.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* Add a README for retry middleware

* Explanation and examples are added.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* Add comment line for documentation

* Comment lines are added for ExponentialBackoff variables.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* Run go mod tidy

* Unused package(s) removed.

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>

* move middleware -> addon

Signed-off-by: Gökhan Özeloğlu <gokhan.ozeloglu@deliveryhero.com>
Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
2022-08-19 08:20:14 +02:00
Thomas
2edcf95f57
update: tls.ClientHelloInfo in Ctx (#2011)
* Update go.mod

* wip

* wip

* wip

* wip

* wip

* Move tlsHandler from Config to App

* Use NewError instead of panic

* Add a test with ServerName

* Add some tests on ClientHelloInfo

* fix missing import

* remove unnecessary ctx field.

Co-authored-by: RW <rene@gofiber.io>
Co-authored-by: Muhammed Efe Çetin <efectn@protonmail.com>
2022-08-19 08:19:22 +02:00
RW
f031e08d18
prepare release 2.37.0-rc.1 v2.37.0-rc.1 2022-08-18 16:29:52 +02:00
Muhammed Efe Çetin
cadd6014bb
v3: cleanup & update deps 2022-08-17 23:01:59 +03:00
dependabot[bot]
648e662cc5
Bump github.com/valyala/fasthttp from 1.38.0 to 1.39.0 (#2017)
Bumps [github.com/valyala/fasthttp](https://github.com/valyala/fasthttp) from 1.38.0 to 1.39.0.
- [Release notes](https://github.com/valyala/fasthttp/releases)
- [Commits](https://github.com/valyala/fasthttp/compare/v1.38.0...v1.39.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-08-17 13:26:39 +02:00
M. Efe Çetin
aa4d2c3f65
📝 docs: make Hooks public (#2015) 2022-08-16 08:13:38 +02:00
M. Efe Çetin
2517944c80
feature: route constraints (#1998)
* Segment parameters constraints and determining it's type

* add parsing for constraints.

* fix tests

* add tests, benchs & some fixes.

* fix regex & datetime tests.

* clean up constraint parser, multiple constraint support.

* update

* regex customization.

* constants, remove variadic methods.

* add some benchs, refactor constraint check funtion.

* more readable conditions

* fix tests

* precompile regex

* precompile regex when parsing the route

* update comments
Co-authored-by: wernerr <rene@gofiber.io>

Co-authored-by: Mohab Abd El-Dayem <mohab.m.mohamed@gmail.com>
Co-authored-by: RW <rene@gofiber.io>
2022-08-16 08:05:50 +02:00
M. Efe Çetin
95abdacba0
feature: add XML to context. (#2003)
*  feature: add XML to context.

* Update app.go
2022-08-16 08:05:35 +02:00
M. Efe Çetin
6669ec4486
📝 docs: gofmt & add missing copyright texts (#2013) 2022-08-15 20:25:26 +02:00
Muhammed Efe Çetin
28f1df4246
v3: fix Benchmark_AcquireCtx benchmark 2022-08-15 18:27:06 +03:00
Jinquan Wang
e8a2ba363c
🐛 bug: fix proxy overwrote the wrong scheme (#2004)
* 🐛 bug: fix proxy overwrote the wrong scheme

*  fix: fix io not exist in go1.14
2022-08-09 16:14:41 +02:00
Muhammed Efe Çetin
f3067c14b3
🔥 v3: remove monitor middleware from core to reduce deps 2022-08-08 11:22:28 +03:00
Muhammed Efe Çetin
9af3c21b7a
👷 v3 (ci): fix tests 2022-08-08 11:19:57 +03:00
Muhammed Efe Çetin
1512053c97
v3: optimize binding (reduce 1 alloc) 2022-08-08 11:16:05 +03:00
M. Efe Çetin
406ab3177f
v3: fix undefined function 2022-08-08 10:21:51 +03:00
M. Efe Çetin
eacde70294
v3 (feature): initial support for binding (#1981)
*  v3 (feature): initial support for binding

*  v3 (feature): initial support for binding #1981
use pointer/references instead of copies

*  v3 (feature): initial support for binding
embed bind into the ctx

*  v3 (feature): initial support for binding
- add URI binder.

*  v3 (feature): initial support for binding
- add response header binder.

*  v3 (feature): initial support for binding
- add response header binder.

*  v3 (feature): initial support for binding
- add cookie binder.

*  v3 (feature): initial support for binding
- custom binder support for body binding.
- test case for custom binder.

*  v3 (feature): initial support for binding
- add map[string][]string & map[string]string support for binders.

*  v3 (feature): initial support for binding
- fix Test_Bind_Header_Map

*  v3 (feature): initial support for binding
- Functional Should/Must

*  v3 (feature): initial support for binding
- custom struct validator support.

*  v3 (feature): initial support for binding
- README for binding.
- Docs for binding methods.

*  v3 (feature): initial support for binding
- Bind() -> BindVars(), Binding() -> Bind()

*  v3 (feature): initial support for binding
- fix doc problems

*  v3 (feature): initial support for binding
- fix doc problems

Co-authored-by: wernerr <rene@gofiber.io>
2022-08-08 09:16:08 +02:00
M. Efe Çetin
41159296f3
v3: revert " v3 (feature): use any as default Message type of Error struct (#1925)" (#2000)
Revert " v3 (feature): use any as default Message type of Error struct (#1925)"
2022-08-08 08:21:00 +02:00