Reel #51

Merged
merged 17 commits into from Aug 20, 2012

8 participants

@seancribbs
Webmachine member

Adds Reel as a server adapter.

seancribbs and others added some commits Apr 23, 2012
@seancribbs seancribbs WIP Reel adapter. [ci skip] a2ae664
@SebastianEdwards SebastianEdwards Fixing Reel adapter.
- Ensure callback only runs when connection has a request.
- Pull 'Host' header out with fetch to bypass transform_key.
- Reference correct variable in body-prepping case statement.
d404376
@SebastianEdwards SebastianEdwards Use streaming response to handle enumerable bodies. f5a08cd
@seancribbs seancribbs Merge pull request #46 from SebastianEdwards/reel
Fix Reel Adapter
e0b21df
@tarcieri tarcieri Reel::Response supports Enumerables natively now cbf7490
@seancribbs seancribbs Merge pull request #50 from tarcieri/reel
Update to current Reel API
da86612
@bernd

I like it. +1

@tarcieri

What does this need to get merged? Just merge master?

@tarcieri

Tests would probably be helpful, and the "if wreq" should probably be "while wreq" (for Keep-Alive support):

https://github.com/seancribbs/webmachine-ruby/blob/cbf74908b658c280024a63e16ed864aa7c64d494/lib/webmachine/adapters/reel.rb#L23

@samwgoldman
Webmachine member

Seems like the extracted LazyRequestBody class should be useful for the Rack and Mongrel adapters as well. There are slight differences between the adapters' RequestBody implementations as is. Once this is merged we should look into consolidating them.

@seancribbs
Webmachine member
  1. Tests, yes. I was just starting a PR so we can keep track that this is here.
  2. We should also probably autoload the Reel adapter to avoid blindly requiring it.
  3. We should make the gem dep sane.
@tarcieri

I just released Reel 0.1.0 and fixed the gem dependencies

nicholaswyoung and others added some commits Aug 18, 2012
@nicholaswyoung nicholaswyoung One small tweak...
Good to go now. Reel adapter spec fixed.
be7cf45
@tarcieri tarcieri Merge branch 'originalmachine-reel' into reel
Conflicts:
	webmachine.gemspec
5f26d09
@tarcieri tarcieri Merge branch 'master' into reel
Conflicts:
	lib/webmachine/adapters.rb
	webmachine.gemspec
5c09bb8
@tarcieri

@seancribbs I think this is ready to merge...

@travisbot

This pull request fails (merged 5c09bb8 into aedcfa2).

@tarcieri

Belay that ;) Investigating...

@tarcieri

Hmmm, looks like we need to disable the Reel specs on 1.8...

@travisbot

This pull request fails (merged 5fdedc0 into aedcfa2).

@tarcieri

@seancribbs okay, this should be ready to merge aside from that unrelated test failure on JRuby 1.9. It's working fine for me here

@travisbot

This pull request fails (merged 2eb6323 into aedcfa2).

@lgierth

The .gemspec is only being evaluated when building the gem and when developing using Bundler, so this will result in different gems being built depending on the Ruby version you run gem build on.

It's a development dependency. Is that really an issue?

Do you have a better suggestion?

An alternative might be to pull development dependencies in through the Gemfile instead of the gemspec

@seancribbs
Webmachine member

@tarcieri If you can fix that one thing in the gemspec (the 1.9 conditional stuff), this should be ready to merge.

@travisbot

This pull request fails (merged 7baa24d into aedcfa2).

@travisbot

This pull request passes (merged f8e95ac into aedcfa2).

@tarcieri

@seancribbs should be good to go now

@seancribbs
Webmachine member

@tarcieri What's wrong with JRuby 1.9-mode?

@tarcieri

@seancribbs it appears to be related to mongrel. See: http://travis-ci.org/#!/seancribbs/webmachine-ruby/jobs/2171020

I enabled checks on Travis for 1.9 mode for both JRuby and rbx to check Reel because it's 1.9 only, however it appears that mongrel doesn't work on JRuby in 1.9 mode.

@seancribbs
Webmachine member

Ok, we might be able to work around that. I'll look into it after I finish this feature branch.

@travisbot

This pull request fails (merged 3f8028b into aedcfa2).

@tarcieri

Well that build failure seems rather odd... I'll investigate.

@tarcieri

I believe you can use :platform => :cruby to accomplish the same effect

@seancribbs
Webmachine member

@tarcieri Yeah, according to the Gemfile manual, 'ruby_19' should be sufficient to exclude JRuby. What gives?

@seancribbs
Webmachine member

@tarcieri Does Reel work on JRuby in 1.9 mode?

@tarcieri

@seancribbs there's no reason I know of why it shouldn't. It doesn't look like reel is getting bundled per your comment about 'ruby_19'

@travisbot

This pull request fails (merged a6a02e1 into aedcfa2).

@travisbot

This pull request passes (merged 82bd60e into aedcfa2).

@seancribbs seancribbs merged commit aaefa6d into master Aug 20, 2012

1 check passed

Details default The Travis build passed
@nicholaswyoung

Awesome to see this get merged. Thanks, @seancribbs and @tarcieri .

@tarcieri

w00t! Glad this finally landed, although I already see #67... will take a look

@bernd bernd referenced this pull request Nov 13, 2012
Merged

Unbreak CI for JRuby 1.8 #75

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment