-
-
Notifications
You must be signed in to change notification settings - Fork 406
Remove index state #4497
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
Remove index state #4497
Conversation
Can you explain why this is problematic for you? Including the index-state makes the repository reproducibly buildable (including historically) and allows people to reliably compile it on their own computers without relying on us getting all the bounds right (which we won't), |
This is what happens with index state. You make it "reproducible" (which is actually not true) for past configurations only. |
It's a hell of a lot more reproducible in a way that is practically valuable. This is the first time in a long time I've heard anyone complain about not being able to build HLS due to solver issues. It works!
Okay, so the situation is:
This does seem annoying, but does I also think that in this particular case doing it all with bounds wouldn't have helped: since the GHC API has approximately no stability guarantees, our bounds would probably need to exclude So overall I'm not inclined to give up the fairly substantial benefits of pinning |
Sure. I can also purge index state in ghcup by default. |
I think that will lead to more instances of users not being able to compile things but 🤷 |
I think that assessment is incorrect. The main use case of
The index state is in most of those scenarios a nuisance. People use master to get things to compile that aren't properly supported. Otherwise they can compile against a release branch or a hackage release. |
I think the biggest benefit of |
Yes, we have PVP for a reason. It's true that PVP doesn't shield you from all and every miscompilation. But I don't think "reproducible" is really a goal here... it's successful compilation.
Edit: And if you really want to harden against PVP issues... use qualified/explicit imports. |
Index state in master makes things more complicated for end users to test (this is the case for 9.6.7-rc2).
It is not maintained properly either and is over 2 months old.
It's better to: