18:05:08 <gotmax[m]> #startmeeting Go SIG meeting
18:05:08 <zodbot> Meeting started Mon Aug 29 18:05:08 2022 UTC.
18:05:08 <zodbot> This meeting is logged and archived in a public location.
18:05:08 <zodbot> The chair is gotmax[m]. Information about MeetBot at https://fedoraproject.org/wiki/Zodbot#Meeting_Functions.
18:05:08 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
18:05:08 <zodbot> The meeting name has been set to 'go_sig_meeting'
18:05:17 <gotmax[m]> #chair gotmax
18:05:17 <zodbot> Current chairs: gotmax gotmax[m]
18:05:29 <gotmax> #chair eclipseo mikelo
18:05:29 <zodbot> Current chairs: eclipseo gotmax gotmax[m] mikelo
18:05:58 <gotmax[m]> #topic Howdy
18:06:30 <gotmax[m]> .hello gotmax23
18:06:31 <zodbot> gotmax[m]: gotmax23 'Maxwell G' <gotmax@e.email>
18:06:51 <eclipseo> .hello2
18:06:52 <zodbot> eclipseo: eclipseo 'Robert-André Mauchin' <zebob.m@gmail.com>
18:07:38 <gotmax> mikelo: Are you joining?
18:09:49 <mikelo> what's the difference between hello and chair?
18:10:12 <gotmax[m]> The chairs have extra permissions in the meeting
18:10:22 <mikelo> .hello2
18:10:23 <zodbot> mikelo: mikelo 'Miguel Angel Ortega Zapata' <mian.ortegaz@gmail.com>
18:10:24 <gotmax[m]> I know for sure that only chairs can end the meeting, I'm not sure whatelse
18:10:32 <mikelo> grrr, not that one
18:10:43 <gotmax[m]> `.hello` is just for introducing yourself
18:10:55 <gotmax[m]> You want `.hello mikelo2`
18:11:03 <mikelo> .hello mikelo2
18:11:04 <zodbot> mikelo: mikelo2 'Mikel Olasagasti Uranga' <mikel@olasagasti.info>
18:11:11 <gotmax[m]> Alright
18:11:27 <gotmax[m]> #topic To keep or not to keep golang-x-build
18:11:38 <gotmax[m]> #link https://pagure.io/GoSIG/go-sig/issue/47
18:11:49 <gotmax[m]> I'd vote to get rid of it
18:12:04 <gotmax[m]> eclipseo: Do you want to summarize the issue a bit?
18:12:12 <gotmax[m]> I guess people can just read the ticket also...
18:12:24 <eclipseo> So on one hand I have done half the work already, on the other hand I,m lazy and we could get rid of a handlful of package
18:12:25 <eclipseo> s
18:13:20 <mikelo> could it be a f38 goal? or is not that relevant?
18:13:25 <eclipseo> Yeah: golnag-x-build is a leaf packages that provides a handful of binaries used to develop Go itself. Updates requires significant new deps
18:13:45 <eclipseo> and gettting rid of it would cut significant number of packages
18:13:53 <mikelo> I'm asking because of those handful binaries
18:14:14 <eclipseo> TBH I don't know if anyone uses it
18:14:55 <eclipseo> People developping Go probbably have their own setup
18:14:55 <gotmax[m]> I don't think it's that popular, and we already have too many packages
18:15:03 <eclipseo> I think it was once required by something else, but now is not used anymore
18:16:33 <gotmax[m]> Fabio wrote a script that checks for leaves in the rust-sig that I'd like to adapt for our use
18:16:34 <gotmax[m]> https://pagure.io/ironthree/fedora-rust-sig-leaf-check
18:17:06 <gotmax[m]> I believe mikelo already found multiple leaves, so it would be good to check automatically to see how many there really are
18:17:11 <mikelo> https://packages.fedoraproject.org/pkgs/golang-x-build/golang-x-build/fedora-rawhide.html
18:17:35 <mikelo> gotmax[m], could that be another meeting topic?
18:17:49 <gotmax[m]> Sure
18:18:20 <gotmax[m]> mikelo eclipseo: Do you want to vote in the ticket?
18:19:53 <gotmax[m]> Or maybe it's not really a voting sort of thing. It's eclipseo's decision whether he wants to maintain it
18:20:17 <eclipseo> I do want opinion if it's worth it
18:21:06 <eclipseo> I don't mind putting the work but it's not priority and it's on Miro list for orphaning
18:21:53 <gotmax[m]> Ack
18:22:03 <gotmax[m]> So should we move on?
18:22:15 <eclipseo> ok
18:22:47 <gotmax[m]> re mikelo's comment on the issue: Not sure if this package is popular enough to warrant a change proposal
18:23:14 <gotmax[m]> But yes, it can always be picked up/unretired
18:23:41 <gotmax[m]> If you want to get rid of it, I'd suggest orphaning it so somebody could pick it up if they really care about it.
18:23:55 <gotmax[m]> Alright
18:24:11 <gotmax[m]> #topic Orphans in the go-sig [mikelo]
18:24:15 <gotmax[m]> I'll let you bring up the topic
18:24:43 <mikelo> gotmax[m], I propose the idea as some of the binaries may be used by go developers using Fedora. But otoh, I think they're very specific binaries not meant to be used by regular developers, people that doesn't mind to install them directly from source.
18:25:03 <gotmax[m]> #undo
18:25:03 <zodbot> Removing item from minutes: <MeetBot.items.Topic object at 0x7f0def3fb080>
18:25:27 <gotmax[m]> Yes, I agree. Go developers should know how to use `go install` ;-)
18:25:42 <QuLogic> .hello qulogic
18:25:43 <zodbot> QuLogic: qulogic 'Elliott Sales de Andrade' <quantum.analyst@gmail.com>
18:25:53 * gotmax[m] waves
18:26:08 <mikelo> hi QuLogic
18:26:24 <QuLogic> sorry I almost forgot, but caught up on chat so far now
18:26:53 <gotmax[m]> Okay, should we move on for real now?
18:26:55 <mikelo> #topic leaf check for go-sig
18:27:14 * gotmax[m] hands mikelo the mic
18:27:20 <mikelo> I've been checking some FTBFS packages and found some of them are not used anymore, at least using my query to see whatdepends on it. I would like to have a procedure to detect and retire non used libraries, as fixing FTBFS non used packages is a waste of time.
18:27:44 <mikelo> the link posted earlier by gotmax[m]++ from Fabio seems useful
18:27:44 <zodbot> mikelo: Karma for gotmax23 changed to 1 (for the current release cycle):  https://badges.fedoraproject.org/tags/cookie/any
18:28:51 <gotmax[m]> We could create some sort of tracker in the go-sig repo
18:29:10 <gotmax[m]> For now, we can just have humans open the issues based on packages that they notice
18:29:24 <gotmax[m]> But hopefully we can automate it more in the future
18:30:25 <mikelo> gotmax[m], have you tried Fabio's script?
18:30:44 <gotmax[m]> Well, it would need to be adapted
18:30:46 <gotmax[m]> So no
18:31:31 <mikelo> I was trying if with https://pagure.io/ironthree/fedora-rust-sig-leaf-check/blob/main/f/check_sig_leaf.py#_200 was enough
18:32:27 <gotmax[m]> There may be another part besides that that would need to be modified.
18:32:31 <gotmax[m]> I kind of want to modify it to use the dnf python API instead of shelling out to repoquery, because it's currently quite slow.
18:33:14 <gotmax[m]> Also, I'll have to look at at how it handles determining application packages that don't include binaries
18:33:22 <eclipseo> not sure if it will work as easily as we have more cyclic dependencies
18:33:26 <gotmax[m]> I have special logic that I use when doing the go rebuilds
18:33:42 <gotmax[m]> Yeah, the script specifically claims that it doesn't handle dep cycles
18:33:58 <QuLogic> there's just a list of (to be kept) exceptions, looks like
18:34:42 <gotmax[m]> Yeah, I can try to modify it, unless someone else wants to
18:34:51 <gotmax[m]> I'm a bit busy right now, though
18:35:07 <QuLogic> I'm giving it a go now, just changed rust-sig -> go-sig
18:35:23 <QuLogic> and dropped the exceptions
18:35:30 <mikelo> I guess that would final goal, but if we have a procedure to verify that really something is not used that we all agree that is correct, I guess documenting it would be a good first step
18:35:34 <gotmax[m]> Thanks
18:36:00 <gotmax[m]> I can create a pagure issue template for this if y'all want
18:36:27 <mikelo> gotmax[m], I like the idea
18:37:31 <gotmax[m]> #action gotmax to (hopefully remember to) create an issue template for Go SIG leaves
18:38:31 * gotmax[m] waits to see if there's anything else for this topic
18:39:16 <eclipseo> nothing much for me, still working on docker, slowly cause I had other obligations last week
18:39:30 <gotmax[m]> #topic Bundled Provides RPM generator
18:39:39 <gotmax[m]> #link https://pagure.io/go-rpm-macros/pull-request/49#
18:39:41 <gotmax[m]> #undo
18:39:41 <zodbot> Removing item from minutes: <MeetBot.items.Link object at 0x7f0def691550>
18:39:49 <gotmax[m]> #link https://pagure.io/go-rpm-macros/pull-request/49
18:40:01 <mikelo> gotmax[m], if instead of the template you want to share the query you use (i've lost it) I could propose a PR for the golang documentation
18:40:26 <gotmax[m]> Which golang documentation?
18:41:35 <mikelo> https://docs.fedoraproject.org/en-US/packaging-guidelines/Golang/
18:41:54 <mikelo> as a new section
18:41:54 <gotmax[m]> That wouldn't be the right place for it
18:42:04 <gotmax[m]> That's managed by the FPC and is specifically for making go packages
18:42:23 <mikelo> ack
18:42:39 <gotmax[m]> But it could be part of the go-sig repo
18:42:57 <gotmax[m]> mikelo: sudo dnf repoquery --repo=rawhide{,-source} --whatrequires 'golang-foo-devel' | grep '\.src$' | pkgname | sort -u
18:43:07 <gotmax[m]> * mikelo: `sudo dnf repoquery --repo=rawhide{,-source} --whatrequires 'golang-foo-devel' | grep '.src$' | pkgname | sort -u`
18:43:28 <gotmax[m]> Arg, matrix kind of mangled it
18:43:35 <gotmax> sudo dnf repoquery --repo=rawhide{,-source} --whatrequires 'golang-foo-devel' | grep '\.src$' | pkgname | sort -u
18:45:20 <mikelo> thanks
18:45:48 <gotmax[m]> Re the generator: I submitted a PR for it to go-rpm-macros
18:46:15 <gotmax[m]> Does anyone have any thoughts about this?
18:46:49 <eclipseo> looks good to me
18:47:32 <QuLogic> I don't like bundling, but the generator seems a good idea when it's necessary
18:47:35 <eclipseo> will need to update several packages on epel to take this into account
18:48:25 <gotmax[m]> So the regex would cover: `/usr/share/licenses/foo/modules.txt` and `/usr/share/licenses/foo/vendor/modules.txt` and even `/usr/share/licenses/foo/bar/foo/modules.txt`
18:48:43 <gotmax[m]> I tried to make it somewhat flexible
18:49:25 <gotmax[m]> I would like to package up docker-compose v2 as a bundled go package so that can serve as an example
18:51:30 <QuLogic> I expect it will only truly be tested by use in practice
18:51:34 <gotmax[m]> And if packages want to opt out, they can add `%global %__go_mod_vendor_provides %{nil}`
18:52:11 <gotmax[m]> Perhaps we can always bundle for EPEL and use it only where necessary for Fedora packages
18:52:45 <gotmax[m]> That would probably be a compromise to our earlier discussion about that
18:53:16 <gotmax[m]> For EPEL, we'd have to backport it. I'll probably create a separate go-rpm-macros-epel package for this
18:53:50 <gotmax[m]> So far, none of the Go SIG's contributions to the RHEL go-rpm-macros have been approved
18:53:57 <gotmax[m]> * RHEL go-rpm-macros package have been
18:56:12 <gotmax[m]> Okay, we're nearing out of time, so I'll move to open floor
18:56:16 <gotmax[m]> #topic Open Floor
18:56:39 <gotmax[m]> So, it seems that some library update has broken containerd
18:56:47 <gotmax[m]> #link https://koschei.fedoraproject.org/build/13581947
18:57:09 <gotmax[m]> The binary fails to build.
18:59:51 <eclipseo> it seems to be related to gogo/protobuf but I don't recall any update recently
19:01:29 <gotmax[m]> golang-google-genproto-devel was updated
19:02:03 <gotmax[m]> Some of the k8s packages were also
19:03:05 <gotmax[m]> BTW: I'd like to not go over :10
19:03:28 <mikelo> could it be related to https://github.com/containerd/typeurl/commit/e9aef6ca998ee16288dd78fb60bf531e2b725646 ?
19:04:33 <eclipseo> yes golang-github-containerd-typeurl I have updated, will look into it
19:05:13 <gotmax[m]> A good way to test this is to create a side tag, tag the old version into the side tag, and then do a scratch build with --target that-side-tag
19:05:33 <mikelo> and https://github.com/containerd/containerd/commit/96b16b447d06f65f7a715649b456cafc50fd0c22
19:05:35 <gotmax[m]> It should use the old version that's tagged into the side tag even if the NEVR is lower
19:08:25 <gotmax[m]> Also, we never decided on the meeting time.
19:08:53 <gotmax[m]> My schedule during the week is a bit of a mess right now, but this happened to work for me today.
19:09:02 <mikelo> alexsaezm, had that action iirc, but he was on PTO
19:09:25 <mikelo> or with post-vacation depression today
19:09:25 <gotmax[m]> Fair enough. There was some discussion on the ML, though.
19:09:41 <gotmax[m]> :)
19:09:49 <gotmax[m]> I feel like I had something else to bring up, but now I can't remember what it is
19:11:25 <mikelo> I posted yesterday, but if anyone has time, I need two new packages to fix a FTBFS https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2122023 & https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2122024 for https://koschei.fedoraproject.org/package/golang-github-protonmail-crypto
19:12:29 <gotmax[m]> Ack
19:12:43 <gotmax[m]> mikelo++ for all of your recent PRs :)
19:12:43 <zodbot> gotmax[m]: Karma for mikelo2 changed to 1 (for the current release cycle):  https://badges.fedoraproject.org/tags/cookie/any
19:13:44 <mikelo> I'm doing PRs to keep track, but I'm merging them if build in koji is fine
19:14:24 <gotmax[m]> Should be fine with me, but if you're doing a larger refactoring, wait for the maintainers ack
19:14:28 <gotmax[m]> *maintainer's
19:14:46 <mikelo> yes, that's I'm doing
19:14:57 <gotmax[m]> 👍️
19:15:06 <mikelo> like with https://src.fedoraproject.org/rpms/golang-github-lucas-clemente-quic/pull-request/3#request_diff
19:15:44 <mikelo> not a major refactor, but don't know if the cleanest way to skip that test
19:16:32 <gotmax[m]> Also, I'd suggest doing test builds in COPR if you're touching a library that a lot of things depend on: https://hackmd.io/@python-maint/rJSm5WC9Y
19:16:37 <eclipseo> got no issue with you merging mikelo
19:16:49 <mikelo> eclipseo, ok, thanks!
19:17:24 <mikelo> gotmax[m], I'll check that thanks
19:18:10 <mikelo> gotmax[m], if you have time, can you recheck https://src.fedoraproject.org/rpms/golang-github-aliyun-cli/pull-request/1 after my comments? I'll contact Brandon after
19:18:45 <gotmax[m]> I guess. I'd prefer to wait for the maintainer before merging, though
19:18:58 <gotmax[m]> Also, I'm a bit unsure about why there are to be two sources bundled in the package
19:19:05 <gotmax[m]> Not something that you did
19:19:11 <gotmax[m]> But it makes it really confusing and complicated
19:20:22 <mikelo> gotmax[m], I won't merge without Brandon's ack
19:20:39 <gotmax[m]> Ack ;-)
19:21:06 <mikelo> yes, the spec is very complex, it doesn't make any sense to have the openapi part as another go package
19:22:00 <gotmax[m]> I guess
19:22:05 <gotmax[m]> Okay, I'll close this out at :22 if there's nothing else
19:22:10 <gotmax[m]> Oh, it is :22
19:22:11 <gotmax[m]> :24
19:24:23 <eclipseo> ok for me
19:24:26 <gotmax[m]> #endmeeting