brendanhay/amqp-subscribe-many — pull request #2 by matttproud-soundcloud (2012-09-27 13:54:41+00:00)
Title: Remove defaults in configuration for explicitness.

``Messaging::Configuration`` defaults to using
``amqp://guest:guest@localhost/5672`` for its subscription
(``Messaging::Configuration.consume_from``) and publishing
(``Messaging::Configuration.publish_to``) even if
``Messaging::Client.open_connection`` has been called with an
explicit endpoint. This is unlikely to fail in a local development
environment but will undoubtedly fail in production. Even worse,
the error message that occurs in production is far more opaque and
textually implies a TCP session problem with the _explicitly-defined_
endpoint and not this safe default and never makes mention of the
default value in the logs.

In the interests of safety---and my personal reflection from working
with things like this for years---providing a default configuration
endpoint in code is a dangerous affair, as it effectively falsely
idemnifies developers and operators into thinking that their
configuration is correct when it isn't. This is never correct.