summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Audet <ichimonji10@gmail.com>2015-12-08 09:39:45 -0500
committerBrian Coca <brian.coca+git@gmail.com>2015-12-08 12:38:17 -0800
commit0e55398e16de1ca99dbe2115a4809c57cdbb5150 (patch)
tree360e220646a84257384b842967e9e61ede2fb80f
parent1799de8528926355f51f79f705a6927a05ba018a (diff)
downloadansible-0e55398e16de1ca99dbe2115a4809c57cdbb5150.tar.gz
Make "make webdocs" compatible with Python 3
The `webdocs` make target fails under Python 3. It fails due to a variety of syntax errors, such as the use of `except Foo, e` and `print 'foo'`. Fix #13463 by making code compatible with both Python 2 and 3.
-rwxr-xr-xdocsite/build-site.py23
-rwxr-xr-xhacking/module_formatter.py4
2 files changed, 14 insertions, 13 deletions
diff --git a/docsite/build-site.py b/docsite/build-site.py
index 587a189f07..24f9fc9a64 100755
--- a/docsite/build-site.py
+++ b/docsite/build-site.py
@@ -15,6 +15,7 @@
#
# You should have received a copy of the GNU General Public License
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
+from __future__ import print_function
__docformat__ = 'restructuredtext'
@@ -24,9 +25,9 @@ import traceback
try:
from sphinx.application import Sphinx
except ImportError:
- print "#################################"
- print "Dependency missing: Python Sphinx"
- print "#################################"
+ print("#################################")
+ print("Dependency missing: Python Sphinx")
+ print("#################################")
sys.exit(1)
import os
@@ -40,7 +41,7 @@ class SphinxBuilder(object):
"""
Run the DocCommand.
"""
- print "Creating html documentation ..."
+ print("Creating html documentation ...")
try:
buildername = 'html'
@@ -69,10 +70,10 @@ class SphinxBuilder(object):
app.builder.build_all()
- except ImportError, ie:
+ except ImportError:
traceback.print_exc()
- except Exception, ex:
- print >> sys.stderr, "FAIL! exiting ... (%s)" % ex
+ except Exception as ex:
+ print("FAIL! exiting ... (%s)" % ex, file=sys.stderr)
def build_docs(self):
self.app.builder.build_all()
@@ -83,9 +84,9 @@ def build_rst_docs():
if __name__ == '__main__':
if '-h' in sys.argv or '--help' in sys.argv:
- print "This script builds the html documentation from rst/asciidoc sources.\n"
- print " Run 'make docs' to build everything."
- print " Run 'make viewdocs' to build and then preview in a web browser."
+ print("This script builds the html documentation from rst/asciidoc sources.\n")
+ print(" Run 'make docs' to build everything.")
+ print(" Run 'make viewdocs' to build and then preview in a web browser.")
sys.exit(0)
build_rst_docs()
@@ -93,4 +94,4 @@ if __name__ == '__main__':
if "view" in sys.argv:
import webbrowser
if not webbrowser.open('htmlout/index.html'):
- print >> sys.stderr, "Could not open on your webbrowser."
+ print("Could not open on your webbrowser.", file=sys.stderr)
diff --git a/hacking/module_formatter.py b/hacking/module_formatter.py
index f4ab5d7d9a..4c94ca3f2c 100755
--- a/hacking/module_formatter.py
+++ b/hacking/module_formatter.py
@@ -140,7 +140,7 @@ def list_modules(module_dir, depth=0):
if os.path.isdir(d):
res = list_modules(d, depth + 1)
- for key in res.keys():
+ for key in list(res.keys()):
if key in categories:
categories[key] = merge_hash(categories[key], res[key])
res.pop(key, None)
@@ -451,7 +451,7 @@ def main():
categories = list_modules(options.module_dir)
last_category = None
- category_names = categories.keys()
+ category_names = list(categories.keys())
category_names.sort()
category_list_path = os.path.join(options.output_dir, "modules_by_category.rst")