I’m on Windows…and I can’t get anything to work with this plugin:
If I run rake rails:upgrade:check, for example, I get this:
fork() function is unimplemented on this machine
What a drag! I heard that Ruby’s fork() function is unimplemented on
DOES THAT MEAN I CAN’T USE THE PLUGIN?
If you have any insights, please helpppp!
Ruby’s fork() function isn’t “unimplemented” on windows, fork() is an
function provided by the OS on Unix and Unix-like OS’es (e.g. Linux,
OS X, etc, etc.)
I’m trying the same without a solution yet. Did you make any progress?
I had the same problem, and found the solution here:
There’s a required gem that uses fork(), of which there is a windows
version that doesn’t. So first, you have to…
gem install win32-open3
…and then you edit the file as stated in the link, I quote:
edit vendor\plugins\rails_upgrade\lib\application_checker.rb and
In the end, I just made a new rails 3 application and did a lot of
code transfer (copy/paste). It actually didn’t take that long, and
things are great with the app in Rails 3.
I tried using this https://github.com/matschaffer/win32-open3-19 as
described in this post:
But I never got it to work.
Note that the “win32-open3 requires Ruby version < 1.9.0” So I used pik
to downgrade to Ruby version 1.8.7, so I could use win32-open3, and then
I was able to run the rails_upgrade plugin. Then I plan to upgrade my
app using 1.8.7, make sure that works, and get that checked into version
control. Once that’s done I’ll use pik to go back up to 1.9.* and make
sure it still works.
Don’t forget to add
to your Gemfile, at least until you get the rails upgrade done (no need
to check that into version control unless you are also checking in the
rails upgrade plugin, which you probably won’t).