nirvdrum / svn2git

Ruby tool for importing existing svn projects into git.
MIT License
2.11k stars 443 forks source link

run_command': wrong argument type Symbol (expected Proc) (TypeError) #208

Open Gl4di4torRr opened 8 years ago

Gl4di4torRr commented 8 years ago

I just got svn2git installed on my linux server. I am just doing a little testing to see what will happen.

What version of ruby gems is needed? You can see my versioning below.

$ svn2git test /usr/lib/ruby/gems/1.8/gems/svn2git-2.3.2/lib/svn2git/migration.rb:421:in run_command': wrong argument type Symbol (expected Proc) (TypeError) from /usr/lib/ruby/gems/1.8/gems/svn2git-2.3.2/lib/svn2git/migration.rb:388:inpopen' from /usr/lib/ruby/gems/1.8/gems/svn2git-2.3.2/lib/svn2git/migration.rb:388:in run_command' from /usr/lib/ruby/gems/1.8/gems/svn2git-2.3.2/lib/svn2git/migration.rb:202:inclone!' from /usr/lib/ruby/gems/1.8/gems/svn2git-2.3.2/lib/svn2git/migration.rb:34:in run!' from /usr/lib/ruby/gems/1.8/gems/svn2git-2.3.2/bin/svn2git:27 from /usr/bin/svn2git:19:inload' from /usr/bin/svn2git:19

$ ruby -v ruby 1.8.5 (2006-08-25) [x86_64-linux]

$ gem -v 1.3.1

NTICompass commented 8 years ago

I used rvm (http://rvm.io/) to upgrade to ruby 2.2.1 and svn2git runs. I don't know the minimum required, but if you server can't upgrade, you can use rvm to install a newer ruby locally for your user.

BrianCalves commented 8 years ago

I'm using Ruby (1.8.6), Git (1.7.10), and a hacked up derivative of svn2git (2.3.2). I received a similar error. In my case, the problem was resolved by editing migration.rb, near what would have been line 430, to replace:

threads.each(&:join)

with:

threads.each { |t| t.join }

It has been almost a decade since I last touched any Ruby code, so I am ill-positioned to evaluate the correctness of this edit; but it worked for me. Hope this helps.

aniketstiwari commented 7 years ago

I have find solution of this question .Downgrade it to ruby 2.3 and it will not give you that error.