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