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

Add policy on plugin support tiers #3189

Merged
merged 3 commits into from
Oct 3, 2022
Merged

Add policy on plugin support tiers #3189

merged 3 commits into from
Oct 3, 2022

Conversation

michaelpj
Copy link
Collaborator

@michaelpj michaelpj commented Sep 17, 2022

Following discussion in
#3123.

This aims to make it more obvious what it means when we say we support a version of GHC.

Copy link
Collaborator

@July541 July541 left a comment

Choose a reason for hiding this comment

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

Very detailed description!

@July541
Copy link
Collaborator

July541 commented Sep 17, 2022

So, we can announce "fully" support of ghc-9.2 and drop the support of 8.6.5 and 8.8.4?

@michaelpj
Copy link
Collaborator Author

So, we can announce "fully" support of ghc-9.2 and drop the support of 8.6.5 and 8.8.4?

I'm not sure. We have said that we won't do this until there is a 9.2 LTS stackage. I don't know if that's something we want to stick to, given that we're not using stack really for building or distribution any more. But we can discuss that separately, maybe at the HLS meeting?

@pepeiborra
Copy link
Collaborator

So, we can announce "fully" support of ghc-9.2 and drop the support of 8.6.5 and 8.8.4?

I'm not sure. We have said that we won't do this until there is a 9.2 LTS stackage. I don't know if that's something we want to stick to, given that we're not using stack really for building or distribution any more. But we can discuss that separately, maybe at the HLS meeting?

In case I don't make it to the HLS meeting, I am going to voice my concerns here:

  1. We currently support and test GHC 8.6, 8.8, 8.10, 9.0, 9.2 and 9.4
  2. It is extremely expensive, in terms of code maintainability, CI, and release cost, to support a GHC version
  3. In addition to user experience, we need to consider HLS sustainability as a fully volunteer-driven effort. The current situation with 6 GHC versions is imho leaning too far on the user side.

Copy link
Collaborator

@pepeiborra pepeiborra left a comment

Choose a reason for hiding this comment

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

I can see how this is a good thing, but unless we automatically generate the plugins table, I can also see user issues in the future when the plugins table becomes outdated

| `hls-brittany-plugin` | 3 | 9.2, 9.4 |
| `hls-haddock-comments-plugin` | 3 | 9.2, 9.4 |
| `hls-stan-plugin` | 3 | 8.6, 9.0, 9.2, 9.4 |
| `hls-retrie-plugin` | 3 | 9.2 |
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
| `hls-retrie-plugin` | 3 | 9.2 |
| `hls-retrie-plugin` | 3 | 9.2, 9.4 |

Comment on lines +38 to +40
## Current plugin support tiers

| Plugin | Tier | Unsupported GHC versions |
Copy link
Collaborator

Choose a reason for hiding this comment

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

This table needs to be autogenerated, right? It should be not hard using the cabal-syntax package

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

It's not currently, and we do have trouble keeping it up-to-date. But it's still useful information, and I volunteer to maintain it until/unless we get to a point that we can auto-generate it.

The tier information also is manual and I don't think could be emitted from the plugin. Conceivably we could record all this information in the plugins and then have a haskell-language-server describe-plugins command that dumped it out, and then do that for all versions...

Following discussion in
#3123.

This aims to make it more obvious what it means when we say we support a
version of GHC.
@michaelpj
Copy link
Collaborator Author

Let's give this a try at least.

@michaelpj michaelpj enabled auto-merge (squash) October 1, 2022 16:18
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