> Given how the mechanism works, formatters have to register themselves if they're RSpec 3 ready, regardless of how they actually then supply an actual instance (this is what happened with Fivemat in the end) so that's less of a concern, but they might tell users to add specific formatter classes which would be more troublesome.

Maybe I'm missing something...but as I understand the current logic of fivemat and of this PR, here's what I think would happen:

* In 2.99, fivemat does not call `::RSpec::Core::Formatters.register` as it has a conditional that makes it only do that when it detects that rspec 3 is running.
* Therefore, if a user uses the latest release of fivemat, they'll get a deprecation warning from 2.99 with this logic.
* This deprecation warning is a confusing lie because fivemat _is_ ready for RSpec 3.
* Furthermore, if the user installs and uses the `rspec-legacy_formatters` gem and then upgrades to RSpec 3, it'll probably actually prevent fivemat from working properly since we're planning to have it redefine the formatter base classes and what not.

Let's let this stew for a bit.  There might be a way to do this accurately and without causing confusion but for now I'm leaning towards not issuing a warning from 2.99 for the reasons outlined above.