Home liberachat/#haskell: Logs Calendar

Logs: liberachat/#haskell

←Prev  Next→
Page 1 .. 420 421 422 423 424 425 426 427 428 429 430 .. 17997
1,799,659 events total
2021-06-12 21:23:18 <dminuoso> aerkenemesis: Mmm, with cabal the bug triggers direclty on building lib/Language/Leash/Ast.hs,
2021-06-12 21:23:32 <dminuoso> Judging from the symbol name, its the call to makeBaseFunctor
2021-06-12 21:23:37 <dminuoso> (or splice, rather)
2021-06-12 21:24:41 merijn joins (~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-12 21:24:44 dmwit_ is now known as dmwit
2021-06-12 21:26:18 <dminuoso> aerkenemesis: and it seems to triggers right around adding -prof to ghc
2021-06-12 21:26:40 <DigitalKiwi> a lot of the linked issues say w/e was supposedly fixed in 8.4.x ... regression?
2021-06-12 21:27:00 <aerkenemesis> I can't see any evidence of profiling being enabled in the nix build though
2021-06-12 21:27:15 <dminuoso> aerkenemesis: I got a workaround.
2021-06-12 21:27:22 <dminuoso> aerkenemesis: Add {-# OPTIONS_GHC -fno-prof-auto #-} on Ast.hs
2021-06-12 21:27:24 <aerkenemesis> DigitalKiwi I could try to back off to 8.3
2021-06-12 21:27:26 <dminuoso> Oh wait.
2021-06-12 21:27:28 <aerkenemesis> 8.4*
2021-06-12 21:27:31 <dminuoso> No. mmm
2021-06-12 21:27:53 <DigitalKiwi> https://gitlab.haskell.org/ghc/ghc/-/issues/14931
2021-06-12 21:28:00 <dminuoso> aerkenemesis: https://gitlab.haskell.org/ghc/ghc/-/issues/18320
2021-06-12 21:28:05 <dminuoso> This is the correct bug report
2021-06-12 21:28:08 allbery_b joins (~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-12 21:28:35 <DigitalKiwi> 8.4.2 to be safe i guess lol
2021-06-12 21:28:52 <DigitalKiwi> https://gitlab.haskell.org/ghc/ghc/-/issues/14705
2021-06-12 21:30:57 <aerkenemesis> I tried the `-fno-prof-auto` trick, even put it globally in the cabal file, didn't work
2021-06-12 21:31:03 × slack1256 quits (~slack1256@181.203.57.171) (Remote host closed the connection)
2021-06-12 21:31:18 <aerkenemesis> I'mma try and find a nixpkgs release that has ghc 8.4.2 and try that
2021-06-12 21:31:21 <dminuoso> aerkenemesis: Go file a bug report. This myriad of related bug reports suggests there's a deeper issue here.
2021-06-12 21:31:35 <dminuoso> I can reproduce on 8.8.1 at least
2021-06-12 21:31:39 <aerkenemesis> dminuoso I will
2021-06-12 21:31:43 × geekosaur quits (~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 272 seconds)
2021-06-12 21:31:51 allbery_b is now known as geekosaur
2021-06-12 21:32:03 <dminuoso> aerkenemesis: Like it has been pointed out by Ryan in one issue, its not even about -fprof-auto, mere -prof triggers it
2021-06-12 21:32:09 <dminuoso> you can verify by
2021-06-12 21:32:17 <dminuoso> run `cabal -v build --enable-library-profiling`
2021-06-12 21:32:30 <dminuoso> copy the command, and just strip the two profiling flags, it will build. add -prof back in, it breaks
2021-06-12 21:34:52 × amahl quits (~amahl@87-95-128-122.bb.dnainternet.fi) (Remote host closed the connection)
2021-06-12 21:35:00 waleee joins (~waleee@h-98-128-228-119.NA.cust.bahnhof.se)
2021-06-12 21:35:09 <geekosaur> yes, I assumed this bug because it's somewhat hard to fix at present; TH doesn't sufficiently differentiate between build time and run time
2021-06-12 21:35:14 <dminuoso> aerkenemesis: as a hotfix, you can patch up the callCabal2nix generated derivation to remove that configure flag
2021-06-12 21:35:16 <geekosaur> (this also affects cross compilation)
2021-06-12 21:35:37 Lycurgus joins (~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-12 21:36:04 <dminuoso> overrideCabal drv (drv: { enableLibraryProfiling = false; });
2021-06-12 21:36:07 <dminuoso> ought to do the trick
2021-06-12 21:36:09 <geekosaur> so it tries to find a symbol from a profiling library instead of the normal one it's passed, iirc
2021-06-12 21:36:32 <geekosaur> or possibly the other way around since the TH env supposedly shouldn't need profiling
2021-06-12 21:37:15 <aerkenemesis> I added to that already existing bug report
2021-06-12 21:37:18 <janus> hmm i would like a notification when those linked open issues are fixed, but the "notifications" slider is somehow disabled ...
2021-06-12 21:37:22 <aerkenemesis> https://gitlab.haskell.org/ghc/ghc/-/issues/18320
2021-06-12 21:37:47 <dminuoso> aerkenemesis: Let me know if overriding the derivation like that works.
2021-06-12 21:38:04 <DigitalKiwi> nix-env -f channel:nixos-20.03 -qaP -A haskell.compiler has 8.4.4
2021-06-12 21:39:36 <dminuoso> geekosaur: Wouldn't that suggest that TH splices never work if spliced into a library built with profiling enabled?
2021-06-12 21:39:51 <DigitalKiwi> just like in case it helps no idea if it does or not >.>
2021-06-12 21:39:52 haltux joins (~haltux@a89-154-181-47.cpe.netcabo.pt)
2021-06-12 21:40:11 <geekosaur> *and* there's no profiling version of a dependency from which a spliced symbol comes
2021-06-12 21:40:28 <aerkenemesis> dminuoso that did indeed work
2021-06-12 21:40:52 <geekosaur> which is probably rare these days since both cabal and stack normally build profiling versions of dependencies too
2021-06-12 21:41:23 <dminuoso> aerkenemesis: Cute project idea by the way. Do you have a more comprehensive description of the language somewhere?
2021-06-12 21:42:08 <aerkenemesis> dminuoso the readme is horribly out of date, but I suggest you look at the test/*.bats files
2021-06-12 21:42:40 <geekosaur> that said, the bug report aerkenemesis linked suggested a slightly different etiology (then again, not that different, instead of wrong library it's missing direct function witout profiling wrapper or something similar)
2021-06-12 21:43:12 <dminuoso> geekosaur: Heh, I can see fingers being pointed at cabal already.
2021-06-12 21:43:14 <aerkenemesis> I've kept it hidden away from the public because it's not usable yet, I only opened it up for this ghc bug :D
2021-06-12 21:43:41 <dminuoso> geekosaur: In the sense that it's cabals job to provide all the needed library flavors to the linker.
2021-06-12 21:44:22 <geekosaur> that wpould apply if it were exactly what the error message claimed (missing dependency library)
2021-06-12 21:44:26 <dminuoso> I recall some other similar issues where in certain situations quasiquoter splices with external FFI used in the quasiquoter source module lead to linker errors
2021-06-12 21:44:41 <geekosaur> but instead it's a wrong symbol so that points at ghc instead of cabal because symbols aren't up to cabal
2021-06-12 21:44:54 <dminuoso> mmm
2021-06-12 21:44:54 <geekosaur> (well, hashes are but this isn't part of a hash)
2021-06-12 21:45:03 <DigitalKiwi> as someone who mostly writes bash because i'm not good enough at haskell to do what i want as quickly i'm a fan ;p
2021-06-12 21:45:18 chisui joins (~chisui@200116b8666c8300b41cb8c96969b3fb.dip.versatel-1u1.de)
2021-06-12 21:45:40 <geekosaur> it also rules out nix except as a source of the profiling flag that triggers the bug
2021-06-12 21:46:36 <dminuoso> geekosaur: We ruled out nix by fact of triggering this bug outside of nix. :)
2021-06-12 21:46:55 <geekosaur> you had to specify the profiling flag yourself though, didn't you?
2021-06-12 21:46:59 <dminuoso> Yeah.
2021-06-12 21:47:08 <geekosaur> so where's it coming from in the nix case?
2021-06-12 21:47:25 <sshine> I want to model a language that has uint8, uint16, uint24, ..., uint256, and int8, ..., int256. on the one hand, I want to focus on ergonomics, so having UInt8 as a data constructor. on the other hand, that leads to some annoying repetition. I thought of creating an Enum type and have 'UInt Bits8_256 | Int Bits8_256' and create pattern aliases for convenience... does the amount of constructors impair
2021-06-12 21:47:28 <dminuoso> nix automatically builds profiling libraries by default unless you specify otherwise
2021-06-12 21:47:31 <sshine> performance (an Enum with 32 values) vs. simply using integers?
2021-06-12 21:47:34 <DigitalKiwi> haskell4nix
2021-06-12 21:48:05 <aerkenemesis> geekosaur dminuoso figured out that library profiling have to be explicitly disabled with callCabal2Nix
2021-06-12 21:49:42 <dminuoso> aerkenemesis: oh you can also use `disableLibraryProfiling` directly, no need to manually fiddle around with overrideCabal :)
2021-06-12 21:49:56 <aerkenemesis> If you're interested the diff for the fix is here https://pastebin.com/A5Hq2Nub
2021-06-12 21:50:13 jakalx parts (~jakalx@base.jakalx.net) (Error from remote client)
2021-06-12 21:50:31 <dminuoso> (i.e. pkgs.haskell.lib.disableLibraryProfiling)
2021-06-12 21:50:33 <dminuoso> Looks a bit nicer :0
2021-06-12 21:51:11 <aerkenemesis> right, I'll have to look at what the options are. Thanks a ton for the help though, the project moves on again :)
2021-06-12 21:51:27 <aerkenemesis> and hopefully some pressure on the GHC team to fix this issue
2021-06-12 21:51:38 <DigitalKiwi> plz don't make me go to pastebin dot com ;(
2021-06-12 21:51:51 <aerkenemesis> haha, what's what the cool kids use these days?
2021-06-12 21:52:03 <dminuoso> @where paste
2021-06-12 21:52:03 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2021-06-12 21:52:03 geekosaur has an extension that forces the raw link for pastebin
2021-06-12 21:52:04 <aerkenemesis> I realize I could just have linked my gitlab commit
2021-06-12 21:52:22 pkkm joins (~pkkm@dgs4.neoplus.adsl.tpnet.pl)
2021-06-12 21:52:25 <dminuoso> aerkenemesis: Of course that will not work if you disable access to your gitlab project again.
2021-06-12 21:52:27 <dminuoso> ;)
2021-06-12 21:52:35 <DigitalKiwi> https://mostlyabsurd.com/files/2021-06-12-215207_904x1430_scrot.png
2021-06-12 21:52:40 <aerkenemesis> I'll keep it open for the sake of the bug report :D
2021-06-12 21:53:41 × boxscape quits (~boxscape@user/boxscape) (Quit: Connection closed)
2021-06-12 21:53:59 × ozataman quits (~ozataman@71.190.112.58) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-12 21:54:08 boxscape joins (~boxscape@user/boxscape)
2021-06-12 21:54:19 machinedgod joins (~machinedg@24.105.81.50)
2021-06-12 21:54:45 <geekosaur> https://github.com/jperkin/pastebin-raw-text
2021-06-12 21:55:02 <geekosaur> for chrome, no idea about firefox equivalent

All times are in UTC.