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

[GHC 9.2] Deprecate SimpleGetter and SimpleFold, make 8.6 the lowest supported version, do a major version bump #117

Open
neongreen opened this issue May 4, 2019 · 2 comments

Comments

@neongreen
Copy link
Collaborator

No description provided.

@neongreen neongreen changed the title [GHC 8.10] microlens drops SimpleGetter and SimpleFold and gains a contravariant dependency on older GHCs, along with a major version bump. microlens-contra is deprecated. [GHC 8.10] microlens deprecates SimpleGetter and SimpleFold and gains a contravariant dependency on older GHCs, along with a major version bump. microlens-contra is deprecated. Jan 29, 2020
@neongreen neongreen changed the title [GHC 8.10] microlens deprecates SimpleGetter and SimpleFold and gains a contravariant dependency on older GHCs, along with a major version bump. microlens-contra is deprecated. [GHC 8.10] microlens deprecates SimpleGetter and SimpleFold and gains a contravariant dependency on older GHCs, along with a major version bump. microlens-contra reexports functions from microlens where possible Jan 29, 2020
@neongreen neongreen changed the title [GHC 8.10] microlens deprecates SimpleGetter and SimpleFold and gains a contravariant dependency on older GHCs, along with a major version bump. microlens-contra reexports functions from microlens where possible [GHC 8.10] Deprecates SimpleGetter and SimpleFold, gain a contravariant dependency on older GHCs, along with a major version bump. microlens-contra reexports functions from microlens where possible Jan 29, 2020
@neongreen neongreen changed the title [GHC 8.10] Deprecates SimpleGetter and SimpleFold, gain a contravariant dependency on older GHCs, along with a major version bump. microlens-contra reexports functions from microlens where possible [GHC 8.10] Deprecate SimpleGetter and SimpleFold, gain a contravariant dependency on older GHCs, along with a major version bump. microlens-contra reexports functions from microlens where possible Jan 29, 2020
@neongreen neongreen changed the title [GHC 8.10] Deprecate SimpleGetter and SimpleFold, gain a contravariant dependency on older GHCs, along with a major version bump. microlens-contra reexports functions from microlens where possible [GHC 8.10] Deprecate SimpleGetter and SimpleFold, gain a contravariant dependency on older GHCs, do a major version bump (and microlens-contra will reexport functions from microlens when possible) Jan 29, 2020
@neongreen
Copy link
Collaborator Author

neongreen commented Jan 29, 2020

Ok, everything is worse than I thought it is.

People normally often don't put an upper bound on microlens (http://packdeps.haskellers.com/reverse/microlens), i.e. if microlens gains a contravariant dependency it means a lot of people will have a sudden contravariant dependency on their hands. It's not that terrible because they will only get a dependency if they are using old GHCs. Still, not great. A major version bump doesn't help at all here.

On the other hand, if I carry on with SimpleGetter forever, it will always be a slightly confusing wart. Conditionally exporting Getter, producing it, etc, is better because most people won't be stuck with the wart, but conditional exports are more confusing and potentially annoying to debug, so I don't like this option either.

Retroactively removing GHC >8.6 support from old microlens versions is not an option because revisions break Nix.

Meh.

@neongreen
Copy link
Collaborator Author

Ok, I made a decision. microlens will focus on being minimal, and SimpleGetter will remain a confusing wart. There will be no conditional export of Getter.microlens-th will continue producing SimpleGetter and SimpleFold.

One day I will make GHC 8.6 the lowest supported version, and then SimpleGetter and friends will go away.

@neongreen neongreen changed the title [GHC 8.10] Deprecate SimpleGetter and SimpleFold, gain a contravariant dependency on older GHCs, do a major version bump (and microlens-contra will reexport functions from microlens when possible) [GHC 8.16] Deprecate SimpleGetter and SimpleFold, make 8.6 the lowest supported version, do a major version bump Jan 29, 2020
@neongreen neongreen changed the title [GHC 8.16] Deprecate SimpleGetter and SimpleFold, make 8.6 the lowest supported version, do a major version bump [GHC 9.2] Deprecate SimpleGetter and SimpleFold, make 8.6 the lowest supported version, do a major version bump Oct 4, 2020
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

No branches or pull requests

1 participant