Illustrate a bug between Savon 2.0's "hacky" block format and YARD's globals.
bundle install
bundle exec rspec exercise_bug_spec.rb
This happens because the log
call in the Savon block format is not actually
a method call. It's an instance_eval
hack (according to the author).
This fact combined with YARD's polution of the global namespace
causes breakage when they're both loaded and used as such.
The "fix" falls to YARD IMO. They need to stop poluting the global namespace. Additionally, I say "convenienced be darned" and Savon should discourage and deprecate the use of the block syntax until it becomes less "hacky".