Repository navigation
v0.1.0
Changelog
- 3240317 🐛fix: lint
- 2a39a32 🐛fix: lint
- 890e717 ✅test(add test for headerFieldToString):
- 8a1a3d3 ✅test: add test for AcquireHPACK and ReleaseHPACK
- e14d3ab ✅test: fix some type errors
- 7574dd2 ⚡perf((hpack)): Refactor tableSize to uint32 to improving perfromance
- 2e32ec7 Adapted hpack API to HeaderField
- a3173e6 Add h2spec in tests
- 199b1b6 Added AddBytes to response
- f18c90e Added AppendBytes to HeaderField and HPACK
- 99adcb2 Added CopyTo function
- 8cb565f Added Ctx structure
- f595df9 Added Data func to Stream
- de5714f Added Data structure for FrameData processing
- 33eb3ee Added Delete to Header
- e16d75a Added DisableCompression parameter to HPack and deleted unused function
- 8424569 Added DisableDynamicTable in HPACK and fixed errors
- da9dd22 Added Field structure helping hpack header field handling
- 8b10528 Added GoAway, PushPromise, RstStream, WindowUpdate, Ping and Continuation frames
- bd03239 Added HPACK test
- f661381 Added Handler to server and fixed compiling errors
- c417db9 Added Headers data type
- 3b4545e Added Headers.WriteFrame
- 891d089 Added Huffman test for HPack
- a982da2 Added MaxLength to header and resumed code
- 080f11c Added Parse function to Headers
- f4a661c Added Peek func
- 348cb07 Added PrepareServer function and created Server structure
- edd4efd Added Priority frame
- 0840f60 Added ReadFromLimitPayload function
- 3f73c65 Added Request and Response structures
- 4b5dded Added Request.parse()
- ba06b82 Added Set and SetBytes functions in HeaderField
- 2b8ea11 Added Stream and Streams
- 92d7a3d Added TODO
- b231ae4 Added Unlock function to nocopy structure
- 8823f5c Added Write without huffman test and changed bytes to read from Read without huffman
- 208bdba Added WriteError
- d78a25f Added WriteTo functions
- 6a54d6a Added WriteTo to Settings
- 4b5bda0 Added WriteToFrame and padding control over Data structure
- 4aed75f Added a bunch of stuff. Now looks like it works
- a2bded7 Added another test case for HPack and fixed errors
- f4f7a8e Added autocert example dgrr#14
- 68b18e9 Added basic client
- d82d025 Added basic functions to the Frames
- e839754 Added benchmark code & results
- 94e10c0 Added bufio
- 6126f7c Added bytePool
- 1f0e20c Added client count
- e265699 Added client example
- 2df82bd Added cutPadding function
- 5bbdea3 Added documentation
- 5808b74 Added equalsFold func
- 171b966 Added error
- daad247 Added errors
- e2cc6bd Added errors file
- 2224f6e Added fasthttp adaptations
- 591f792 Added fasthttp2 on proxy example
- 4dd3312 Added frame test and fixed frame errors
- a681d11 Added hpack request write tests
- 86ae53e Added hpack tests. Fix hpack update max table size
- 9aea9c5 Added huffman encoding test
- d2b1628 Added huffman encoding to Read function. Added Peek{Bytes,Field} to HPack
- f86c976 Added huffman request test
- 61e6b77 Added more buffering for the server
- 377b4d7 Added noCopy and added ack decoding in Settings
- 0d82b7b Added panic
- 8356519 Added parse method in response
- 11094b7 Added ping reply checking. fmt
- 4c5da5e Added pool Acquire and Release
- a5c23b0 Added proxy example
- a3b8515 Added server configuration function
- 3642402 Added shrink function and default value for the HPack table size
- 057610b Added some functionalities to response
- a4168fb Added state handling
- a59f06c Added strings.go
- 6fb3be9 Added support for dynamic table size and added test cases.
- 1eb5ca1 Added test case for dgrr#27
- 94ed7e1 Added test cases
- dac8176 Added test for dynamic table. Dynamic table change to slice and deleted uneeded consts
- ed06605 Added tests for client and fixed hpack stuff
- 1f2d470 Added tests for readIntFrom
- d37a58b Added type when writing to frame
- 6239837 Added utils functions
- cf02fe6 Added utils test
- 245d13d Added websocket to measure RTT
- 755a869 Added writeHeaders and writeBody in ctx
- 3764456 Added writePreface function and fixed Upgrade error
- 3004d73 Adding go mod
- 3d3bb5f Always report the error after failed writes. Report EOF to pending requests
- 10263ef Applied readString function in some cases. Fixed readString out of range slice error
- 8ed1ca7 Async client + conn reconnection
- aee787d Buffer some writes on the client
- 48fac2d Bump github.com/valyala/fasthttp from 1.28.0 to 1.34.0
- 3b15d88 Bump github.com/valyala/fasthttp from 1.28.0 to 1.34.0 in /demo
- e847c66 CI
- 132a3bb Cancel client requests on timeout
- d37674d Cert and key on demo
- 2c14099 Changed Field to HeaderField
- 9101fc4 Changed FrameHeader constant name
- c6221bc Changed HPack to HPACK
- 37e0cd7 Changed Read hpack function and added function utils.
- d349b5b Changed Settings fields to private. And changed a few name of functions
- abaa963 Changed Write function. Now it's more readable
- a5335ea Changed WriteToFrame to WriteFrame
- 1edc787 Changed _type to kind. More good-looking
- 338c863 Changed adaptor
- f945b8d Changed add function in HPack
- a3d6bd3 Changed error
- 214061d Changed errors. Use maps instead of binary search
- e0e6481 Changed example
- 783eb97 Changed frame fields from public to private
- d196a42 Changed function search. Added byte constants. Added appendInt function. And fixed errors in writeString and writeInt. Implemented hpack.Write
- 287ae4a Changed many things
- 03fd8e9 Changed name of existing tests. Added test for Write function
- b8735b1 Changed schema. Use goroutines and stuff
- 5c295a3 Changed state names making public and upgrading method
- 4c1bee7 Changed upgrade
- 57d2293 Changed write and read Int and String functions for HPack
- 9cb7508 Check RefusedStream in dgrr#52
- fc9371c Check if channel is closed or not before closing
- 7c75087 Client but with multiple connections
- ffa6d11 Client concurrency
- 919397b Client settings
- c099c5d Client with concurrent reqs. Respect frame order
- 396b8c9 Close on write on error
- ab41abf Connect after disconnection
- 660254a Continuation handled with Headers
- ed5a1a4 Control the number of streams open
- 7d0b6bd Create LICENSE
- 6951753 Create SECURITY.md
- 28c4d85 Created Header object for frames and moved all header functions to new object
- 2c5f17d Created addPadding func and added to Data
- 0c6ec70 Custom ping interval + removed deprecated test
- b57c2d8 Debug all
- 2d178bd Define function for checking frames related to a stream
- 2ce8d98 Delete Connection field
- 8bf138c Deleted HPACK from headers frame
- d65f09c Deleted Header field and resumed all fields and functions in Frame structure
- 9932276 Deleted Read and Write function changed by another ones that allow the programmer to handle HeaderField(s) on runtime
- d0ea950 Deleted Upgrade function and replaced by UpgradeTLS and UpgradeHTTP
- 6f9ebbe Deleted WriteTo function because of the difficult frame fields handling
- e9fd057 Deleted all handler and parser functions
- 628e756 Deleted bytePool (unneeded)
- 1d0919c Deleted old handler
- 7de1146 Deleted preface pool
- fa24563 Deleted reusing tests on Huffman test cases
- 01f8ec8 Deleted unneeded code. Added body to handle post reqs
- eca0c22 Deleted unused functions
- 25bc045 Developed some ListenAndServe functions
- bfcf6e8 Do not buffer more than 10 requests
- 372cb14 Doc
- 9dff469 Encoder/decoder. Buffer in channels
- 58ac8cf Expose a Cancel function
- 7c71fed First modifications
- 02c0e9f Fix dgrr#19
- 1b4c797 Fix dgrr#24
- 8dcb1c1 Fix dgrr#25
- 30d1302 Fix dgrr#52 + Some internal testing
- 009439d Fix dgrr#55: Stop the pingTimer before closing the writer channel
- d3273cc Fix 4.3/2
- 4c57f21 Fix 5.*
- 079e4e4 Fix COMPRESSION_ERROR.
- a5dbfc9 Fix HPACK field printing
- 1d81499 Fix MAX_STREAM_SIZE.
- 439f01f Fix case were client hangs on waiting for settings to be acknowledged
- f7911c8 Fix creation of streams with RST_FRAME.
- 9c5c143 Fix fasthttp2 URL building
- 264b266 Fix ignore unknown frame.
- 66e523f Fix lint
- ad42d8f Fix lint
- ba8137a Fix linter
- 488dcd6 Fix missing continue.
- c9a5bf9 Fix panic when writer is closed before the read is finished
- c71c9aa Fix panics.
- 9f2b0a9 Fix partial header body with continuation frames.
- 75c5a40 Fix ping frame size.
- 8fe4746 Fix ping.
- bdb9b04 Fix priority frames. h2spec for WindowUpdates
- 4a42958 Fix response writer goroutine leaks and channel block
- 81c4879 Fix review.
- 08e95ed Fix review.
- 13bb846 Fix stream reusing problems + FramePriority
- 088488b Fix stream state spec
- e1937e1 Fix test cases. Added timeout scheduling for the streams. Debug and settings
- ee8eee1 Fix timer arming. New tests. Count open streams correctly
- e52af5f Fix when value is sensible and is not indexed
- a304e31 Fix writing to a closed channel
- 600a0b8 Fix wrong values in SETTINGS frames
- 19504d4 Fix: execute handlers if EndStream flag is received in Headers
- f1c72ae Fixed Data frames
- 3735661 Fixed Data frames
- 88b5391 Fixed HPACK a little. Added stuff to client
- fbe9040 Fixed HPACK parsing
- d386b60 Fixed HPACK test
- a0fa716 Fixed HPACK tests
- 424f835 Fixed Handshake
- 85a13f2 Fixed Headers decoding error
- f65daf2 Fixed Headers.Reset() error
- 2bb5492 Fixed Settings procediments which use Header field of frame
- 166c70c Fixed TLS error and added Request in the serveConn func
- 87f7d35 Fixed TLS error related to HostClient. Updated README
- 57073d4 Fixed URL. Added HTTP/2 as protocol
- 7342150 Fixed adaptor
- 8da461d Fixed bad reset
- f93acf7 Fixed closing streams. Do not send win updates
- f246a19 Fixed compilation errors
- c6f1c1e Fixed data writing
- 27b7c24 Fixed error on demo. Changed websocket dependency
- af0037c Fixed error returning from Dynamic table update
- b5535a7 Fixed errors
- 28334b9 Fixed examples
- f9e78f4 Fixed few things
- 5b13922 Fixed frame error
- 37c122f Fixed frameHeader test and moved to root folder
- b3d1a6e Fixed huffman encoding error. Overflow
- ea93e1f Fixed resize error
- ee290a3 Fixed search error and changed noIndexed to literalIndex
- 8715c54 Fixed server and client http2. HPACK
- 0935d6c Fixed server responses
- 6b058a1 Fixed set value error
- 5a51e69 Fixed test error
- 486a892 Fixed test error
- 92f1afa Fixed test name
- b393b86 Fixing stuff
- fff67a3 Flush later
- aec09c4 Force close if the handshake fails
- 3b0e1fa Forgot error checking...
- 28a5552 Forgot to release. Added IMPLEMENTATION.md
- deff560 Frame string
- b9a55da Generic checking function
- 6ef07cc GoAway impl error. Save LastErr
- 9bdf183 HPACK fixes. tests
- 0f183c4 Handle continuation
- 6333180 Handle errors
- fe9031b Handle head
- 5f6d0ea Handle only one stream headers.
- 4cc089e Handle pings + Resets and errors
- 8534e93 Handled continuation
- 7dbae3a Handshake and NewConn on the http2.Conn
- 4af4011 Huffman encoding and decoding made public
- 58af3a7 Huge refactoring. Created Conn
- f4e81fc Init fasthttp Context
- 6bb9db7 LastErr on Read and Write
- 3dcadd5 Made public errors that must be used by FrameGoAway
- e7a1c36 Made {Read,Write}Preface public
- b021d00 MaxIdle from fasthttp
- 2b2ea19 Merge branch 'master' of github.com:dgrr/http2
- eaa1f29 Merge branch 'master' of github.com:dgrr/http2 into master
- 7aa6403 Merge branch 'master' of github.com:fasthttp/http2
- 730ad46 Merge branch 'master' of ssh://github.com:/fasthttp/http2
- 5a3d656 Merge pull request dgrr#16 from AMekss/fix-some-edge-cases
- 6b6ed65 Merge pull request dgrr#18 from AMekss/go-mod
- 93c41db Merge pull request dgrr#2 from fasthttp/add-security-policy
- 5576947 Merge pull request dgrr#21 from dgrr/new/interface
- 93e8129 Merge pull request dgrr#28 from juliens/fix-panic
- 89292af Merge pull request dgrr#29 from juliens/spec
- 1527872 Merge pull request dgrr#31 from juliens/http2spec-4
- 728a6b6 Merge pull request dgrr#32 from juliens/fix-perf
- cecdf45 Merge pull request dgrr#33 from juliens/http2spec-6
- aca451a Merge pull request dgrr#34 from juliens/fix-stream
- 5e27f92 Merge pull request dgrr#35 from juliens/ci
- 943e262 Merge pull request dgrr#38 from juliens/h2spectest
- 03dd9f0 Merge pull request dgrr#41 from pkrss/pkrss
- 5951871 Merge pull request dgrr#42 from eole868/stream
- a5f6c02 Merge pull request dgrr#44 from geronsv/master
- 27d0dc8 Merge pull request dgrr#46 from cachalots/fix-leaks
- d072d6e Merge pull request dgrr#48 from juliens/fix-hspec
- daf2d49 Merge pull request dgrr#50 from vecpeng/add-test
- 85a6082 Merge pull request dgrr#56 from dgrr/dependabot/go_modules/github.com/valyala/fasthttp-1.34.0
- 13060ae Merge pull request dgrr#57 from dgrr/dependabot/go_modules/demo/github.com/valyala/fasthttp-1.34.0
- 12370d3 Merge pull request dgrr#68 from pablolagos/updated-dependencies
- a3116f6 Minor change
- 71ee627 Minor changes
- 2b0c7e6 Minor changes
- e317ea2 Modified continuation
- 52a096f Modified example. Removed old shit
- 180ec40 Modified packages and structs
- c4815a7 More debug
- 79a0c85 More debug data on index failed. Trying to fix ReadTimeout
- 07bdca4 More testing. Debugging hpack. No idea why it's not working
- dac7eec Moved files from github.com/dgrr/fasthttp/tree/http2
- fe0e3ad Moved frame types to their respective files
- dfb2f21 Moved utils functions to utils.go
- f6b676e New api
- cca43af Ping
- 3561ce5 Print debug data if there's an error with the framing layer
- e02c5df Queue the request context before sending the request
- 7262ebe README
- 5d2bf2e Ready to read headers and body (POST)
- 8cb3237 Recover when writing to the writer channel
- 1c39662 Refactor server
- 90685a9 Refactoring
- f85d53c Refactoring and cleanup the code
- ee579b9 Removed noCopy
- c73dba1 Removed print
- 65d69e9 Removed prints. Use GoAway error on clients
- 8503559 Replaced for by append
- a66b28f Resumed hpack test
- f377efe Reuse RequestCtx
- 1965aa5 Reverse hpack dynamic. Compression for clients
- f211a18 Reverse proxy example
- e1f0e7b Revert the 5.1.2
- 1424ca8 Same thing for server
- 5a96eea Separated in multiple files
- e8c75c3 Server
- b4e9e8f Set read and write deadlines to zero
- e471957 SetOnDisconnect
- ae91072 Small changes. Removed panic
- f9d74c5 Some progress
- b40e35d Stream -> ServerStream
- 82c40b5 Take fasthttp.Server logger. Makefile with test command
- 2534736 Trying to fix a panic on closed channel. Reset func
- 1e47e86 Trying to fix dyn table. Write goaway on read timeout
- f6afe9d Uncomment
- dae011a Update README.md
- 5af3e76 Update README.md
- 81678df Update README.md
- c31735f Update README.md
- 696c1ae Update README.md
- d34bc07 Update README.md
- 5e39af7 Update README.md
- 1cedba2 Update README.md
- 472b17d Update README.md
- f7fcb1b Update README.md
- d475f54 Update README.md
- b727e45 Update main.go
- de5f37f Update main.go
- fb8a307 Updated README
- 6c50ea7 Updated README
- 670a3e1 Updated README
- 220813c Updated README
- f1aa134 Updated README
- 3afd86e Updated README.md
- 9538234 Updated demo
- 003ffb8 Updated demo go.mod
- 3b517bd Updated demo. write ping on http2
- a7b1438 Updated examples and README
- 331eaef Updated fasthttp version
- 4f4f1c3 Updated readme
- 43f847f Updated readme
- cf8659e Upgrade linter.
- a2e34db Use adaptors to support other libs
- 2e58402 Verify frame order
- ea63ad3 Window control
- a715954 [fix] Ensure compatibility with fasthttp v1.49 [fix] Updated to go version 1.20
- 9821da9 client add proxy support
- d470f2d client: Fix Release of same frame. Defer the reqQueue.Range in case of panic
- e32d017 close the channel inside Close func
- dab3393 comments
- 80287d7 deleted
- 6920200 doc
- bdc708f fasthttp2 name package to http2
- 868da79 finish function and goaway as last error
- eb4f951 fix Serialize for Headers with FlagPriority
- a51f233 fix buf of ReadFrom
- 051f13f fix: closed channel panic bug
- 3ec6ccb fixed package name error
- 1240197 fixed path and host errors
- 3e76830 fmt
- 2754945 forgot to reset xd
- 455f75a gitignore. Ideal example
- 207f102 gofmt'ed
- 46941bc idk
- 4711cef idk
- c248d0e idk2
- dca6022 locahost
- 2e78d5d minor changes
- 0c444a3 more new stuff
- 004c0a2 moved HeaderField to another file
- ae35b6d proxy example
- ba406f9 read response body stream of fasthttp
- 12ed44c review: typo, lint, and linter configuation.
- c76e5c8 small changes
- 93f3fad some progresS
- 52ce285 support post requests
- 66b464f sync
- a785093 v
- 7146997 xd