<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><blockquote type="cite"><div><blockquote type="cite"><font class="Apple-style-span" color="#000000"><br></font></blockquote><blockquote type="cite">This is what happened in the case of ifNotNil: ifNotNilDo: merger.<br></blockquote><br><br>I'm not sure what you're referring to. &nbsp;The old method still exists, so no packages that you load can break from it. &nbsp;What am I missing? <br></div></blockquote><div><br></div><div>A new package that does not know that ifNotNil: [ :value | ] is invalid in 3.8 will not load or compile in 3.8. So you promote compatibility and the ability to migrate, by fixing the OLD image, and migrating the code to the new API there.</div><div><br></div><div>The advantage of this being that your code base can move forward in situ, and your packages dont have to use the old api, and you can maintain one codebase for all squeak images ever.</div><div><br></div><blockquote type="cite"><div>You were probably just unaware that #ifNotNilDo: still existed. </div></blockquote><div><br></div><div>I know it still exists.</div><br></div>Keith</body></html>