[Glass] case insensitive search broken for Unicode7?

Mariano Martinez Peck marianopeck at gmail.com
Sat Mar 22 09:45:13 PDT 2014


Dale, the problem is deeper than the #includesSubstring:

The first test of this thread is an example:

('Newmont' asUnicodeString _findString: 'newm' startingAt: 1 ignoreCase:
true) > 0

that should answer true, as well as:

((Unicode7 withAll: 'Newmont') _findString: 'newm' startingAt: 1
ignoreCase: true) > 0

And not only Unice7 but all Unicode classes.

In my case, what I did is to take all Unicode classes and override
# _findString:startingAt:ignoreCase:  to this:

Unicode7 >> _findString: subString startingAt: startIndex ignoreCase:
aBoolean

^ super _findString: subString startingAt: startIndex ignoreCase: aBoolean

simple...avoid using the icu collector.

Thanks,



On Sat, Mar 22, 2014 at 1:33 PM, Dale Henrichs <
dale.henrichs at gemtalksystems.com> wrote:

> Gerhard,
>
> Well, those two expressions are still failing in 3.2 so I'll submit a bug
> and it should be fixed when 3.2 is released ... "real soon now".
>
> Thanks!
>
> Dale
>
>
> On Sat, Mar 22, 2014 at 7:56 AM, Gerhard Obermann <obi068 at gmail.com>wrote:
>
>> This should work at least:
>>
>> (Unicode7 withAll: String new) includesString: 'abc'
>> (Unicode7 withAll: '') includesString: 'abc'
>>
>> Gerhard
>>
>>
>> On Tue, Mar 18, 2014 at 4:54 PM, Dale Henrichs <
>> dale.henrichs at gemtalksystems.com> wrote:
>>
>>> Mariano,
>>>
>>> In the shower, after writing the above message, I realized that I am not
>>> an expert in the specific area where you are having problems ... the
>>> revamping that I was referring occurred in the area related to mixed
>>> comparison of Strings and Unicode and not specifically in the area of "case
>>> insensitive search", although I'm pretty sure that we've done extensive
>>> work in other areas of unicide support ...
>>>
>>> I am still buried so I don't really have the time to research this area,
>>> but if you supply me with some test cases I can run them against 3.2 and
>>> determine whether we've addressed your problems in 3.2 ...
>>>
>>> I'm from the land of "it doesn't work until I see it work" so your test
>>> cases are important in case they happen to fall into the cracks in the
>>> implementation... also it's possible that the GLASS layer is getting in the
>>> way as well (as I said, I do not have the time to actually look into this)
>>> ...
>>>
>>> If you give me test cases, I will run them against 3.2 and let you know
>>> what I find out ...
>>>
>>> Dale
>>>
>>>
>>> On Tue, Mar 18, 2014 at 8:21 AM, Dale Henrichs <
>>> dale.henrichs at gemtalksystems.com> wrote:
>>>
>>>> Mariano,
>>>>
>>>> I'm afraid that there is no simple answer ...for 3.2 we ended up making
>>>> pretty significant changes at both the primitive level and the Smalltalk
>>>> level and the things we did (mainly at the primitive level ... as Marten
>>>> has observed) to solve the problem are not easily backported to 3.1.x.
>>>>
>>>> It's looking like we will be releasing 3.2 "real soon now" so you might
>>>> not have to wait long for relief.
>>>>
>>>> Dale
>>>>
>>>>
>>>> On Mon, Mar 17, 2014 at 1:41 PM, Mariano Martinez Peck <
>>>> marianopeck at gmail.com> wrote:
>>>>
>>>>>
>>>>>
>>>>>
>>>>> On Tue, Mar 11, 2014 at 3:41 PM, Mariano Martinez Peck <
>>>>> marianopeck at gmail.com> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> Can anyone confirm a workaround that works from the deepest point so
>>>>>> that nothing is broken? Because I am finding new problems which seem
>>>>>> related...so if we can find a workaround from the seed of the problem we
>>>>>> likely fix all.
>>>>>>
>>>>>>
>>>>> Please?
>>>>>
>>>>> Thanks!
>>>>>
>>>>>
>>>>>
>>>>>> Thanks,
>>>>>>
>>>>>>
>>>>>> On Wed, Mar 5, 2014 at 4:31 PM, Mariano Martinez Peck <
>>>>>> marianopeck at gmail.com> wrote:
>>>>>>
>>>>>>> Thanks James.
>>>>>>> The side effects of this issue is huge, isn't it? I have been
>>>>>>> debugging issues and problems related to this. Because it's not only
>>>>>>> #matches: but #includesSubstring:caseSensitive: (when send with false) and
>>>>>>> many more. I should stop my production system because some load of data etc
>>>>>>> depends in this type of message and does X or Y depending on the answer of
>>>>>>> such a message :(
>>>>>>>
>>>>>>> thanks in advance,
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Wed, Mar 5, 2014 at 4:25 PM, James Foster <
>>>>>>> james.foster at gemtalksystems.com> wrote:
>>>>>>>
>>>>>>>> On Wed, Mar 5, 2014 at 3:51 PM, James Foster <
>>>>>>>> james.foster at gemtalksystems.com> wrote:
>>>>>>>>
>>>>>>>>> On Wed, Mar 5, 2014 at 1:47 PM, James Foster <
>>>>>>>>> james.foster at gemtalksystems.com> wrote:
>>>>>>>>>
>>>>>>>>>> I added 'asUppercase' to both the receiver and the argument in my
>>>>>>>>>> code (with a note to remove it later).
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> But the problem is that lots of methods will be broken....because
>>>>>>>>> it is all senders of all senders of all senders.. of _findString: subString
>>>>>>>>> startingAt: startIndex ignoreCase: aBoolean  of Unicode7.
>>>>>>>>>
>>>>>>>>> What about this instead:
>>>>>>>>>
>>>>>>>>> Unicode7 >> _findString: subString startingAt: startIndex
>>>>>>>>> ignoreCase: aBoolean
>>>>>>>>>
>>>>>>>>>   ^ super _findString: subString startingAt: startIndex
>>>>>>>>> ignoreCase: aBoolean
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> I am not aware of any suggested changes to the base classes to fix
>>>>>>>>> this but I've indicated on the internal bug tracking system that publishing
>>>>>>>>> a workaround would be appreciated.
>>>>>>>>>
>>>>>>>>>
>>>>>>>> Thanks James. Indeed, a workaround is deeply appreciated. Please
>>>>>>>> let me know if someone pushes one in the bug tacker. Is it public? Because
>>>>>>>> I don't see anything in
>>>>>>>> http://gemtalksystems.com/index.php/community/gss-support/resources/bug-notes/
>>>>>>>>
>>>>>>>>
>>>>>>>> That is where the bug-note would appear when/if it is written.
>>>>>>>>
>>>>>>>> James
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> Mariano
>>>>>>> http://marianopeck.wordpress.com
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Mariano
>>>>>> http://marianopeck.wordpress.com
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Mariano
>>>>> http://marianopeck.wordpress.com
>>>>>
>>>>> _______________________________________________
>>>>> Glass mailing list
>>>>> Glass at lists.gemtalksystems.com
>>>>> http://lists.gemtalksystems.com/mailman/listinfo/glass
>>>>>
>>>>>
>>>>
>>>
>>> _______________________________________________
>>> Glass mailing list
>>> Glass at lists.gemtalksystems.com
>>> http://lists.gemtalksystems.com/mailman/listinfo/glass
>>>
>>>
>>
>


-- 
Mariano
http://marianopeck.wordpress.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.gemtalksystems.com/mailman/private/glass/attachments/20140322/1ac38f75/attachment.html>


More information about the Glass mailing list