Rainbows! Rack HTTP server user/dev discussion
 help / color / mirror / code / Atom feed
* problem with rainbows 3.2.0 and rbx
@ 2011-04-27 16:25 Mike Perham
       [not found] ` <BANLkTimE7vo2_pRDdcVNN5vNA2fphP4-4Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Mike Perham @ 2011-04-27 16:25 UTC (permalink / raw)
  To: rainbows-talk-GrnCvJ7WPxnNLxjTenLetw

Any ideas?

> rainbows
I, [2011-04-27T09:18:22.515837 #6063]  INFO -- : listening on
addr=0.0.0.0:8080 fd=6
I, [2011-04-27T09:18:22.532461 #6063]  INFO -- : worker=0 spawning...
I, [2011-04-27T09:18:22.587215 #6063]  INFO -- : master process ready
I, [2011-04-27T09:18:22.592180 #6068]  INFO -- : worker=0 spawned pid=6068
I, [2011-04-27T09:18:22.594087 #6068]  INFO -- : Refreshing Gem list
An exception occured in a forked block
    no such file to load -- rainbows/response (LoadError)

Backtrace:
       Rubinius::CodeLoader#load_error at kernel/common/codeloader.rb:342
  Rubinius::CodeLoader#resolve_require_path at kernel/common/codeloader.rb:329
          Rubinius::CodeLoader#require at kernel/common/codeloader.rb:34
          Rubinius::CodeLoader.require at kernel/common/codeloader.rb:140
                         Autoload#call at kernel/common/autoload.rb:29
  Rainbows::Base(Rainbows::HttpServer)#init_worker_process at \
          /Users/mperham/.rvm/gems/rbx-head/gems/rainbows-3.2.0/lib/rainbows/base.rb:14
 Unicorn::HttpServer(Rainbows::HttpServer)#worker_loop at /Users/mperham/.rvm
                                                          /gems/rbx-head/gems
                                                          /unicorn-3.6.0/lib
                                                          /unicorn
                                                          /http_server.rb:595
  { } in Unicorn::HttpServer(Rainbows::HttpServer)#spawn_missing_workers at \
          /Users/mperham/.rvm/gems/rbx-head/gems/unicorn-3.6.0/lib/unicorn/http_server.rb:509



> gem list rain

*** LOCAL GEMS ***

rainbows (3.2.0)
> gem list uni

*** LOCAL GEMS ***

unicorn (3.6.0)
> ruby -v
rubinius 1.2.4dev (1.8.7 087ae791 yyyy-mm-dd JI) [x86_64-apple-darwin10.7.0]
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* problem with rainbows 3.2.0 and rbx
       [not found] ` <BANLkTimE7vo2_pRDdcVNN5vNA2fphP4-4Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2011-04-27 17:12   ` Mike Perham
  2011-04-27 17:55   ` Eric Wong
  1 sibling, 0 replies; 15+ messages in thread
From: Mike Perham @ 2011-04-27 17:12 UTC (permalink / raw)
  To: rainbows-talk-GrnCvJ7WPxnNLxjTenLetw

Any ideas?

> rainbows
I, [2011-04-27T09:18:22.515837 #6063]  INFO -- : listening on
addr=0.0.0.0:8080 fd=6
I, [2011-04-27T09:18:22.532461 #6063]  INFO -- : worker=0 spawning...
I, [2011-04-27T09:18:22.587215 #6063]  INFO -- : master process ready
I, [2011-04-27T09:18:22.592180 #6068]  INFO -- : worker=0 spawned pid=6068
I, [2011-04-27T09:18:22.594087 #6068]  INFO -- : Refreshing Gem list
An exception occured in a forked block
   no such file to load -- rainbows/response (LoadError)

Backtrace:
      Rubinius::CodeLoader#load_error at kernel/common/codeloader.rb:342
 Rubinius::CodeLoader#resolve_require_path at kernel/common/codeloader.rb:329
         Rubinius::CodeLoader#require at kernel/common/codeloader.rb:34
         Rubinius::CodeLoader.require at kernel/common/codeloader.rb:140
                        Autoload#call at kernel/common/autoload.rb:29
 Rainbows::Base(Rainbows::HttpServer)#init_worker_process at \
         /Users/mperham/.rvm/gems/rbx-head/gems/rainbows-3.2.0/lib/rainbows/base.rb:14
 Unicorn::HttpServer(Rainbows::HttpServer)#worker_loop at /Users/mperham/.rvm
                                                         /gems/rbx-head/gems
                                                         /unicorn-3.6.0/lib
                                                         /unicorn
                                                         /http_server.rb:595
 { } in Unicorn::HttpServer(Rainbows::HttpServer)#spawn_missing_workers at \
         /Users/mperham/.rvm/gems/rbx-head/gems/unicorn-3.6.0/lib/unicorn/http_server.rb:509



> gem list rain

*** LOCAL GEMS ***

rainbows (3.2.0)
> gem list uni

*** LOCAL GEMS ***

unicorn (3.6.0)
> ruby -v
rubinius 1.2.4dev (1.8.7 087ae791 yyyy-mm-dd JI) [x86_64-apple-darwin10.7.0]
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found] ` <BANLkTimE7vo2_pRDdcVNN5vNA2fphP4-4Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  2011-04-27 17:12   ` Mike Perham
@ 2011-04-27 17:55   ` Eric Wong
       [not found]     ` <20110427175523.GA31654-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  1 sibling, 1 reply; 15+ messages in thread
From: Eric Wong @ 2011-04-27 17:55 UTC (permalink / raw)
  To: Rainbows! list

Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> Any ideas?
> 
> > rainbows
<snip>
> I, [2011-04-27T09:18:22.594087 #6068]  INFO -- : Refreshing Gem list
> An exception occured in a forked block
>     no such file to load -- rainbows/response (LoadError)

It seems like a general Rubinius/RubyGems issue.  Does commenting
out the Gem.refresh line in unicorn/http_server.rb help?

Other than that, I don't have any ideas...  I'm lacking in drive space
for Rubinius, but I remember it working in the past with Rainbows!

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]     ` <20110427175523.GA31654-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
@ 2011-04-27 18:06       ` Eric Wong
       [not found]         ` <20110427180635.GA19302-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  2011-04-29 23:58       ` Mike Perham
  1 sibling, 1 reply; 15+ messages in thread
From: Eric Wong @ 2011-04-27 18:06 UTC (permalink / raw)
  To: Rainbows! list

Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> Other than that, I don't have any ideas...

One more thing, does using Rubinius outside of RVM work?

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]         ` <20110427180635.GA19302-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
@ 2011-04-28  6:47           ` Eric Wong
  0 siblings, 0 replies; 15+ messages in thread
From: Eric Wong @ 2011-04-28  6:47 UTC (permalink / raw)
  To: Rainbows! list

Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> > Other than that, I don't have any ideas...
> 
> One more thing, does using Rubinius outside of RVM work?

I actually managed to try Rubinius without RVM and it started fine for
me.  Having some problems with keepalive/pipelining, though.  Don't have
more time to track it down, but I didn't notice any trouble loading
gems...

rubinius 1.2.4dev (1.8.7 f130fde4 yyyy-mm-dd JI) [x86_64-unknown-linux-gnu]

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]     ` <20110427175523.GA31654-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  2011-04-27 18:06       ` Eric Wong
@ 2011-04-29 23:58       ` Mike Perham
       [not found]         ` <BANLkTikTugt46DfKVJtt3_fTm+X-j9U2Rw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  1 sibling, 1 reply; 15+ messages in thread
From: Mike Perham @ 2011-04-29 23:58 UTC (permalink / raw)
  To: Rainbows! list

To follow up, this was with Rubygems 1.6.2 and rbx 1.2.4dev.  I get
the exact same error with Rubygems 1.7.2 and Ruby 1.9.2.

The same app works on thin/1.9.2.

On Wed, Apr 27, 2011 at 10:55 AM, Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>> Any ideas?
>>
>> > rainbows
> <snip>
>> I, [2011-04-27T09:18:22.594087 #6068]  INFO -- : Refreshing Gem list
>> An exception occured in a forked block
>>     no such file to load -- rainbows/response (LoadError)
>
> It seems like a general Rubinius/RubyGems issue.  Does commenting
> out the Gem.refresh line in unicorn/http_server.rb help?
>
> Other than that, I don't have any ideas...  I'm lacking in drive space
> for Rubinius, but I remember it working in the past with Rainbows!
>
> --
> Eric Wong
> _______________________________________________
> Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
> http://rubyforge.org/mailman/listinfo/rainbows-talk
> Do not quote signatures (like this one) or top post when replying
>
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]         ` <BANLkTikTugt46DfKVJtt3_fTm+X-j9U2Rw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2011-04-30  1:19           ` Eric Wong
       [not found]             ` <20110430011926.GA15387-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Eric Wong @ 2011-04-30  1:19 UTC (permalink / raw)
  To: Rainbows! list

Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> To follow up, this was with Rubygems 1.6.2 and rbx 1.2.4dev.  I get
> the exact same error with Rubygems 1.7.2 and Ruby 1.9.2.

I'm definitely not seeing this with Rubygems 1.7.2 and Ruby 1.9.2-p180,
that's my usual environment and I have a couple of private servers
running that (no dev installs from setup.rb that could pollute
$LOAD_PATH).

Have you tried this without RVM?

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]             ` <20110430011926.GA15387-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
@ 2011-04-30 16:10               ` Mike Perham
       [not found]                 ` <BANLkTi=itrufRkdQsp7M5jaBS2trnm5dMQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Mike Perham @ 2011-04-30 16:10 UTC (permalink / raw)
  To: Rainbows! list

I just used my OSX system ruby and gems (had to update rubygems to use
bundler), same result:

> ruby -v
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0]
> gem -v
1.7.2


/Users/mperham/.gem/ruby/1.8/gems/rainbows-3.2.0/lib/rainbows/base.rb:14:in
`init_worker_process': no such file to load -- rainbows/response
(LoadError)
	from /Users/mperham/.gem/ruby/1.8/gems/rainbows-3.2.0/lib/rainbows/thread_pool.rb:26:in
`worker_loop'
	from /Users/mperham/.gem/ruby/1.8/gems/unicorn-3.6.2/lib/unicorn/http_server.rb:509:in
`spawn_missing_workers'
	from /Users/mperham/.gem/ruby/1.8/gems/unicorn-3.6.2/lib/unicorn/http_server.rb:507:in
`fork'
	from /Users/mperham/.gem/ruby/1.8/gems/unicorn-3.6.2/lib/unicorn/http_server.rb:507:in
`spawn_missing_workers'
	from /Users/mperham/.gem/ruby/1.8/gems/unicorn-3.6.2/lib/unicorn/http_server.rb:503:in
`each'


On Fri, Apr 29, 2011 at 6:19 PM, Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>> To follow up, this was with Rubygems 1.6.2 and rbx 1.2.4dev.  I get
>> the exact same error with Rubygems 1.7.2 and Ruby 1.9.2.
>
> I'm definitely not seeing this with Rubygems 1.7.2 and Ruby 1.9.2-p180,
> that's my usual environment and I have a couple of private servers
> running that (no dev installs from setup.rb that could pollute
> $LOAD_PATH).
>
> Have you tried this without RVM?
>
> --
> Eric Wong
> _______________________________________________
> Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
> http://rubyforge.org/mailman/listinfo/rainbows-talk
> Do not quote signatures (like this one) or top post when replying
>
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]                 ` <BANLkTi=itrufRkdQsp7M5jaBS2trnm5dMQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2011-04-30 17:14                   ` Eric Wong
       [not found]                     ` <20110430171428.GB29282-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Eric Wong @ 2011-04-30 17:14 UTC (permalink / raw)
  To: Rainbows! list

Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> I just used my OSX system ruby and gems (had to update rubygems to use
> bundler), same result:

*Lightbulb!*

1) Is "preload_app true"?
2) your app uses Bundler?

Try adding "rainbows" to your Gemfile and try runing with "bundle exec
rainbows" instead of "rainbows".  "preload_app true" probably loads
bundler in your case and causes Rainbows! require paths to be nuked.

Rainbows! has to lazy load some of its internals in the worker process
to allow SIGHUP to be used to switch concurrency models.

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* TAN: why Bundler? (was: Re: problem with rainbows 3.2.0 and rbx)
       [not found]                     ` <20110430171428.GB29282-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
@ 2011-04-30 17:51                       ` Eric Wong
       [not found]                         ` <20110430175124.GA3040-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  2011-04-30 21:08                       ` problem with rainbows 3.2.0 and rbx Mike Perham
  1 sibling, 1 reply; 15+ messages in thread
From: Eric Wong @ 2011-04-30 17:51 UTC (permalink / raw)
  To: Rainbows! list

Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> 2) your app uses Bundler?

Old idea, but I'm not sure why more webapps aren't just distributed as
gems themselves.  Or even something like this which just declares
dependencies:

----------------- gemspec_sandbox_demo.gemspec --------------------
Gem::Specification.new do |s|
  s.name = %q{gemspec_sandbox_demo}
  s.version = '1'
  s.author = "J. Random Hacker"
  s.homepage = "http://example.com/"
  s.email = "root-hcDgGtZH8xNBDgjK7y7TUQ@public.gmane.org"
  s.summary = "no need to use sandboxing tools"
  s.description = <<EOF
Apps that use gems that don't conflict can just use a dummy gem built
from a gemspec like this one.

There are a few missing pieces, like not being able to use git://
repos for gems or specify build options for C extensions, but it's
probably enough for a good number of use cases.
EOF
  s.add_dependency(%q<mysql2>, "~> 0.3")
  s.add_dependency(%q<sequel>, "~> 3.22")
  s.add_dependency(%q<sinatra>, "~> 1.0")
end
-------------------------------------------------------------------

And then just `gem build foo.gemspec && gem install ./foo-1.gem`
in the deploy.

...But many years ago I gave up and just decided
packaging/dependency/deployment problems are just unsolvable because
there's always (at least) one special case in *every* case that $TOOL
doesn't/can't solve :<

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]                     ` <20110430171428.GB29282-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  2011-04-30 17:51                       ` TAN: why Bundler? (was: Re: problem with rainbows 3.2.0 and rbx) Eric Wong
@ 2011-04-30 21:08                       ` Mike Perham
       [not found]                         ` <BANLkTi=t6z_5psK6AJy=XrOZmXjX0GW-pg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  1 sibling, 1 reply; 15+ messages in thread
From: Mike Perham @ 2011-04-30 21:08 UTC (permalink / raw)
  To: Rainbows! list

That was it.  I added rainbows to my Gemfile and it started working.

My app is Rails 3 and therefore uses Bundler.  Thanks for your help!

On Sat, Apr 30, 2011 at 10:14 AM, Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>> I just used my OSX system ruby and gems (had to update rubygems to use
>> bundler), same result:
>
> *Lightbulb!*
>
> 1) Is "preload_app true"?
> 2) your app uses Bundler?
>
> Try adding "rainbows" to your Gemfile and try runing with "bundle exec
> rainbows" instead of "rainbows".  "preload_app true" probably loads
> bundler in your case and causes Rainbows! require paths to be nuked.
>
> Rainbows! has to lazy load some of its internals in the worker process
> to allow SIGHUP to be used to switch concurrency models.
>
> --
> Eric Wong
> _______________________________________________
> Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
> http://rubyforge.org/mailman/listinfo/rainbows-talk
> Do not quote signatures (like this one) or top post when replying
>
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]                         ` <BANLkTi=t6z_5psK6AJy=XrOZmXjX0GW-pg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2011-05-01  1:47                           ` Eric Wong
       [not found]                             ` <20110501014703.GA16332-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Eric Wong @ 2011-05-01  1:47 UTC (permalink / raw)
  To: Rainbows! list

Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> That was it.  I added rainbows to my Gemfile and it started working.
> 
> My app is Rails 3 and therefore uses Bundler.  Thanks for your help!

Thanks for bringing this up!  I've added a Sandbox document to
rainbows.git and website: http://rainbows.rubyforge.org/Sandbox.html

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: TAN: why Bundler? (was: Re: problem with rainbows 3.2.0 and rbx)
       [not found]                         ` <20110430175124.GA3040-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
@ 2011-05-01  2:09                           ` Hedge Hog
  0 siblings, 0 replies; 15+ messages in thread
From: Hedge Hog @ 2011-05-01  2:09 UTC (permalink / raw)
  To: Rainbows! list

On Sun, May 1, 2011 at 3:51 AM, Eric Wong <normalperson@yhbt.net> wrote:
> Eric Wong <normalperson@yhbt.net> wrote:
>> 2) your app uses Bundler?
>
> Old idea, but I'm not sure why more webapps aren't just distributed as
> gems themselves.

In my case I considered and, after much effort, rejected this
approach.  I'm moving, progressively, to continuous deployment (via
Whiskey Disk).
Having my web app depend on rubygems is a non starter.

The objective is to have the web-app/component deployed in the time it
currently takes to sync the rubygems index and resolve dependencies
(see the Whiskey Disk presentation).
Of course I could use some CDN directly, but you see the path I'd be
heading down: writing a custom package deployer.
Of course I do use Ruby gems for 3rd party library dependencies, and
one thing I'm doing is moving some current 'app-level' code out into a
slow changing gem, but the actual web-app?  Not likely.

>  Or even something like this which just declares
> dependencies:
>
> ----------------- gemspec_sandbox_demo.gemspec --------------------
> Gem::Specification.new do |s|
>  s.name = %q{gemspec_sandbox_demo}
>  s.version = '1'
>  s.author = "J. Random Hacker"
>  s.homepage = "http://example.com/"
>  s.email = "root@example.com"
>  s.summary = "no need to use sandboxing tools"
>  s.description = <<EOF
> Apps that use gems that don't conflict can just use a dummy gem built
> from a gemspec like this one.
>
> There are a few missing pieces, like not being able to use git://
> repos for gems or specify build options for C extensions, but it's
> probably enough for a good number of use cases.
> EOF
>  s.add_dependency(%q<mysql2>, "~> 0.3")
>  s.add_dependency(%q<sequel>, "~> 3.22")
>  s.add_dependency(%q<sinatra>, "~> 1.0")
> end
> -------------------------------------------------------------------
>
> And then just `gem build foo.gemspec && gem install ./foo-1.gem`
> in the deploy.

Using Git and SSH I'm getting to the point where the deploy will be
done in the time Rubygems index sync's and Bundler resolves its
dependency calculations and actions.

>
> ...But many years ago I gave up and just decided
> packaging/dependency/deployment problems are just unsolvable

I think of deploying as being _very_ weakly related to packaging and
resolving dependencies.  Before their problems are solvable, their
roles need to be clearly delineated in your app/project.

> because
> there's always (at least) one special case in *every* case that $TOOL
> doesn't/can't solve :<

I'm not sure it is and issue of a 'special case', rather deployment
patterns and _frequency_ are those that package managers were never
intended to address.
In my mind packagers/dependency-resolvers are targeted at the
infrequently-changing-code, and widely adopted use cases.
Say monthly changes as the most frequent - you could push the limits
and maybe have daily gem updates, but now the packager's overhead vs
the size of the change means you'll be more and more reluctant to get
the small change in your deployed code out there - and waiting for
small changes to grow into bigger changes, in my experience, makes
things more complex and more fraught.

I tried hard to fix Bundler's _many_ Git issues, see the pull
requests, but I concluded it is a wasted effort - the core Devs don't
have Git use  cases as one of their itches, and I genuinely thank
indirect for being explicit about this. I realized that maybe they had
reached the conclusion I did: Git in Bundler is really for convenience
of library dev work.
Trying to make it fulfill (continuous) app deployment work is 'nuts'.
If your app deployment is not continuous, then just bundle/gemify it
as usual and use Std Bundler/Rubygems in one of your infrequent
deploys, rather than get Git involved for the sake of having it
involved.

My 2c

>
> --
> Eric Wong
> _______________________________________________
> Rainbows! mailing list - rainbows-talk@rubyforge.org
> http://rubyforge.org/mailman/listinfo/rainbows-talk
> Do not quote signatures (like this one) or top post when replying
>



-- 
πόλλ' οἶδ ἀλώπηξ, ἀλλ' ἐχῖνος ἓν μέγα
[The fox knows many things, but the hedgehog knows one big thing.]
  Archilochus, Greek poet (c. 680 BC – c. 645 BC)
http://wiki.hedgehogshiatus.com
_______________________________________________
Rainbows! mailing list - rainbows-talk@rubyforge.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying

^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]                             ` <20110501014703.GA16332-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
@ 2011-05-01  4:26                               ` Mike Perham
       [not found]                                 ` <BANLkTinReZFusAimFSF=RcPkm-1N-=Y1Sg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 15+ messages in thread
From: Mike Perham @ 2011-05-01  4:26 UTC (permalink / raw)
  To: Rainbows! list

Ok, just as a note, I didn't need to use bundle exec, "rainbows"
worked just fine once it was in the Gemfile.

On Sat, Apr 30, 2011 at 6:47 PM, Eric Wong <normalperson-rMlxZR9MS24@public.gmane.org> wrote:
> Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>> That was it.  I added rainbows to my Gemfile and it started working.
>>
>> My app is Rails 3 and therefore uses Bundler.  Thanks for your help!
>
> Thanks for bringing this up!  I've added a Sandbox document to
> rainbows.git and website: http://rainbows.rubyforge.org/Sandbox.html
>
> --
> Eric Wong
> _______________________________________________
> Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
> http://rubyforge.org/mailman/listinfo/rainbows-talk
> Do not quote signatures (like this one) or top post when replying
>
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

* Re: problem with rainbows 3.2.0 and rbx
       [not found]                                 ` <BANLkTinReZFusAimFSF=RcPkm-1N-=Y1Sg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2011-05-01  6:38                                   ` Eric Wong
  0 siblings, 0 replies; 15+ messages in thread
From: Eric Wong @ 2011-05-01  6:38 UTC (permalink / raw)
  To: Rainbows! list

Mike Perham <mperham-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> Ok, just as a note, I didn't need to use bundle exec, "rainbows"
> worked just fine once it was in the Gemfile.

That's dangerous if the bundled Rainbows! install is a different version
than your non-bundled one.  You could end up in a situation where you
have loaded files across both versions of Rainbows!, definitely not
supported :)

-- 
Eric Wong
_______________________________________________
Rainbows! mailing list - rainbows-talk-GrnCvJ7WPxnNLxjTenLetw@public.gmane.org
http://rubyforge.org/mailman/listinfo/rainbows-talk
Do not quote signatures (like this one) or top post when replying


^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2011-05-01  6:59 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-04-27 16:25 problem with rainbows 3.2.0 and rbx Mike Perham
     [not found] ` <BANLkTimE7vo2_pRDdcVNN5vNA2fphP4-4Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-04-27 17:12   ` Mike Perham
2011-04-27 17:55   ` Eric Wong
     [not found]     ` <20110427175523.GA31654-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2011-04-27 18:06       ` Eric Wong
     [not found]         ` <20110427180635.GA19302-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2011-04-28  6:47           ` Eric Wong
2011-04-29 23:58       ` Mike Perham
     [not found]         ` <BANLkTikTugt46DfKVJtt3_fTm+X-j9U2Rw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-04-30  1:19           ` Eric Wong
     [not found]             ` <20110430011926.GA15387-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2011-04-30 16:10               ` Mike Perham
     [not found]                 ` <BANLkTi=itrufRkdQsp7M5jaBS2trnm5dMQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-04-30 17:14                   ` Eric Wong
     [not found]                     ` <20110430171428.GB29282-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2011-04-30 17:51                       ` TAN: why Bundler? (was: Re: problem with rainbows 3.2.0 and rbx) Eric Wong
     [not found]                         ` <20110430175124.GA3040-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2011-05-01  2:09                           ` Hedge Hog
2011-04-30 21:08                       ` problem with rainbows 3.2.0 and rbx Mike Perham
     [not found]                         ` <BANLkTi=t6z_5psK6AJy=XrOZmXjX0GW-pg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-05-01  1:47                           ` Eric Wong
     [not found]                             ` <20110501014703.GA16332-yBiyF41qdooeIZ0/mPfg9Q@public.gmane.org>
2011-05-01  4:26                               ` Mike Perham
     [not found]                                 ` <BANLkTinReZFusAimFSF=RcPkm-1N-=Y1Sg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-05-01  6:38                                   ` Eric Wong

Code repositories for project(s) associated with this public inbox

	https://yhbt.net/rainbows.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).