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

Drop compatibility with GHC 8.6.5 #3101

Merged
merged 2 commits into from
Oct 11, 2022
Merged

Drop compatibility with GHC 8.6.5 #3101

merged 2 commits into from
Oct 11, 2022

Conversation

pepeiborra
Copy link
Collaborator

No description provided.

Copy link
Collaborator

@kokobd kokobd left a comment

Choose a reason for hiding this comment

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

LGTM

@July541
Copy link
Collaborator

July541 commented Aug 13, 2022

What made us make this decision?

@pepeiborra
Copy link
Collaborator Author

The GHC version deprecation policy: https://haskell-language-server.readthedocs.io/en/latest/supported-versions.html

LTS is already on 9.0 and 8.6.5 is 3 major versions behind.

Happy to hear everyone's thoughts.

@michaelpj
Copy link
Collaborator

I think we decided to make a deliberate exception for 8.6.5, since at the time we wrote the policy it was still very widely used. I think we could probably get away with dropping it now, but if it's not a problem then I think we should wait for the 9.2 LTS simply because that's because what we've been saying that we're going to do.

@pepeiborra
Copy link
Collaborator Author

but if it's not a problem then I think we should wait for the 9.2 LTS simply because that's because what we've been saying that we're going to do.

Fair enough, I didn't remember that we promised to keep 8.6.5 compat. until the 9.2 LTS. Moving forward, we should probably avoid committing to unknown future dates.

I'll keep the PR around, since I suspect (or hope!) that a 9.2 LTS is around the corner.

@michaelpj
Copy link
Collaborator

I mean, the only way we said we would do it is that line in the supported GHCs doc, but it has been there for a while so people might reasonably have some expectations about it.

@July541
Copy link
Collaborator

July541 commented Aug 14, 2022

People will be disappointed since our policy said we would drop 8.6.5 after we have fully supported ghc-9.2, there is still a long way to go.

But I agree to drop it without loud opposition before fully supporting ghc-9.2.

@pepeiborra
Copy link
Collaborator Author

What does "full support" for 9.2 mean?

  • Upgrade all plugins: We should not commit to this as each maintainer has their own schedule.
  • Upgrade core plugins: A bit unclear since the set of core plugins is not specified anywhre
  • Upgrade ghcide plugins: This has already been done, or mostly done

@michaelpj
Copy link
Collaborator

I think the LTS condition is also important. My understanding of that was that it acts as a proxy for how much of the ecosystem has upgraded, and hence for what our expectations about GHC versions used by our users can be.

I agree that "full support" is pretty ambiguous. We should try and pin that down. I think it would be good to identify a set of "core plugins", especially as we move in the direction of moving more basic stuff out of ghcide.

@July541
Copy link
Collaborator

July541 commented Aug 15, 2022

I think it would be good to identify a set of "core plugins", especially as we move in the direction of moving more basic stuff out of ghcide.

Can't more agree!

@andys8
Copy link
Collaborator

andys8 commented Sep 19, 2022

Two questions:

  • Does this allow us to drop and simplify all macros where MIN_VERSION_ghc(8,8,0) is used (because there is no lower supported ghc version)?
  • For my understanding: Does dropping support for a GHC version remove the support to compile hls with that version, or to use hls on a project with that version - or both?

@Ailrun
Copy link
Member

Ailrun commented Sep 20, 2022

@andys8

Does this allow us to drop and simplify all macros where MIN_VERSION_ghc(8,8,0) is used (because there is no lower supported ghc version)?

Yes.

For my understanding: Does dropping support for a GHC version remove the support to compile hls with that version, or to use hls on a project with that version - or both?

For HLS, both go together. Once it becomes impossible to compile with a specific version, one cannot use HLS with a project using that version.

@michaelpj
Copy link
Collaborator

We decided to drop 8.6 and 8.8 now 1.8.0 is out.

@andys8
Copy link
Collaborator

andys8 commented Sep 22, 2022

Should both 8.6 and 8.8 be dropped in this PR, or split into two?

@pepeiborra
Copy link
Collaborator Author

Should both 8.6 and 8.8 be dropped in this PR, or split into two?

I'm going to land this PR as is

@pepeiborra pepeiborra enabled auto-merge (squash) September 25, 2022 09:07
@andys8
Copy link
Collaborator

andys8 commented Oct 11, 2022

docs/supported-versions.md doesn't exist anymore. Was moved to docs/support/ghc-version-support.md.

@andys8
Copy link
Collaborator

andys8 commented Oct 11, 2022

Since this is an uncritical change to docs, I pushed changes directly to this PR to resolve the conflict.

@pepeiborra pepeiborra merged commit 9b491f7 into master Oct 11, 2022
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.

None yet

6 participants