GNOME Bugzilla – Bug 530711
Change in array eval between 1.6 and 1.8
Last modified: 2009-05-16 02:56:27 UTC
Gnumeric 1.6.x allowed summaries over computed values, e.g. SUM(A1:A9/B1:B9) or SUM(IF(B1:B9,A1:A9/B1:B9)). Gnumeric 1.8.x does not. This is a fairly serious (and undocumented) feature regression.
Created attachment 110153 [details] Spreadsheet which works in older versions of gnumeric
Previously reported on Fedora's Bugzilla as https://bugzilla.redhat.com/show_bug.cgi?id=444566 Fedora9 preview includes Gnumeric 1.8.2, previous versions of Fedora used Gnumeric 1.6 or below, and I am requesting that they include Gnumeric 1.6.x instead of 1.8.x with the full release because of this problem.
Have you tried entering the values as array expressions (using ctrl-shift-enter rather than enter to complete an edit). =sum(a1:a5/a1:a5) == 5 when entered as an array.
This works admirably for sum(), but min() and max() both return wrong values (it seems to be using min as a selector for the first value and max as a selector for the second, rather than actually doing either operation). I suspect this is a bug in the array expression parser.
nevermind, things seem to work ok with array evaluation now
We did some array evaluation fixes sometime between 1.6 and 1.8.
The XL compatibility fixes appear to have broken existing sheets. We need to look for a way to support the older semantics. Possibly an internal eval flag and some xml extensions.
Jody: those fixes had also broken some of the analysis tools that used the old semantics.
Any changes on this?
Realistically it will not happen.
Morten: so should this bug be closed?
--> WONTFIX. We will, however, help with fixing up sheets that need it. Just drop by #gnumeric.