1 Summary of important user-visible changes for releases of the io package
3 ===============================================================================
4 io-1.0.19 Release Date: 2012-06-08 Release Manager: Philip Nienhuis
5 ===============================================================================
8 --- getusedrange subfunc getusedrange_jod: str2num applied to indices rather
9 than the substring. Must have been there for > 2 years, only surfaced
10 with jopendocument v 1.3b1
11 --- oct2xls, oct2ods: cast all numeric types in input array to double as
12 spreadsheets have only double, boolean or character string type. This bug
13 has been there from the very beginning of the spreadsheet functions >8-O
15 --- Support for reading back formulas from .xls spreadsheets using ActiveX/COM
17 ** Compatible with jOpenDocument version 1.3b1
18 getUsedRange() method added (MUCH faster than the old hack)
20 ** Compatible with odfdom-java-0.8.8-incubator.jar (ODF Toolkit 0.5-incubating)
22 ** Compatible with Apache POI 3.8 final
24 ===============================================================================
25 io-1.0.18 Release Date: 2012-03-22 Release Manager: Philip Nienhuis
26 ===============================================================================
28 ** The following functions have been imported from the miscellaneous package:
29 cell2csv csvconcat xmlread
30 csv2cell csvexplode xmlwrite
31 Their error messages and help messages have been cleaned up a bit.
34 --- odsfinfo: fixed "wrong type argument `cell'" bug when run interactively.
35 --- xlsopen, odsopen: fixed messed up screen output due to UNO usage warning.
36 --- csv2cell: checks if file is empty and if so, return an empty cell.
37 --- xlsopen: better Java detection logic, more informative error messages
39 ** Adapted to internal LibreOffice-3.5-final changes.
40 Some bugs (flashing LO screens) still have to be fixed upstream - see here:
41 https://bugs.freedesktop.org/show_bug.cgi?id=42470
43 ** Tried OpenXLS-6.0.7.jar. Reads OK, still unusable for writing .xls files.
45 ===============================================================================
46 io-1.0.17 Release Date: 2012-02-27 Release Manager: Philip Nienhuis
47 ===============================================================================
50 --- oct2ods, oct2xls, odswrite default range input arg. These functions may not
51 have worked properly for two years (!)
53 ** Fixed support for odfdom v.0.8.7 (ODS). Note: the OTK interface only works
54 well with xercesImpl.jar 2.9.1 (Sep 14, 2009)
56 ** Many small bug fixes & documentation updated to actual functionality.
58 ** Fixed "seealso" texinfo header string in almost all functions.
60 ** Added formal test scripts to "internal functions" section.
62 ===============================================================================
63 io-1.0.16 Release Date: 2012-01-19 Release Manager: Philip Nienhuis
64 ===============================================================================
68 ** PKG_ADD now expects Java spreadsheet class libs (.jars) in /lib/java
71 ===============================================================================
72 io-1.0.15 Release Date: 2011-10-02 Release Manager: Philip Nienhuis
73 ===============================================================================
75 io-1.0.15 is primarily a bug fix release and a snapshot / wrap-up of current
76 development status (some still a bit experimental). It mainly comprises:
78 ** A number of bug fixes (incl. some serious ones, notably with .ods/OOo Calc);
80 ** Some mainly cosmetic improvements to existing code; less verbosity;
82 ** pch2mat (reading & transforming Nastran PCH files, contributed by
85 ** object2json.m (creating a json description string of objects, contributed
86 by Daniel Torre). This was already silently introduced in io-1.0.14;
88 ** A scripted troubleshooting / classpath setup tool for spreadsheet I/O
89 support (chk_spreadsheet_support.m);
91 ** Experimental OXS support (OpenXLS) for reading Excel xls (BIFF8).
92 OpenXLS is -let's say- a little bit lacking: For reading it is faster than
93 JXL. However, while OXS write support has been coded (and works) I had to
94 disable it as the OXS Java classes won't release the file handle so Octave
95 will hang upon closing :-( I'm stuck with this so I just release it as-is;
97 ** Experimental UNO support, i.e. invoking OpenOffice.org (or clones like
98 LibreOffice) behind the scenes to read spreadsheet files, much like
99 ActiveX/COM for MS-Excel. This is also based on Java. The first time you
100 use UNO, OOo has to be loaded and you'll have to be patient, but once loaded
101 (and in the OS cache) you'll see the pros:
103 --* Much lower Java memory usage as OOo loads the spreadsheet in its own
104 memory chunk (not Octave's) => much bigger spreadsheet capacity;
105 --* You can read *all* formats supported by OOo: .ods, .xls, .csv, .xlsx,
106 .sxc, .dbf, Lotus wk1, Quattro Pro, ......; and it doesn't really matter
107 whether xlsopen of odsopen is used.
108 Of course all this wonderful stuff comes at a prize:
109 --* After closing the spreadsheet file (odsclose, xlsclose) ALL OOo
110 invocations will be closed, also those started outside Octave. This is
111 due to "the way OpenOffice works" (quoted from OOo dev forum), especially
112 through Java. There are other ways to close OOo but they'll hang Octave;
113 --* The Java UNO classes supplied with e.g. LibreOffice aren't kept quite
114 up-to-date with the main program. As a consequence, with e.g.,
115 LibreOffice 3.4 the main LO window will pop up (it can't be hidden). I
116 filed a bug report for this
117 (https://bugs.freedesktop.org/show_bug.cgi?id=40991) but I haven't seen
118 it being picked up yet. Another example: while LO 3.3.1's row capacity
119 was already > 10^6, it took until LO 3.4 before this capacity was
120 implemented in the Java UNO classes.
121 Like with OXS, I'm a bit stuck here - all this has to be fixed upstream.
124 for older Octave versions (< 3.4.0) you can install io-1.0.15 using the -nodeps
125 flag. You'll then loose the old and buggy textread and csv/dlm-read/write
126 functions but I'd consider that as no big loss.
128 <please scroll up/back to see rest of io NEWS>