[Seaside-dev] Broken build because of use of #includesSubstring:

Sven Van Caekenberghe sven at stfx.eu
Fri Jan 11 14:46:05 UTC 2013


Hi Lukas,

On 11 Jan 2013, at 15:29, Lukas Renggli <renggli at gmail.com> wrote:

> Hi Ken,
> 
> Looks like your change of #includesSubString: to #includesSubstring:
> broke Seaside 3.1:
> 
> http://jenkins.lukas-renggli.ch/job/Seaside%203.1/lastCompletedBuild/testReport/Seaside.Tests.Canvas/
> 
> The same problem appeared in the past on other packages (Pier,
> Magritte). Can you revert the change?

This is a catch-22 change for library/framework developers ;-)

 pre Pharo 2.0 there is #includesSubString:
 post Pharo 2.0 there is #includesSubstring:

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:

 follow the change
 refuse the change

In the first case, a compatibility package has to define the new selector as an alias pre Pharo 2.0
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)

Both are valid choices/strategies, but one has to be chosen for Seaside.
For my projects I chose option 1.

Sven

PS: I guess that #greaseIncludesSub[S|s]tring: would also be an option ;-)

--
Sven Van Caekenberghe
http://stfx.eu
Smalltalk is the Red Pill



More information about the seaside-dev mailing list