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