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

Move to Pretty Printer Proper #474

Merged
merged 2 commits into from
May 23, 2023
Merged

Move to Pretty Printer Proper #474

merged 2 commits into from
May 23, 2023

Conversation

HuwCampbell
Copy link
Collaborator

This is a proposed 0.18 release with the Prettyprinter support proper.

We will probably need to drop some older GHC versions for this, but
they're really old now.

@HuwCampbell HuwCampbell force-pushed the topic/0.18.0 branch 2 times, most recently from cb70cc6 to 085602e Compare May 20, 2023 23:21
@HuwCampbell
Copy link
Collaborator Author

@Bodigrim

As you have some specific constraints for this library regarding the text package and this one, would you like to test whether this still suits your needs?

, transformers >= 0.2 && < 0.7
, transformers-compat >= 0.3 && < 0.8
, ansi-wl-pprint >= 0.6.8 && < 0.7
, prettyprinter >= 1.7 && < 1.8
, prettyprinter-ansi-terminal >= 1.1 && < 1.2
Copy link
Contributor

Choose a reason for hiding this comment

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

prettyprinter-ansi-terminal is problematic for my use cases, because it depends on text unconditionally.

Needless to say that my use cases are quite extreme and exotic. You are doing an excellent job in this PR.

Sorry, I don't remember, does optparse-applicative use any ANSI capabilities like colors or bold/italic?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Not directly. I didn't want to add an annotation type parameter to Parser, so went with one which is capable enough (and which would still support what downstream users might have in their doc strings).

So for your use-case we could make a later release where this import is behind a flag.

Copy link
Contributor

Choose a reason for hiding this comment

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

This suggests that ideally ParserInfo a should be additionally parameterized by ann from Doc ann, but it's probably too much of a breakage for a stable package.

Sorry, I don't have much time to delve into it right now, so I suggest you go ahead as is, and I'll try to figure out workarounds for my use case later. Thanks for remembering about my concerns, it's a pleasure to deal with you.

This also adds in the changelog for 0.17.1 which is not strictly
a parent of this commit, but it's close enough and will be release
in time order.
@HuwCampbell HuwCampbell merged commit eccd532 into master May 23, 2023
@HuwCampbell HuwCampbell deleted the topic/0.18.0 branch May 23, 2023 10:48
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.

2 participants