haskell-prettyprinter / haskell-prettyprinter/prettyprinter

`prettyprinter-compat-ansi-wl-pprint ` is not quite a drop-in replacement as claimed

Offen
#246 2 Kommentare 1 Reaktion 0 zugewiesene Personen Auf GitHub ansehen
Documentation
Vorherrschende Sprache
Haskell
Sterne
309
Forks
43
Ø Merge
21 Std. 25 Min.
Gemergte PRs (30 T.)
1

Beschreibung

This was noticed in https://github.com/ekmett/ansi-wl-pprint/pull/32#issue-1712218860, but I've found some other incompatibilities:

- There's no `Pretty a => Pretty (Maybe a)` instance, which old code may rely on.
- We have `Doc = Doc AnsiStyle`, which means that any existing `Pretty` instances which use basic functions like [`text`](https://hackage.haskell.org/package/ansi-wl-pprint-1.0.2/docs/Text-PrettyPrint-ANSI-Leijen.html#v:text) no longer compile, since `prettyprinter`'s `pretty` has to be annotation-polymorphic.

These are not easily solved, so I think the README ought to just be clearer about the limitations.

This has caused issues for some `ansi-wl-pprint`-dependent packages, such as `tmp-postgres`.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Start with the README section describing prettyprinter-compat-ansi-wl-pprint and compare its drop-in replacement claims with the incompatibilities listed here. Update the documentation to explain the missing Pretty (Maybe a) instance and the annotation-polymorphism limitation, then verify that the limitations are clear to users of ansi-wl-pprint-dependent packages.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
haskell
Bereich
documentation
Issue-Typ
Dokumentation
Schwierigkeit
2/5
Geschätzter Aufwand
1-3 Stunden
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
45/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.