Changelog for prettyprinter-1.7.1
1.7.1
- Deprecate the
Data.Text.Prettyprint.*modules- Users should migrate to the new
Prettyprintermodule hierarchy. - The old modules will be removed no sooner than September 2022.
- Users should migrate to the new
- Make
textan optional dependency:- When built with
-f-text, anytext-based APIs will operate onStrings instead.
- When built with
- Documentation improvements:
1.7.0
Breaking changes
- Fix
layoutPrettyandlayoutSmartso they don't produce trailing whitespace as a result of indenting empty lines.- Users of
removeTrailingWhitespaceshould check whether it is still needed.
- Users of
- Use
floorinstead ofroundto compute ribbon width. - Remove deprecated
Data.Text.Prettyprint.Doc.Render.ShowSmodule. - Add optimized implementation of
stimesforDoc. - Generalize the type of
layoutCompactto clarify that it doesn't preserve annotations. - Add strictness annotations in
SimpleDocStreamandPageWidth.
Non-breaking changes
- Add shallower
Prettyprintermodule hierarchy exposing the same API.- The current plan for the existing
Data.Text.Prettyprint.Doc*modules is:- Start deprecation in early 2021.
- Remove the modules after a deprecation period of at least one year.
- The current plan for the existing
- Fix build with GHC 7.4.
- Various documentation improvements.
1.6.2
- Speed up rendering to lazy and strict
Text. - Documentation improvements for
groupandflatAlt. - Internal refactoring of the
layoutWadlerLeijen-based layouters.
1.6.1
- Slightly reduce the scope of the fitting predicates for some edge cases.
- Use an export list in
Data.Text.Prettyprint.Doc.Internal. - Improve
groupforUnionandFlatAlt. - Speed up
removeTrailingWhitespace. - Improve generating spaces for indentation and
spaces. - Simplify some
Docconstants by defining them asDocliterals. - Enable
-O2. - Various documentation fixes and improvements.
1.6.0
Breaking changes
- Fix
fuse's handling of annotated documents:- Don't remove annotations on empty documents.
- Apply fusion within annotations.
- Fix layouting of hard linebreaks with
Unboundedpage widths.
Non-breaking changes
- Speed up
groupfor documents containing linebreaks and previouslygrouped documents. - Add debugging helpers in
Data.Text.Prettyprint.Doc.Internal.Debug - Documentation improvements and fixes
1.5.1
- Removing trailing whitespace sometimes restored necessary whitespace in the wrong spot
1.5
- Fix inconsistent formatting within align and wide sub-docs on narrow layouts
1.4
- Add fixity declaration to
<+>, matching<> - Fix removal of trailing whitespace
1.3.0.1
- Support Stack 2
1.3.0
- Add alignment to Pretty [a] instance
- Fix removal of blank lines in
removeTrailingWhitespace - Widened support for GHC versions 7.4–8.8
1.2.1.1
- Fix dependency of doctest suite
1.2.1
- Add function to trim trailing space in layouted
SimpleDocStream,removeTrailingWhitespace - Add
Prettyinstances forIdentityandConst
1.2.0.1
- Fix
alterAnnotationsS(and thusunAnnotateS), which removed pushing, but not popping, style frames. This led to them throwing errors in pretty much all use cases.
1.2
-
encloseSepdoes no longer include analignwrapper; in other words,encloseSep_old … = align (encloseSep_new …) -
Change the default ribbon fraction to 1 (was 0.4)
-
Expose
viaShowandunsafeViaShowfrom the public module -
Fix
layoutSmartbehaving as if there was no space left for unbounded pages
1.1.1
- Add
panicPeekedEmptyandpanicPoppedEmptyto the panic module
1.1.0.1
- Rendering directly to a handle is now more efficient in the
Textrenderer, since no intermediateTextis generated anymore. - Remove upper version bounds from
.cabalfiles
1.1
- Allow
alterAnnotationsto convert one annotation to multiple ones, to support e.g.Keyword ---> Green+Bold - Remove
Prettyinstance forDoc: the implicit un-annotation done by it did more harm than good.
1.0.1
- Add
alterAnnotations, which allows changing or removing annotations.reAnnotateandunAnnotateare now special cases of this. - Fix »group« potentially taking exponential time, by making the (internal)
flattenfunction detect whether it is going to have any effect insidegroup. - Add proper version bounds for all dependencies and backport them to version 1
- Haddock: example for
Pretty Void
1
- Add Foldable/Traversable instances for
SimpleDocTree,SimpleDocStream - Add Functor instances for
Doc,SimpleDocTree,SimpleDocStream - Add the simplified renderers
renderSimplyDecoratedandrenderSimplyDecoratedAto the tree and stack renderer modules - Lots of typo fixes and doc tweaks
- Add a changelog :-)
0.1
Initial release.