16:00:53 #startmeeting Go SIG meeting 16:00:53 Meeting started Tue Jun 25 16:00:53 2019 UTC. 16:00:53 This meeting is logged and archived in a public location. 16:00:53 The chair is jcajka. Information about MeetBot at http://wiki.debian.org/MeetBot. 16:00:53 Useful Commands: #action #agreed #halp #info #idea #link #topic. 16:00:53 The meeting name has been set to 'go_sig_meeting' 16:00:54 o/ 16:01:10 #topic Roll Call 16:01:15 #chair decathorpe 16:01:15 Current chairs: decathorpe jcajka 16:01:26 welcome :) 16:01:58 hello :) 16:02:08 hey 16:02:17 I'm going to grab food and be back in a bit 16:02:18 #chair Pharaoh_Atem 16:02:18 Current chairs: Pharaoh_Atem decathorpe jcajka 16:02:21 .hello bex 16:02:22 bexelbie: bex 'Brian (bex) Exelbierd' 16:02:28 .hello ngompa 16:02:29 Pharaoh_Atem: ngompa 'Neal Gompa' 16:06:09 .hello2 16:06:11 nim__: Sorry, but you don't exist 16:06:38 #chair nim 16:06:38 Current chairs: Pharaoh_Atem decathorpe jcajka nim 16:06:52 welcome everybody, lets move to Open floor as there are no tagged tickets 16:07:03 #topic Open Floor 16:07:07 .hello2 16:07:08 nim: nim 'None' 16:08:32 seems everything is fine for everyone :) 16:08:33 From my side just quick note that Go 1.13 change https://fedoraproject.org/wiki/Changes/golang1.13 is with wrangler/FESCO and as part of it I will set GOSUMDB=off and GOPROXY=direct 16:09:07 looking forward for comments on that 16:10:00 nim Did you see the ticket about the space bug for LDFlags? 16:10:16 bexelbie, yes I've seen it 16:11:12 bexelbie, since you've got a trivial workround, I will take some time to fix it 16:11:36 nim I only urge haste so we don't build up a bunch of extra spaces in distgit :) 16:11:44 bexelbie, I'm trying to make other Fedora stuff pass the FC31 deadline 16:12:27 bexelbie, so if it is just annoying, I won't priorize it 16:12:41 I understand, my statement was partially tongue in cheek 16:12:44 bexelbie, I don't think a lot of Go specs need special LDFLAGS 16:12:47 If I have time, I will submit a PR 16:13:03 bexelbie, I was quite surprised you found one ;) 16:13:08 I have another :) 16:13:20 nim I am lucky like that ... edge cases is my double middle name 16:13:47 decathorpe, sorry :) 16:14:15 yeah, syncthing's custom build system is terrifying 16:14:39 it's not hard to fix, just needs careful testing to check all the different bits that try to set LDFLAGS do not stomp on one another 16:15:07 and that the result is safe WRT packagers that call several times the logic that sets it 16:16:44 so I will look at it as soon as possible, but won't drop other Fedora stuff to do so unless it totally breaks a spec 16:16:56 If anyone wants to review the last of my 400^H^H packages needed for my app that'd be swell 16:17:24 (at least, while I still have a chance to make other stuff into FC31) 16:17:39 400? 😂️ that's awful 16:17:51 bexelbie, I'm sure eclipseo has reviews to trade :) 16:18:09 If you all think I am ready to read someone else's spec I am willing to try 16:18:20 bexelbie, seriously, did you really managed to find 400 Go projects eclispeo hadn't seen yet? 16:18:26 but I am not a proven packager, if it matters 16:18:31 no, I think I have 4 open reviews 16:18:46 working on some of them 16:18:55 you rock 16:18:57 ty 16:19:20 .hello qulogic 16:19:25 QuLogic: qulogic 'Elliott Sales de Andrade' 16:19:31 #chair QuLogic 16:19:31 Current chairs: Pharaoh_Atem QuLogic decathorpe jcajka nim 16:20:04 not sure where eclipseo is 16:20:08 * Eighth_Doctor waves 16:21:00 but the one thing about the mass rebuild I'd like to confirm is that the renames need Obsoletes 16:21:04 Pharaoh_Atem, BTW, other stuff will put rpm spec templates in the same place than go-rpm-templates with the same conventions 16:21:07 nim: I'm testing some code locally to make it so we can have distro-override for templates in rpmdev-newspec 16:21:53 that's been the blocker for the moment at getting this working, is that I want to make sure this works properly 16:22:35 Eighth_Doctor, just tell me if you need some things changes in the way we deploy go spec templates 16:22:46 I'll let you know as things come up ;) 16:22:54 QuLogic: I don't think -devel packages need obsoletes, they aren't supposed to be installed on systems 16:23:24 for packages that ship binaries, they definitely should use Provides and Obsoletes, as per the Packaging Guidelines 16:23:47 that doesn't mean they _aren't_ 16:23:55 Eighth_Doctor, of course, we have several spec templates for go, to adress several use cases, that may make things harder for you 16:24:10 QuLogic: they (IMO all) should with proper versioning as mentioned/documented in https://docs.fedoraproject.org/en-US/packaging-guidelines/#renaming-or-replacing-existing-packages 16:24:12 I have several for example 16:24:43 decathorpe, if obsoletes are needed it's propably possible to script them 16:25:04 right 16:25:04 otherwise you can end up with broken deps/"broken system" 16:25:30 there needs to be an update path 16:26:03 and adding a comment "this can be removed after branching F34" or something is always nice 16:26:45 if eclipseo is busy finishing the rest of the builds, I've built a list and can take care of it 16:26:48 Why f34? 16:26:54 decathorpe, in 99% of the case, generating the correct obsoletes is just querying FC30 for the package that provides the correct golang(import path) 16:26:57 hoping he was here to confirm though 16:27:05 bexelbie: random number > 31 😉️ 16:27:08 ahh 16:27:22 nim: yes, that's what I assumed 16:27:27 decathorpe, and making it < %{version}-%{release} 16:27:37 check the link jcajka posted, it should be at least N + 2 16:28:01 QuLogic: I know 16:28:21 bexelbie: because that's the maximum supported upgrade 16:28:30 bexelbie: ideally they stay there forever, but practically user don't mix(update) over several releases, so it can be technically dropped(but IMHO it is nice to keep it there) 16:28:35 decathorpe: yes, I should have tagged bexelbie only 16:29:01 no problem 16:30:21 anyway, we did hit one golist bug, eclipseo fixed it and I pushed it out, so afaict the rebuild is going fine 16:30:40 can't confirm exact numbers without eclipseo 16:30:54 one curious issue has popped up with my packages though 16:31:15 some dependencies now fail to resolve in koschei 16:31:28 heh, "some"... 16:31:31 decathorpe: do you have a link? 16:31:42 sure 16:32:10 the issues are: nothing provides golang(golang.org/x/sys/unix) golang(github.com/davecgh/go-spew/spew) golang(github.com/pmezard/go-difflib/difflib) 16:32:16 for example here: https://apps.fedoraproject.org/koschei/package/golang-github-oschwald-geoip2-golang?collection=f31 16:32:29 if someone feels strongly about it 16:32:31 I think I received notification for >200 of them 16:32:44 he can probably adapt the quick and dirty script 16:32:46 here 16:32:57 https://paste.fedoraproject.org/paste/LiHhKq3UWF0SckZ4ODoTZQ 16:32:57 iirc, I hit that recently too 16:33:01 decathorpe: I think it's because eclipseo retired them, but only build new ones in the side tag 16:33:06 https://paste.fedoraproject.org/paste/2Re3PQpj0V~4HTUzT7cW0Q 16:33:16 QuLogic: ah, that explains it. thanks 16:33:38 it should be reliable to detect what previous package is obsoleted by a new one 16:34:00 (at least it worked for me in the past) 16:34:26 because I'm fairly certain those are the ones that are named wrong 16:34:26 the output is not the exact block to cut and paste in the spec but that's easy to fix 16:35:11 QuLogic, eclipseo: it would be good to announce that(if there is no other way) or wait after the side tag is merged, IMO it is not good experience for other packagers 16:35:16 I see I even added logic to handle epochs (I was crazy last year) 16:36:08 and seems to me as avoidable 16:36:28 I could be wrong 16:38:07 QuLogic, eclipseo: anyway, how is the side tag going? 16:38:35 I guess retiring now ensures nothing's every rebuilt with the old name, but you'd have to confirm with eclipseo 16:39:24 jcajka: well, it exists now and eclipseo's been building on it 16:39:44 I left the rebuild to him though, so I can't say how far along exactly 16:39:50 QuLogic: if you do the obsoletes properly there is no issue and AFAIK you control both the new and old package(via SIG ACL) so you can make sure that nobody bumps the old one 16:40:16 *there shouldn't be any* ;) 16:40:41 ah, well, there were no obsoletes initially, which is why I wanted to confirm here 16:40:50 and just retire/clean up the old one aster the side tag is merged 16:41:04 aster -> after... 16:43:15 oh, also, there have been some issues with tests since they've been ignored for so long 16:43:43 eclipseo has just disabled them for now so we can build everything on time 16:43:58 I'm trying to file reports as I can 16:43:58 cool, please let me know if you would think that you will slip with the side tag closer to the mass rebuild than the 1w, as if "most"(~1/3) of the Go packages are FTBFS in Rawhide I will not be able to get relevant data on Go 1.13 with scratch mass-rebuild 16:44:33 QuLogic: that is rather unfortunate, but I would not block on that too, tracking bugs would be cool though 16:44:48 but I guess not necessary :) 16:47:58 for the record as of today we have 602 packages(IIRC that is bit less than last time, ~6m ago) that require golang in Rawhide 16:48:49 hmm, really? I count way more golang-* specs 16:49:55 QuLogic, some of those do not generate and devel file 16:50:03 any 16:50:46 but if I have this right, koji list-tagged f31-go --latest | wc -l says 212 (-2 headers) + a few before the tag, so I guess we're >1/3 through building over two weekends 16:51:50 QuLogic: it is base on BR 16:51:54 based... 16:52:39 most packages require it via "compiler(go-compiler)" 571 16:53:33 ah, I found on the side tag request, eclipseo estimates 1120(!) builds, so more like 1/5 16:54:22 yeah, it might be due to source only packages without tests run during build 16:54:40 so no BR on Go compiler 16:54:45 QuLogic, that looks more what like I'd expect 16:55:17 QuLogic, IIRC we reached ~900 rebuilds internally, and we don't cover the same span of Go software as Fedora 16:56:48 and review exception ticket lists 571 packages 16:57:22 jcajka, "new" srpm go packages will BR go-rpm-macros only 16:57:30 so ~50% of renames done and ~20% rebuilds; I expect things to go faster once the new packages are imported 16:58:03 QuLogic, there is an initial kernel of packages everything else uses 16:58:15 QuLogic, that needs to be there before doing the rest 16:58:32 the top of the hour is closing any more topics to discuss? 16:58:41 QuLogic, then ~ 500-600 simple packages with no complex dependency graph 16:58:52 nim: so there is no way now to tell which packages are using Go compiler? 16:58:56 QuLogic, and then you hit the hard spaguetti deps cases 16:59:37 jcajka, anything that BR go-rpm-macros will BR a golang compiler 16:59:46 jcajka, eitheir golang or gcc 16:59:57 jcajka, though I'm pretty sure we only use golang now 17:00:04 in which way? via what "requires" statement 17:00:09 ? 17:01:12 go-rpm-macros requires golang, golist and go-filesystem 17:01:21 on any arch that works 17:01:39 so golang is a second-level BR 17:01:57 so you there is no "easy" way how to switch go compiler??!! 17:02:07 hm... 17:02:42 jcajka, go-rpm-macros is arch-specific 17:03:01 there is no compiler meta package? 17:03:11 so it can theoritically require another compiler on arches where golang does not work 17:03:21 have you tested that? 17:03:48 jcajka, no, because at the point when this part was done 17:04:00 Fedora had already switched to golang on all arches 17:04:07 ok, I will rise that with FESCO as regression 17:04:25 and jchaloupka basically said 17:04:55 don't waste time on anything else than the golang compiler, we'll fix non golang compilers the day someone uses tham 17:04:56 them 17:05:02 nim honestly I don care what jchaloupka said 17:05:24 well that was the who i was working with at the time 17:06:12 jcajka, it's not hard to re-add a compiler indirection, but if not one uses it, no one will say if it works or not 17:06:47 old one worked... you have claimed that the new system is backwards compatible... 17:06:53 anyway we are on top of the hour, I believe we are all set and I need to go 17:07:05 jcajka, and it's not a regression because by that time the go-compiler package had already stopped providing more than one set of compiler macros per arch 17:07:37 jcajka, go-rpm-macros just ships the same macro files go-compiler shipped for all arches 17:07:44 nim: if you would have investigated(asked) you would have seen that if never did... 17:08:10 nim you are unfortunately ignoring the complexity of the problem 17:08:14 jcajka, jchaloupka was the go-compiler maintainer then 17:08:30 jcajka, I had no reason to second-guess him 17:08:31 as I have been/ am 17:10:02 #endmeeting