xmlrpc icon indicating copy to clipboard operation
xmlrpc copied to clipboard

Integrate xmlrpc-streaming gem

Open herwinw opened this issue 5 years ago • 3 comments

There is a very old gem on https://github.com/washu/xmlrpc-streaming, with the following feature set:

  • Base64 now accepts an IO object to its constructor
  • The XMLRPC request will now be streamed to the server. This will be a little faster and generate much less garbage. It should also fix issues where large Base64 objects sent to the server can cause out of memory errors
  • Base64 now has a to_io methods that will give access to the underlying data as a IO object note: this is the raw data.
  • set_writer will be ignored if this module has been loaded.
  • the parser will now try the following, nokogiri, libxml and finally fallback to REXML
  • This module can be used completely transparently, just require the lib and nothing else needs done

The current release of this Gem is 0.1.0, and it hasn't been updated since 2011. The xmlrpc gem has a parser using libxml nowadays, but these two differ. I have no idea of the gem still works with the current release of xmlrpc.

It would be nice to have the functionality in the addon merged into the base release. I'm open to making the changes, but first I want to be sure this would be accepted, and that merging this foreign gem is even allowed (notify for @washu)

herwinw avatar Jul 03 '19 10:07 herwinw

you can merge whatever you like, this module was made for a previous job, and i no longer use it myself, so whatever you would like merge is fine by me.

washu avatar Jul 03 '19 13:07 washu

I don't take a deeply look at xmlrpc-streaming yet but there is license different. xmlrpc uses the BSD-2-Clause license and xmlrpc-streaming uses the MIT license. If we really merge xmlrpc-streaming, can we change the license of xmlrpc-streaming to the BSD-2-Clause?

kou avatar Jul 03 '19 20:07 kou

Just to add more confusion: https://github.com/washu/xmlrpc-streaming/blob/master/lib/xmlrpc-streaming.rb has an explicit mention of a license:

Released under the same terms of license as Ruby.

herwinw avatar Jul 08 '19 07:07 herwinw