Releases: naughtygopher/webgo
v7.0.9
What's Changed
- [patch] refactored SSE to cleanup and organize better by @bnkamalesh in #55
Full Changelog: v7.0.8...v7.0.9
SSE extension refactor
All concurrent usecases in the SSE extension handled using mutex is now replaced using channels.
Minor patches
[patch] cleaned up mutex usage to reduce chances of deadlock
[patch] close client context on removal
v7.0.5
[-] ignore cmd and extensions from coverage (#52)
[-] Transfer ownership to Naughty Gopher (#51)
[-] transfer ownership to Naughty Gopher
[-] updated all the badges on README
[-] updated GH workflow to the newest one being used in other projects
[patch] fixed inifinite recursion issue (reported in issue #48)
[patch] use one time marshaled json payload for static response
[patch] replaced usage of deprecated package ioutil
[patch]fix - SendError - issue #48 (#49)
[major] Middleware execution order is now the same as how they are added
[-] The old behaviour of middleware execution order can be enabled by setting ReverseMiddleware=true
[minor] implement HTTP2 push
[-] replaced travis settings with Github actions
[-] sample app updated to show HTTP2 push usage
[patch] fixed an edge case of incorrect route match for root route ('/')
v6.6.5
[patch] fixed bug in URI match/params
[patch] better URI matching, reduced allocations
[patch] resources are released even in case of panic (deferred)
[-] added benchmark
[-] minor changes to the sample SSE implementation (refactored to use serviceworker)
[-] updated SSE README for clarity
[patch] refactored SSE for more capabilities of customizing
[-] improved reattempting of SSE reconnection, in the sample app
[patch] added hooks for create and remove clients from SSE active clients list
[-] removed os.ReadFile usage to make the sample app compatible with Go 1.13
[-] setting correct heading size for Server-Sent Eevents
[minor] added new Broadcast method to sse extension for easily broadcasting a message to all active clients (#40)
[-] updated sample app for making things prettier
[-] updated the JS in sample app to be modular, cleaner
[-] updated documentation and some cosmetic changes to the sample app
[minor] added helper method to get count of active clients
[patch] renamed GetClientMessageChan to ClientMessageChan
[-] updated the sample app's HTML page to show details slightly better
[-] breaking change in function name, since previous version was released only 24hrs ago. I considered it ok to break it this soon
[minor] Added a new extension for handling Server Sent Events (SSE)
[-] The example app shows how to use this
v6.3.1
[minor] URI patterns now support multiple wildcards, you can form more patterns. e.g. all routes ending with /hello
[-] Refer to the test TestWildcardMadness in router_test.go to see sample usage
[patch] Fixed regression introduced while fixing trailing slash config support for wildcard routes in previous release
[-] regression was introduced after changing the regex used for route matching. This releases completely removes regex (there's some decent performance improvement, yay! but with slightly more memory consumption)
v6.2.2
[major] NewRouter function now accepts variadic Routes instead of slice of Routes (breaking change)
[minor] Router now has a convenience method Add(routes...*Route)
[minor] Route grouping feature added (usage available in the sample app, cmd/main.go)
[-] updated tests
[-] fixed module version in go.mod
[-] fixed v6 imports
[patch] fixed middleware not applied on routegroups
v5.3.2
[patch] fixed bug when trailing slash configuration was being ignored when using wildcard in URI
[-] removed some unused constants
v5.3.1
[minor] added a new helper function to get the original HTTP response writer from Webgo's custom response writer
[patch] remove check when response is already written, prevent writing any further
[-] the blocking behaviour was breaking large responses like files and such