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)


Added by Enno Gröper at 2011-07-17 10:10 am. Updated at 2012-06-23 09:44 pm.


Status:Closed Start date:2011-07-17
Priority:Normal Due date:
Assignee:- % Done:

0%

Category:-
Target version:-
Remote issue URL: Affected version:2.0.0

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.


Gemfile.patch - patch for Gemfile, which adds needed gems (319 Bytes) Enno Gröper, 2011-07-17 10:10 am


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 :-)

Also available in: Atom PDF