Forwarded from 🇺🇦 Go на двоих
Визуализация нового пропозала про дженерики с отличными примерами от Владимир Вивьен
https://twitter.com/vladimirvivien/status/1297595414590427142?s=21
https://twitter.com/vladimirvivien/status/1297595414590427142?s=21
Twitter
Vladimir Vivien
The #golang proposal to introduce generic functions and types (via parametric polymorphism) has been evolving nicely. This 🧵 summarizes what the latest is: - [] sqr brackets to be used for type param - type param must have a constraint - constraint `any`…
1.15.2 и 1.14.9 вышел, мелочь, но там фиксы в рантайме. Значит не мелочь.
https://twitter.com/golang/status/1303798415529254918?s=21
https://twitter.com/golang/status/1303798415529254918?s=21
Twitter
Go
🌟 Go 1.15.2 and 1.14.9 are released! 🔈 Announcement: https://t.co/MT0rb5M46n 📦 Download: https://t.co/LVAT41QPZz #golang
Forwarded from 🇺🇦 Go performance channel (Oleg Kovalov)
#golang Goroutine lifecycle by https://github.com/jcorbin
Writing this issue out of the @GopherCon 2019 contribution workshop (additional kudos to @golang workshops!)
(from issue https://github.com/golang/go/issues/33322 )
Writing this issue out of the @GopherCon 2019 contribution workshop (additional kudos to @golang workshops!)
(from issue https://github.com/golang/go/issues/33322 )
Forwarded from 🇺🇦 Go performance channel (Oleg Kovalov)
proposal: cmd/compile: switch to a register-based calling convention for #golang functions
Preliminary experiments indicate this will achieve at least a 5–10% throughput improvement across a range of applications
is accepted! 🚀
https://go.googlesource.com/proposal/+/master/design/40724-register-calling.md
https://github.com/golang/go/issues/40724
Preliminary experiments indicate this will achieve at least a 5–10% throughput improvement across a range of applications
is accepted! 🚀
https://go.googlesource.com/proposal/+/master/design/40724-register-calling.md
https://github.com/golang/go/issues/40724
GitHub
cmd/compile: switch to a register-based calling convention for Go functions · Issue #40724 · golang/go
I propose that we switch the Go internal ABI (used between Go functions) from stack-based to register-based argument and result passing for Go 1.16 1.17. I lay out the details of our proposal and t...
Forwarded from 🇺🇦 Go performance channel (Oleg Kovalov)
More #golang awesomness! Happening in 1.16 🎉
Go 1.16 will include an early devirtualization pass, which allows better escape analysis of interface method calls (i.e., fewer heap allocations) when the compiler can see the interface always has a known concrete type.
https://github.com/golang/go/issues/33160
https://twitter.com/mdempsky/status/1321894360116420608
Go 1.16 will include an early devirtualization pass, which allows better escape analysis of interface method calls (i.e., fewer heap allocations) when the compiler can see the interface always has a known concrete type.
https://github.com/golang/go/issues/33160
https://twitter.com/mdempsky/status/1321894360116420608
GitHub
cmd/compile: use devirtualization in escape analysis · Issue #33160 · golang/go
#19361 introduced devirtualization when the concrete type is known statically. This would be extremely useful to compensate for the unfortunate design of the hash.Hash functions, which make it impo...
go-ruleguard теперь умненький и ловит такие (редкие надеюсь) случаи:
Спасибо Искандеру за ревью и подсказки.
лайк-репост-колокольчик https://twitter.com/oleg_kovalov/status/1334522123449217025
mu.Lock()
defer mu.Lock() // <- bad one
Спасибо Искандеру за ревью и подсказки.
лайк-репост-колокольчик https://twitter.com/oleg_kovalov/status/1334522123449217025
Twitter
Oleg Kovalov
There is no reason for not having a check for it. ;) I wrote a #golang ruleguard pattern for it, check it out: mu.Lock() defer mu.Lock() // <- bad one (same applies to RLock) https://t.co/qMUF1tPUYT CC: @mvdan_ @pleitzler
oleg_log
Тож хорошая штука, ioutil всегда был 5м колесом, радует то, что не изменилось апи (что очевидно, но приятно). И любимая 1.х совместимость на месте.
Да блееееееен, почему люди не читают ничего. Известно же, что 1.х стабилен и заморожен.
https://twitter.com/_rsc/status/1351676094664110082
(спасибо @golang_for_two за твит)
https://twitter.com/_rsc/status/1351676094664110082
(спасибо @golang_for_two за твит)
Twitter
Russ Cox
Seeing discussion of io/ioutil deprecation in various places. To be clear: in Go, “deprecated” means only “there is a better, preferred way.” It does not mean “will break in the future.” Today’s programs using ioutil.ReadFile and friends will keep working…
Forwarded from 🇺🇦 Go performance channel (Oleg Kovalov)
Hey #gophers ! #golang compiler and runtime meeting notes are public!
Subscribe and follow all the new and amazing things happening in Go 🎉🎉🎉
https://github.com/golang/go/issues/43930
Subscribe and follow all the new and amazing things happening in Go 🎉🎉🎉
https://github.com/golang/go/issues/43930
GitHub
Go compiler and runtime meeting notes · Issue #43930 · golang/go
Google's Go compiler and runtime team meets periodically (roughly weekly) to discuss ongoing development of the compiler and runtime. While not open to the public, there's been desire by th...
Как Tailscale изобретали хранение IP адреса.
Если без шуток, то довольно интересная вещь. https://t.me/go_perf/75
Хотя лучше бы увидеть фиксы на https://github.com/golang/go/issues/24416 и https://github.com/golang/go/issues/9455 (optimize large structs & int128)
Если без шуток, то довольно интересная вещь. https://t.me/go_perf/75
Хотя лучше бы увидеть фиксы на https://github.com/golang/go/issues/24416 и https://github.com/golang/go/issues/9455 (optimize large structs & int128)
Telegram
Go performance channel
Better IP addr in #golang by twitter.com/tailscale (and twitter.com/bradfitz)
The article isn’t about performance only, but the criteria for a new type are well described https://tailscale.com/blog/netaddr-new-ip-type-for-go/
The article isn’t about performance only, but the criteria for a new type are well described https://tailscale.com/blog/netaddr-new-ip-type-for-go/
Forwarded from Go Дайджест
Где-то плачет от счастья 🥲 маленький Олег. 🤣😂
https://mobile.twitter.com/inancgumus/status/1397168068955021312
https://mobile.twitter.com/inancgumus/status/1397168068955021312
Фаззинг в мастер смержили, ждем 1.18 в феврале 2022, вряд ли что-то изменится
https://twitter.com/katie_hockman/status/1440082486692773897
https://twitter.com/katie_hockman/status/1440082486692773897
Twitter
Katie Hockman
It's happening!! 🎉 Native fuzzing will be in Go 1.18 We just merged the dev.fuzz branch into master ✅github.com/golang/go/comm… #golang
oleg_log
Все же понедельник начинается с хорошего: долгожданный релиз go-critic. - We're hitting the 100 checkers threshold! 🎉 - Several old checkers are rewritten in ruleguard rules! 🎉 - Our project passed 1000 stars at last! 🎉 https://github.com/go-critic/go-c…
Можете еще ретвитнуть) https://twitter.com/oleg_kovalov/status/1450038159614558208
Twitter
Oleg Kovalov
We have published a new go-critic release, free to update and make your #golang code better github.com/go-critic/go-c… We're hitting the 100 checkers threshold! 🎉 Several old checkers are rewritten in ruleguard rules! 🎉 Our project passed 1000 stars at last!…
Forwarded from 🇺🇦 Go performance channel (Oleg Kovalov)
Best #golang release ever (again?). Check replies for more details!
https://twitter.com/mvdan_/status/1456947756925399040
https://twitter.com/mvdan_/status/1456947756925399040
Twitter
Daniel Martí
Here's a list of some changes to look forward to in #golang 1.18! The first beta should be out in a month, and the final release in three months. Each change with a link, so you can read more.
Forwarded from 🇺🇦 Go performance channel (Oleg Kovalov)
Unpopular opinion: this #golang CL is better then generics https://go-review.googlesource.com/c/go/+/333529/
Related issue https://github.com/golang/go/issues/47056
Super kudos for @dvyukov and @llvmorg team
Related issue https://github.com/golang/go/issues/47056
Super kudos for @dvyukov and @llvmorg team
GitHub
testing: provide a way to work around "race: limit on 8128 simultaneously alive goroutines is exceeded" error · Issue #47056 ·…
$ go version go version devel go1.17-dc00dc6c6b Thu Jun 10 12:41:37 2021 +0000 linux/amd64 Issue #38184 seems to be a reasonably hard limit in the race detector library, but it's not always...
oleg_log
Про внутренности Go fuzz в 1.18 от автора (ну одного из, но который ушел в саббатикал, хех) https://jayconrod.com/posts/123/internals-of-go-s-new-fuzzing-system Кажется похожее было и о go-fuzz от Вьюкова, может даже в репо, проверять я не буду.
Короч fuzzing еще не зарелижен, а никого из авторов в команде уже нет. Сильно....
https://twitter.com/katie_hockman/status/1494701223538216965
https://twitter.com/katie_hockman/status/1494701223538216965
Forwarded from 🇺🇦 Go performance channel (Oleg)
🎉 Go 1.23 Release Candidate 1 is released!
🏃♂️ Run it in dev! Run it in prod! File bugs! https://go.dev/issue/new
🔈 Announcement: https://groups.google.com/g/golang-announce/c/8ciOP5ve_CM
📦 Download: https://go.dev/dl/#go1.23rc1
#golang
🏃♂️ Run it in dev! Run it in prod! File bugs! https://go.dev/issue/new
🔈 Announcement: https://groups.google.com/g/golang-announce/c/8ciOP5ve_CM
📦 Download: https://go.dev/dl/#go1.23rc1
#golang
GitHub
GitHub is where people build software. More than 100 million people use GitHub to discover, fork, and contribute to over 420 million projects.