On Fri, Jan 11, 2013 at 2:46 PM, Sven Van Caekenberghe <span dir="ltr"><<a href="mailto:sven@stfx.eu" target="_blank">sven@stfx.eu</a>></span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Lukas,<br>
<div class="im"><br>
On 11 Jan 2013, at 15:29, Lukas Renggli <<a href="mailto:renggli@gmail.com">renggli@gmail.com</a>> wrote:<br>
<br>
> Hi Ken,<br>
><br>
> Looks like your change of #includesSubString: to #includesSubstring:<br>
> broke Seaside 3.1:<br>
><br>
> <a href="http://jenkins.lukas-renggli.ch/job/Seaside%203.1/lastCompletedBuild/testReport/Seaside.Tests.Canvas/" target="_blank">http://jenkins.lukas-renggli.ch/job/Seaside%203.1/lastCompletedBuild/testReport/Seaside.Tests.Canvas/</a><br>
><br>
> The same problem appeared in the past on other packages (Pier,<br>
> Magritte). Can you revert the change?<br>
<br>
</div>This is a catch-22 change for library/framework developers ;-)<br>
<br>
pre Pharo 2.0 there is #includesSubString:<br>
post Pharo 2.0 there is #includesSubstring:<br>
<br>
For a library/framework that targets both platforms such as Seaside (but just as well for all my projects, including Zinc, and probably every project out there) there are two options:<br>
<br>
follow the change<br>
refuse the change<br>
<br>
In the first case, a compatibility package has to define the new selector as an alias pre Pharo 2.0<br>
In the second case, a compatibility package has to define the old selector as an alias post Pharo 2.0 (and override the deprecation warning)<br>
<br>
Both are valid choices/strategies, but one has to be chosen for Seaside.<br>
For my projects I chose option 1.<br>
<br>
Sven<br>
<br>
PS: I guess that #greaseIncludesSub[S|s]tring: would also be an option ;-)\<br></blockquote><div><br>No need for a grease-specific selector - just need different versions of grease for Pharo 1 and Pharo 2 if people want both versions of Pharo supported.. Can't recall what other platforms use, but in general I prefer 'Substring' myself. <br>
</div></div>