Dependency limitations
Please add dependency limitations. Your gem is incompatible with rspec before version 3.4.1 at least.
https://github.com/rspec/rspec-support/blame/a0bc8606b33041dee1e1eae17def1e37ed4bf734/lib/rspec/support/object_formatter.rb
Before rspec 3.4.1, the ObjectFormatter class was a module.
You're right — the RSpec part of this gem was implemented against RSpec 3.8.0 or greater. I don't think we can add a constraint in the gemfile because there are some parts of this gem you can use without using RSpec specifically (and support for other frameworks is planned for the future), but it might be a good idea to add a runtime check at the top of super_diff/rspec.rb, after the import "super_diff" line. Perhaps something like:
if !defined?(RSpec)
raise LoadError, "RSpec is not available — are you using this in an RSpec environment?"
end
rspec_version = Gem::Version.new(RSpec::VERSION)
rspec_requirement = Gem::Requirement.new(">= 3.8.0")
if !rspec_requirement.satisfied_by?(rspec_version)
raise LoadError, "RSpec >= 3.8.0 is required to use super_diff/rspec."
end
I like this solution! Thank you for considering my issue.