rspec/rspec-core — pull request #1753 by myronmarston (2014-10-29 22:33:28+00:00)
Title: Reify shared example groups as a first-class type.

- Allows us to provide pretty `inspect` output, which
is far better than the anonymous module output we
normally get.
- Simplifies the creation of the shared example group.
Previously each group instantiated a module and defined
`included` as a singleton method.

Possible issue: this re-appropriates `RSpec::Core::SharedExampleGroup` (which used to have the definition methods), making it the class for shared example groups, and `RSpec::Core::SharedExampleGroup::DefinitionAPI` the new module that has the definition methods. That's probably a SemVer violation (since `RSpec::Core::SharedExampleGroup` was not labeled private) so I should probably re-jigger things but I'm not sure what a good name for the class would be...

Thoughts?