-
Notifications
You must be signed in to change notification settings - Fork 367
Remove dev dependency to Thin #479
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This change is part of preliminary efforts at attempting to refresh the Continuous Integration setup, by supporting recent Ruby version and updating dependencies. To be honest, I don't know what benefits the Thin server brings to the table. I tried digging in the code, but the commit that introduced it does not tell me much: cdeea8b. What I know however is that I have troubles running the specs locally, getting a timeout on this line: https://github.com/zipmark/rspec_api_documentation/blob/560c3bdc7bd5581e7c223334390221ecfc910be8/spec/http_test_client_spec.rb#L16 However, letting Capybara handle its server details, as shown in this PR, does not seem to have any negative impact (spec is still green, and fairly fast).
@davidstosik I don't recall, but I'm guessing it was to avoid running webrick back in 2014. From Capybara's source at the time:
Looks like capybara now uses puma by default which seems fine to me. |
Thanks for linking to that! This dates from a time I had barely discovered Ruby and Rails, so I was not aware. 🙇♂️
This would require adding the In the Capybara version used so far (locked in the gemspec), Webrick is used. I'm currently trying to update more (PR to come), and before opting for Puma, I'm thinking of keeping Webrick with
Curious about what could have been the reason... 🤔 |
Webrick had a bad reputation, but I think that was mostly earned because it did not work in production. Pre-mongrel there was not great ways to run rails apps. Thin/Puma/Unicorn all descended from mongrel. For our purposes it seems perfectly reasonable. It is also pure ruby so for something like CI it should work as long as the right version is pinned across rubies. |
This change is part of preliminary efforts at attempting to refresh the Continuous Integration setup, by supporting recent Ruby version and updating dependencies. To be honest, I don't know what benefits the Thin server brings to the table. I tried digging in the code, but the commit that introduced it does not tell me much: cdeea8b. What I know however is that I have troubles running the specs locally, getting a timeout on this line: https://github.com/zipmark/rspec_api_documentation/blob/560c3bdc7bd5581e7c223334390221ecfc910be8/spec/http_test_client_spec.rb#L16 However, letting Capybara handle its server details, as shown in this PR, does not seem to have any negative impact (spec is still green, and fairly fast).
This change is part of preliminary efforts at attempting to refresh
the Continuous Integration setup, by supporting recent Ruby versions and
updating dependencies.
To be honest, I don't know what benefits the Thin server brings to the table.
I tried digging in the code, but the commit that introduced it does not
tell me much: cdeea8b.
What I know however is that I have troubles running the specs locally,
getting a timeout on this line:
rspec_api_documentation/spec/http_test_client_spec.rb
Line 16 in 560c3bd
However, letting Capybara handle its server details, as shown in this PR,
does not seem to have any negative impact (spec is still green, and fairly fast).