v1.57.0
- Add a note to clarify header.Set behavior on cookies by @sigmundxia in https://github.com/valyala/fasthttp/pull/1864
- chore(deps): bump github.com/klauspost/compress from 1.17.9 to 1.17.10 by @dependabot in https://github.com/valyala/fasthttp/pull/1872
- chore(deps): bump securego/gosec from 2.21.3 to 2.21.4 by @dependabot in https://github.com/valyala/fasthttp/pull/1874
- feat (request): expose req timeout by @aarcex3 in https://github.com/valyala/fasthttp/pull/1878
- chore(deps): bump golang.org/x/crypto from 0.27.0 to 0.28.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1881
- chore(deps): bump golang.org/x/net from 0.29.0 to 0.30.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1880
- improve ishex and unhex by hex2intTable by @ksw2000 in https://github.com/valyala/fasthttp/pull/1883
- chore(deps): bump github.com/andybalholm/brotli from 1.1.0 to 1.1.1 by @dependabot in https://github.com/valyala/fasthttp/pull/1884
- chore(deps): bump github.com/klauspost/compress from 1.17.10 to 1.17.11 by @dependabot in https://github.com/valyala/fasthttp/pull/1886
- chore: Upgrade golangci-lint to 1.61.0 by @alexandear in https://github.com/valyala/fasthttp/pull/1887
- feat(fasthttpproxy): add dual-stack connection support to enable IPv6 proxies for HTTP and SOCKS5 dialers by @lavish440 in https://github.com/valyala/fasthttp/pull/1885
- fix RequestCtx is canceled (#1879) by @ksw2000 in https://github.com/valyala/fasthttp/pull/1890
- @aarcex3 made their first contribution in https://github.com/valyala/fasthttp/pull/1878
- @lavish440 made their first contribution in https://github.com/valyala/fasthttp/pull/1885
Full Changelog: https://github.com/valyala/fasthttp/compare/v1.56.0...v1.57.0
v1.56.0
- fix: add timeout to proxy connection reading and writing by @Sniper91 in https://github.com/valyala/fasthttp/pull/1791
- Validate header values by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1796
- chore(deps): bump golang.org/x/sys from 0.21.0 to 0.22.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1800
- chore(deps): bump golang.org/x/crypto from 0.24.0 to 0.25.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1802
- chore(deps): bump golang.org/x/net from 0.26.0 to 0.27.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1801
- Optimize struct field order to reduce memory usage by @ksw2000 in https://github.com/valyala/fasthttp/pull/1809
- Fix possible race condition on request ctx done #1662 by @byte0o in https://github.com/valyala/fasthttp/pull/1806
- Fix header parser (#1808) by @ksw2000 in https://github.com/valyala/fasthttp/pull/1810
- Replace custom AppendUint with strconv.AppendUint by @gaby in https://github.com/valyala/fasthttp/pull/1813
- Use Named Fields and Align Structures to Reduce Memory Usage by @gaby in https://github.com/valyala/fasthttp/pull/1814
- chore(deps): bump golang.org/x/crypto from 0.25.0 to 0.26.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1820
- chore(deps): bump golang.org/x/net from 0.27.0 to 0.28.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1821
- chore(deps): bump golang.org/x/sys from 0.23.0 to 0.24.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1823
- StreamRequestBody shouldn't read more data than actual need. by @newacorn in https://github.com/valyala/fasthttp/pull/1819
- Reduce the size of ResponseHeader and RequestHeader by @ksw2000 in https://github.com/valyala/fasthttp/pull/1826
- A response without a body can't have trailers by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1825
- TestHostClientMaxConnWaitTimeoutError test case sometimes fails by @newacorn in https://github.com/valyala/fasthttp/pull/1832
- Fix the MaxConns semaphore issue in HostClient. by @newacorn in https://github.com/valyala/fasthttp/pull/1831
- Add a dedicated cache container for the zstd compression algorithm by @newacorn in https://github.com/valyala/fasthttp/pull/1828
- We cannot avoid continuing to call SetReadDeadline and similar methods after the connection is closed. by @newacorn in https://github.com/valyala/fasthttp/pull/1835
- Remove support for go 1.19 and 1.20, and add support for 1.23 by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1837
- Merge the various proxy dialer implementations from the fasthttpproxy into a single struct. by @newacorn in https://github.com/valyala/fasthttp/pull/1829
- Make RetryIfFunc handle request errors by @ksw2000 in https://github.com/valyala/fasthttp/pull/1818
- Using atomic instead of mutex and delete scratch slice by @NikoMalik in https://github.com/valyala/fasthttp/pull/1833
- Fix Different request paths share the same
fs
cache is some cases. by @newacorn in https://github.com/valyala/fasthttp/pull/1843 - Make the tests complete earlier. by @newacorn in https://github.com/valyala/fasthttp/pull/1848
- Fix potential data race reports when the
-race
flag is enabled. by @newacorn in https://github.com/valyala/fasthttp/pull/1847 - Fix issues with tests interfering with each other in certain situations. by @newacorn in https://github.com/valyala/fasthttp/pull/1842
- When
StreamRequestBody
is set totrue
, we cannot safely releasebr
by @newacorn in https://github.com/valyala/fasthttp/pull/1844 - Revert Pull 1233 fix: The client write operation did not immediately return upon encountering an RST packet. by @newacorn in https://github.com/valyala/fasthttp/pull/1849
- RetryIf might need more information and greater control over the execution flow. by @newacorn in https://github.com/valyala/fasthttp/pull/1850
- Sorry about forgetting to remove a redundant field and clarify the comments. by @newacorn in https://github.com/valyala/fasthttp/pull/1851
- chore(deps): bump golang.org/x/crypto from 0.26.0 to 0.27.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1858
- chore(deps): bump golang.org/x/net from 0.28.0 to 0.29.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1857
- chore(deps): bump securego/gosec from 2.20.0 to 2.21.1 by @dependabot in https://github.com/valyala/fasthttp/pull/1855
- chore(deps): bump securego/gosec from 2.21.1 to 2.21.2 by @dependabot in https://github.com/valyala/fasthttp/pull/1861
- Revert "Using atomic instead of mutex and delete scratch slice" by @newacorn in https://github.com/valyala/fasthttp/pull/1846
- Fix improper memory reuse in NewFastHTTPHandler by @sigmundxia in https://github.com/valyala/fasthttp/pull/1860
- Improve the performance of ConnState.String() by @ksw2000 in https://github.com/valyala/fasthttp/pull/1871
- chore(deps): bump securego/gosec from 2.21.2 to 2.21.3 by @dependabot in https://github.com/valyala/fasthttp/pull/1870
- Reduce the size of the Cookie by 32 bytes. by @ksw2000 in https://github.com/valyala/fasthttp/pull/1866
- fix: type assertion to perIPTLSConn instead of erroneous perIPConn by @KSpaceer in https://github.com/valyala/fasthttp/pull/1863
- Improve performance of ParseUfloat by @ksw2000 in https://github.com/valyala/fasthttp/pull/1865
- @Sniper91 made their first contribution in https://github.com/valyala/fasthttp/pull/1791
- @ksw2000 made their first contribution in https://github.com/valyala/fasthttp/pull/1809
- @newacorn made their first contribution in https://github.com/valyala/fasthttp/pull/1819
- @NikoMalik made their first contribution in https://github.com/valyala/fasthttp/pull/1833
- @sigmundxia made their first contribution in https://github.com/valyala/fasthttp/pull/1860
- @KSpaceer made their first contribution in https://github.com/valyala/fasthttp/pull/1863
Full Changelog: https://github.com/valyala/fasthttp/compare/v1.55.0...v1.56.0
v1.55.0
- all: add riscv64 support by @mengzhuo in https://github.com/valyala/fasthttp/pull/1781
- Use FASTHTTP_PREFORK_CHILD env variable to detect child by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1783
- Fix common recurring CI issues by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1784
- test: fix typo by @alexandear in https://github.com/valyala/fasthttp/pull/1790
- Don't allow \r in header names by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1789
- chore(deps): bump github.com/klauspost/compress from 1.17.7 to 1.17.9 by @dependabot in https://github.com/valyala/fasthttp/pull/1792
- chore(deps): bump golang.org/x/crypto from 0.21.0 to 0.24.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1787
- chore(deps): bump golang.org/x/net from 0.23.0 to 0.26.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1788
- chore(deps): bump securego/gosec from 2.19.0 to 2.20.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1776
- @mengzhuo made their first contribution in https://github.com/valyala/fasthttp/pull/1781
Full Changelog: https://github.com/valyala/fasthttp/compare/1.54.0...v1.55.0
1.54.0
- fs: fix GenerateIndexPages when DirFS or embed.FS is used by @efectn in https://github.com/valyala/fasthttp/pull/1778
- fs: fix openIndexFile when dirPath is empty string by @efectn in https://github.com/valyala/fasthttp/pull/1779
Full Changelog: https://github.com/valyala/fasthttp/compare/v1.53.0...1.54.0
v1.53.0
- chore(deps): bump securego/gosec from 2.18.2 to 2.19.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1720
- adaptor ResponseWriter - adding Hijack method and pass proper fields by @gilwo in https://github.com/valyala/fasthttp/pull/1525
- Remove unnecessary build tag go1.21 by @alexandear in https://github.com/valyala/fasthttp/pull/1721
- Upgrade golangci-lint to v1.56.2; fix gocritic issues by @alexandear in https://github.com/valyala/fasthttp/pull/1722
- feat:support zstd compress and uncompressed by @Max-Cheng in https://github.com/valyala/fasthttp/pull/1701
- chore(deps): bump golang.org/x/crypto from 0.19.0 to 0.20.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1725
- Enable several gocritic checks; resolve identified issues by @alexandear in https://github.com/valyala/fasthttp/pull/1728
- test: remove
//nolint:govet
comments by @alexandear in https://github.com/valyala/fasthttp/pull/1729 - Enable perfsprint linter; fix up lint issues by @alexandear in https://github.com/valyala/fasthttp/pull/1727
- refactor: rename error local variables by @alexandear in https://github.com/valyala/fasthttp/pull/1738
- test: remove redundant error check by @alexandear in https://github.com/valyala/fasthttp/pull/1741
- fix: panic in ParseIPv4 when len(dst) > 4 by @alexandear in https://github.com/valyala/fasthttp/pull/1742
- test: remove panics in client tests by @alexandear in https://github.com/valyala/fasthttp/pull/1747
- chore(deps): bump golang.org/x/net from 0.22.0 to 0.23.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1748
- add support for CHIPS (Cookies Having Independent Partitioned State) by @gurkan0791 in https://github.com/valyala/fasthttp/pull/1752
- Add macos-14 platform, enable shuffle of unit-tests by @gaby in https://github.com/valyala/fasthttp/pull/1746
- refactor: do not return error as it is always nil by @alexandear in https://github.com/valyala/fasthttp/pull/1759
- fix: propagate body stream error to close function (#1743) by @mdenushev in https://github.com/valyala/fasthttp/pull/1757
- chore(deps): bump golangci/golangci-lint-action from 4 to 5 by @dependabot in https://github.com/valyala/fasthttp/pull/1769
- Don't allow , in host when using Client by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1761
- Implemented what was described by me in #1766. by @rhabichl in https://github.com/valyala/fasthttp/pull/1767
- feat: add address to tryDial errors by @mdenushev in https://github.com/valyala/fasthttp/pull/1763
- chore(deps): bump golangci/golangci-lint-action from 5 to 6 by @dependabot in https://github.com/valyala/fasthttp/pull/1774
- @gilwo made their first contribution in https://github.com/valyala/fasthttp/pull/1525
- @Max-Cheng made their first contribution in https://github.com/valyala/fasthttp/pull/1701
- @gurkan0791 made their first contribution in https://github.com/valyala/fasthttp/pull/1752
- @mdenushev made their first contribution in https://github.com/valyala/fasthttp/pull/1757
- @rhabichl made their first contribution in https://github.com/valyala/fasthttp/pull/1767
Full Changelog: https://github.com/valyala/fasthttp/compare/v1.52.0...v1.53.0
v1.52.0
What's Changed
Minor backwards incompatible changes
These changes are only backwards incompatible if you are sending bad requests.
- Prevent request smuggling by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1719
- Follow RFCs 7230 and 9112 for HTTP versions by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1710
New features
- Implement
GetRejectedConnectionsCount
function by @mopeneko in https://github.com/valyala/fasthttp/pull/1704 - add DisableDNSResolution for TCPDialer. by @xuxiao415 in https://github.com/valyala/fasthttp/pull/1702
- feat: add function to parse HTTP header parameters by @nickajacks1 in https://github.com/valyala/fasthttp/pull/1685
- add support for custom dial function with timeouts by @avivcarmis in https://github.com/valyala/fasthttp/pull/1669
Other
- Enable wastedassign, whitespace linters; fix issues by @alexandear in https://github.com/valyala/fasthttp/pull/1665
- chore: Use 'any' instead of 'interface{}' by @alexandear in https://github.com/valyala/fasthttp/pull/1666
- bug: Flush the write buffer before putting it to the pool by @Jille in https://github.com/valyala/fasthttp/pull/1672
- copyZeroAlloc: Try WriteTo and ReadFrom before acquiring a buffer by @Jille in https://github.com/valyala/fasthttp/pull/1673
- writeBodyFixedSize: Only do an early flush if the reader is an *os.File by @Jille in https://github.com/valyala/fasthttp/pull/1674
- chore: Set max line length to 130 characters by @alexandear in https://github.com/valyala/fasthttp/pull/1676
- docs: Add missing dots at the end of comments by @alexandear in https://github.com/valyala/fasthttp/pull/1677
- chore(deps): bump golang.org/x/crypto from 0.14.0 to 0.17.0 by @dependabot in https://github.com/valyala/fasthttp/pull/1678
- chore: move cookie fuzz test to go 1.18 fuzzing by @nickajacks1 in https://github.com/valyala/fasthttp/pull/1686
- Change empty string checks to be more idiomatic by @alexandear in https://github.com/valyala/fasthttp/pull/1684
- test(expvarhandler): fix failure when using -count to run more than once by @nickajacks1 in https://github.com/valyala/fasthttp/pull/1688
- test: migrate remaining fuzzit tests to go 1.18 fuzzing by @nickajacks1 in https://github.com/valyala/fasthttp/pull/1687
- Add CIFuzz by @AdamKorcz in https://github.com/valyala/fasthttp/pull/1443
- refactor: move manually created tchar table to bytesconv_table_gen by @nickajacks1 in https://github.com/valyala/fasthttp/pull/1689
- Bump supported Go version in readme by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1690
- update build tag by @tylitianrui in https://github.com/valyala/fasthttp/pull/1695
- Updates to GitHub Actions, add go1.22 to Test Matrix by @gaby in https://github.com/valyala/fasthttp/pull/1707
- chore(deps): bump golangci/golangci-lint-action from 3 to 4 by @dependabot in https://github.com/valyala/fasthttp/pull/1711
- Bump dependencies by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1718
New Contributors
- @avivcarmis made their first contribution in https://github.com/valyala/fasthttp/pull/1669
- @Jille made their first contribution in https://github.com/valyala/fasthttp/pull/1672
- @nickajacks1 made their first contribution in https://github.com/valyala/fasthttp/pull/1685
- @AdamKorcz made their first contribution in https://github.com/valyala/fasthttp/pull/1443
- @mopeneko made their first contribution in https://github.com/valyala/fasthttp/pull/1704
- @gaby made their first contribution in https://github.com/valyala/fasthttp/pull/1707
Full Changelog: https://github.com/valyala/fasthttp/compare/v1.51.0...v1.52.0
v1.51.0
What's Changed
- Refactor: Move RSA Key and Certificate to Variables in Tests by @OrangeFlag in https://github.com/valyala/fasthttp/pull/1621
- Replace path.Join with filepath.Join in tests by @alexandear in https://github.com/valyala/fasthttp/pull/1623
- reset request disableSpecialHeader by @xiluoxi in https://github.com/valyala/fasthttp/pull/1626
- Make
hijackConn
behaviour compliant withnet.Conn
interface by @askolesov in https://github.com/valyala/fasthttp/pull/1629 - BUGFIX: HostClient.DialDualStack not work when using DoDeadline by @cloudfly in https://github.com/valyala/fasthttp/pull/1634
- Allow redirect URI path to not be normalized. by @skidder in https://github.com/valyala/fasthttp/pull/1638
- Add support to fs.fs on serve static files by @peczenyj in https://github.com/valyala/fasthttp/pull/1640
- fix benchmark panics on client_timing_test.go by @peczenyj in https://github.com/valyala/fasthttp/pull/1643
- add support to go 1.21.x into test.yml by @peczenyj in https://github.com/valyala/fasthttp/pull/1642
- Don't fast fail when one test fails by @erikdubbelboer in https://github.com/valyala/fasthttp/pull/1645
- Skip fs cache based on config by @peczenyj in https://github.com/valyala/fasthttp/pull/1644
- chore: Rename coarseTime.go to coarsetime.go by @alexandear in https://github.com/valyala/fasthttp/pull/1651
- chore: Remove redundant and outdated build constraints by @alexandear in https://github.com/valyala/fasthttp/pull/1650
- chore: add golangci-lint config file for flexibility by @alexandear in https://github.com/valyala/fasthttp/pull/1649
- Lazy load stackless functions by @Gusted in https://github.com/valyala/fasthttp/pull/1656
- Enable dupword, unconvert linters by @alexandear in https://github.com/valyala/fasthttp/pull/1658
New Contributors
- @OrangeFlag made their first contribution in https://github.com/valyala/fasthttp/pull/1621
- @xiluoxi made their first contribution in https://github.com/valyala/fasthttp/pull/1626
- @askolesov made their first contribution in https://github.com/valyala/fasthttp/pull/1629
- @cloudfly made their first contribution in https://github.com/valyala/fasthttp/pull/1634
- @skidder made their first contribution in https://github.com/valyala/fasthttp/pull/1638
- @Gusted made their first contribution in https://github.com/valyala/fasthttp/pull/1656
Full Changelog: https://github.com/valyala/fasthttp/compare/v1.50.0...v1.51.0
v1.50.0
- 8cc5539 Fix various request timeout issues (Erik Dubbelboer)
- 34e7da1 Allow connection close for custom streams (#1603) (Armin Becher)
- 8236f8d fasthttpproxy: fix doc examples (Oleksandr Redko)
- 4ec5c5a docs: fix typos in comments and tests (Oleksandr Redko)
- 9aa666e Enable gocritic linter; fix lint issues (#1612) (Oleksandr Redko)
v1.49.0
- 0e99e64 Update golangci-lint and gosec (#1609) (Erik Dubbelboer)
- 6aea1e0 fix round2_32, split round2 tests because they depend on sizeof int at compile time (#1607) (Duncan Overbruck)
- 4b0e6c7 Update ErrNoMultipartForm (Erik Dubbelboer)
- 727021a Update security policy (Erik Dubbelboer)
- 54fdc7a Abstracts the RoundTripper interface and provides a default implement (#1602) (Tim)
- e181af1 fasthttpproxy support ipv6 (#1597) (Pluto)
- 6eb2249 fix:fasthttp server with tlsConfig (#1595) (Zhang Xiaopei)
- 1c85d43 Fix round2 (Erik Dubbelboer)
- 064124e Avoid nolint:errcheck in header tests (#1589) (Oleksandr Redko)
- 0d0bbfe Auto add 'Vary' header after compression (#1585) (AutumnSun)
- d229959 Remove unnecessary indent blocks (#1586) (Oleksandr Redko)
- 6b68042 Use timeout in TCPDialer to resolveTCPAddrs (#1582) (un000)
v1.48.0
- ffdf59d Enable gofumpt linter; format code
gofumpt -w .
(#1576) (Oleksandr Redko) - b79233f add DisableSpecialHeaders option (#1573) (Anthony Ter-Saakov)
- f0865d4 fs: fix race condition on global map (#1565) (leonklingele)
- 829f5b2 Don't run test that times out often in parallel (Erik Dubbelboer)
- e6ce5f0 Remove invalid documentation (Erik Dubbelboer)
- 9bc8e48 Request timeout settings for the same domain name are reused (#1558) (byte0o)
- d2f97fc fix the problem: HostClient maybe delete when pendingClientRequests > 0 (#1562) (Zhengkai Wang)
- 7ea3b63 add concurrency for client's HostClient map (#1550) (Zhengkai Wang)
- eaab8ff Refactor by removing unnecessary else block (#1559) (Oleksandr Redko)
- 1a46e57 update go.sum (#1555) (tyltr)
- fa72f3c Fix tests (#1552) (Erik Dubbelboer)