From 7a6474662dc7b3e990a81ad2cb31aac969d56922 Mon Sep 17 00:00:00 2001
From: Mehdi Abaakouk <sileht@redhat.com>
Date: Thu, 27 Apr 2017 12:21:28 +0200
Subject: [PATCH] Fix aliases deprecation

We log deprecation message even if application doesn't use it.
And we missing the parse method.

This change fixes that.

Change-Id: I476816cb14ac8218feb74e8459cfa5f18fdb6c61
---
 oslo_messaging/transport.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/oslo_messaging/transport.py b/oslo_messaging/transport.py
index b34395491..c42ffa78f 100644
--- a/oslo_messaging/transport.py
+++ b/oslo_messaging/transport.py
@@ -365,6 +365,8 @@ class TransportURL(object):
 
         return url
 
+    @removals.removed_kwarg('aliases',
+                            'Parameter aliases is deprecated for removal.')
     @classmethod
     def parse(cls, conf, url=None, aliases=None):
         """Parse an url.
@@ -404,7 +406,7 @@ class TransportURL(object):
             conf.register_opts(_transport_opts)
         url = url or conf.transport_url
         if not url:
-            return cls(conf, aliases=aliases)
+            return cls(conf) if aliases is None else cls(conf, aliases=aliases)
 
         if not isinstance(url, six.string_types):
             raise InvalidTransportURL(url, 'Wrong URL type')
@@ -488,4 +490,7 @@ class TransportURL(object):
                         {'hosts_with_credentials': hosts_with_credentials,
                          'hosts_without_credentials':
                          hosts_without_credentials})
-        return cls(conf, transport, virtual_host, hosts, aliases, query)
+        if aliases is None:
+            return cls(conf, transport, virtual_host, hosts, query=query)
+        else:
+            return cls(conf, transport, virtual_host, hosts, aliases, query)