gnet @ v2.10.0
integrity
- size
- 201.4 KiB
- downloaded
- last checked
- overlays
- go
- detected
- go module github.com/panjf2000/gnet/v2
release notes
[!IMPORTANT] This release enables you to read and write the connection-level context across goroutines!
🚀 Features
- feat: add SafeContext()/SetSafeContext() for concurrency-safe user-defined context (#760)
🛩 Enhancements
- opt: use sync.Once to ensure listener opens only once (#739)
- Optimize next highest power of two calculation (#737)
- opt: use net/url for validating network addresses (#728)
🐛 Bugfixes
- fix: downgrade x/sync and x/sys to versions compatible with Go 1.20 (#758)
- bug: switch to
socket.Dupineventloop.enrollto enableclose-on-exec(#745) - bug: set
FD_CLOEXECflag when enrolling a client FD (#743) - bug: fix Unix address parsing absolute path (#731)
- bug: make Conn.Write/Writev return the non-retryable error if any (#715)
📚 Documentation
- docs: update inaccurate comments on Conn.Next/Peek (#718)
🗃 Misc
- ci: bump golangci-lint to v2.12.2 to fix Go 1.26 toolchain panic (#761)
- chore: bump up Go modules dad475e
- ci: bump up Go version to 1.26 (#755)
- pkg/ring/ring_buffer: remove the unused field "bs" (#736)
- test: add more tests for bad network addresses (#729)
- chore: fix typos and improve comments (#724)
Full Changelog: https://github.com/panjf2000/gnet/compare/v2.9.0...v2.10.0
Thanks to all these contributors: @Copilot, @dxasu, @gunli, @panjf2000 and copilot-swe-agent[bot] for making this release possible.
download
unix · zip
curl -fL -o v2.10.0.zip https://ratatoskr.space/pkg/gnet/v2.10.0.zip
printf '%s %s\n' 'f3800c4f22db473fcc8a9c994607320046fc6f0d80aae83b4e4daf0bd214c5ac' 'v2.10.0.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/gnet/v2.10.0.zip"
$out = "v2.10.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "f3800c4f22db473fcc8a9c994607320046fc6f0d80aae83b4e4daf0bd214c5ac") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v2.10.0.tar.gz https://ratatoskr.space/pkg/gnet/v2.10.0.tar.gz
printf '%s %s\n' '365749e8fcb634949bc3468bafafb7ffc8de2daa5580ccf8c4a66cc04d562e7a' 'v2.10.0.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/gnet/v2.10.0.tar.gz"
$out = "v2.10.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "365749e8fcb634949bc3468bafafb7ffc8de2daa5580ccf8c4a66cc04d562e7a") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o v2.10.0.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/gnet/v2.10.0.zip
printf '%s %s\n' 'f3800c4f22db473fcc8a9c994607320046fc6f0d80aae83b4e4daf0bd214c5ac' 'v2.10.0.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/gnet/v2.10.0.zip"
$out = "v2.10.0.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "f3800c4f22db473fcc8a9c994607320046fc6f0d80aae83b4e4daf0bd214c5ac") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v2.10.0.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/gnet/v2.10.0.tar.gz
printf '%s %s\n' '365749e8fcb634949bc3468bafafb7ffc8de2daa5580ccf8c4a66cc04d562e7a' 'v2.10.0.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/gnet/v2.10.0.tar.gz"
$out = "v2.10.0.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "365749e8fcb634949bc3468bafafb7ffc8de2daa5580ccf8c4a66cc04d562e7a") { throw "sha256 mismatch" }
| artifact | format | size | hashes |
|---|---|---|---|
| v2.10.0.zip | zip | 201.5 KiB |
blake3-24 aac2de9a38eada951da90b3b4d5fbf86d7cf9b28894942ba
sha256 f3800c4f22db473fcc8a9c994607320046fc6f0d80aae83b4e4daf0bd214c5ac
sha1 6e716a0d45f12accb9a6db5284cdb803af6c5557
|
| v2.10.0.tar.gz | tar.gz | 115.8 KiB |
blake3-24 708f45781e9899e02d6db0fec89f30e2596278204bf7b23c
sha256 365749e8fcb634949bc3468bafafb7ffc8de2daa5580ccf8c4a66cc04d562e7a
sha1 96b855c695774b0f4deeab6647c61a8c4026d749
|
go module archive
module zip with the module path rewritten to this mirror; fetched by go get through the
GOPROXY route
| artifact | format | size | hashes |
|---|---|---|---|
| v2.10.0.zip | zip | 204.7 KiB |
blake3-24 a9c35cafb7f242286cfb7c8655ba1f709201032201f88abe
sha256 49695be27a94f98575f971e12ac7f5c0d91ee0b3baed80c3de73a6f1f65e90a2
sha1 13ec2047269bfe910bcbe08f5bf91c8ff3802c65
|
install
bazel
http_archive(
name = "gnet",
urls = ["https://ratatoskr.space/pkg/gnet/v2.10.0.tar.gz"],
integrity = "sha256-NldJ6Py2NJSbw0aLr6+3/8jeLapVgMz4xKZswE1WLno=",
strip_prefix = "gnet-v2.10.0",
)
zig
.url = "https://ratatoskr.space/pkg/gnet/v2.10.0.tar.gz",
go
GOPROXY=https://ratatoskr.space GOSUMDB=off go get ratatoskr.space/pkg/gnet/v2@v2.10.0
install via yggdrasil mesh
bazel
http_archive(
name = "gnet",
urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/gnet/v2.10.0.tar.gz"],
integrity = "sha256-NldJ6Py2NJSbw0aLr6+3/8jeLapVgMz4xKZswE1WLno=",
strip_prefix = "gnet-v2.10.0",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/gnet/v2.10.0.tar.gz",
go
GOPROXY=http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg GOSUMDB=off GOINSECURE=14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/* go get 14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/gnet/v2@v2.10.0