[mousetrap/gnome3-wip: 235/240] Port to Python 2.7+ (i.e., ready for Python 3).



commit c0b1985cbb11fe85dbf69aee7d8a9edb956f56cd
Author: Stoney Jackson <dr stoney gmail com>
Date:   Tue Jul 1 20:24:30 2014 -0400

    Port to Python 2.7+ (i.e., ready for Python 3).

 Makefile.am                             |    2 +-
 bin/mt-add-future                       |   11 +++++++++++
 src/mousetrap/__init__.py               |    4 ++++
 src/mousetrap/config.py                 |    7 ++++++-
 src/mousetrap/core.py                   |    4 ++++
 src/mousetrap/gui.py                    |    4 ++++
 src/mousetrap/i18n.py                   |    4 ++++
 src/mousetrap/image.py                  |    4 ++++
 src/mousetrap/main.py                   |    9 +++++++--
 src/mousetrap/plugins/__init__.py       |    4 ++++
 src/mousetrap/plugins/camera.py         |    4 ++++
 src/mousetrap/plugins/display.py        |    4 ++++
 src/mousetrap/plugins/eyes.py           |    4 ++++
 src/mousetrap/plugins/interface.py      |    4 ++++
 src/mousetrap/plugins/nose.py           |   10 +++++++---
 src/mousetrap/tests/__init__.py         |    4 ++++
 src/mousetrap/tests/run_python_tests.py |    9 ++++++---
 src/mousetrap/tests/test_config.py      |    5 +++++
 src/mousetrap/tests/test_core.py        |    4 ++++
 src/mousetrap/tests/test_gui.py         |    4 ++++
 src/mousetrap/tests/test_vision.py      |    4 ++++
 src/mousetrap/vision.py                 |    8 ++++++--
 22 files changed, 105 insertions(+), 12 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index bfe9202..0f089e2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -150,4 +150,4 @@ lint:
 
 run: all
        PYTHONPATH=$(MT_BUILD_HOME) \
-       $(PYTHON) $(MT_BUILD_HOME)/mousetrap/main.py
+       $(PYTHON) -3 $(MT_BUILD_HOME)/mousetrap/main.py
diff --git a/bin/mt-add-future b/bin/mt-add-future
new file mode 100755
index 0000000..2963518
--- /dev/null
+++ b/bin/mt-add-future
@@ -0,0 +1,11 @@
+#!/bin/bash
+if [ $# -lt 1 ] || [ -z "$1" ] || [ ! -f "$1" ] ; then
+    echo "Usage:  $(basename "$0") FILE"
+    exit 1
+fi
+echo "from __future__ import unicode_literals" > temp
+echo "from __future__ import print_function" >> temp
+echo "from __future__ import absolute_import" >> temp
+echo "from __future__ import division" >> temp
+cat "$1" >> temp
+mv temp "$1"
diff --git a/src/mousetrap/__init__.py b/src/mousetrap/__init__.py
index 9744b89..fae527e 100644
--- a/src/mousetrap/__init__.py
+++ b/src/mousetrap/__init__.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 __version__ = "1.0.0a"
 
 VERSION = __version__.split(".")
diff --git a/src/mousetrap/config.py b/src/mousetrap/config.py
index 8e47b07..92e492c 100644
--- a/src/mousetrap/config.py
+++ b/src/mousetrap/config.py
@@ -1,8 +1,13 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 from yaml import safe_load
 from os.path import dirname, expanduser, isfile
 from os import getcwd
 from shutil import copy
 from copy import deepcopy
+from io import open
 
 
 class Config(dict):
@@ -16,7 +21,7 @@ class Config(dict):
         return self.load_path(dirname(__file__) + '/mousetrap.yaml')
 
     def load_path(self, path):
-        print "# Loading %s" % (path)
+        print("# Loading %s" % (path))
         with open(path) as config_file:
             config = safe_load(config_file)
             _rmerge(self, config)
diff --git a/src/mousetrap/core.py b/src/mousetrap/core.py
index 65b1721..f2426bb 100644
--- a/src/mousetrap/core.py
+++ b/src/mousetrap/core.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 import logging
 LOGGER = logging.getLogger(__name__)
 
diff --git a/src/mousetrap/gui.py b/src/mousetrap/gui.py
index 9d4246e..6a02188 100644
--- a/src/mousetrap/gui.py
+++ b/src/mousetrap/gui.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 '''
 All things GUI.
 '''
diff --git a/src/mousetrap/i18n.py b/src/mousetrap/i18n.py
index a68ba0a..5364bfe 100644
--- a/src/mousetrap/i18n.py
+++ b/src/mousetrap/i18n.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 import gettext
 import os
 
diff --git a/src/mousetrap/image.py b/src/mousetrap/image.py
index 073be7a..bc2c1e8 100644
--- a/src/mousetrap/image.py
+++ b/src/mousetrap/image.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 '''
 All things image manipulation.
 '''
diff --git a/src/mousetrap/main.py b/src/mousetrap/main.py
index b23e8bc..6de9496 100644
--- a/src/mousetrap/main.py
+++ b/src/mousetrap/main.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 '''
 Where it all begins.
 '''
@@ -7,6 +11,7 @@ import logging.config
 import sys
 import yaml
 from os.path import dirname, expanduser, exists
+from io import open
 
 from mousetrap.config import Config
 
@@ -46,10 +51,10 @@ class Main(object):
     @classmethod
     def _dump_annotated(cls):
         with open(cls.DEFAULT_CONFIG_PATH, 'r') as annotated_file:
-            print annotated_file.read()
+            print(annotated_file.read())
 
     def _dump_config(self):
-        print yaml.dump(dict(self._config), default_flow_style=False)
+        print(yaml.dump(dict(self._config), default_flow_style=False))
 
     def _configure_logging(self):
         logging.config.dictConfig(self._config['logging'])
diff --git a/src/mousetrap/plugins/__init__.py b/src/mousetrap/plugins/__init__.py
index e69de29..27f7d2d 100644
--- a/src/mousetrap/plugins/__init__.py
+++ b/src/mousetrap/plugins/__init__.py
@@ -0,0 +1,4 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
diff --git a/src/mousetrap/plugins/camera.py b/src/mousetrap/plugins/camera.py
index bd3ba99..9971f08 100644
--- a/src/mousetrap/plugins/camera.py
+++ b/src/mousetrap/plugins/camera.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 from mousetrap.i18n import _
 import mousetrap.plugins.interface as interface
 
diff --git a/src/mousetrap/plugins/display.py b/src/mousetrap/plugins/display.py
index 5da71aa..c4e598f 100644
--- a/src/mousetrap/plugins/display.py
+++ b/src/mousetrap/plugins/display.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 from mousetrap.i18n import _
 import mousetrap.plugins.interface as interface
 import logging
diff --git a/src/mousetrap/plugins/eyes.py b/src/mousetrap/plugins/eyes.py
index 25018fb..d44bf6a 100644
--- a/src/mousetrap/plugins/eyes.py
+++ b/src/mousetrap/plugins/eyes.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 from mousetrap.i18n import _
 import logging
 LOGGER = logging.getLogger(__name__)
diff --git a/src/mousetrap/plugins/interface.py b/src/mousetrap/plugins/interface.py
index f718c34..7ba0866 100644
--- a/src/mousetrap/plugins/interface.py
+++ b/src/mousetrap/plugins/interface.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 from mousetrap.i18n import _
 
 
diff --git a/src/mousetrap/plugins/nose.py b/src/mousetrap/plugins/nose.py
index 12283bc..ea344c6 100644
--- a/src/mousetrap/plugins/nose.py
+++ b/src/mousetrap/plugins/nose.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 from mousetrap.i18n import _
 import mousetrap.plugins.interface as interface
 from mousetrap.vision import FeatureDetector, FeatureNotFoundException
@@ -24,11 +28,11 @@ class NosePlugin(interface.Plugin):
     def _convert_image_to_screen_point(self, image_x, image_y):
         image_width = self._image.get_width()
         image_height = self._image.get_height()
-        percent_x = 1.0 * image_x / image_width
-        percent_y = 1.0 * image_y / image_height
+        percent_x = 1.0 * image_x // image_width
+        percent_y = 1.0 * image_y // image_height
         screen_x = percent_x * self._gui.get_screen_width()
         screen_y = percent_y * self._gui.get_screen_height()
-        half_width = self._gui.get_screen_width() / 2
+        half_width = self._gui.get_screen_width() // 2
         screen_x = (-1 * (screen_x - half_width)) + half_width
         return (screen_x, screen_y)
 
diff --git a/src/mousetrap/tests/__init__.py b/src/mousetrap/tests/__init__.py
index e69de29..27f7d2d 100644
--- a/src/mousetrap/tests/__init__.py
+++ b/src/mousetrap/tests/__init__.py
@@ -0,0 +1,4 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
diff --git a/src/mousetrap/tests/run_python_tests.py b/src/mousetrap/tests/run_python_tests.py
old mode 100755
new mode 100644
index 9e84801..cffc1f0
--- a/src/mousetrap/tests/run_python_tests.py
+++ b/src/mousetrap/tests/run_python_tests.py
@@ -1,4 +1,7 @@
-#!/usr/bin/env python
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 from unittest import TestLoader
 from unittest.runner import TextTestRunner
 from os.path import dirname, abspath
@@ -7,7 +10,7 @@ import sys
 
 from mousetrap.config import Config
 CONFIG = Config().load_default()
-print CONFIG['camera']
+print(CONFIG['camera'])
 
 
 import logging
@@ -27,7 +30,7 @@ def initialize_import_path():
     paths = [
         get_source_directory()
     ]
-    print "appending " + str(paths)
+    print("appending " + str(paths))
     append_to_path(paths)
 
 
diff --git a/src/mousetrap/tests/test_config.py b/src/mousetrap/tests/test_config.py
index a18b59e..0807a05 100644
--- a/src/mousetrap/tests/test_config.py
+++ b/src/mousetrap/tests/test_config.py
@@ -1,5 +1,10 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 import unittest
 from mousetrap.config import _rmerge, Config
+from io import open
 
 
 class test__rmerge(unittest.TestCase):
diff --git a/src/mousetrap/tests/test_core.py b/src/mousetrap/tests/test_core.py
index a4f9b37..5596f0c 100644
--- a/src/mousetrap/tests/test_core.py
+++ b/src/mousetrap/tests/test_core.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 import unittest
 from mousetrap.core import Loop, Observable
 
diff --git a/src/mousetrap/tests/test_gui.py b/src/mousetrap/tests/test_gui.py
index 0d69bc2..6c06a46 100644
--- a/src/mousetrap/tests/test_gui.py
+++ b/src/mousetrap/tests/test_gui.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 import unittest
 from mousetrap.gui import Pointer
 from mousetrap.main import Config
diff --git a/src/mousetrap/tests/test_vision.py b/src/mousetrap/tests/test_vision.py
index 82989ce..aa6cae6 100644
--- a/src/mousetrap/tests/test_vision.py
+++ b/src/mousetrap/tests/test_vision.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 import unittest
 from mousetrap.vision import Camera
 from mousetrap.main import Config
diff --git a/src/mousetrap/vision.py b/src/mousetrap/vision.py
index 92efae3..0e9129f 100644
--- a/src/mousetrap/vision.py
+++ b/src/mousetrap/vision.py
@@ -1,3 +1,7 @@
+from __future__ import unicode_literals
+from __future__ import print_function
+from __future__ import absolute_import
+from __future__ import division
 '''
 All things computer vision.
 '''
@@ -181,8 +185,8 @@ class FeatureDetector(object):
 
     def _calculate_center(self):
         self._single["center"] = {
-            "x": (self._single["x"] + self._single["width"]) / 2,
-            "y": (self._single["y"] + self._single["height"]) / 2,
+            "x": (self._single["x"] + self._single["width"]) // 2,
+            "y": (self._single["y"] + self._single["height"]) // 2,
         }
 
     def _extract_image(self):


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]