Use a for loop to set the defaults for __call__ params

Instead of setting the default kwargs based on a repeated
setdefault() call, just use a for loop to set the defaults.

Change-Id: I5c7fd22856912545bf5f95fd07568375dbecbe5b
Merge "Use a for loop to set the defaults for __call__ params"
debug level logs should not be translated

According to the OpenStack translation policy available at
https://wiki.openstack.org/wiki/LoggingStandards debug messages
should not be translated. Like mentioned in several changes in
Nova by garyk this is to help prioritize log translation.

Change-Id: I4af4a45a56b1364a2f5196b75cff299d607ab393
Partial-Bug: #1317950
Make the TransportUrl hashable

The amqp connection pool uses the Transport Url as key
to track the connection, but currently a different hash can be
returned for the same url.

This change fixes the hash method of the TransportUrl

Change-Id: Id701d6a80a909d6bd6dabe680c2b8e09dd721ef1
Closes-bug: #1316891
remove default=None for config options

In the cfg module default=None is set as the default value.

Change-Id: I5de0c1ddeeaccde8183ec130c85524f5b57f6f74
Closes-Bug: #1323975
Remove amqp default exchange hack

This change remove the hack to set the default exchange of a transport in the
amqp driver, by removing the usage of the configuration object to get the
default exchange in rabbit and qpid driver, and instead use the value
passed to the driver constructor into all amqp publishers and consumers
class/method that needs it.

Closes-bug: #1256345
Change-Id: Iba54ca79a49f8545854205c1451b2403735c1006
Updated from global requirements

Change-Id: I6a2fe617cab3370b13de3e45f52076e53d260724
Setup for translation

To start translation, we need to initially import the
translation file - and place it at the proper place so that
the usual CI scripts can handle it.

The proper place is for all python projects
$PROJECT/locale/$PROJECT.pot - see setup.cfg.

Further imports will be done by the OpenStack Proposal bot.

Setup also setup.cfg with the usual babel commands and add the default
babel.cfg file.

Change-Id: I583e98fac2f9b84cd1115640b936057ad95957e8
Merge "Remove amqp default exchange hack"
Removes unused config option

This change removes the unused 'allowed_rpc_exception_modules' options

Change-Id: Ibb30709e5a3a08573fc1975fab80498a27b5ef0f
Merge "Setup for translation"
Bump hacking to 0.9.x series

In order to keep this patch to just a requirements bump, ignore new and
stricter hacking rules that are being triggered. Fixing up the code and
turning these on is out of scope of this patch and is for future patches.

Change-Id: I5711e066da1076486d291bc4f45359ecb26e1b1a
Merge "Removes unused config option"
Merge "Bump hacking to 0.9.x series"
Add profiling support in oslo.messaging

Oslo messaging is used for all rpc calls between services of each
OpenStack project.

To be able to bind traces from different services of one project,
we should be able to sync state of profiler in 2 serivce.

Sync of profiler in services is done in quite simple maner:
1) If profiler in publisher service has inited profiler it adds trace info
to rpc message.
2) If reciever service gets in rpc message trace info it init profiler.

As well this patch contains new module oslo.messaging.profiler that has
generic function set_notifier that allows us to setup profiler in all
projects of OpenStack that are using oslo.messaging.