ChiliProject is not maintained anymore. Please be advised that there will be no more updates.
We do not recommend that you setup new ChiliProject instances and we urge all existing users to migrate their data to a maintained system, e.g. Redmine. We will provide a migration script later. In the meantime, you can use the instructions by Christian Daehn.
builder is not part of the bundle. Add it to Gemfile (Bug #529)
Description
When installing stable chiliproject on a Gentoo system following the installation guide under Installation, I get this error:
rake --trace generate_session_store
rake aborted!
builder is not part of the bundle. Add it to Gemfile.
/usr/lib64/ruby/gems/1.8/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:143:in `gem'
/usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/vendor.rb:4
/usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support.rb:55:in `require'
/usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support.rb:55
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/misc.rake:18:in `require'
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/misc.rake:18
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4:in `load'
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4:in `each'
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4
/tmp/chiliproject/Rakefile:10:in `require'
/tmp/chiliproject/Rakefile:10
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:495:in `raw_load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:78:in `load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:77:in `load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:61:in `run'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:59:in `run'
/usr/lib64/ruby/gems/1.8/gems/rake-0.8.7/bin/rake:31
/usr/bin/rake:8:in `load'
/usr/bin/rake:8
ruby --version
ruby 1.8.7 (2011-02-18 patchlevel 334) [x86_64-linux]
bundle --version
Bundler version 1.0.15
Furthermore Dependency table on Installation states, that Chiliproject 2.0.0 needs rake >=0.8.3, but bundler installs rake 0.9.2, although rake 0.8.7 is already installed. It seems like the table has to be updated.
Gem tzinfo seems to be missing, too:
rake --trace generate_session_store
rake aborted!
tzinfo is not part of the bundle. Add it to Gemfile.
After adding the gems to my Gemfile (attached patch) everything seems to work fine.
History
Updated by Felix Schäfer at 2011-07-18 07:52 am
All theses gems should be dependencies of the ones already in the Gemfile.
Could you try prepending the failing commands with bundle exec
(e.g. RAILS_ENV=production bundle exec rake db:migrate
) to make sure you are using the gems as per the Gemfile?
Updated by Enno Gröper at 2011-07-20 06:05 pm
That seems to make no difference:
bundle exec rake config/initializers/session_store.rb
rake aborted!
builder is not part of the bundle. Add it to Gemfile.
(See full trace by running task with --trace)
RAILS_ENV="production" bundle exec rake db:migrate
rake aborted!
builder is not part of the bundle. Add it to Gemfile.
(See full trace by running task with --trace)
I ran this commands using my ebuild and directly from my shell in the chiliproject root directory. Same result (as expected).
Updated by Holger Just at 2011-07-25 08:13 pm
I can not reproduce this.
I'm very sure this is because of some plugin requiring these gems. As we use bundler exclusively, plugins are required to provide their own Gemfiles to specify their dependencies. Until these plugins are updated you can add them yourself to Gemfile.local
(at least in ChiliProject >= 2.1.0).
Please check if the issue persists after removing all custom plugins.
- Status changed from Open to Needs more information
Updated by Enno Gröper at 2011-07-27 03:30 pm
I don't know which part of my environment could be the source for the issue.
I made a fresh install in a new directory following the guide.
Just to be completely sure, I did it again:
enno@emanuela /tmp$ git clone git://github.com/chiliproject/chiliproject.git Cloning into chiliproject... remote: Counting objects: 53447, done. remote: Compressing objects: 100% (12077/12077), done. remote: Total 53447 (delta 41141), reused 52425 (delta 40250) Receiving objects: 100% (53447/53447), 11.96 MiB | 748 KiB/s, done. Resolving deltas: 100% (41141/41141), done. enno@emanuela /tmp$ cd chiliproject/ enno@emanuela /tmp/chiliproject[master]$ git checkout stable Branch stable set up to track remote branch stable from origin. Switched to a new branch 'stable' enno@emanuela /tmp/chiliproject[stable]$ su Passwort: emanuela chiliproject # bundle install --without=sqlite postgres rmagick Fetching source index for http://rubygems.org/ Using rake (0.9.2) Using activesupport (2.3.12) Using rack (1.1.2) Using actionpack (2.3.12) Using actionmailer (2.3.12) Using activerecord (2.3.12) Using activeresource (2.3.12) Using coderay (0.9.8) Using edavis10-object_daddy (0.4.3) Using i18n (0.4.2) Using mocha (0.9.12) Using mysql (2.8.1) Using mysql2 (0.2.11) Using rails (2.3.12) Using rdoc (3.8) Installing ruby-openid (2.1.8) Using rubytree (0.5.3) Installing shoulda (2.10.3) Using bundler (1.0.15) Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed. emanuela chiliproject # mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 1 Server version: 5.1.56-log Gentoo Linux mysql-5.1.56 Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | amarokdb | | chiliproject | | mysql | | test | +--------------------+ 5 rows in set (0.09 sec) mysql> drop database chiliproject; Query OK, 47 rows affected (1.40 sec) mysql> create database chiliproject character set utf8; Query OK, 1 row affected (0.02 sec) mysql> use mysql; Reading table information for completion of table and column names You can turn off this feature to get a quicker startup with -A Database changed mysql> drop user chiliproject; Query OK, 0 rows affected (0.03 sec) mysql> create user 'chiliproject'@'localhost' identified by 'PW'; ERROR 1396 (HY000): Operation CREATE USER failed for 'chiliproject'@'localhost' mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> create user 'chiliproject'@'localhost' identified by 'PW'; ERROR 1396 (HY000): Operation CREATE USER failed for 'chiliproject'@'localhost' mysql> delete from db where user='chiliproject'; Query OK, 1 row affected (0.02 sec) mysql> delete from user where user='chiliproject'; Query OK, 1 row affected (0.00 sec) mysql> drop user 'chiliproject' -> ; ERROR 1396 (HY000): Operation DROP USER failed for 'chiliproject'@'%' mysql> drop user 'chiliproject'@'localhost' -> ; Query OK, 0 rows affected (0.00 sec) mysql> create user 'chiliproject'@'localhost' identified by 'PW'; Query OK, 0 rows affected (0.00 sec) mysql> grant all privileges on chiliproject.* to 'chiliproject'@'localhost'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> quit Bye emanuela chiliproject # cp /var/lib/chiliproject/config/database.yml config/ emanuela chiliproject # vim config/database.yml emanuela chiliproject # cp config/configuration.yml.example config/configuration.yml emanuela chiliproject # vim config/configuration.yml emanuela chiliproject # rake generate_session_store rake aborted! builder is not part of the bundle. Add it to Gemfile. (See full trace by running task with --trace) emanuela chiliproject # exit exit enno@emanuela /tmp/chiliproject[stable]$ ls -l insgesamt 68 -rw-r--r-- 1 enno enno 1578 27. Jul 17:05 Gemfile -rw-r--r-- 1 root root 1236 27. Jul 17:06 Gemfile.lock -rw-r--r-- 1 enno enno 1790 27. Jul 17:05 README.rdoc -rw-r--r-- 1 enno enno 303 27. Jul 17:05 Rakefile drwxr-xr-x 6 enno enno 4096 27. Jul 17:05 app drwxr-xr-x 5 enno enno 4096 27. Jul 17:15 config drwxr-xr-x 3 enno enno 4096 27. Jul 17:05 db drwxr-xr-x 2 enno enno 4096 27. Jul 17:05 doc drwxr-xr-x 5 enno enno 4096 27. Jul 17:05 extra drwxr-xr-x 2 enno enno 4096 27. Jul 17:05 files drwxr-xr-x 7 enno enno 4096 27. Jul 17:05 lib drwxr-xr-x 2 enno enno 4096 27. Jul 17:05 log drwxr-xr-x 6 enno enno 4096 27. Jul 17:05 public drwxr-xr-x 4 enno enno 4096 27. Jul 17:05 script drwxr-xr-x 8 enno enno 4096 27. Jul 17:05 test drwxr-xr-x 3 enno enno 4096 27. Jul 17:05 tmp drwxr-xr-x 3 enno enno 4096 27. Jul 17:05 vendor enno@emanuela /tmp/chiliproject[stable]$ rake generate_session_store rake aborted! builder is not part of the bundle. Add it to Gemfile. (See full trace by running task with --trace)
I never reached the stage of installing custom plugins.
If you need any further information I'm pleased to help.
Updated by Enno Gröper at 2011-07-27 04:42 pm
I now additionally tried to install chiliproject on an ubuntu system. There everything went fine.
Perhaps it's a problem with the bundler version installed through Gentoo Package Management.
Updated by Enno Gröper at 2011-07-27 04:56 pm
I now replaced bundler and rake with the corresponding gems (removed bundler and installed bundler gem, removed dev-ruby/rake and rake gem, reinstalled rake gem).
result:
/usr/lib/ruby/gems/1.8/bin/rake --trace generate_session_store
rake aborted!
builder is not part of the bundle. Add it to Gemfile.
/usr/lib64/ruby/gems/1.8/gems/bundler-1.0.15/lib/bundler/rubygems_integration.rb:143:in `gem'
/usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support/vendor.rb:4
/usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support.rb:55:in `require'
/usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.12/lib/active_support.rb:55
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/misc.rake:18:in `require'
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/misc.rake:18
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4:in `load'
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4:in `each'
/usr/lib64/ruby/gems/1.8/gems/rails-2.3.12/lib/tasks/rails.rb:4
/tmp/chiliproject/Rakefile:10:in `require'
/tmp/chiliproject/Rakefile:10
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:495:in `raw_load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:78:in `load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:77:in `load_rakefile'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:61:in `run'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:59:in `run'
/usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/bin/rake:32
/usr/lib/ruby/gems/1.8/bin/rake:19:in `load'
/usr/lib/ruby/gems/1.8/bin/rake:19
There seems to be a path issue. I have to call rake with full path. Don't know, if this could be a problem.
I'm in chiliproject root directory and I'm running everything as root this time.
Updated by Holger Just at 2011-07-27 07:20 pm
Could you try to run the rake task with bundle exec
in front like so:
bundle exec rake generate_session_store --trace
This will force it to use the rake you installed by bundle install
.
Note to self: Update the documentation on that
Updated by Holger Just at 2011-08-21 01:32 pm
Closed as of inactivity. I assume bundle exec rake ...
solves the issue.
- Status changed from Needs more information to Closed
Updated by Enno Gröper at 2011-09-29 12:21 pm
Hello,
the issue isn't fixed by prepending bundle exec.
I did a new install on a virtual machine, where I wanted to test redmine -> chiliproject migration.
I have to admit, that I first tested installing using my ebuild.
Bit I did a fresh install in another directory, which you can see below.
Because of the previous install some gems are already installed.
From your comments I assume a path issue. But for an inexperienced ruby/rails user the path looks good.
Do you have some further hints what I could check?
Patching the Gemfile seems to be the easiest solution for me at the moment. But this would just work around the real issue, I suppose.
fachschaft-test tmp # git clone git://github.com/chiliproject/chiliproject.git Cloning into chiliproject... remote: Counting objects: 53966, done. remote: Compressing objects: 100% (13176/13176), done. remote: Total 53966 (delta 40695), reused 52603 (delta 39653) Receiving objects: 100% (53966/53966), 12.83 MiB | 920 KiB/s, done. Resolving deltas: 100% (40695/40695), done. fachschaft-test tmp # cd chiliproject/ fachschaft-test chiliproject # git checkout stable Branch stable set up to track remote branch stable from origin. Switched to a new branch 'stable' fachschaft-test chiliproject # bundle install --without=test sqlite postgres rmagick Fetching source index for http://rubygems.org/ which: no sudo in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.5.3) Using rake (0.9.2) Using activesupport (2.3.14) Using rack (1.1.2) Using actionpack (2.3.14) Using actionmailer (2.3.14) Using activerecord (2.3.14) Using activeresource (2.3.14) Using coderay (0.9.8) Using fastercsv (1.5.4) Using i18n (0.4.2) Using mysql (2.8.2) Using mysql2 (0.2.13) Using rails (2.3.14) Using rdoc (3.9.4) Installing ruby-openid (2.1.8) Using rubytree (0.5.3) Using bundler (1.0.18) Your bundle is complete! Use `bundle show [gemname]` to see where a bundled gem is installed. fachschaft-test chiliproject # mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.1.56-log Gentoo Linux mysql-5.1.56 Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases -> ; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | redmine | | test | +--------------------+ 4 rows in set (0.10 sec) mysql> create database chiliproject; Query OK, 1 row affected (0.06 sec) mysql> quit Bye fachschaft-test chiliproject # cp config/database.yml.example config/database.yml fachschaft-test chiliproject # vim config/database.yml fachschaft-test chiliproject # bundle exec rake generate_session_store rake aborted! builder is not part of the bundle. Add it to Gemfile. (See full trace by running task with --trace) fachschaft-test chiliproject # bundle exec rake generate_session_store --trace rake aborted! builder is not part of the bundle. Add it to Gemfile. /usr/lib64/ruby/gems/1.8/gems/bundler-1.0.18/lib/bundler/rubygems_integration.rb:143:in `gem' /usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.14/lib/active_support/vendor.rb:4 /usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.14/lib/active_support.rb:55:in `require' /usr/lib64/ruby/gems/1.8/gems/activesupport-2.3.14/lib/active_support.rb:55 /usr/lib64/ruby/gems/1.8/gems/rails-2.3.14/lib/tasks/misc.rake:18:in `require' /usr/lib64/ruby/gems/1.8/gems/rails-2.3.14/lib/tasks/misc.rake:18 /usr/lib64/ruby/gems/1.8/gems/rails-2.3.14/lib/tasks/rails.rb:4:in `load' /usr/lib64/ruby/gems/1.8/gems/rails-2.3.14/lib/tasks/rails.rb:4 /usr/lib64/ruby/gems/1.8/gems/rails-2.3.14/lib/tasks/rails.rb:4:in `each' /usr/lib64/ruby/gems/1.8/gems/rails-2.3.14/lib/tasks/rails.rb:4 /tmp/chiliproject/Rakefile:10:in `require' /tmp/chiliproject/Rakefile:10 /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/rake_module.rb:25:in `load_rakefile' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:495:in `raw_load_rakefile' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:78:in `load_rakefile' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:77:in `load_rakefile' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:61:in `run' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:129:in `standard_exception_handling' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/lib/rake/application.rb:59:in `run' /usr/lib64/ruby/gems/1.8/gems/rake-0.9.2/bin/rake:32 /usr/lib64/ruby/gems/1.8/bin/rake:19:in `load' /usr/lib64/ruby/gems/1.8/bin/rake:19
- Status changed from Closed to Open
Updated by Felix Schäfer at 2012-06-18 02:56 pm
Getting back to this, I think I've found out the error…
TL;DR: Gentoo patches the activesupport gem to unvendorize some gems which weren't correctly added to the bundler stuff for activesupport, thus bundler wouldn't pick it up even if it was installed. Use dev-ruby/activesupport-2.3.14-r1
instead of dev-ruby/activesupport-2.3.14
and all will be good.
The longer version: activesupport has some gems vendorized in (builder, i18n, tzinfo) which gentoo removes and adds as dependencies in emerge instead. This worked as-is in pre-bundler times, this doesn't work anymore with bundler though as gentoo didn't update the activesupport gem to add the explicit dependencies to builder, i18n and tzinfo thus bundler won't pick those up. This has been corrected in dev-ruby/activesupport-2.3.14-r1
, so depending on that one should fix the problem (or you could get gentoo to mark dev-ruby/activesupport-2.3.14-r1
as stable, seeing that dev-ruby/activesupport-2.3.14
is stable and the only difference I can see is the bundler fix which probably other people ran into too).
- Status changed from Open to Closed
Updated by Enno Gröper at 2012-06-21 09:23 am
Thanks a lot.
Just wanted to confirm this fixed the issue for me.
Updated by Felix Schäfer at 2012-06-21 10:08 am
Enno Gröper wrote:
Thanks a lot.
Just wanted to confirm this fixed the issue for me.
Great to hear, thanks for the feedback. Have you bugged the maintainers on gentoo to put 2.3.14-r1 in stable? :-)
Furthermore: Could you (or we) add your overlay to the docs for other gentoo users to find?
Updated by Enno Gröper at 2012-06-21 11:15 am
Felix Schäfer wrote:
Enno Gröper wrote:
Thanks a lot.
Just wanted to confirm this fixed the issue for me.Great to hear, thanks for the feedback. Have you bugged the maintainers on gentoo to put 2.3.14-r1 in stable? :-)
Did it now, as I realized it's the only unstable package left, my ebuild uses.
Furthermore: Could you (or we) add your overlay to the docs for other gentoo users to find?
Of course. I will try to write some documentation, when I have the time. But everyone should feel free to start, if I'm to slow. ;-)
Updated by Felix Schäfer at 2012-06-23 09:44 pm
Enno Gröper wrote:
Of course. I will try to write some documentation, when I have the time. But everyone should feel free to start, if I'm to slow. ;-)
I've added the most important infos to the Installation docs :-)