-
Notifications
You must be signed in to change notification settings - Fork 30
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
wasm artifact doesn't exist (anymore?) #149
Comments
Yeah, gitlab is constantly busted and also broke all GHC nightlies. There's no hope. It's not my responsibility. |
Ah, we have stable bindists here https://raw.githubusercontent.com/amesgen/ghc-wasm-bindists/main/meta.json |
Fixed |
Also updated bindist documentation: https://www.haskell.org/ghcup/guide/#cross-support |
Note that GHC HQ does not provide wasm bindists yet, as it is not considered stable enough yet. Does GHCup make that clear to users? Or could GHC HQ make that more clear? In other words, I do think it's GHCup's responsibility, because GHCup is of its own initiative augmenting GHC in a way that GHC can't support right now. |
That's not the point really. We provide all sorts of bindists not sanctioned by GHC HQ and we really don't care. The point is that gitlab is configured to constantly purge artifacts and is an unreliable source for downloads. |
No, that's not the point. Although it's very true and I wish nobody outside of GHC devs relied on the nightly pipeline, even if it was totally reliable. The point is that you broadcast a certain level of reliability and availability for GHC that is not based on reality and contradicts GHC's own statements. Then people get surprised when something breaks, reducing trust in both GHC and GHCup. This makes it harder for GHC to actually focus on the bugs it does have in the platforms it does claim to support. Nobody's perfect here; all software has bugs. But indicating that something does work, when we know it doesn't, is the problem. |
This is a false statement. Cross bindists are marked as experimental. Please see the readme: https://github.com/haskell/ghcup-metadata#metadata-variants-distribution-channels However, GHCup doesn't really care whether bindists are provided by upstream. We have our own QA. |
I disagree it is a false statement, but I guess this is the end of productive discussion on this issue. I will rest now. |
Please elaborate if you make accusations that GHCup conveys incorrect expectations while these are clearly documented in the metadata readme and further described in the distribution policies. |
The fact that GHCup distributes a bindist of the wasm cross compiler at all means it is broadcasting a level of reliability that does not exist. Your first response on this issue puts the blame for this unreliability on GHC, when it was GHCup's own initiative that made a bindist available in the first place. Your policy of providing bindists that upstream does not support is in conflict with your policy of maintaining a good relationship with upstream providers. How you handle that is up to you, but I don't think conjuring up reliability for unsupported platforms is making it any easier. |
For what it's worth, I think it's good that we disagree on which platforms to support. I am too conservative and would rather reduce availability and focus on making things perfect . An extreme version of that would be to drop support for everything except x86_64-linux and focus on getting truly reliable and stable releases running on just that. But that would be just as bad as claiming "GHC supports all platforms present and future, just use at your own risk". Better to have a balance somehow. |
I propose #152 and haskell/ghcup-hs#928 to highlight the experimental nature of the cross compilers. |
...and I admit I am totally off-topic by talking about the reliability of the wasm cross compiler itself, as opposed to the reliability of the download location for it or any other bindist. I totally agree artifacts from the nightly pipeline are not a thing anybody should rely on. |
all merged |
I don't think so. This was communicated as experimental from the start. We can make it more prominently "experimental". Pre-releases from upstream are also experimental and end users should be aware.
Correct. Gitlab is unreliable and has been so for a long time, rendering nightlies absolutely broken.
Ok. I think I have to make this crystal clear: GHCup is a distribution channel and may stop relying on upstream bindists entirely. I do not care what upstream thinks of this. For people who do care, we provide Upstream bindists have had tons of issues and half of them remain broken due to the DESTDIR bug. GHCup strives to be a quality distribution channel. At the moment I have no appetite to work on bindist issues anymore, unless I get paid full-time for it. But we have no obligation to distribute only upstream bindists. Your argument really makes no sense to me no matter how I look at it. Linux distributions also package GHC on their own. Where you get the impression from that we need to rely on GHC HQ to provide bindists escapes me. |
@chreekat i don't think I agree with this assessment. Yes, marking them experimental is clearly a good idea. But I don't think GHCup should be bound to using upstream bindists or even be restricted to upstream bindists only. Upstream should imho make sure the compiler builds reasonably well on all platforms. Nix, Haskell.nix, chocolaty, brew, Ubuntu and other distributions may choose to build their own (parched) bindists from source. I don't think there is any reason to require anyone to use GHC HQ bindists. IF we want to do packaging, let's do this, at the HF and have someone dedicated to providing system packages for all platforms. I don't think this is remotely feasible with the current set of employees and volunteers. Leaving it to community/distribution efforts where necessary seems appropriate. |
Sigh, yes. I do constantly forget that GHCup considers itself more like Debian than like rustup. I get confused by the name and the positioning of GHCup in the Haskell ecosystem. I guess this is the root of our misunderstanding. Rustup does what I expect:
(emphasis mine) GHCup doesn't do what I expect, but I will try to remember and respect that fact. |
Yeah, the official release channels don't really do what I'd expect either ;)
Now, should GHC devs deal with all these things? I actually think NO. But they should:
|
The text was updated successfully, but these errors were encountered: