Date: Sat, 6 Dec 2025 14:03:07 +0200 From: Volodymyr Kostyrko <arcade@b1t.name> To: Adam Weinberger <adamw@adamw.org>, freebsd-go@freebsd.org, FreeBSD Ports <freebsd-ports@freebsd.org> Subject: Re: Deprecating old Go versions (and the ports that use them) Message-ID: <6249093c-ce0b-4002-b87d-d6fd1f770e9e@b1t.name> In-Reply-To: <CAP7rwcj-h0xUJ6QJMVfi6JE3h1SDN44J43qzBgtWLUFS3EYdJQ@mail.gmail.com> References: <CAP7rwcj-h0xUJ6QJMVfi6JE3h1SDN44J43qzBgtWLUFS3EYdJQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
05.12.25 16:47, Adam Weinberger: > Hi everyone, > > I just scheduled 3/4 of our Go ports for removal, along with 75 ports. I > want to explain why, and what we should do about it. > > TL;DR--75 ports need to try altering USES=go:1.2x -> USES=go, because > likely none of the ports actually need to be deleted! > > This is going to cause a scramble up-front here, but it's for our own good. > ……… Big thanks for bringing it out. Just reached out to express a few points. 1. I found a tone of notification a little bit… threatening. As I see some changes should be done, there might be some prior headsup to ports@ at least (actually a lot of people would just ignore that I guess). 2. I got myself a little wondering why I was on the list. I searched for a list of ports, found none of them are actually mine, and only later discovered that one of my ports USES=go1.25, which grants me an early warning with no actual deprecation and removal woes. 3. Reading all of that actually expanded my knowledge about Go ecosystem, which is great, but I feel we are only fixing aftermath without further precautions to make sure this wouldn't happen again. I'm not a Go user, I just support a few ports I'm using so a) it would be easier to upgrade b) someone else could help me fix stuff. To do porting I viewed other port examples and Porters Handbook and the latter definitely misses proper explanation about Go versions, so I just followed what I felt was right by adding Go version to the port if default version in go.mod was different. I think a lot of porters might skip signing up to maillist so this bits of knowledge would be lost in a week when dust settles. So it would be nice to add some paragraph to Porter's Handbook at https://docs.freebsd.org/en/books/porters-handbook/special/#using-go or even better: https://docs.freebsd.org/en/books/porters-handbook/uses/index.html#uses-go Like this: === In Go, versions specified in `go.mod` are actually feature sets, not recommended compiler versions. This means specifying USES=go1.X changes only the Go compiler version used to compile your port and has nothing to do with `go.mod` contents. In fact, all supported Go versions should be able to compile all Go code for all provided feature sets. Please pin Go version only in case port definitely fails to compile with default compiler version as a quick-and-dirty fix (if you need to update port for security or other reasons). If Go port fails to compile with any Go compiler versions provided in ports this should be treated as an issue and fixed. You can reach out for help to freebsd-go@freebsd.org. === Sorry for random rants. In any case please consider posting a list of unfixed ports in a month or so to freebsd-go@ (or even freebsd-ports@?), me or somebody else might want to take maintainership. Big thanks! -- Sphinx of black quartz judge my vow.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6249093c-ce0b-4002-b87d-d6fd1f770e9e>
