|
From: | Oliver Heimlich |
Subject: | Re: Class related regressions in GNU Octave 4.0 |
Date: | Sun, 12 Apr 2015 15:31:44 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Icedove/31.6.0 |
On 12.04.2015 15:06, Mike Miller wrote:
On Sun, Apr 12, 2015 at 10:55:42 +0200, Oliver Heimlich wrote:On 26.03.2015 23:09, Jordi GutiƩrrez Hermoso wrote:On Thu, 2015-03-26 at 22:31 +0100, Oliver Heimlich wrote:I guess that now it is too late and the regressions are not going to be fixed until the final 4.0 release and therefore break some functionality for a certain time?!I think we ought to consider regressions release-critical. I'll take a look at these three bugs during the weekend. - Jordi G. H.Jordi, I did you check the regressions already? Should I put them on the Bug Fix List for the release [1]?I looked your list over. I haven't verified whether they are regressions or not, or whether they are critical for the release or not. But it's worth noting that they all only apply to old-style classes that override the "size" function.
I have verified that #44334, #44498, and #43925 all are regressions, which have been working in 3.8.2 and are broken in 4.0.
In order to not break some functionality in 4.0 in the interval package, I would have to provide three workaround methods. Here is the big question (taken from #44498), which affects all these bugs:
What is the desired behaviour?1) A user-defined class must override all methods together to get a consistent behaviour: size, isvector, isscalar, and isequal. Any builtin functions will assume that the object's size is always [1 1]. 2) A user-defined class must override size only. The builtin functions will respect the overriden size method and produce a consistent behaviour for the user (like they did in version 3.8.2).
[Prev in Thread] | Current Thread | [Next in Thread] |