braintree / braintree_ruby

Braintree Ruby library
https://developer.paypal.com/braintree/docs/start/overview
MIT License
444 stars 195 forks source link

Migrate from libxml-ruby to nokogiri #205

Closed mohamedhafez closed 3 years ago

mohamedhafez commented 3 years ago

Making libxml-ruby a hard requirement in version 3.x.x has made this gem incompatible with JRuby, replacing the libxml-ruby gem with nokogiri would restore that compatibility. libxml-ruby and nokogiri both rely on a bundled libxml2 version 2.9.10 C-extension under the hood for regular Ruby, so there shouldn't be any impact there.

Even for regular Ruby users, since nokogiri is already a dependency of Rails (through actiontext), there would be the added benefit of not having an extra dependency pulled in in most cases.

crookedneighbor commented 3 years ago

Thanks for the suggestion, we're discussing it internally.

headius commented 3 years ago

We JRuby maintainers would love to see this happen! If we can help in some way let us know. Nokogiri works well on JRuby and we would love to be able to say we support Braintree.

scannillo commented 3 years ago

👋 Hello @mohamedhafez. We just released version 4.0.0 of the Braintree Ruby SDK, which makes libxml-ruby an optional dependency. This should resolve your issue and allow you to use JRuby with our SDK.