aboutsummaryrefslogtreecommitdiff
path: root/streaming_test.go
AgeCommit message (Collapse)AuthorFilesLines
2023-11-24Enable wastedassign, whitespace linters; fix issues (#1665)Gravatar Oleksandr Redko 1-1/+1
2022-09-15Deprecate Go 1.15 (#1379)Gravatar Aoang 1-5/+5
* Dropping support for 1.15. * Replaces Go 1.16 Deprecated functions * Update test build flag * Fix import sort and comment * Update github.com/klauspost/compress to v1.15.9 https://github.com/klauspost/compress improved performance and changed Minimum version is 1.16, this should be the final supported release for Go 1.16 (https://github.com/klauspost/compress/commit/6d0019a95afa3221f7522d1f2eed0033b5e79470) .
2022-04-01Use %v for errors and %q for strings (#1262)v1.35.0Gravatar Erik Dubbelboer 1-20/+20
Mostly in tests.
2021-12-05Add trailer support (#1165)Gravatar ichx 1-1/+66
* Add trailer support * fix issue and add documentation * remove redundant code * add error return for add/set trailer method * fix lint error * fix bad trailer error return issue and update bad content-length error * update errNonNumericChars * update errNonNumericChars * fix issue about error and fix typo
2021-06-18Lower go test timeGravatar Erik Dubbelboer 1-0/+2
2021-05-04Fix chunked streaming (#1015)Gravatar Roman Khimov 1-45/+15
* http: refactor out crlf reading function Make it a bit simpler and make it reusable. * streaming: fix chunked stream test This test is supposed to check for stream unchunking, but it's not really effective with that because chunks created by createChunkedBody() get wrapped into another chunk by writeBodyStream(), so we end up with chunkedBody in request handler although what we really want is plain body. Deduplicate test and benchmark also. * streaming: fix Read interface It wasn't actually compatible with io.Reader as io.Reader _never_ returns n > len(p) while this function easily did that for chunked payloads confusing its users: panic: runtime error: slice bounds out of range [:528] with capacity 512 goroutine 562 [running]: io.ReadAll(0x9f4380, 0xc0003be1a0, 0xc0004fcd80, 0x0, 0x0, 0xc00086bc30, 0x46f99b) /usr/lib64/go/1.16/src/io/io.go:634 +0x205 io/ioutil.ReadAll(...) /usr/lib64/go/1.16/src/io/ioutil/ioutil.go:27 github.com/valyala/fasthttp.getChunkedTestEnv.func1(0xc001fdc680) /home/rik/dev/fasthttp/streaming_test.go:108 +0x6c github.com/valyala/fasthttp.(*Server).serveConn(0xc000416d80, 0xa034e8, 0xc0004da880, 0x0, 0x0) /home/rik/dev/fasthttp/server.go:2219 +0x12ee github.com/valyala/fasthttp.(*workerPool).workerFunc(0xc000148960, 0xc0003be160) /home/rik/dev/fasthttp/workerpool.go:223 +0xba github.com/valyala/fasthttp.(*workerPool).getCh.func1(0xc000148960, 0xc0003be160, 0x8b4ec0, 0xc0003be160) /home/rik/dev/fasthttp/workerpool.go:195 +0x35 created by github.com/valyala/fasthttp.(*workerPool).getCh /home/rik/dev/fasthttp/workerpool.go:194 +0x11f It also returned len(p) in some cases where it read less than that.
2021-02-16Streaming fixes (#970)v1.21.0Gravatar Erik Dubbelboer 1-0/+90
- 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.
2021-02-06Add request body streaming. Fixes #622 (#911)Gravatar Kirill Danshin 1-0/+131
* 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