I tried to create a bundle command that is executed using Ruby 2. When I use TextMate::UI.menu in the command, the command never finish and TextMate freezes until I force quite the Ruby process running the command.
It works with Ruby 1.8.7 but not with 2.1.5. I haven't tried 1.9.
On 16 Oct 2015, at 13:56, Jacob Carlborg wrote:
I tried to create a bundle command that is executed using Ruby 2. When I use TextMate::UI.menu in the command, the command never finish and TextMate freezes until I force quite the Ruby process running the command.
It works with Ruby 1.8.7 but not with 2.1.5. I haven't tried 1.9.
Currently all of the support libraries work with ruby 1.8.7. Not tested with anything else.
We would be very happy to receive pull requests for 2.0 “fixes” as long as the fixes remain compatible with ruby 1.8.7, as we can’t really drop support for ruby 1.8.7.
On 2015-10-16 11:34, Allan Odgaard wrote:
Currently all of the support libraries work with ruby 1.8.7. Not tested with anything else.
Ok, I see. Do you see it as a problem that a command can freeze TextMate like this? Something that should be fixed in TextMate as well. A timeout or something.
We would be very happy to receive pull requests for 2.0 “fixes” as long as the fixes remain compatible with ruby 1.8.7, as we can’t really drop support for ruby 1.8.7.
I guessing it might have something to do with the thread and or dialog used here:
https://github.com/textmate/bundle-support.tmbundle/blob/master/Support/shar...
On 17 Oct 2015, at 2:34, Jacob Carlborg wrote:
On 2015-10-16 11:34, Allan Odgaard wrote:
Currently all of the support libraries work with ruby 1.8.7. Not tested with anything else.
Ok, I see. Do you see it as a problem that a command can freeze TextMate like this? Something that should be fixed in TextMate as well. A timeout or something.
If a command freezes then you should be able to press ⌃C or ⌘. to kill it.
We would be very happy to receive pull requests for 2.0 “fixes” as long as the fixes remain compatible with ruby 1.8.7, as we can’t really drop support for ruby 1.8.7.
I guessing it might have something to do with the thread and or dialog used here:
The use of OSX::PropertyList::load and to_plist should probably both throw an exception (as this is a binary ruby extension we have for 1.8.7).
For 2.0 compatibility, it would be best to switch to a property list extension written 100% in ruby, it must however be able to also read binary property lists.
On 2015-10-17 02:45, Allan Odgaard wrote:
If a command freezes then you should be able to press ⌃C or ⌘. to kill it.
Aha, I didn't know about that. I've always killed the interpreter process instead.
The use of OSX::PropertyList::load and to_plist should probably both throw an exception (as this is a binary ruby extension we have for 1.8.7).
For 2.0 compatibility, it would be best to switch to a property list extension written 100% in ruby, it must however be able to also read binary property lists.
Ok, I see.