Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Remove official support for REE

  • Loading branch information...
commit 6073cd07b8d470d93d402dacda4e82c9cd195d75 1 parent 69d6b6c
Jon Yurek authored September 28, 2012
1  .travis.yml
@@ -2,5 +2,4 @@ rvm:
2 2
   - 1.8.7
3 3
   - 1.9.2
4 4
   - 1.9.3
5  
-  - ree
6 5
   - jruby
13  README.md
Source Rendered
@@ -149,6 +149,19 @@ in https://github.com/thoughtbot/cocaine/issues/24 and probably fixed in
149 149
 http://jira.codehaus.org/browse/JRUBY-6162. You *will* want to use the
150 150
 `BackticksRunner` if you are unable to update JRuby.
151 151
 
  152
+## REE
  153
+
  154
+So, here's the thing about REE: The specs that involve timeouts don't work
  155
+there. Not because the logic is unsound, but because the command runs really
  156
+slowly. The test passes -- eventually. This was verified using an external
  157
+debugger: the process that REE kicks off in the tests reads and writes
  158
+surprisingly slowly. For this reason, we cannot recommend using Cocaine with
  159
+REE anymore.
  160
+
  161
+It's not something we like, so if anyone has any insight into this problem,
  162
+we'd love to hear about it. But, for the time being, we'll consider it more
  163
+appropriate to just not use it anymore. Upgrade to 1.9.3, people.
  164
+
152 165
 ## Feedback
153 166
 
154 167
 *Security* concerns must be privately emailed to
1  cocaine.gemspec
@@ -21,5 +21,6 @@ Gem::Specification.new do |s|
21 21
   s.add_development_dependency('mocha')
22 22
   s.add_development_dependency('rake')
23 23
   s.add_development_dependency('posix-spawn')
  24
+  s.add_development_dependency('system_timer')
24 25
 end
25 26
 
1  spec/spec_helper.rb
@@ -4,6 +4,7 @@
4 4
 require 'cocaine'
5 5
 require 'timeout'
6 6
 require 'tempfile'
  7
+require 'system_timer'
7 8
 
8 9
 Dir[File.dirname(__FILE__) + "/support/**.rb"].each{|support_file| require support_file }
9 10
 
2  spec/support/nonblocking_examples.rb
@@ -3,7 +3,7 @@
3 3
     garbage_file = Tempfile.new("garbage")
4 4
     10.times{ garbage_file.write("A" * 1024 * 1024) }
5 5
 
6  
-    Timeout::timeout(5) do
  6
+    SystemTimer.timeout_after(5) do
7 7
       output = subject.call("cat '#{garbage_file.path}'")
8 8
       $?.exitstatus.should == 0
9 9
       output.length.should == 10 * 1024 * 1024

0 notes on commit 6073cd0

Please sign in to comment.
Something went wrong with that request. Please try again.