Skip to content

Add policy on plugin support tiers#3189

Merged
michaelpj merged 3 commits into
masterfrom
mpj/plugin-tiers
Oct 3, 2022
Merged

Add policy on plugin support tiers#3189
michaelpj merged 3 commits into
masterfrom
mpj/plugin-tiers

Conversation

@michaelpj

@michaelpj michaelpj commented Sep 17, 2022

Copy link
Copy Markdown
Collaborator

Following discussion in
#3123.

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

@July541 July541 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Very detailed description!

@July541

July541 commented Sep 17, 2022

Copy link
Copy Markdown
Collaborator

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
Copy Markdown
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
Copy Markdown
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.

@pepeiborra pepeiborra left a comment

Copy link
Copy Markdown
Collaborator

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

Comment thread docs/support/plugin-support.md Outdated
Comment thread docs/support/plugin-support.md 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
Copy Markdown
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
Copy Markdown
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
Copy Markdown
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...

Comment thread docs/support/plugin-support.md Outdated
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
Copy Markdown
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