steams: bug fixes + more tests
[nikiroo-utils.git] / changelog.md
CommitLineData
b771aed5
NR
1# nikiroo-utils
2
b4884dbe
NR
3## Version WIP
4
5- new: server: count the bytes we rec/send
d6ab0dab 6- new: CryptUtils
1dd9b99f 7- new: streams classes
a64a1754
NR
8- fix: IOUtils.readSmallStream and \n at the end
9- change: serial: SSL -> CryptUtils
1dd9b99f 10- change: MarkableFileInputStream moved to nikiroo.utils.streams
b4884dbe 11
3fb0b4a7
NR
12## Version 4.7.2
13
14- fix: Downloader issue with caching (input was spent when returned the first time)
15- fix: IOUtil.forceResetableStream
16
c75022d6 17## Version 4.7.1
82fcfcde
NR
18
19- new: can now select the TempFiles root
20- new: can now select the Image temporary root
21- fix: Cache now offer some tracing when cleaning the cache
c75022d6 22- fix: TemporaryFiles.close() was not indempotent (and was called in finalize!)
82fcfcde 23
ce3972ea 24## Version 4.7.0
e361afe4
NR
25
26- tracer: traces on stderr by default
ce3972ea
NR
27- new: downloader one more public method
28- fix: downloader use original URL for cache ID
e361afe4 29
79961c53 30## Version 4.6.2
5b46737c 31
79961c53 32- fix: formatNumber/toNumber and decimals
5b46737c 33
43d2b562
NR
34## Version 4.6.0
35
36- new: proxy
37- new: StringUtils formatNumber and toNumber
38- fix: UI Desc (NPE)
39
40fe10ff 40## Version 4.5.2
3f277541
NR
41
42- Serial: fix b64/not b64 error
b6200792
NR
43- Serial: perf improvement
44- Base64: perf improvement
875fbf21 45- new: Proxy selector
3f277541 46
96d4aebe
NR
47## Version 4.5.1
48
49- Progress: fix deadlock in rare cases
50
a359464f
NR
51## Version 4.5.0
52
53- Base64: allow access to streams
54- Deprecated: do not use our on deprecated functions
55- Serial: fix ZIP/noZIP error
56
bb60bd13
NR
57## Version 4.4.5
58
59- Base64: allow access to not-zipped Base64 utilities
60- Justify text: better handling of full text lines
61- jDoc: improve
62- IOUtils: new convenience method for reading a File into bytes
63
903453a2
NR
64## Version 4.4.4
65
66- Java 1.6: fix bad dependency so it can compiles on 1.6 again
67- TempFilesTest: fix test
68- Serial: fix for some constructors
69- Serial: better default choice for ZIP/noZIP content
70
3232fdd1
NR
71## Version 4.4.3
72
73- Test assertions: fix files/dir content comparison code
74
d62784c7
NR
75## Version 4.4.2
76
77- Test assertions: can now compare files/dir content
78
8d56ee50
NR
79## Version 4.4.1
80
81- Image: fix undocumented exception on save images
82- TempFiles: crash early on error
83
c022aaa5 84## Version 4.4.0
ce060f5a 85
c022aaa5
NR
86- Text justification: now supports bullet lists and HR lines
87- Text justification: fix a bug with dashes (-) and a crash
ce060f5a 88- Image to text converion fixes
c022aaa5
NR
89- Serial: now supports anonymous inner classes
90- Test: now allow an Exception argument to the "fail(..)" command
91- Downloader: add an optional cache
92- Cache: auto-clean when saving
93- Bridge: fix a NPE when tracing
94- New: justify, img2aa and bridge tools (see package Main)
95
ce060f5a 96
4110f63b
NR
97## Version 4.3.0
98
99- New: IOUtils.Unzip()
f6d228ae 100- TestCase: better message for lists comparisons
4110f63b 101
e772626b
NR
102## Version 4.2.1
103
104- Fix small bug in Downloader
105
1ca23ef7 106## Version 4.2.0
9695f591 107
1ca23ef7 108- New getLanguage() in TransBundle
9695f591 109
6f0d5ab1
NR
110## Version 4.1.0
111
112- New TempFiles (Image.java now uses it instead of memory)
113- Auto cache cleaning + better errors in ImageUtilsAndroid
114- New String justification options
115
e8aa5bf9
NR
116## Version 4.0.1
117
118- Android compatibility (see configure.sh --android=yes)
119
80500544
NR
120## Version 4.0.0
121
122- Deplace all dependencies on java.awt into its own package (ui)
123
f4053377
NR
124## Version 3.1.6
125
126- Fix Serialiser issue with custom objects and String in a custom object
127- Fix Progress/ProgressBar synchronisation issues
128- Fix Bridge default maxPrintSize parameter
129
d827da2a
NR
130## Version 3.1.5
131
132- Fix Cache with no-parent file
133- Fix Progress (Error <> RuntimeException)
134
0ff71477
NR
135## Version 3.1.4
136
137- Fix error handling for tracers in Server
138
4b7d32e7
NR
139## Version 3.1.3
140
141- Fix ImageUtils.fromStream with non-resetable streams
142
217a3310
NR
143## Version 3.1.2
144
145- Fix Server regarding the client version passed to the handler
146- Improve ServerBridge options
147
452f38c8
NR
148## Version 3.1.1
149
150- Some fixes and trace handling changes in ServerBridge
151- Some fixes in Import/Export (objects serialisation)
152
8537d55a
NR
153## Version 3.1.0
154
155- New ServerBridge (including tests)
156
79ce1a49 157## Version 3.0.0
f157aed8
NR
158
159- jDoc
160- Fix bugs in Server (it was not possible to send objects back to client)
79ce1a49
NR
161- Improve code in Server (including tests), breaks API
162- Remove some deprecated things
f157aed8 163
530d4062
NR
164## Version 2.2.3
165
166- Fix in readSmallStream
167- Change traces handling
168
2ee6c205
NR
169## Version 2.2.2
170
171- New method in Cache: manually delete items
172
5e66d142
NR
173## Version 2.2.1
174
175- Small fixes, especially in Progress
176
16c492f5
NR
177## Version 2.2.0
178
179- New classes:
180 - Downloader: download URL from recalcitrant websites
181 - Cache: manage a local cache
182
3f8349b7
NR
183## Version 2.1.0
184
185- Better IOUtils
186
b771aed5
NR
187## Version 2.0.0
188
189- API change
190 - IOUtils is now split between itself and ImageUtils -- some changes required in dependant projects
191 - Some slight renaming in StringUtils/IOUtils/ImageUtils
192
193- New class ImageText
194 - To create ASCII art
195
196## Version 1.6.3
197
198- Version.java
199 - Fix toString issues + test + update scripts
200
201## Version 1.6.2
202
203- Version.java
204 - Now supports "tag" on the versions (i.e., 0.0.4-niki1 -> tag is "niki", tagVersion is 1)
205
206## Version 1.6.1
207
208- Serialisation utilities
209 - Now supports enums and BufferedImages
210
211## Version 1.6.0
212
213- Serialisation utilities
214 - Server class to send/receive objects via network easily
215 - Serialiser now supports Arrays + fixes
216
217## Version 1.5.1
218
219- Serialisation utilities
220 - SerialUtils is now public and can be used to dynamically create an Object
221 - The Importer is now easier to use
222
223## Version 1.5.0
224
225- Bundles: change in Bundles and meta data
226 - The meta data is more complete now, but it breaks compatibility with both Bundles and @Meta
227 - A description can now be added to a bundle item in the graphical editor as a tooltip
228
229- Serialisation utilities
230 - A new set of utilities to quickly serialise objects
231
232## Version 1.4.3
233
234- Bugfix: unhtml
235 - Also replace non-breakable spaces by normal spaces
236
237## Version 1.4.2
238
239- Bugfix: Deltree
240 - Deltree was not OK for files...
241
242## Version 1.4.1
243
244- Progress
245 - Better handling of min==max case
246 - New methods .done() and .add(int step)
247
248## Version 1.4.0
249
250- R/W Bundles
251 - Bundle is now Read/Write
252
253- Bundle Configuration
254 - New UI controls to configure the Bundles graphically
255
256## Version 1.3.6
257
258- Fix for Java 1.6 compat
259 - Java 1.6 cannot compile it due to variables with ambigous names (which
260 - Java 1.8 can identify)
261
262## Version 1.3.5
263
264- Improve ProgressBar UI
265 - It now shows all the progression bars of the different steps of progression at the same time
266
267## Version 1.3.4
268
269- Improve TestCase error reporting
270 - We know display the full stack trace even for AssertionErrors
271
272- Extends Version
273 - ...with new methods: isOlderThan(Version) and isNewerThan(Version)
274
275## Version 1.3.3
276
277- New Version class
278 - Which can parse versions from the running program
279
280## Version 1.2.3
281
282- Add openResource and getVersion in IOUtils
283 - The file VERSION is supposed to exist
284
285- Give more informartion on AssertErrors
286 - The TestCase were not always helpful in case of AssertExceptions; they now print the stacktrace (they only used to do it for non-assert exceptions)
287
288- Fix configure.sh
289 - The VERSION file was not added, the Main method was not the correct one (so it was not producing working runnable JAR, yet it stated so)
290
291## Version 1.2.2
292
293- Fix bug in Bundle regarding \t handling
294 - ...tests should be written (later)
295
296## Version 1.2.1
297
298- New drawEllipse3D method
299 - ...in UIUtils
300
301## Version 1.1.1
302
303- Add UI component for Progress
304 - Still a WIP, it only show the current progress bar, still not the children bars (it's planned)
305
306## Version 1.1.0
307
308- Add progress reporting, move to ui package
309 - A new progress reporting system (and tests) in the new ui package (some other classes have been moved into ui, too: WrapLayout and UIUtils)
310
311## Version 1.0.0
312
313- Add WrapLayout and UIUtils
314 - A FlowLayout that automatically wrap to the next line (from existing code found on internet) and a method to set a fake-native look & feel
315
316## Version 0.9.7
317
318- Improve toImage and allow non-resetable InputStreams
319 - ...though they are then automatically saved onto disk then re-opened, then the file is deleted at the end of the process -- bad perfs
320 - Worse, it does it even if no EXIF metadata are present (because it cannot know that before reading the Stream, and cannot save a partially, non-resetable Stream to disk)
321
322- Reoarganize some methods from String to IO
323
324## Version 0.9.6
325
326- New test system
327 - Now some unit tests have been added, as well as the support classes
328
329## Version 0.9.5
330
331- Resource bundle bug
332 - UTF-8 strings were sometimes wrangled
333 - It is fixed by using a Bundle#Control, whih sadly is only available in Java 1.6+
334
335## Version 0.9.4
336
337- Compatibility bug
338 - Again... because of some useless imports made there for a wrong jDoc comment
339
340## Version 0.9.3
341
342- Compatibility bug
343 - The library did not work with JDK versions prior to 1.8 because of a dependency on Base64
344 - A new (public domain) class was used instead, which is compatible with Java 1.5 this time
345
346## Version 0.9.2
347
348- Initial version
349 - ...on GIT
350