* Update to Rack v2?
@ 2016-11-16 21:47 Julia López Aladro
2016-11-16 22:04 ` Eric Wong
0 siblings, 1 reply; 6+ messages in thread
From: Julia López Aladro @ 2016-11-16 21:47 UTC (permalink / raw)
To: rainbows-public
Hello!
Is there any plan to update Rainbows to use Rack version ~> 2?
Currently Rainbows cannot be used in applications using Rails 5
because Rails requires the newest rack version.
Cheers,
Julia
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Update to Rack v2?
2016-11-16 21:47 Update to Rack v2? Julia López Aladro
@ 2016-11-16 22:04 ` Eric Wong
2016-11-17 3:35 ` [PATCH] support rack 2.x Eric Wong
0 siblings, 1 reply; 6+ messages in thread
From: Eric Wong @ 2016-11-16 22:04 UTC (permalink / raw)
To: Julia López Aladro; +Cc: rainbows-public
Julia López Aladro <julialopez@gmail.com> wrote:
> Is there any plan to update Rainbows to use Rack version ~> 2?
There is, now :)
Rack 1.x needs to remain supported, but I think it's doable
(I've done it for other projects)
I will take a look at it in a little bit.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH] support rack 2.x
2016-11-16 22:04 ` Eric Wong
@ 2016-11-17 3:35 ` Eric Wong
2016-11-29 21:31 ` Julia López Aladro
0 siblings, 1 reply; 6+ messages in thread
From: Eric Wong @ 2016-11-17 3:35 UTC (permalink / raw)
To: Julia López Aladro; +Cc: rainbows-public
OK, I think the patch below will work.
I've pushed out a pre-release to RubyGems.org with it,
it's purely a packaging change.
rainbows 5.0.0.5.ge717
(gem install --pre rainbows)
Can you give it a try? I'd like to push out a final release
in a day or two. Thanks.
Btw, which concurrency model of Rainbows! are you using?
I'm always trying to prioritize support for them, since
some of them depend on barely-maintained projects like EM.
-------8<------
Subject: [PATCH] support rack 2.x
This requires updating to unicorn 5.1+ to relax the rack
requirement. Unlike unicorn, Rainbows! is considerably
larger and cannot function without rack installed.
There were no code changes required to pass the test suite;
but some other optional gems needed to be updated for testing.
Support for async_sinatra is no longer tested as that is tied
to rack 1.x; but the remaining EventMachine-dependent parts
remain tested.
Thanks to Julia López Aladro for reminding us on the mailing list:
https://bogomips.org/rainbows-public/CAPhSs6OAU+motd+MF=WOSek9==StLjEQJsNwAO3-aRWCZzhs=g@mail.gmail.com/
---
rainbows.gemspec | 7 +++----
t/t0300-async_sinatra.sh | 2 +-
t/test_isolate.rb | 15 +++++++++------
3 files changed, 13 insertions(+), 11 deletions(-)
diff --git a/rainbows.gemspec b/rainbows.gemspec
index 05d4a2a..4283a85 100644
--- a/rainbows.gemspec
+++ b/rainbows.gemspec
@@ -19,15 +19,14 @@
s.summary = summary
# we want a newer Rack for a valid HeaderHash#each
- s.add_dependency(%q<rack>, ['~> 1.1'])
+ s.add_dependency(%q<rack>, ['>= 1.1', '< 3.0'])
# kgio 2.5 has kgio_wait_* methods that take optional timeout args
s.add_dependency(%q<kgio>, ['~> 2.5'])
# we need unicorn for the HTTP parser and process management
- # we need unicorn 4.8.0+ since we depend on undocumented/unsupported
- # unicorn internals.
- s.add_dependency(%q<unicorn>, ["~> 5.0"])
+ # we need unicorn 5.1+ to relax the Rack dependency.
+ s.add_dependency(%q<unicorn>, ["~> 5.1"])
s.add_development_dependency(%q<isolate>, "~> 3.1")
s.add_development_dependency(%q<olddoc>, "~> 1.2")
diff --git a/t/t0300-async_sinatra.sh b/t/t0300-async_sinatra.sh
index ae594eb..d7972e5 100755
--- a/t/t0300-async_sinatra.sh
+++ b/t/t0300-async_sinatra.sh
@@ -5,7 +5,7 @@
n=10
CONFIG_RU=async_sinatra.ru
case $model in
-NeverBlock|EventMachine) ;;
+NeverBlock-rack1|EventMachine-rack1) ;;
*)
t_info "skipping $T since it's not compatible with $model"
exit 0
diff --git a/t/test_isolate.rb b/t/test_isolate.rb
index 58bc4dc..bb56ef0 100644
--- a/t/test_isolate.rb
+++ b/t/test_isolate.rb
@@ -17,15 +17,18 @@
lock.flock(File::LOCK_EX)
Isolate.now!(opts) do
gem 'kgio', '2.10.0'
- gem 'rack', '1.6.4'
- gem 'kcar', '0.5.0'
- gem 'raindrops', '0.13.0'
- gem 'unicorn', '5.0.1'
+ gem 'rack', '2.0.1'
+ gem 'kcar', '0.6.0'
+ gem 'raindrops', '0.17.0'
+ gem 'unicorn', '5.2.0'
if engine == "ruby"
gem 'sendfile', '1.2.2'
- gem 'eventmachine', '1.0.8'
- gem 'async_sinatra', '1.2.0'
+ gem 'eventmachine', '1.2.0.1'
+
+ # not compatible with rack 2.x
+ # gem 'async_sinatra', '1.2.1'
+
if RUBY_VERSION.to_f < 2.2
gem 'cool.io', '1.1.0'
gem 'neverblock', '0.1.6.2'
--
EW
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [PATCH] support rack 2.x
2016-11-17 3:35 ` [PATCH] support rack 2.x Eric Wong
@ 2016-11-29 21:31 ` Julia López Aladro
2017-01-09 19:48 ` Eric Wong
0 siblings, 1 reply; 6+ messages in thread
From: Julia López Aladro @ 2016-11-29 21:31 UTC (permalink / raw)
To: e; +Cc: julialopez, rainbows-public
Hi Eric,
Wow, that was FAST!
This is just a heads up to let you know I'm looking into this, so far
with Rails 4 (Rack < 2) seems to work just fine but I didn't have a lot
to time to test it.
I haven't finished migrating the app to Rails 5 so I cannot tell if
it'll work using Rack 2.0
As a concurrency model we are using ThreadSpawn but I cannot tell why
because the guy that configured Rainbows is on holidays now! I'll keep
you posted!
Thanks!
PS: Sorry about the late response!
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] support rack 2.x
2016-11-29 21:31 ` Julia López Aladro
@ 2017-01-09 19:48 ` Eric Wong
2017-01-13 17:56 ` Julia López
0 siblings, 1 reply; 6+ messages in thread
From: Eric Wong @ 2017-01-09 19:48 UTC (permalink / raw)
To: Julia López Aladro; +Cc: rainbows-public
Julia López Aladro <julialopez@gmail.com> wrote:
> PS: Sorry about the late response!
Hey, just wondering if you've had a chance to run with rack 2.x
support in rainbows. Anyways I took an extra look at the
changes and it seems fine. I'll probably release 5.1.0 final
in a day or two now that holidays are over and there's some
improvements ready to drop into 'master'.
Thanks.
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH] support rack 2.x
2017-01-09 19:48 ` Eric Wong
@ 2017-01-13 17:56 ` Julia López
0 siblings, 0 replies; 6+ messages in thread
From: Julia López @ 2017-01-13 17:56 UTC (permalink / raw)
To: e; +Cc: julialopez, rainbows-public
Hi Eric,
Sorry it took me that long to test this but I finally finished the
migration and deployed the app in staging (we don't use rainbows in
development mode) and after a quick click testing everything works as
expected with the latest release 5.1.0.
Thanks again for your support!
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2017-01-13 17:56 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-16 21:47 Update to Rack v2? Julia López Aladro
2016-11-16 22:04 ` Eric Wong
2016-11-17 3:35 ` [PATCH] support rack 2.x Eric Wong
2016-11-29 21:31 ` Julia López Aladro
2017-01-09 19:48 ` Eric Wong
2017-01-13 17:56 ` Julia López
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).