Skip to content
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

HLS 2.6.0.0 #166

Merged
merged 1 commit into from
Jan 15, 2024
Merged

HLS 2.6.0.0 #166

merged 1 commit into from
Jan 15, 2024

Conversation

wz1000
Copy link
Collaborator

@wz1000 wz1000 commented Jan 15, 2024

No description provided.

@wz1000
Copy link
Collaborator Author

wz1000 commented Jan 15, 2024

@wz1000
Copy link
Collaborator Author

wz1000 commented Jan 15, 2024

@wz1000
Copy link
Collaborator Author

wz1000 commented Jan 15, 2024

ghcup-gen check failures seem unrelated.

@wz1000 wz1000 merged commit a6c8849 into develop Jan 15, 2024
21 of 25 checks passed
@suhail-singh
Copy link

From the README:

make sure to always add new versions to both ghcup-A.B.C.yaml and
ghcup-vanilla-A.B.C.yaml

However, this PR only made the additions to ghcup-vanilla. Was that intended?

@hasufell
Copy link
Member

Yes, the readme is outdated.

The current working mode is: upstream maintains ghcup-vanilla-x.y.z.yaml and ghcup maintainers maintain ghcup-x.y.z.yaml.

If you want the quickest releases possible, use vanilla, but also be aware that they don't go through any QA from ghcup. As a result, a large portion of GHC bindists are broken in the vanilla channel.

@suhail-singh
Copy link

@hasufell thank you for the clarification. I've created #167 for a couple of
follow up questions.

@@ -5804,6 +5803,101 @@ ghcupDownloads:
dlUri: https://downloads.haskell.org/~hls/haskell-language-server-2.5.0.0/haskell-language-server-2.5.0.0-aarch64-apple-darwin.tar.xz
dlSubdir: haskell-language-server-2.5.0.0
dlHash: 2e5083ebf7fc9dd3c5aa31059f9336bec4407fffb21b93a20decb49e9cf880a4
2.6.0.0:
viTags:
- Latest
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the vanilla channel, the policy used to be that Latest == Recommended. Why break this invariant?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where is this documented?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nowhere, I guess.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In all the previous patches I've made, I've always added exactly the same things to both the vanilla and default yamls, including updating or not updating the Recommended tag.

Copy link
Member

@hasufell hasufell Jan 16, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, we should enforce reviews. I hope @runeksvendsen will give us a hand with that.

Edit: as well as improving documentation

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@hasufell I'm happy to assist in reviewing, but that requires that PRs be open for longer before being merged. Looks like this PR was merged less than 48 hours after being opened. I'm working part time on GHCup, so I don't have time every day to look at tickets/PRs.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@runeksvendsen yes... I started to enforce review through branch protection rules.

Previously I had signalled that WT can raise and merge PRs on their own, since it wasn't clear whether I'll continue to maintain things on my own or at all.

So no one is to blame here. We'll just switch things up from now on.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Previously I had signalled that WT can raise and merge PRs on their own, since it wasn't clear whether I'll continue to maintain things on my own or at all.

Who/what is WT?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well-Typed

Comment on lines +5885 to +5889
FreeBSD:
unknown_versioning:
dlUri: https://downloads.haskell.org/~hls/haskell-language-server-2.6.0.0/haskell-language-server-2.6.0.0-x86_64-freebsd.tar.xz
dlSubdir: haskell-language-server-2.6.0.0
dlHash: 8d172261b2b2b2fb09572589b192245a5e306e34f3f4e2b92af4fdb565564a99
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is erroneous.

The vanilla channel does not support the FreeBSD GHC versions that this HLS bindist supplies. You're building the HLS bindists against the main channel, but then add it to the vanilla-channel, which doesn't add up.

You have to build against the vanilla channel in HLS release CI, so that the configuration matches properly.

@michaelpj

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You have to build against the vanilla channel in HLS release CI, so that the configuration matches properly.

Then these bindists will only be usable by people using the vanilla channel. Why even build HLS bindists officially in that case? It seems like you are suggesting that ghcup will take the responsibility of building all HLS bindists.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Then these bindists will only be usable by people using the vanilla channel.

Well, the channel has to be self-consistent. It is an alternative to the default channel. It's not meant to be added on top of the default channel.

It seems like you are suggesting that ghcup will take the responsibility of building all HLS bindists.

Yes, that's what I'm planning to do: haskellfoundation/tech-proposals#61

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will build HLS bindists against the vanilla channel next time, but it is basically impossible to distribute those bindists as switching channels is not safe.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is how all linux distributions with different sources work.

There is no plan to make more complicated abstractions to support users randomly switching between channels.

HLS already does ABI checks on startup.

GHCup maintainers discourage the use of the vanilla channel for reasons explained in the tech proposal.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants