-
Notifications
You must be signed in to change notification settings - Fork 75
/
Changelog
257 lines (189 loc) · 8.62 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
Changed in version 0.8.2.1:
* Add `configure` check for `termios.h` and fallbacks for wasi.
Changed in version 0.8.2:
* Add versions of `completeWord{,withPrev}` that take predicates for word break chars (#164)
Changed in version 0.8.1.3:
* Use the capi calling convention for ioctl (#163).
Changed in version 0.8.1.2:
* Add import list to Data.List (#153)
Changed in version 0.8.1.1:
* Allow bytestring-0.11 and base-4.16
* Fix name conflicts with Win32-2.9 (#145)
Changed in version 0.8.1.0:
* Use grapheme's width to align a list of completions (#143)
* Add withRunInBase to help decompose InputT (#131)
* Add support for WINIO to haskeline. (#140)
* Allow base-4.15
* Eta expand as required by simplified subsumption rules in newer GHC
* Remove unused iconv cbits (#135)
* Support non-BMP characters (or, surrogate pairs) on Windows (#125)
Changed in version 0.8.0.1:
* Add a Cabal flag to disable the example executable as well as
the test that uses it.
Changed in version 0.8.0.0:
* Breaking changes:
* Add a `MonadFail` instance for `InputT`.
* Switch the LICENSE file from BSD2 to BSD3, to be consistent
with the .cabal file.
* Backwards-compatible changes
* Improve the documentation around when input functions return
`Nothing`.
* Allow binding keys to incremental search, as
`ReverseSearchHistory` and `ForwardSearchHistory`.
* Handling `STX`-wrapped control sequences on any lines of the
prompt, not just the last one.
* Add `debugTerminalKeys` to help debug input problems
* Add `waitForAnyKey` to wait for a single key press.
* Define test targest in the .cabal file
* Bump the upper bound to base-4.15.
Changed in version 0.7.5.0:
* Add the new function `fallbackCompletion` to combine
multiple `CompletionFunc`s
* Fix warnings
* Bump the lower bound to ghc-8.0
Changed in version 0.7.4.3:
* Bump upper bounds on base, containers, stm and unix
* Fix redundant "Category" field in haskeline.cabal
Changed in version 0.7.4.2:
* Clean up the rest of the references to trac.haskell.org
Changed in version 0.7.4.1:
* Bump upper bound on base to support ghc-8.4
* Use `TChan` from `stm` rather than `Chan`
* Update the homepage since trac.haskell.org has shut down
Changed in version 0.7.4.0:
* Properly process Unicode key events on Windows.
* Add an instance MonadExcept IdentityT.
* Remove custom Setup logic to support Cabal 2.0.
Changed in version 0.7.3.1:
* Properly disable echoing in getPassword when running in MinTTY.
* Use `cast` from Data.Typeable instead of Data.Dynamic.
Changed in version 0.7.3.0:
* Require ghc version of at least 7.4.1, and clean up obsolete code
* Add thread-safe (in terminal-style interaction) external print function
* Add a MonadFix instance for InputT
* Bump upper bounds on `base` and `directory` to support ghc-8.0.2
Changed in version 0.7.2.3:
* Fix hsc2hs-related warning on ghc-8
* Fix the behavior of ctrl-W in the emacs bindings
* Point to github instead of trac
Changed in version 0.7.2.2:
* Fix Linux to Windows cross-compile
* Canonicalize AMP instances to make the code more future proof
* Generalize constraints for InputT instances
* Bump upper bounds on base and transformers
* Make Haskeline `-Wtabs` clean
Changed in version 0.7.2.1:
* Fix build on Windows.
Changed in version 0.7.2.0:
* Bump upper-bound on base and filepath libraries to accommodate GHC HEAD (7.10)
* Drop Cabal dependency to 1.10
* Use explicit forall syntax to avoid warning
* Support Applicative/Monad proposal in Win32/Draw backend
* Add Eq/Ord instances to Completion
* Add a "forall" quantifier before rank-n types
Changed in version 0.7.1.3:
* Add support for transformers-0.4.0.0.
Changed in version 0.7.1.2:
* Require ghc>=7.0.1.
* Allow building with terminfo-0.4.
Changed in version 0.7.1.1:
* Point to github for HEAD.
Changed in version 0.7.1.0:
* Fix build with ghc-7.8.
* Fix build with ghc-6.12.3.
* Fix build on Android.
* Fix build on Win64.
* Add 'catches' to System.Console.Haskeline.MonadException.
Changed in version 0.7.0.3:
* Fix build with ghc>=7.6.1.
Changed in version 0.7.0.2:
* Fix build on Windows with ghc>=7.4.1.
Changed in version 0.7.0.1:
* Fix GHC build by removing a Haskell comment on an #endif line
Changed in version 0.7.0.0:
API changes:
* Remove System.Console.Haskeline.Encoding
* Make the MonadException class more general (similar to monad-control)
* Don't make InputT an instance of MonadState/MonadReader
* #117: Implement mapInputT
Internal changes:
* Bump dependencies and general compatibility for ghc-7.6.1
* Depend on the transformers package instead of mtl
* Don't depend on the extensible-exceptions package
* Don't depend on the utf8-string package (except with ghc<7.4.1)
* Bump the minimum GHC version to 6.10.1
* Use ScopedTypeVariables instead of PatternSignatures
Internal fixes:
* Prevent crashes on Windows when writing too many characters at once
or ctrl-L on large window (GHC ticket #4415)
* Remember the user's history and kill ring state after ctrl-c
* Use ccall on Win64
* Fix terminfo's guess of the window size
Changed in version 0.6.4.7:
* Bump dependencies to allow mtl-2.1, containers-0.5 and bytestring-0.10.
* Prefix C functions with "haskeline_" so we don't clash with other packages
* Prevent cursor flicker when outputting in the terminfo backend
Changed in version 0.6.4.6:
* Build with ghc-7.4.1.
Changed in version 0.6.4.5:
* #116: Prevent hang on 64-bit systems when the prompt contains a control
character.
Changed in version 0.6.4.4:
* #115: Fix the behavior of the 'f' and 't' commands when deleting text.
* #73: Fix regression: pasting multiple lines could drop some characters.
* Don't require NondecreasingIndentation.
Changed in version 0.6.4.3:
* Fix a bug on ghc-7.2.1 with tab-completion of Unicode filenames.
Changed in version 0.6.4.2:
* Various updates for ghc-7.2.1.
Changed in version 0.6.4:
* Added new function getInputLineWithInitial.
Changed in version 0.6.3.2:
* Allow building with mtl-2.0.* .
Changed in version 0.6.3.1:
* Updated contraints for ghc-7.0.1.
* Fix building on ghc-6.10.
Changed in version 0.6.3:
* #111: Correct width calculations when the prompt contains newlines.
* #109: Add function completeWordWithPrev.
* #101, #44: Extend the API with Behaviors, which control the choice between
terminal-style and file-style interaction.
* #78: Correct width calculations for escape sequences ("\ESC...\STX")
* Better warning message when -fterminfo doesn't work.
* Added getPassword as a new input function.
Changed in version 0.6.2.4:
* Added back a MonadException instance for mtl's StateT.
Changed in version 0.6.2.3:
* #110: Recognize the enter key in xterm.
* #108: Fix behavior after a paste of long, non-ASCII text.
* #106: Ignore input immediately following an unrecognized control sequence.
* #104: In vi-mode, allow, e.g., "d2w" as well as "2dw"
* #103: Fix vi-mode 'c' command with movements.
* #81: Correctly handle characters with a width > 1.
* Compatibility updates from the GHC folks for Solaris and for ghc-6.14.
* Optimization: if several key presses are input all at once (e.g. from a
paste), only display the last change. This can also make Haskeline more
responsive when editing long lines.
* Hard-code some defaults for ctrl-left and ctrl-right, and provide the
corresponding Emacs bindings to skip words.
Changed in version 0.6.2.2:
* Raise dependency to utf8-string>=0.3.6 (fixes a bug when decoding invalid
input)
Changed in version 0.6.2.1:
Internal/API changes:
* Make sure to always use binary mode when expecting Char-as-byte.
* Eliminate unused import warnings on ghc>=6.11
* Increase upper bound on some dependencies for ghc-6.12
Changed in version 0.6.2:
User interface changes:
* A multitude of new emacs and vi commands
* New preference 'historyDuplicates' to prevent storage of duplicate lines
* Support PageUp and PageDown keys
* Let ctrl-L (clear-screen) work during getInputChar
Internal/API changes:
* Compatibility with ghc-6.12
* Calculate the correct width for Unicode combining characters
* Removed RankNTypes requirement; added Rank2Types and UndecidableInstances
* Use simpleUserHooks instead of autoconfUserHooks in the Setup script
* Internal refactoring to make command declaration more flexible
* Read the .haskeline file completely before starting the UI (laziness issue)