-
Notifications
You must be signed in to change notification settings - Fork 12
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
Soft deprecate webrick and add some details as to why. #23
Conversation
c837e1e
to
d5dc856
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Thank you for working on this.
9771b55
to
d5d46c5
Compare
Rackup 2.2 no longer depends on `webrick`, and our usage of `rackup` fails if we don't add a dependency on `webrick`. For details on the `rackup` change, see: rack/rackup#23 Note that the `rackup` maintainers recommend using `falcon` or `puma` instead of `webrick`. However, `falcon` and `puma` are heavier weight. `falcon` has lots of runtime dependencies and `puma` depends on `nio4r` which has native code. As a result, it's more likely to hit installation issues for ElasticGraph users than `webrick`. So for now we are sticking with `webrick` but I'm open to changing this in the future.
Rackup 2.2 no longer depends on `webrick`, and our usage of `rackup` fails if we don't add a dependency on `webrick`. For details on the `rackup` change, see: rack/rackup#23 Note that the `rackup` maintainers recommend using `falcon` or `puma` instead of `webrick`. However, `falcon` and `puma` are heavier weight. `falcon` has lots of runtime dependencies and `puma` depends on `nio4r` which has native code. As a result, it's more likely to hit installation issues for ElasticGraph users than `webrick`. So for now we are sticking with `webrick` but I'm open to changing this in the future.
WEBrick is not recommended for production usage, and the rackup gem dropped the dependency on it. [1], [2] With these changes in mind, just recommend Puma as the web server, for simplicity. [1]: ruby/webrick@70b026c [2]: rack/rackup#23
WEBrick is not recommended for production usage, and the rackup gem dropped the dependency on it. [1], [2] With these changes in mind, just recommend Puma as the web server, for simplicity. [1]: ruby/webrick@70b026c [2]: rack/rackup#23
Followup to rack#23 Even when users do add webrick to their gemfile, the handler is not available. This means that they either need to do that themselves, or dependencies need to be updated.
If rackup itself is soft-deprecated, how about leaving the webrick dep in place and unwinding the compatibility snafu? Allow it to continue behaving just as it did before, and advise folks to move off Rackup instead. If Rackup does carry on, make the webrick dep change in a major release (3.0). |
I don’t have a strong opinion about this except that some of the things that broke already looked kind of broken to me. I don’t think we should encourage further usage of webrick either. So if we did what you suggest and users upgrade to 3, they would be in the same boat? In other words the best solution for people right now is to pin the version until downstream dependencies are fixed? Or just accelerate the deployment and release of those fixes? |
Followup to rack#23 Even when users do add webrick to their gemfile, the handler is not available. This means that they either need to do that themselves, or dependencies need to be updated.
@jeremyevans I have copied your advice from #12 (comment) and moved
webrick
to a development dependency.Fixes #12.