Re: GSoC project nio4r

94 views
Skip to first unread message

Tony Arcieri

unread,
Mar 14, 2015, 7:04:17 PM3/14/15
to Ruby users, ruby...@googlegroups.com
Hi there!

I'm really glad to hear you're interested in working on nio4r! I'd also be glad to be your mentor.

There are a number of potential projects you could work on. I listed filesystem monitoring as one, but there are other outstanding ones including the ability to change "interest ops" on the fly.

ruby-core contributor Koichi Sasada also mentioned it would be interesting if Ruby could reach feature parity with Python asyncio, so if you could build out the interesting features from Python asyncio into nio4r that'd be great.

---------- Forwarded message ----------
From: SASADA Koichi <k...@atdot.net>
Date: Tue, Mar 10, 2015 at 1:12 AM
Subject: [ruby-core:68480] Re: Looking for MRI projects for Ruby Google Summer of Code 2015
To: ruby...@ruby-lang.org

[... snip ...]

[lib] Consider non-blocking API

Python 3.4 introduce asyncio suport
<http://www.drdobbs.com/open-source/the-new-asyncio-module-in-python-34-even/240168401>.
Consider how to introduce it in Ruby way.

# but this theme is very difficult, because it
# needs political power to cordinate developers who have opinions.

--
Tony Arcieri

Upekshe Jayasekera

unread,
Mar 14, 2015, 11:53:22 PM3/14/15
to ruby...@googlegroups.com, ruby...@ruby-lang.org
Hi Tony,
I have a small question. Is there any template structure you would prefer for the GSoC Application. 

Thanks and Regards,
Upekshe.

Tony Arcieri

unread,
Mar 15, 2015, 3:16:16 PM3/15/15
to Upekshe Jayasekera, ruby...@googlegroups.com, ruby-talk ML
That's a really good question! Let me do some research to see if there's any recommendations for it.

I believe Melange has a standard template.

--
You received this message because you are subscribed to the Google Groups "Ruby Google Summer of Code" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubygsoc+u...@googlegroups.com.
To post to this group, send email to ruby...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubygsoc/b96e259f-6792-4aeb-a40c-dacde943d078%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Tony Arcieri

Yule Zhao

unread,
Mar 16, 2015, 8:51:26 AM3/16/15
to Ruby users, Upekshe Jayasekera, ruby...@googlegroups.com, Tony Arcieri
Hello Tony,

I find Python Software Foundation has a detailed template for proposal. Maybe we can refer to it.

Charles Nutter

unread,
Mar 16, 2015, 3:08:08 PM3/16/15
to ruby...@googlegroups.com, ruby...@ruby-lang.org
This is a nice template...I agree, we should adopt this format or something very close.

- Charlie


On Monday, March 16, 2015 at 7:51:26 AM UTC-5, Yule Zhao wrote:
Hello Tony,

I find Python Software Foundation has a detailed template for proposal. Maybe we can refer to it.
That's a really good question! Let me do some research to see if there's any recommendations for it.

I believe Melange has a standard template.
On Sat, Mar 14, 2015 at 8:53 PM, Upekshe Jayasekera <upeks...@cse.mrt.ac.lk> wrote:
Hi Tony,
I have a small question. Is there any template structure you would prefer for the GSoC Application. 

Thanks and Regards,
Upekshe.

--
You received this message because you are subscribed to the Google Groups "Ruby Google Summer of Code" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubygsoc+unsubscribe@googlegroups.com.

To post to this group, send email to ruby...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubygsoc/b96e259f-6792-4aeb-a40c-dacde943d078%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.



--
Tony Arcieri

Upekshe Jayasekera

unread,
Mar 18, 2015, 6:12:41 AM3/18/15
to ruby...@googlegroups.com, ruby...@ruby-lang.org
Hi All,
I am trying to build the 'nio4r' project as you instructed me. But I am getting a error when trying the command  'rake'
install -c tmp/x64-mingw32/nio4r_ext/2.2.1/nio4r_ext.so lib/nio4r_ext.so
cp tmp/x64-mingw32/nio4r_ext/2.2.1/nio4r_ext.so tmp/x64-mingw32/stage/lib/nio4
ext.so
C:/Ruby22-x64/bin/ruby.exe -IC:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-supp
t-3.0.4/lib;C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib -S C:/
by22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/exe/rspec ./spec/nio/accept
les_spec.rb ./spec/nio/monitor_spec.rb ./spec/nio/selectables/pipe_spec.rb ./s
c/nio/selectables/ssl_socket_spec.rb ./spec/nio/selectables/tcp_socket_spec.rb
/spec/nio/selectables/udp_socket_spec.rb ./spec/nio/selector_spec.rb
C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:54:in `requir
: cannot load such file -- ffi_c (LoadError)
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/ffi-1.9.8-x64-mingw32/lib/
i.rb:18:in `rescue in <top (required)>'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/ffi-1.9.8-x64-mingw32/lib/
i.rb:3:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rest-client-1.7.3-x64-ming
2/lib/restclient/windows/root_certs.rb:2:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rest-client-1.7.3-x64-ming
2/lib/restclient/windows.rb:7:in `require_relative'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rest-client-1.7.3-x64-ming
2/lib/restclient/windows.rb:7:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rest-client-1.7.3-x64-ming
2/lib/restclient.rb:16:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rest-client-1.7.3-x64-ming
2/lib/rest_client.rb:2:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/coveralls-0.7.11/lib/cover
ls/api.rb:5:in `<class:API>'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/coveralls-0.7.11/lib/cover
ls/api.rb:2:in `<module:Coveralls>'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/coveralls-0.7.11/lib/cover
ls/api.rb:1:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/coveralls-0.7.11/lib/cover
ls.rb:3:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
8:in `require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
8:in `rescue in require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Users/Upekshe Jay/Documents/GSoC/GIT Repos/nio4r-master/Nio-Gi
r/spec/spec_helper.rb:1:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Ruby22-x64/lib/ruby/2.2.0/rubygems/core_ext/kernel_require.rb:
:in `require'
        from C:/Users/Upekshe Jay/Documents/GSoC/GIT Repos/nio4r-master/Nio-Gi
r/spec/nio/acceptables_spec.rb:1:in `<top (required)>'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/configuration.rb:1058:in `load'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/configuration.rb:1058:in `block in load_spec_files'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/configuration.rb:1058:in `each'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/configuration.rb:1058:in `load_spec_files'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/runner.rb:97:in `setup'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/runner.rb:85:in `run'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/runner.rb:70:in `run'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib/rspec
ore/runner.rb:38:in `invoke'
        from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/exe/rspec
:in `<main>'
C:/Ruby22-x64/bin/ruby.exe -IC:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-supp
t-3.0.4/lib;C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/lib -S C:/
by22-x64/lib/ruby/gems/2.2.0/gems/rspec-core-3.0.4/exe/rspec ./spec/nio/accept
les_spec.rb ./spec/nio/monitor_spec.rb ./spec/nio/selectables/pipe_spec.rb ./s
c/nio/selectables/ssl_socket_spec.rb ./spec/nio/selectables/tcp_socket_spec.rb
/spec/nio/selectables/udp_socket_spec.rb ./spec/nio/selector_spec.rb failed

First I clone the git repo. Then I install the Development Kit, and follow the instructions in the wiki page of https://github.com/oneclick/rubyinstaller/wiki/Development-Kit#quick-start . Then 
Then run the commands 
'gem install bundler'
'bundle'
'rake compile'

none of them give me errors. But when I run the command 'rake' it gave me the above error. Then I re-install the ffi (gem install ffi --platform=ruby), But still the same error.
Am I doing something wrong. I am currently using Windows 8. BTW, the files mentioned in the error are in place. According to the error it is a Load error.
I am really grateful if you can provide me some help with this problem.

Thanks and Regards,

Upekshe Jayasekera
Undergraduate 
Department of Computer Science and Engineering
University of Moratuwa
Sri Lanka

Tony Arcieri

unread,
Mar 20, 2015, 2:14:40 AM3/20/15
to Upekshe Jayasekera, ruby...@googlegroups.com, ruby-talk ML
Hi Upekshe,

I don't know a whole lot about Ruby on Windows but I pinged someone who might be able to help.

--
You received this message because you are subscribed to the Google Groups "Ruby Google Summer of Code" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubygsoc+u...@googlegroups.com.

To post to this group, send email to ruby...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Tony Arcieri

Upekshe Jayasekera

unread,
Mar 20, 2015, 6:50:07 AM3/20/15
to ruby...@googlegroups.com, ruby...@ruby-lang.org
Hi Tony,
Thanks for that. Anyway I decided to move to Ubuntu, Which I though would be the best option. I think It will be easy for both you and me since it is better to stay on the same platform, when discussing problems arise when developing. :) .

Thanks and Regards,
Upekshe

Tony Arcieri

unread,
Mar 20, 2015, 11:58:03 AM3/20/15
to Upekshe Jayasekera, ruby...@googlegroups.com, ruby-talk ML
Cool, sounds good!

It seems the source of this particular problem may have been the FFI gem has not been updated to support Ruby 2.2 on Windows yet.

Better Windows support for nio4r would be an interesting project in and of itself! But Ubuntu makes it easier for me as a mentor ;)

--
You received this message because you are subscribed to the Google Groups "Ruby Google Summer of Code" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubygsoc+u...@googlegroups.com.
To post to this group, send email to ruby...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.



--
Tony Arcieri

Upekshe Jayasekera

unread,
Mar 23, 2015, 10:39:21 AM3/23/15
to ruby...@googlegroups.com, ruby...@ruby-lang.org
Hi Tony,
I installed Ubuntu and It seems I was able to build the project nio4r successfully. :D
Thanks for the help provided, (Y).

Regards,
Upekshe.

Upekshe Jayasekera

unread,
Mar 23, 2015, 10:41:20 AM3/23/15
to ruby...@googlegroups.com, ruby...@ruby-lang.org
BTW, I would really like to join to the Slack channel. how can I join.

-Upekshe
Reply all
Reply to author
Forward
0 new messages