Subject:
Re: [ruby-ffi] New release of FFI gem
From:
Evan Phoenix
Date:
12/22/10 1:24 PM
To:
ruby-ffi@googlegroups.com


On Dec 22, 2010, at 11:16 AM, Charles Oliver Nutter wrote:

> On Fri, Dec 3, 2010 at 4:57 AM, Wayne Meissner <wmeissner@gmail.com> wrote:
>>> If FFI is aiming 1.9.2 or bigger, then the rubygem spec needs to be
>>> tweaked to reflect that. I'm not against of ditching 1.8.x support,
>>> but just want to reduce painful support issues for users still using
>>> 1.8.x
>> 
>> Agreed, and I just pushed a change the restricts it to >= 1.9.2
>> 
>> I'm not against it still working on 1.8.7 - I'm just against:
>> 
>> a) doing the work to make it work, and
>> b) dealing with issues when people try to run code that either
>> requires blocking threads, or non-ruby threads calling back into ruby.
> 
> I think it's premature to drop 1.8.7 support. The majority of Ruby
> users are still on 1.8.7, and that's not changing rapidly. There's
> also people with production apps and released libraries that depend on
> FFI.
> 
> I think we need to find a way to get support back in there ASAP.
> Perhaps that means we need to actively find someone to help Wayne
> maintain the FFI gem (or take over 1.8 support completely). If we
> don't have FFI for 1.8.7, it becomes substantially less useful as a
> cross-impl replacement for extensions.

I agree. Sorry that I didn't chime in when 1.0.0 was released also, I got tied up with the Rubinius 1.2 release.

> 
> I appreciate the issues with blocking threads, but I think that's a
> peril for any C extension on 1.8.7. In other words...we punt, since
> there's no solution, and recommend people consider blocking calls when
> using libraries through FFI.

I agree this, is a tricky problem that Wayne has done a great job supporting. But I think that the difficulty in it points that it's just not possible to do properly with the architecture of 1.8. Not supporting callbacks on non-ruby threads seems like an OK compromise. Are there a lot of people using this functionality?

> 
> Wayne: Can you summarize what's needed to get 1.8.7 support back in the gem?

Wayne, in the past we've talked about me help with the gem development and API. I'm happy to start doing this in earnest.

> 
> - Charlie
>