Sync py3kcompat from oslo-incubator
Python3 reorganized the standard library and moved several functions to different modules and combined modules. Six provides a consistent interface to the module through six.moves However urllib/urlparse is not covered by six.moves so py3kcompat adds python2/python3 compatibility layer for urllib/urlparse. Change-Id: I98d45a84e8c2dcd965a9e5cc08d7bb341eb08bfc Signed-off-by: Chuck Short <chuck.short@canonical.com>
This commit is contained in:
		
							
								
								
									
										17
									
								
								keystoneclient/openstack/common/py3kcompat/__init__.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								keystoneclient/openstack/common/py3kcompat/__init__.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,17 @@ | ||||
| # vim: tabstop=4 shiftwidth=4 softtabstop=4 | ||||
| # | ||||
| # Copyright 2013 Canonical Ltd. | ||||
| # All Rights Reserved. | ||||
| # | ||||
| #    Licensed under the Apache License, Version 2.0 (the "License"); you may | ||||
| #    not use this file except in compliance with the License. You may obtain | ||||
| #    a copy of the License at | ||||
| # | ||||
| #         http://www.apache.org/licenses/LICENSE-2.0 | ||||
| # | ||||
| #    Unless required by applicable law or agreed to in writing, software | ||||
| #    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | ||||
| #    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | ||||
| #    License for the specific language governing permissions and limitations | ||||
| #    under the License. | ||||
| # | ||||
							
								
								
									
										49
									
								
								keystoneclient/openstack/common/py3kcompat/urlutils.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								keystoneclient/openstack/common/py3kcompat/urlutils.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,49 @@ | ||||
| # vim: tabstop=4 shiftwidth=4 softtabstop=4 | ||||
| # | ||||
| # Copyright 2013 Canonical Ltd. | ||||
| # All Rights Reserved. | ||||
| # | ||||
| #    Licensed under the Apache License, Version 2.0 (the "License"); you may | ||||
| #    not use this file except in compliance with the License. You may obtain | ||||
| #    a copy of the License at | ||||
| # | ||||
| #         http://www.apache.org/licenses/LICENSE-2.0 | ||||
| # | ||||
| #    Unless required by applicable law or agreed to in writing, software | ||||
| #    distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | ||||
| #    WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | ||||
| #    License for the specific language governing permissions and limitations | ||||
| #    under the License. | ||||
| # | ||||
|  | ||||
| """ | ||||
| Python2/Python3 compatibility layer for OpenStack | ||||
| """ | ||||
|  | ||||
| import six | ||||
|  | ||||
| if six.PY3: | ||||
|     # python3 | ||||
|     import urllib.parse | ||||
|  | ||||
|     urlencode = urllib.parse.urlencode | ||||
|     urljoin = urllib.parse.urljoin | ||||
|     quote = urllib.parse.quote | ||||
|     parse_qsl = urllib.parse.parse_qsl | ||||
|     urlparse = urllib.parse.urlparse | ||||
|     urlsplit = urllib.parse.urlsplit | ||||
|     urlunsplit = urllib.parse.urlunsplit | ||||
| else: | ||||
|     # python2 | ||||
|     import urllib | ||||
|     import urlparse | ||||
|  | ||||
|     urlencode = urllib.urlencode | ||||
|     quote = urllib.quote | ||||
|  | ||||
|     parse = urlparse | ||||
|     parse_qsl = parse.parse_qsl | ||||
|     urljoin = parse.urljoin | ||||
|     urlparse = parse.urlparse | ||||
|     urlsplit = parse.urlsplit | ||||
|     urlunsplit = parse.urlunsplit | ||||
| @@ -6,6 +6,7 @@ module=install_venv_common | ||||
| module=jsonutils | ||||
| module=strutils | ||||
| module=timeutils | ||||
| module=py3kcompat | ||||
|  | ||||
| # The base module to hold the copy of openstack.common | ||||
| base=keystoneclient | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Chuck Short
					Chuck Short