<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div>Hi all,</div><div><br></div><div>I know this is a little bit early to start talking about the new OS X but I’m an early adopter and try to fix issues that arise prior to the final release so the time most people upgrade, tools that mean a lot to me (like TextMate itself) can be used without having to worry a lot.</div><div><br></div><div>On Mavericks the default Ruby interpreter became version 2.0, although 1.8 was still in place. With the end of support I can understand why Apple decided to ditch Ruby 1.8 from their upcoming system, and therefore 1.8 is gone for good.</div><div><br></div><div>As a fair amount of the Bundles are using the system built-in Ruby version as the shebang line, this is now breaking:</div><div>#!/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby</div><div><br></div><div>On the current system the frameworks look like this:</div><div><br></div><div><div style="margin: 0px; font-size: 10px; font-family: Menlo; color: rgb(80, 208, 255); background-color: rgb(49, 46, 66);"><span style="font-variant-ligatures: no-common-ligatures; color: #6694ff">ll</span><span style="font-variant-ligatures: no-common-ligatures; color: #95a5a7"> </span><span style="text-decoration: underline ; font-variant-ligatures: no-common-ligatures">/System/Library/Frameworks/Ruby.framework/Versions/</span></div><div style="margin: 0px; font-size: 10px; font-family: Menlo; color: rgb(149, 165, 167); background-color: rgb(49, 46, 66);">total 8</div><div style="margin: 0px; font-size: 10px; font-family: Menlo; color: rgb(149, 165, 167); background-color: rgb(49, 46, 66);">drwxr-xr-x  7 root  wheel   238B Jun  4 10:51 <span style="font-variant-ligatures: no-common-ligatures; color: #62b6ff">2.0</span></div><div style="margin: 0px; font-size: 10px; font-family: Menlo; color: rgb(149, 165, 167); background-color: rgb(49, 46, 66);">lrwxr-xr-x  1 root  wheel     3B Jun  3 15:26 <span style="font-variant-ligatures: no-common-ligatures; color: #ff6cb1">Current</span> -> 2.0</div></div><div><br></div><div>As I mentioned above, 1.8 is gone and has been replaced with a ‘Current’ symlink that (as of writing) points to version 2.0 (I guess this could be Apple’s move to support new default Rubies later on in a consistent manner.)</div><div><br></div><div>I appreciate that we can’t just easily change the commands and point them to the new version as that would break TextMate bundles for most users, but I have no idea currently how we could support multiple OS versions.</div><div><br></div><div>Is there a way to pass down a command dynamically to different interpreters? I guess using /usr/bin/env as the shebang line won’t help as it can be literally anything that is inherited from the user’s PATH.</div><div><br></div><div>One option might be to wrap the commands with a shell script that finds a compatible Ruby version (either 2.0 or 1.8 if exists) and then passes down the arguments.</div><div><br></div><div>Any other ideas?</div><div><br></div><div>Allan, how can I start working on this?</div><div><br></div><div>Cheers,</div><div><br></div><div>— Attila</div></body></html>