remove GServer from stdlib
I propose removing the gserver library from Ruby's stdlib.
People should not use it for the following reasons:
- It has no tests at all.
- It does something completely different than it claims to do (the docs say it manages a thread pool, while in reality it creates a new thread for every incoming connection).
- It is not maintained.
For instance, Net::HTTPServer (https://github.com/postmodern/net-http-server) uses GServer for concurrency. Removing GServer and just serving one request at a time improves performance drastically.
- lib/gserver.rb: removed unmaintained code. [Feature #5480]
- lib/xmlrpc/httpserver.rb: ditto.
#1 [ruby-core:40335] Updated by Hiroshi Nakamura over 4 years ago
Agree for removal as the reasons Konstantin listed, but we might need migration period. How others think?
Do we add deprecation warning in 1.9.3 from now? (and remove GServer at 2.0.)
NB: We should remove lib/xmlrpc/httpserver.rb which utilizes GServer. lib/xmlrpc/httpserver.rb is described as 'obsolete' in 2005 (See ChangeLog.) And this dependency is the reason why gserver.rb is included in 1.8 IIRC.