18:10:35 #startmeeting Go SIG Meeting 18:10:35 Meeting started Mon Aug 15 18:10:35 2022 UTC. 18:10:35 This meeting is logged and archived in a public location. 18:10:35 The chair is gotmax[m]. Information about MeetBot at https://fedoraproject.org/wiki/Zodbot#Meeting_Functions. 18:10:35 Useful Commands: #action #agreed #halp #info #idea #link #topic. 18:10:35 The meeting name has been set to 'go_sig_meeting' 18:10:49 #topic Salutations 18:10:58 .hello gotmax23 18:11:01 gotmax[m]: gotmax23 'Maxwell G' 18:11:43 .hello eclipseo 18:11:44 eclipseo: eclipseo 'Robert-André Mauchin' 18:12:17 #chair eclipseo 18:12:17 Current chairs: eclipseo gotmax[m] 18:12:26 #chair gotmax 18:12:26 Current chairs: eclipseo gotmax gotmax[m] 18:12:32 .hello mroche 18:12:32 mroche: mroche 'Michael Rochefort' 18:12:33 Alex is out today, I’ll be intermittent 18:12:45 Ack. 18:13:12 #chair mikelo_m[m] 18:13:12 Current chairs: eclipseo gotmax gotmax[m] mikelo_m[m] 18:13:14 .hello mikelo2 18:13:15 mikelo_m[m]: mikelo2 'Mikel Olasagasti Uranga' 18:13:48 #chair mroche 18:13:48 Current chairs: eclipseo gotmax gotmax[m] mikelo_m[m] mroche 18:14:01 I did some work towards https://pagure.io/GoSIG/go-sig/issue/46 . I'm not sure if anyone has anything else they'd like to bring up. 18:14:34 I'll wait until :16 to start 18:15:59 The only issues tagged for meeting is #42 which I think was discussed previously? 18:16:16 That's great news, gotmax (He/Him) 18:16:40 There's a short update, but I'll start with: 18:16:59 #topic Universal bundled provides script - https://pagure.io/GoSIG/go-sig/issue/46 18:17:25 so two words about his: ! 18:18:05 1. Python 2. Reads modules.txt and not go.mod for more accuracy 18:18:12 So, basically I started writing a dependency generator to generate these Provides. It requires that you add `%license vendor/modules.txt` and then it processes the file. 18:18:26 Then, none of this would have to be done specfile side. 18:18:38 Is that something people would be interested in? 18:19:09 The underlying script that actually processes the modules.txt is based off of https://src.fedoraproject.org/rpms/syncthing/blob/rawhide/f/vendor2provides.py 18:19:25 yeah but why add it to %license?? 18:20:30 Well, it needs to be somewhere in the buildroot for the dependency generator to find it and process it. I suppose it could be marked as `%ghost` and not installed in the package, but I think it's a good idea to include the data about the actual dependencies. 18:20:40 LGTM to use that one 18:21:01 When vendoring, we also really should be including the licenses of the vendored dependencies when calculating the License tag. 18:21:02 I also looked into that 18:21:49 in %doc maybe, but %license is specifically for license stuff, which vendor.txt is not, there is no license info in it 18:22:00 %doc would work 18:22:44 gotmax[m]: Problem with this is that some packages are pulling 600+ deps 18:22:54 .hello copperi 18:22:55 copperi[m]: copperi 'Jan Kuparinen' 18:23:01 It's more clean cut for vendoring 18:23:04 or we only do the immediate layer of dep 18:23:08 I also started working on a script for this 18:23:29 Hello copperi 18:23:36 #chair copperi 18:23:36 Current chairs: copperi eclipseo gotmax gotmax[m] mikelo_m[m] mroche 18:23:45 For unbundled packages, I agree with you; it's not practical to calculate all of the licenses. 18:24:20 eclipseo: I’ve been working to package tailscale, it takes ~640 18:24:41 How are you planning on approaching determining dependency licenses? 18:24:52 gotmax[m]: For vendoring, we also should include the licenses. 18:25:11 I wrote a script that uses askalono to scan a vendor directory 18:25:32 s/licenses/license files in the final package/ 18:25:53 Ah, couldn't remember if `go mod vendor` also included licenses or just necessary module code. 18:26:26 I guess that's not too much to discuss here. I just wanted to point out the work I've been doing. 18:26:38 s/./ and solicit feedback/ 18:27:14 thanks for all your work 18:27:44 Something I've been meaning to look back on is whether the vendoring process in 1.18+ includes all deps. There was something that caught my eye about dependency tracking that I need to revisit. 18:27:44 Sure :) 18:28:23 Had to do with transitive deps and similar, but that might have just been go.mod related. 18:28:59 Yeah, I'm pretty sure it includes everything, besides the go.mod files of the dependencies. 18:29:03 Otherwise, it wouldn't be effective 18:29:24 Based on the packages I build, it seems to catch everything and I've been using 1.18+ 18:30:03 What are those packages again? I believe they're not all in Fedora? 18:30:11 (Just curious :-)) 18:31:15 gotmax[m], if I want to build a bundled tailscale, that currently needs +600 deps, are all those deps need to be removed from Fedora? that's something that *I* still don't have clear 18:31:44 mikelo: Nothing needs to be removed from Fedora to bundle. 18:31:51 gotmax[m], ack 18:31:52 The bundled and non-bundled packages can live side by side 18:32:32 Bunch of cloud native/focused tooling. https://pagure.io/mroche/cloud-native-utilities 18:32:35 this comment confuses me https://pagure.io/GoSIG/go-sig/issue/43#comment-807427 18:32:50 mroche: Dead link 18:33:14 https://pagure.io/mroche/cloud-utilities 18:33:22 mikelo: That's if we bundled docker which already has a bunch of dependents 18:33:26 Mixed my COPR name with the repo name 18:33:43 Specifically, things depend on the -devel package which would go away if we bundled. 18:34:03 For new packages, that's not a problem 18:34:19 Maybe there was confusion between `dependents` and `dependencies`? 18:34:21 Helm is the only one in Fedora, but it's several minor versions behind. 18:34:36 If I remember correctly. 18:34:50 I'm thinking we should bundle helm until the docker packages that are breaking it get sorted out, but not really my decision 18:34:58 mroche: Yes, it's behind 18:35:44 Hence why I have it bundled in my COPR. I believe Davide was doing the helm packaging work at one point 18:36:15 Helm is in pretty bad shape right now 18:36:23 * gotmax[m] waves to Davide Cavalca 18:36:25 gotmax[m], based on your comment for example bundling golang-github-spf13-viper would also require to bundle everything that depends on it? 13 direct deps based on my query 18:36:42 I spent a good amount of time a few weeks ago to try and get it sorted out, but I can't get the tests for one of the dependencies to pass properly 18:36:59 I put the details on the bugzilla, on a plane right now so I won't attempt to look it up 18:37:25 Bugzilla barely even loads when I'm not on a plane... 18:37:33 Davide Cavalca: link to the problematic build? It's ok to zap some test if it's not some ABI problem 18:37:50 oki 18:38:00 so, the problem is that the test exercises code that's specifically used by helm 18:38:08 so it seemed like a bad idea to just neuter it 18:39:10 gotmax[m], what I'm afraid of is that if we start bundling things that touch too many parts, we may end bundling everything.. which I'm not sure if it's a good thing or not 18:39:24 Davide Cavalca: Do you at least remember the name of the Bugzilla? I'm trying to search for it. 18:39:41 mikelo: The list in that issue should include recurisve deps 18:39:45 it was oras 18:40:33 #topic Bundling and helm 18:40:37 gotmax[m], doing: dnf repoquery --disablerepo="*" --enablerepo=rawhide --whatrequires "golang-github-spf13-viper-devel" I see vultr-cli-devel that I don't see in the list 18:40:39 https://bugzilla.redhat.com/show_bug.cgi?id=1971091 18:40:41 Just switching the topic for organizational purposes 18:41:15 davide: Was it the 32bit arch test failure BZ? 18:41:35 Disregard, element lagged 18:41:47 it was an import conflict causing a failure in one of the docker-related tests 18:43:27 mikelo: Hmm, I'll have to look. It might be needed to query deeper. 18:43:38 I think I saw oras pop up as a dependency in several of my packages, will double check. 18:43:38 Thanks for pointing that out 18:43:50 ok I dug it up: https://bugzilla.redhat.com/show_bug.cgi?id=2111089 18:45:14 Nope, just helm 18:45:40 Davide Cavalca: Nothing depends on golang-helm-3-devel, so if you need to bundle that, it won't affect other packages 18:45:41 didn't I update oras a while ago? 18:46:35 i dd not apparently 18:47:48 Okay, just so I don't forget: 18:47:55 ah yes, i've got oras in my package ready for upload 18:48:21 #action gotmax[m] to continue working on Provides generator and license scanner for vendored go packages 18:48:46 Ack. Do we want to continue to discussing here or should I move on? 18:49:06 we can move on for me 18:49:30 Ack 18:49:40 Anything else from anyone else? 18:50:35 #topic Discuss dropping golang and go libraries/applications from %ix86 - https://pagure.io/GoSIG/go-sig/issue/42 18:50:50 #info A new version of go2rpm is out: https://bodhi.fedoraproject.org/updates/FEDORA-2022-5904cd0e8f 18:51:11 #info Testing would be appreciated 18:51:17 #undo 18:51:17 Removing item from minutes: INFO by gotmax[m] at 18:51:11 : Testing would be appreciated 18:51:31 Well, it's going to stable today, so not much to test 18:52:00 The main change is the use of `%go2rpm -f` by default. 18:52:12 And there's some bugfixes 18:52:24 ell I've been usint it intensively this weekend with no issue 18:53:07 By default, spoecfiles now have... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/e55ca1bda1d018f2797f73625d1931a0f56b36b4) 18:53:13 The warning can probably be made less intrusive 18:53:27 But you can use `-q` for it to be excluded from the generated specfile 18:53:54 Just wanted to let y'all know and see if there were questions 18:53:58 or comments 18:54:02 what's the policy for -f on updated packages? 18:54:03 * By default, spoecfiles now have... (full message at https://libera.ems.host/_matrix/media/r0/download/libera.chat/24b2e0d098d0aeb21a31c9baea29ff8590634dce) 18:54:24 typo in line 5 18:55:12 If the package has dependents that still are built for i686, then it should stay on that arch 18:55:14 .hello fuller 18:55:15 MarkEFuller[m]1: fuller 'Mark E. Fuller' 18:57:16 For `-devel` only packages, the dependents will still be able to pull in the -devel packages on i686, but I don't want to rely on that or have library breakages on that arch that aren't caught until the dependents FTBFS. 18:57:25 For cel, it's a bit of a different story 18:57:41 Because of the whole java situation, and the amount of dependents it has 18:57:59 #chair MarkEFuller[m]1 18:57:59 Current chairs: MarkEFuller[m]1 copperi eclipseo gotmax gotmax[m] mikelo_m[m] mroche 18:58:43 Mark E. Fuller: Indeed, I should fix that typo. Too bad I didn't catch it before :(. 19:00:06 * eclipseo posted a file: (6KiB) < https://libera.ems.host/_matrix/media/r0/download/fedora.im/36fc93e87225c742e4c9a7c2e754202b6a9cbe4c/Docker.md > 19:00:14 status on Docker 19:00:32 That is a huge list :( 19:00:33 slow progress, but i'm updating a lot of stuff in the process 19:01:16 i'm working on golang-x-build right now 19:01:29 will continue docker after it 19:01:30 #topic Docker ecosystem 19:01:40 I don't think golang-x-build is needed for anything 19:03:43 indeed -_- 19:03:56 You want to orphan or retire it? 19:05:49 it provides binaries but i'm not sure who is consuming them 19:06:19 Wasn't it broken by that grpc package that was retired? 19:08:25 don't see any indication of that 19:09:15 Hmm, okay. I don't know if it was actually retired yet, but I think x-build depended on it. 19:09:48 I might be confused with something else, though 19:10:39 oh yes you're right 19:10:43 the grpc.go4 19:10:49 it was retired indeed 19:10:56 but that why i'm updating 19:11:08 it's not needed anymore in latest version 19:11:19 Ack 19:11:26 Alright, I think I'll move to open floor 19:11:28 #topic Open Floor 19:11:42 I plan to end this at 2:20 19:11:51 I don't want to go too far overtime 19:12:35 not sure if this was already discussed, but I've seen a bunch of ftbfs after the mass rebuild for missing test dependencies 19:12:47 but these packages were building fine before, so I'm not sure what changed 19:13:05 I think there might be some golist brokenness 19:13:10 https://bugzilla.redhat.com/show_bug.cgi?id=2113315 is an example (and my comment links to one I just fixed) 19:14:00 yeah i've seen a few ftbfs like this, i think some test were skipped before so the problem wasn;t showing 19:14:11 ah that would explain it 19:14:29 it's not a big deal to add them, thought it'd be nice for the generator to pick them up automatically 19:15:18 Last time, rebuilding golist with the new go version helped, I think 19:15:47 (golist powers `%go_generate_buildrequires`) 19:16:23 yeah but it happened with some with static buildrequires too, so something changed Go side 19:17:18 Well, both the generator and go2rpm use golist to find the dependencies 19:21:41 Anything else before I end the meeting? 19:22:17 not ok for me 19:22:44 *no 19:22:54 nothing here 19:23:05 Alright 19:23:09 #endmeeting