| 10 Feb 2025 |
maralorn | sterni: I am here. I actually use ghcjs every day. I can tell you that we can drop it. | 17:02:15 |
emily | if there's agreement in principle I'm happy to help with the work, but not if there's just going to be another reason they have to stay on the other side of it. | 17:02:21 |
sterni (he/him) | that seems like a contradictory sentence… | 17:02:33 |
emily | sigh | 17:03:03 |
sterni (he/him) | emily: we can probably start by talking to Divam or whoever we know else we know at Obsidian. I also suspect that Mercury was using ghcjs at some point, we can probably also ask someone there. | 17:03:38 |
emily | let me know when you guys figure it out | 17:03:09 |
sterni (he/him) | maybe just asking informally on discourse is easier than a survey? | 17:04:14 |
maralorn | sterni: I have a call every 2 weeks with the obsidian people. You can believe me. | 17:04:18 |
sterni (he/him) | what exactly should I believe idk what we're talking about | 17:04:38 |
maralorn | They don’t use and don’t plan to use an up-to-date nixpkgs pin to use ghcjs. | 17:05:10 |
sterni (he/him) | emily: But you make a good point on bootstrapping, I realized yesterday that it may be extremely difficult to get rid of GHC 8.10.7 and that we kind of need its LLVM backend. | 17:05:14 |
sterni (he/him) | maralorn: why did they even upstream 8.10.7 ghcjs lol | 17:05:33 |
maralorn | Well, that was years ago and at that point they were using it?^^ | 17:06:02 |
sterni (he/him) | it's getting to be just one big blur | 17:06:34 |
emily | I'm tired of the fact that we have to keep backporting LLVM patches that require manual work to apply to LLVM 12 that we can't just skip and leave broken on Darwin because the GHC bootstrap pulls it in and GHC is now used by everything. and I'm tired of the constantly-shifting goalposts around GHC versions that there has never been any evidence that the people who would use them are actually using modern Nixpkgs and substantial amounts of evidence that they're not. | 17:06:49 |
sterni (he/him) | emily: i.e. we kind of need 8.10.7 or 9.0.2 to bootstrap GHC 9.4.8 due to build system bugs. Simultaneously, these compilers are the only remaining compilers that are not affected by various problems relating to the build system. Without 9.4.8 we would be unable to cross compile GHC to riscv64 and do TemplateHaskell in pkgsStatic. | 17:08:32 |
emily | if there's an agreement that they can be dropped if the internal uses are sorted, I'll help | 17:07:03 |
emily | if you just personally don't want those versions to be removed, then ok | 17:07:17 |
emily | but while it's still unclear if there will be any point to me as a Darwin/LLVM person to put in the effort I'm not going to allocate my limited time to it | 17:07:46 |
emily | if a survey is what's required I'll wait for the survey. I already sorted things out with other users of old compilers like the CUDA team and I am convinced that GHC is the only substantive blocker | 17:08:37 |
emily | riscv64 is tier nothing, it can wait for build system bugs to be fixed (assuming we can't just patch or work around them) | 17:09:13 |
emily | avoiding an unsupported platform placing maintenance burdens on one of our major ones is part of the reason we have a vague notion of support tiers in the first place | 17:09:51 |
emily | if static is a blocker then that can be discussed but then why was this not raised the previous 10 times this was talked about? | 17:10:44 |
maralorn | sterni: If you want the details: reflex-plattform currently still pins older nixpkgs, no one is planing on bumping that pin while using ghcjs. Obsidian systems has already switched to using haskell.nix and the new ghc js backend is expected to be usable with that whole setup very soon. | 17:10:51 |
maralorn | And I actively asked the people involved whether they’d be affected by us dropping ghcjs and they all said no. | 17:12:28 |
emily | saying that there's no need for a survey because the internal users are what matter, and then saying that actually we'd need to survey external users when I say that the internal users seem tractable and I'm happy to help, and then bringing up new concerns about RISC-V and static when I say I'll wait for the survey, just makes it seem like you want to stall indefinitely | 17:16:28 |
emily | if old GHCs are actually required and that's just a fact of life then sure, I can deal with that, although it would be nice if the GHC maintainers took over responsibility for quickly backporting fixes to old LLVMs that they are consequently the only substantive users of | 17:17:35 |
emily | but I haven't seen any evidence that more than one person wants to keep them, and plenty of evidence that nobody else really cares, but the reasons pile keeps growing every time it's brought up all the same | 17:18:09 |
emily | I'm happy to put in effort to solve any technical obstacles, or wait for a survey or whatever else, but I'm not convinced that technical obstacles are what's blocking here | 17:18:52 |
| mjm joined the room. | 17:19:48 |