forked from TikhonJelvis/stylish-haskell
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGELOG
279 lines (214 loc) · 8.96 KB
/
CHANGELOG
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
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
# CHANGELOG
- 0.14.2.0 (2022-04-27)
* Add a build flag to force the use of ghc-lib-parser
- 0.14.1.0 (2022-03-31)
* Unify the Editor modules, deal with overlap better
- 0.14.0.1 (2022-03-17)
* Use GHC API directly if >= 9.2.2
* Bump `bytestring` upper bound to 0.12
- 0.14.0.0 (2022-03-16)
* Port to GHC 9.2 AST (by jaspervdj)
* Case insensitive import sort (by vlatkoB)
* Fix issue with dissappearing GADT kind signatures (by Łukasz Gołębiewski)
- 0.13.0.0 (2021-09-15)
* Don't remove ticks on promoted data types (by Jim McStanton)
* Add break_only_where option (by 1Computer1)
* Keep wildcard if present in IEThingWith (by Moisés Ackerman)
* Generalise break_only_where to allow single-line module headers
(by Thomas Winant)
* Add new configuration to ModuleHeader step (by Pawel Szulc)
* Add a language pragma style "vertical_compact" (by Javran Cheng)
* Don't remove existential quantification (by Imuli)
* Add support for post qualified import formatting (by Moisés Ackerman)
* Bump `optparse-applicative` upper bound to 0.17
- 0.12.2.0 (2020-10-08)
* align: Add a new option for aligning only adjacent items (by 1Computer1)
* align: Add support for aligning MultiWayIf syntax (by 1Computer1)
* data: Fix some issues with record field padding
* module_header: Add separate_lists option
* imports: Respect separate_lists for (..) imports
* data: Make sorting deriving list optional (by Maxim Koltsov)
- 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