Skip to content

zprint-filter-1.2.9

Latest
Compare
Choose a tag to compare
@kkinnear kkinnear released this 12 Mar 20:35

A good number of significant changes for this release. In many cases, a more complete explanation appears in the CHANGELOG.

  • If you would like to have the namespaces sorted in a (:require ...) in an ns macro, you can use the style :sort-require. You can also select (using regular expressions) namespaces to put first (or last, or both). Search for :sort-require in the reference manual for details. This will also, by default, sort the identifiers in the :refer vector, though you can disable that sorting.

  • If you configure :comment {:min-space-after-semi 1} then a comment like this: ;this is a comment will be changed after formatting into a comment like this: ; this is a comment. The default for :min-space-after-semi is 0, so by default no changes are made. Issue #306.

  • New option map to transform random Java classes into other, more manageable data types: :modify-sexpr-by-type. Issue #307.

  • The style :ns-justify was difficult to change in situations where it wouldn't justify something because the maximum variance was exceeded. It has been restructured using the new style-map approach to allow it to be easily parameterized. If you invoke :ns-justify by using its keyword name, the maximum variance for justification will be 20 for :require and :require-macros and will be 1000 for :import. You can change any or all of these by using a map to invoke the :ns-justify style. See the CHANGELOG for details.

  • zprint will now recognize when a set of pairs is being spliced in using reader-conditionals, and format them as a set of pairs. See the CHANGELOG for more details.

  • Extended the meaning of :one-line-ok? for {:style :rod-config} so that if a particular arity would format successfully onto one line, it will now do so if :one-line-ok? is true. Issue #282.

  • There was a bug where if you specified multiple styles in a vector, if there were any errors detected when applying the styles, the errors were lost unless they occurred in the rightmost (that is, final) style. If you have any configurations that suddenly start showing errors after updating to 1.2.9, see the CHANGELOG for details.

  • The style :minimal-smart-wrap added in 1.2.5 had a problem where it wouldn't properly deal with single lines ending in a period. It also didn't recognize lines ending in a period if it wasn't preceded by two lower-case characters. Both of these problems are now fixed. Issue #297.