divVerent / aaaaxy

A nonlinear 2D puzzle platformer taking place in impossible spaces.
Apache License 2.0
207 stars 9 forks source link

Upgrade to Go 1.22 #343

Closed divVerent closed 1 month ago

divVerent commented 4 months ago

Right now I am building with Go 1.20. The game is known to work fine in Go 1.22.

Main caveats:

https://go.dev/doc/go1.20

Also, Go 1.22 might be the next wall because:

https://go.dev/doc/go1.22

Thus, before making the switch, it may be worth trying to benchmark it to see if it's even justified to drop OS compatibility at this point (given no library that the game uses actually requires a newer Go version yet).

divVerent commented 4 months ago

I've acquired a Macbook Pro (2012) and am currently testing the build there. This one officially can run Catalina, so for now I'm considering Go 1.22 "the wall" for macOS, however I will compare performance in Go 1.20 vs Go 1.22 on that device to see if there's a compelling reason to upgrade there.

divVerent commented 2 months ago

Looks like this question stops asking itself - go-winio requires Go 1.21 or higher now, and as such I am forced to upgrade.

So next release will be with Go 1.21, and the release after will use Go 1.22 to ensure the loopvar change is harmless.

divVerent commented 2 months ago

Added an automated test for Go 1.22 to check if loopvars change is safe.

divVerent commented 1 month ago

1.22 has been done. New releases will be in 1.22.