Commit Graph

1337 Commits

Author SHA1 Message Date
kiyon c3cd5e1554 Export HostClient.connsCount (#981)
Export HostClient.connsCount
2021-02-25 13:57:48 +01:00
Seva Maltsev a4b0703152 Implemented DisablePathNormalizing in PipelineClient (#977) 2021-02-24 20:48:34 +01:00
Mike Faraponov 0880335533 Update compress.go (#978)
Add compatibility with flate.Reader to reduce allocations of bufio.NewReader structs backed by default size slices.
2021-02-24 20:43:56 +01:00
Mike Faraponov e7294d2f70 Update client.go (#979) 2021-02-24 20:42:24 +01:00
kiyon 62dfc528ef Fix Client ms cleaner (#975)
* Improve documentation about DelClientCookie which related with #951.

* Fix ms cleaner in Client
2021-02-22 20:19:50 +01:00
Erik Dubbelboer 3cd0862fbb Streaming fixes (#970)
- Allow DisablePreParseMultipartForm in combination with
StreamRequestBody.
- Support streaming into MultipartForm instead of reading the whole body
  first.
- Support calling ctx.PostBody() when streaming is enabled.
v1.21.0
2021-02-16 21:53:53 +01:00
Darío 1b61ca2e36 Added Protocol() as a replacement of hardcoded strHTTP11 (#969)
* Added Protocol() as a replacement of hardcoded strHTTP11

* Applied review changes

* Modify h.proto in parseFirstLine
2021-02-16 21:53:40 +01:00
ZhangYunHao 52a8ab65e2 fix s2b go vet warning (#967) 2021-02-12 10:47:38 +01:00
AlphaBaby a88030b8fb fix gracefilly shutdown bug, issue #958 (#960)
* fix gracefilly shutdown bug, issue #958

* fix golangci-lint

* add option: CloseOnShutdown into Sever

* Update server.go

Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>

* Update server.go

Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>

Co-authored-by: fujianhao3 <fujianhao3@jd.com>
Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>
v1.20.0
2021-02-07 21:13:36 +01:00
Erik Dubbelboer 1494fdc53b Fix clientGetURLDeadline
Based on https://github.com/valyala/fasthttp/pull/962
Make sure req is always released and fix a race condition.
2021-02-07 20:25:33 +01:00
Kirill Danshin 0956208cc6 Add request body streaming. Fixes #622 (#911)
* Add request body streaming. Fixes #622
* Add test cases for StreamRequestBody

Co-authored-by: Kiyon <kiyonlin@163.com>
Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>
Co-authored-by: Fiber
2021-02-06 23:03:23 +03:00
Erik Dubbelboer fbe6a2d470 Add fasthttp.GenerateTestCertificate and use in tests
Remove ssl-cert-snakeoil so our tests don't fail in 2025.
2021-02-06 11:47:11 +01:00
Erik Dubbelboer 838d3abc3d Allow concurrent ServeTLS 2021-02-06 10:53:30 +01:00
Erik Dubbelboer 3cec26d42d Allow stopping FS handler cleanup gorountine (#942)
* Allow stopping FS handler cleanup gorountine

* CleanStop
2021-02-06 10:22:14 +01:00
Erik Dubbelboer ed1cedd51e Fix race condition in Client.DoTimeout 2021-02-06 10:20:15 +01:00
kiyon 5661df8bbd Improve documentation about DelClientCookie which related with #951. (#956) 2021-01-27 17:18:23 +01:00
Mike Faraponov b4b40e9363 Do not start connsCleaner on SetConnectionClosed requests. (#950)
* Update client.go

* Update client.go
2021-01-22 22:22:19 +01:00
Erik Dubbelboer 70e00dc4f3 Ignore empty Transfer-Encoding headers
Don't default to chunked. If we have a Content-Length header we have a fixed body.
2021-01-06 19:18:12 +01:00
anshul-jain-aws 6234776e7c Use QueryString while constructing RequestURI instead of QueryArgs if parsedQueryArgs is set to false (#937) v1.19.0 2021-01-02 21:14:25 +01:00
Erik Dubbelboer 245e7ecded CloseIdleConnections should also close TLS connections 2020-12-31 11:37:29 +01:00
Erik Dubbelboer bd3513389d Always set Keepalive options
Different versions of Go have different defaults, so we just always set
what the user configured.
2020-12-26 17:01:19 +01:00
Erik Dubbelboer 4e63057c0f Make argsKV more predictable
Fixes #932
2020-12-26 16:53:48 +01:00
Kirill Danshin d0dfbd4494 fix issue #875 (#909)
* 🐞 panic in fs.go #824

* fix issue #875

Signed-off-by: Kirill Danshin <kirill@danshin.pro>

* improve issue 875

Co-authored-by: Fenny <fenny@gofiber.io>

* Update header.go

* Update header.go

Co-authored-by: Kirill Danshin <kirill@danshin.pro>

* remove foldReplacer

* Improve removeNewLines

Start replacing at the first character found, use bytes.Indexbyte to
make the function signature more logical. Both bytes.indexByte and
strings.IndexByte use exactly the same code:
https://github.com/golang/go/blob/0c703b37dffe74d3fffc04347884bb0ee2fba5b3/src/internal/bytealg/indexbyte_amd64.s#L8-L20

Co-authored-by: wernerr <rene.werner@verivox.com>
Co-authored-by: wernerr <rene@gofiber.io>
Co-authored-by: Fenny <fenny@gofiber.io>
Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>
v1.18.0
2020-12-09 16:59:57 +01:00
Daniel Kürner ec4aa43642 (header) do case insensitive lookup of cookie header value (#925)
Since some proxies might send i.e. a lowercase cookie header value, let´s do the lookup in a case insensitive way
2020-12-08 17:26:25 +01:00
anshul-jain-aws f710c2d320 Fixing deletion of headers/queryargs having multiple values. (#918) 2020-11-24 09:18:38 +01:00
kiyon cb0aaaa266 Improve round2 performance (#914) 2020-11-19 17:52:42 +01:00
Shohi Wang c2542e5acf add nil check for LocalAddr (#907) 2020-11-07 08:39:47 +01:00
asellappen 30aa43e12a Adding Power support(ppc64le) with continuous integration/testing to the project for architecture independent (#903)
* Adding Power support(ppc64le) with continuous integration/testing to the project for architecture independent

* Adding ower on support to the package as CI

removed comment Adding power on support ,Pls merge now
2020-11-06 15:25:20 +01:00
Erik Dubbelboer df87e7089a Fix race condition in TestCloseIdleConnections
On really slow machines. when the test takes longer than 10 seconds,
mCleaner can already delete the connection from the map before we
check it again.
2020-11-06 12:00:12 +01:00
Erik Dubbelboer 74bd13a169 Add ppc64le support v1.17.0 2020-11-05 09:32:07 +01:00
Erik Dubbelboer 00973e5c0a Don't use %w
We support versions of Go that don't have this yet.
2020-11-03 20:43:44 +01:00
Maxim Korolyov d7752d2a70 fixed default schema for for req url (#897) 2020-11-02 22:24:57 +01:00
Erik Dubbelboer ce7b94fee9 Add Request.SetBodyRaw
Fixes https://github.com/valyala/fasthttp/issues/891
2020-11-02 22:22:01 +01:00
Erik Dubbelboer d71fc6c2c0 Ignore *.fasthttp.br files from tests 2020-11-02 22:21:43 +01:00
Maxim Korolyov 9697ccb834 Added httpproxy v2 (#889)
* httpproxy v2 with improved auth barrier storage and full https proxy support

* fixed package name

* moved back the env proxy
2020-10-29 21:05:59 +01:00
Mohammad Alian 9ed328c168 remove unnecessary type conversion (#890)
Co-authored-by: Mohammad Alian <ts-mohammad.alian@rakuten.com>
2020-10-29 20:53:41 +01:00
Maxim Korolyov 4eac1ae470 Added proxy from env support (#885)
* added proxy from env support

* fixed package name

* fixed err wrapping

* evoid 2 err wrapping in the same format
2020-10-25 14:46:54 +01:00
Vitali Pikulik 56775f4d9f tryDial timeout (#881)
* Change tryDial to handle timeout correctly

* fasthttpproxy/http.go accepts timeout

* Fix example doc

Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>

* Improve import in httpproxy

* Simplify tryDial

* Cleanup

* Wait for concurrencyCh

Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>
2020-10-03 09:44:36 +02:00
hex0x00 805af0ee73 Brotli support in FS handler. (#880)
* Add files via upload

* Update fs.go

* Add files via upload

* Update fs_test.go
2020-09-28 17:14:28 +02:00
Erik Dubbelboer ae8b65fa62 Add Client.CloseIdleConnections() 2020-09-13 13:58:13 +02:00
Vitali Pikulik aa3f96c883 Git commit fix URI parse for urls like host.dm?some/path/to/file (#866) 2020-08-21 16:21:23 +02:00
Erik Dubbelboer 434c48ba7e Travis doesn't seem to support tip anymore v1.16.0 2020-08-16 11:35:22 +02:00
Erik Dubbelboer 12aba62b7b Change CI to use Go 1.15 2020-08-16 10:52:49 +02:00
Erik Dubbelboer 01acd76daf Allow TimeoutHandler connections to be kept alive (#864) 2020-08-16 09:21:00 +02:00
Erik Dubbelboer a995d43d9c Add EnableNormalizing to RequestHeader and ResponseHeader 2020-08-16 09:18:05 +02:00
sky cc8ba4b5a3 Add a api DisableNoDefaultContentType to disable add default content type. (#859)
* Add api DisableNoDefaultContentType to disable add default contentype if no Content-Type header.

* Update test case.

* Update api name.

* Update header.go

Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>

Co-authored-by: Erik Dubbelboer <erik@dubbelboer.com>
2020-08-07 17:38:59 +02:00
kiyon 2509c12e77 improve statusLine and StatusMessage by using slice instead of map (#855)
* 🚀 improve statusLine and StatusMessage by using slice instead of map

Co-authored-by: Fenny <fenny@gofiber.io>
Co-authored-by: ReneWerner87 <rene@gofiber.io>

* for cli stuff

* make invalidStatusLine() just return the formatted line

* for ci stuff

Co-authored-by: Fenny <fenny@gofiber.io>
Co-authored-by: ReneWerner87 <rene@gofiber.io>
2020-08-02 19:18:57 +02:00
So-chiru a7c7ef2367 Fix comment typo 2020-08-02 12:33:42 +02:00
Erik Dubbelboer 34a61fe63f Update linting (#851) 2020-07-17 14:22:28 +02:00
Erik Dubbelboer 4cffe1a510 Use a directory we are sure to exist for tests v1.15.1 2020-07-15 11:29:34 +02:00