13:01:44 <petersen> #startmeeting Haskell SIG
13:01:44 <zodbot> Meeting started Tue Jul  7 13:01:44 2020 UTC.
13:01:44 <zodbot> This meeting is logged and archived in a public location.
13:01:44 <zodbot> The chair is petersen. Information about MeetBot at http://wiki.debian.org/MeetBot.
13:01:44 <zodbot> Useful Commands: #action #agreed #halp #info #idea #link #topic.
13:01:44 <zodbot> The meeting name has been set to 'haskell_sig'
13:01:56 <petersen> #meetingname haskell-sig
13:01:56 <zodbot> The meeting name has been set to 'haskell-sig'
13:02:14 <petersen> hello, welcome to the biweekly Haskell SIG meeting
13:03:07 * tristanC waves
13:03:22 <petersen> hello tristanC
13:08:10 <petersen> tristanC: great to see your Fedora Magazine article published, yay!
13:08:20 <petersen> #info https://fedoramagazine.org/getting-started-with-haskell-on-fedora/
13:08:45 <tristanC> petersen: you're welcome, and thank you for the great comment, i didn't knew the materials you shared
13:09:09 <petersen> Cool :)
13:09:31 <petersen> I only noticed it yesterday :-)
13:09:56 <petersen> Sorry for not contributing but you did a great job without me so it was good
13:10:22 <tristanC> thank you, appreciate the kind words :-)
13:10:26 <petersen> I don't have huge number of updates since last - I was mostly working on fbrnch
13:10:55 <petersen> I still want to implement topographic chain builds
13:11:13 <petersen> I found a library called async-pool which I think can do the heavy lifting
13:11:48 <petersen> Though i might also try leverage chain-build as a last resort for f33
13:12:02 <tristanC> that sounds interesting, could you tell a bit more what is topographic chain builds?
13:12:05 <petersen> or just go back to using fhpkg
13:12:46 <petersen> Basically the idea is to build a set of packages in build dependency order in parallel
13:13:46 <petersen> Originally i thought I could use a graph and async to control the builds but actually I think it will be rather complicated to implement although it sounds deceptively simple
13:13:59 <petersen> So that is where async-pool can come in
13:14:42 <petersen> It allows defining dependencies between tasks and has already been battle-tested - well used at least :)
13:15:06 <tristanC> i see, when we evaluated zuul for fedora ci, reverse rpm dependencies testing was considered, here are some note about that https://tree.taiga.io/project/morucci-software-factory/epic/3336
13:15:53 <petersen> To date I have basically just been building serially - well actually I cheat and do a couple of serial builds in opposite sorted directions otherwise it takes way to long
13:16:05 <petersen> Even that takes about a week to complete
13:16:13 <petersen> aha cool
13:16:41 <petersen> Also two more steps needed before building anything
13:16:58 <tristanC> yeah we didn't even pursue that story as it was deemed to costly to do it at the CI level
13:17:33 <petersen> Updating ghc git to 8.8.3 (though it is already in ghc:8.8) and refreshing to latest lts-16 minor release (currently 16.4) from 16.1
13:17:33 <tristanC> but it would be interesting to figure out efficient parallel build locally
13:18:01 <petersen> Yeah I don't have enough memory/cpu for that it be useful for me but yeah sure
13:18:29 <petersen> Building everything locally would probably take about half a day or less
13:18:50 <petersen> The overhead in koji with buildroot updates and arm is just huge
13:19:17 <petersen> That is why parallelizing is critical to speeding it up
13:19:33 <petersen> It the wait-repo etc that is the real handbrake
13:20:27 <petersen> fbrnch install basically replaces fhpkg install
13:20:56 <petersen> tristanC: I see
13:20:59 <tristanC> yeah i get that official koji build would be even more complicated, but if in half a day we could get feedback on what fails to build with a new dependency, that would be pretty neat no?
13:21:10 <petersen> So no plan for reverse dep CI?
13:21:30 <petersen> Right - I already built lts-16.1 locally
13:21:57 <petersen> And it is true if you have lots of memory and cpu you could cut down the time a lot more locally
13:22:09 <petersen> Probably rebuild everything in a few hours
13:22:24 <petersen> If it was parallel
13:22:38 <tristanC> well i think we are missing a logic/workflow to perform the reverse dep build, then we could hook CI if that makes sense
13:22:46 <petersen> Well once we have parallel koji it should be straight forward to do local parallel building too
13:22:56 <petersen> Okay
13:23:41 <tristanC> it's also not high on the priority as the side-tag approach seems to be working fine for now
13:23:56 <petersen> okay right
13:24:56 <tristanC> but i think it would be pretty neat if when submitting a PR to package A, then ci would validate the reverse dep too
13:25:14 <tristanC> perhaps not for package like gcc or ghc, but for smaller think like ghc-time-manager
13:25:20 <tristanC> things*
13:25:32 <petersen> True it would
13:26:02 <petersen> Also last weekend I released cabal-rpm-2.0.6 (not yet in Fedora I pushed 2.0.5.1 though)
13:26:17 <petersen> which has a lot of improvements and bugfixes in particular
13:28:56 <petersen> #info Here is the Change proposal for F33: https://fedoraproject.org/wiki/Changes/GHC_8.8_and_LTS16
13:29:12 <petersen> I think we are out of time unfortunately
13:29:24 <petersen> Thank you for the meeting!
13:29:32 <petersen> tristanC: I catch you later!
13:29:32 <tristanC> thanks petersen!
13:29:41 <petersen> Thanks too
13:29:45 <petersen> #endmeeting