summaryrefslogtreecommitdiffhomepage
path: root/CHANGELOG
blob: 602ce102e6255b938d43f0fb65e9e2dfdd160b8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
# CHANGELOG

- 0.12.1.0 (2020-10-05)
     *  Bump Cabal-version to 2.4 (by Łukasz Gołębiewski)
     *  Fix "group" import sort with multi-line imports (by Maxim Koltsov)

- 0.12.0.0 (2020-10-02)
     *  Use ghc-lib-parser rather than haskell-src-exts

        This patch swaps out the parsing library from `haskell-src-exts` to
        `ghc-lib-parser`, which gives us better compatibility with GHC.

        Because almost every module heavily used the Haskell AST provided by
        `haskell-src-exts`, this was a huge effort and it would not have been
        possible without Felix Mulder doing an initial port, GSoC student
        Beatrice Vergani porting several other steps, and Łukasz Gołębiewski and
        Paweł Szulc who helped me finish up things in the home stretch.

        I've generally tried to keep styling 100% compatible with what was there
        before, but some issues may have unintentionally slipped in so please
        report those.

        This introduces one new import styling contributed by Felix: when
        wrapping import lists over multiple lines, you can repeat the module
        name, e.g.:

            import Control.Monad.Except as X (ExceptT (..), MonadError (..))
            import Control.Monad.Except as X (runExceptT, withExceptT)

        This is activated by using `import_align: repeat`.

        Secondly, a new Step was added, `module_header`, which formats the
        export list of a module, including the trailing `where` clause.  Details
        for this new step can be found in the `data/stylish-haskell.yaml`.

     *   Remove `semigroup` dependency for GHC >= 8.0
     *   Bump `strict` upper bound to 0.4
     *   Bump `Cabal` upper bound to 3.3 for test suite

- 0.11.0.3 (2020-08-02)
    * Set default-language to Haskell2010

- 0.11.0.2 (2020-08-02)
    * Bump `Cabal-version` to 1.10

- 0.11.0.1 (2020-08-02)
    * Bump `aeson` upper bound to 1.6
    * Bump `Cabal` upper bound to 3.3

- 0.11.0.0 (2020-02-24)
    * Disable record formatting by default
    * Allow more customization for record formatting (by Maxim Koltsov)
    * Disable formatting of data types without records (by Maxim Koltsov)
    * Add `-r` flag to recursively find Haskell files (by Akos Marton)

- 0.10.0.0 (2020-01-26)
    * Switch to HsYAML library (by vijayphoenix)
    * Expose `format` from main library (by Łukasz Gołębiewski)
    * Support record formatting (by Łukasz Gołębiewski and Pawel Szulc)
    * Allow setting `columns` to `null` to disable all wrapping (by Chris
      Martin)
    * Bump `haskell-src-exts` to 1.23
    * New logo (by Jose Fernando García Parreño)
    * Make language extension prefix configurable (by Flavio Corpa)

- 0.9.4.4 (2019-11-03)
    * Bump `haskell-src-exts` to 1.22

- 0.9.4.3 (2019-10-29)
    * Bump release script
    * Bump `Cabal` to 3.0

- 0.9.4.2 (2019-10-29)
    * Bump release script

- 0.9.4.1 (2019-10-29)
    * Bump release script

- 0.9.4.0 (2019-10-29)
    * Read language extensions from `.cabal` file (by Georgy Lukyanov)

- 0.9.3.1 (2019-10-08)
    * Fix CircleCI configuration

- 0.9.3.0 (2019-10-08)
    * Bump `optparse-applicative` to 0.15
    * Don't remove page breaks in the trailing whitespace step (by Chris
      Perivolaropoulos)
    * Add `with_module_name` option to `list_align` for import styling (by
      Rupert Horlick)

- 0.9.2.2 (2019-06-12)
    * Bump `semigroups` to 0.19
    * Bump `haskell-src-exts` to 1.21

- 0.9.2.1 (2019-01-02)
    * Bump `aeson` to 1.4
    * Bump `yaml` to 0.11
    * Bump `containers` to 0.6

- 0.9.2.0 (2018-05-01)
    * Support alignment of case expressions with a single guard
    * Add a new step to squash multiple spaces between some elements (by Martin
      Huschenbett)

- 0.9.1.1 (2018-04-26)
    * Bump `aeson` to 1.3 for tests as well

- 0.9.1.0 (2018-04-26)
    * Support GHC 8.4.1 by adding instance SemiGroup ImportPortion (by George
      Wilson)
    * Bump `aeson` to 1.3

- 0.9.0.2 (2018-01-03)
    * Bump lower bound of `directory` to `1.2.3` for `getXdgDirectory`

- 0.9.0.1 (2017-12-29)
    * Fix missing Extra-source-file in cabal file

- 0.9.0.0 (2017-12-26)
    * Embed the default configuration
    * Add platform-specific configuration paths (by Jan Tojnar)
    * Bump `haskell-src-exts` to 0.20
    * Avoid unpaired parenthesis when import doesn't specify any items (by
      Matthew Kennerly)
    * Remove shebang lines at the beginning of file (by Vaibhav Sagar)

- 0.8.1.0 (2017-06-19)
    * Add `pad_module_names` option (by Yuriy Syrovetskiy)
    * Add `space_surround` option to import styling (by Linus Arver)
    * Bump `optparse-applicative` to 0.14

- 0.8.0.0
    * Remove `MagicHash` from whitelisted language extensions, since it was
      causing parsing errors (by Artyom Kazak)
    * Don't leave a `#-}` hanging on the next line when `language_pragmas`
      is set to `compact` and the `#-}` doesn't fit into character limit
      (by Artyom Kazak)
    * Deduplicate import specs (i.e. `import Foo (a, a, b)` becomes
      `import Foo (a, b)`) (by Artyom Kazak)
    * Take package imports into account when prettifying imports
      (by Artyom Kazak)
    * Bump `aeson` to 1.2
    * Bump `syb` to 0.7
    * Bump `HUnit` to 1.6

- 0.7.1.0
    * Keep `safe` and `{-# SOURCE #-}` import annotations (by Moritz Drexl)

- 0.7.0.0
    * If there's parse errors, show these and exit with code 1
    * Bump `aeson` to 1.1
    * Bump `directory` to 1.3
    * Bump `haskell-src-exts` to 1.19

- 0.6.5.0
    * Fix issue with unit records (by Mizunashi Mana)
    * Bump `HUnit` to 1.5

- 0.6.4.0
    * Remove `XmlSyntax` from whitelisted language extensions, since it was
      causing parsing errors

- 0.6.3.0
    * Bump `optparse-applicative` to 0.13.0.0
    * Export Import options & add a default
    * Add `list_padding: module_name` option (by Oleg Grenrus)
    * Bump `aeson` to 1.0 (by Oleg Grenrus)
    * Special setting for empty import lists (by Oleg Grenrus)

- 0.6.2.0
    * Bump `haskell-src-exts` to 1.18

- 0.6.1.0
    * Fix line patching issue in Editor

- 0.6.0.0
    * Add a `simple_align` step
    * Move `records` step into `simple_align`
    * Use a set of default language extensions for parsing (by Langston Barrett)
    * Add a newline format option (by Svyatolslav Gryaznov)
    * Add more symbols from UnicodeSyntax (by Langston Barrett)
    * Add a `--version` option (by Ondra Pelech)

- 0.5.17.0
    * Remove shebang from input before attempting to extract pragmas
    * Set stdin and stdout encoding to UTF-8 by default

- 0.5.16.0
    * Fail if the default configuration file is not found.

- 0.5.15.2
    * Bump `aeson` to 0.11

- 0.5.15.1
    * Fix error that caused haddock to bail on this package

- 0.5.15.0
    * Add new options for import list alignment (by Ondřej Janošík)

- 0.5.14.4
    * Bump `stylish-haskell` to 1.17.0

- 0.5.14.3
    * Bump `HUnit` to 1.13

- 0.5.14.2
    * Bump `aeson` to 0.10
    * Bump `syb` to 0.6

- 0.5.14.1
    * Bump `aeson` to 0.9

- 0.5.14.0
    * Bump `syb` to 0.5
    * Slight refactoring in align code

- 0.5.13.0
    * Fix issue with shebang code

- 0.5.12.0
    * Add support for shebang at start of file

- 0.5.11.2
    * Bump `filepath` dependency to 1.5

- 0.5.11.1
    * Fix -Wall compilation with GHC 7.10

- 0.5.11.0
    * Bump `haskell-src-exts` dependency to 1.16

- 0.5.10.2
    * Bump `mtl` dependency to 2.2

- 0.5.10.1
    * Bump `aeson` dependency to 0.8

- 0.5.10.0
    * Bump `haskell-src-exts` dependency to 1.15
    * Fix test which was not run before

- `0.5.9.0`
    * Add `compact_line` setting for Language Pragma styling