styleseek/hyperdrive — pull request #3 by xentek (2014-05-04 08:56:05+00:00)
Title: Content Negotiation

A funny thing happened on the way to getting `hyperdrive` to support content negotiation…

- nearly the entire design of this gem has been overhauled
- no longer uses the `Singleton` mixin from the ruby stdlib in favor of a more flexible singleton approach using a "self-extended" `Module`
- extracts most HTTP logic into a mixture of custom and stock `Rack` middleware (including but not limited to Content Negotiation)
- fleshes out the DSL with more options for describing the API itself, as well as each `Resource`
- cleans up the specs and adds more test coverage to the remaining logic

It still has a few warts and completely favors json media types, but all-in-all, this branch gets `hyperdrive` ready for prime time.