From 83ee7afe1b25fe668016edbc6bfa928ae8ca9820 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 11 Mar 2019 19:46:15 -0500 Subject: [PATCH 01/12] FEAT : Remove use of 2to3 and use six instead --- apptools/__init__.py | 1 + apptools/appscripting/action/api.py | 4 +- .../action/start_recording_action.py | 1 + .../action/stop_recording_action.py | 1 + apptools/appscripting/api.py | 12 ++-- apptools/appscripting/bind_event.py | 3 +- apptools/appscripting/i_bind_event.py | 1 + apptools/appscripting/i_script_manager.py | 3 +- apptools/appscripting/lazy_namespace.py | 7 ++- apptools/appscripting/package_globals.py | 2 +- apptools/appscripting/script_manager.py | 26 +++++---- apptools/appscripting/scriptable.py | 5 +- apptools/appscripting/scriptable_type.py | 7 ++- .../help/help_plugin/action/demo_action.py | 5 +- .../help/help_plugin/action/doc_action.py | 7 ++- .../help/help_plugin/action/example_action.py | 5 +- .../help_plugin/action/load_url_action.py | 2 +- apptools/help/help_plugin/action/util.py | 1 + apptools/help/help_plugin/api.py | 10 ++-- .../help/help_plugin/examples_preferences.py | 1 + apptools/help/help_plugin/help_code.py | 3 +- apptools/help/help_plugin/help_doc.py | 3 +- apptools/help/help_plugin/help_plugin.py | 9 +-- .../help/help_plugin/help_submenu_manager.py | 15 ++--- apptools/help/help_plugin/i_help_code.py | 1 + apptools/help/help_plugin/i_help_doc.py | 1 + .../help/help_plugin/preferences_pages.py | 1 + apptools/io/__init__.py | 2 +- apptools/io/api.py | 2 +- apptools/io/file.py | 1 + apptools/io/h5/dict_node.py | 3 +- apptools/io/h5/file.py | 8 ++- apptools/io/h5/table_node.py | 7 ++- apptools/io/h5/tests/test_dict_node.py | 7 ++- apptools/io/h5/tests/test_file.py | 11 ++-- apptools/io/h5/tests/test_table_node.py | 2 + apptools/io/h5/tests/utils.py | 1 + apptools/io/h5/utils.py | 1 + apptools/io/tests/file_test_case.py | 1 + apptools/io/tests/folder_test_case.py | 1 + apptools/logger/agent/attachments.py | 1 + apptools/logger/agent/quality_agent_mailer.py | 4 +- apptools/logger/agent/quality_agent_view.py | 1 + apptools/logger/api.py | 11 ++-- apptools/logger/custom_excepthook.py | 1 + apptools/logger/filtering_handler.py | 6 +- apptools/logger/log_point.py | 1 + apptools/logger/log_queue_handler.py | 9 +-- apptools/logger/logger.py | 3 +- apptools/logger/null_handler.py | 1 + apptools/logger/plugin/logger_plugin.py | 5 +- apptools/logger/plugin/logger_preferences.py | 1 + apptools/logger/plugin/logger_service.py | 3 +- .../plugin/view/logger_preferences_page.py | 1 + apptools/logger/plugin/view/logger_view.py | 1 + apptools/logger/util.py | 1 + apptools/lru_cache/__init__.py | 3 +- apptools/lru_cache/lru_cache.py | 9 +-- apptools/lru_cache/tests/test_lru_cache.py | 11 ++-- apptools/naming/__init__.py | 3 +- apptools/naming/adapter/__init__.py | 3 +- apptools/naming/adapter/api.py | 23 ++++---- .../naming/adapter/dict_context_adapter.py | 1 + .../adapter/dict_context_adapter_factory.py | 3 +- .../adapter/instance_context_adapter.py | 3 +- .../instance_context_adapter_factory.py | 3 +- .../naming/adapter/list_context_adapter.py | 1 + .../adapter/list_context_adapter_factory.py | 3 +- .../adapter/trait_dict_context_adapter.py | 3 +- .../trait_dict_context_adapter_factory.py | 3 +- .../adapter/trait_list_context_adapter.py | 3 +- .../trait_list_context_adapter_factory.py | 3 +- .../naming/adapter/tuple_context_adapter.py | 3 +- .../adapter/tuple_context_adapter_factory.py | 3 +- apptools/naming/address.py | 1 + apptools/naming/api.py | 55 ++++++++++--------- apptools/naming/binding.py | 1 + apptools/naming/context.py | 21 +++---- apptools/naming/context_adapter.py | 3 +- apptools/naming/context_adapter_factory.py | 3 +- apptools/naming/dir_context.py | 5 +- apptools/naming/dynamic_context.py | 7 ++- apptools/naming/initial_context.py | 3 +- apptools/naming/initial_context_factory.py | 3 +- apptools/naming/naming_event.py | 3 +- apptools/naming/naming_manager.py | 5 +- apptools/naming/object_factory.py | 1 + apptools/naming/object_serializer.py | 5 +- apptools/naming/py_context.py | 19 ++++--- apptools/naming/py_object_factory.py | 5 +- apptools/naming/pyfs_context.py | 35 ++++++------ apptools/naming/pyfs_context_factory.py | 5 +- .../naming/pyfs_initial_context_factory.py | 15 ++--- apptools/naming/pyfs_object_factory.py | 5 +- apptools/naming/pyfs_state_factory.py | 7 ++- apptools/naming/reference.py | 3 +- apptools/naming/referenceable.py | 3 +- .../naming/referenceable_state_factory.py | 5 +- apptools/naming/state_factory.py | 1 + apptools/naming/tests/context_test_case.py | 1 + .../naming/tests/dir_context_test_case.py | 1 + apptools/naming/tests/py_context_test_case.py | 1 + .../naming/tests/pyfs_context_test_case.py | 1 + apptools/naming/trait_defs/__init__.py | 3 +- apptools/naming/trait_defs/api.py | 3 +- apptools/naming/trait_defs/naming_traits.py | 8 ++- apptools/naming/ui/api.py | 15 ++--- apptools/naming/ui/context_monitor.py | 1 + apptools/naming/ui/context_node_type.py | 8 ++- apptools/naming/ui/explorer.py | 3 +- apptools/naming/ui/naming_node_manager.py | 1 + apptools/naming/ui/naming_tree.py | 3 +- apptools/naming/ui/naming_tree_model.py | 7 ++- apptools/naming/ui/object_node_type.py | 1 + apptools/permissions/action/api.py | 7 ++- apptools/permissions/action/login_action.py | 1 + apptools/permissions/action/logout_action.py | 1 + .../permissions/action/user_menu_manager.py | 5 +- apptools/permissions/adapter_base.py | 7 ++- .../permissions/adapters/pyface_action.py | 1 + apptools/permissions/adapters/qt4_widget.py | 1 + apptools/permissions/adapters/wx_window.py | 1 + apptools/permissions/api.py | 17 +++--- apptools/permissions/default/api.py | 13 +++-- .../permissions/default/i_policy_storage.py | 1 + .../permissions/default/i_user_database.py | 3 +- .../permissions/default/i_user_storage.py | 1 + apptools/permissions/default/persistent.py | 11 ++-- apptools/permissions/default/policy_data.py | 1 + .../permissions/default/policy_manager.py | 15 ++--- .../permissions/default/policy_storage.py | 13 +++-- .../permissions/default/role_assignment.py | 13 +++-- .../permissions/default/role_definition.py | 17 +++--- apptools/permissions/default/select_role.py | 1 + apptools/permissions/default/select_user.py | 1 + apptools/permissions/default/user_database.py | 21 +++---- apptools/permissions/default/user_manager.py | 3 +- apptools/permissions/default/user_storage.py | 9 +-- apptools/permissions/i_policy_manager.py | 1 + apptools/permissions/i_user.py | 1 + apptools/permissions/i_user_manager.py | 3 +- apptools/permissions/package_globals.py | 3 +- apptools/permissions/permission.py | 3 +- apptools/permissions/permissions_manager.py | 5 +- apptools/permissions/secure_proxy.py | 11 ++-- apptools/persistence/file_path.py | 1 + apptools/persistence/project_loader.py | 3 +- apptools/persistence/spickle.py | 1 + apptools/persistence/state_pickler.py | 10 +++- apptools/persistence/tests/test_file_path.py | 1 + apptools/persistence/tests/test_spickle.py | 1 + .../persistence/tests/test_state_pickler.py | 2 + .../tests/test_version_registry.py | 1 + apptools/persistence/version_registry.py | 1 + apptools/persistence/versioned_unpickler.py | 3 +- apptools/preferences/i_preferences.py | 1 + apptools/preferences/preference_binding.py | 4 +- apptools/preferences/preferences.py | 13 +++-- apptools/preferences/preferences_helper.py | 1 + apptools/preferences/scoped_preferences.py | 3 +- .../tests/preference_binding_test_case.py | 1 + .../tests/preferences_helper_test_case.py | 1 + .../tests/preferences_test_case.py | 5 +- apptools/preferences/tests/py_config_file.py | 13 +++-- .../tests/py_config_file_test_case.py | 3 +- .../tests/scoped_preferences_test_case.py | 3 +- apptools/preferences/ui/api.py | 7 ++- apptools/preferences/ui/i_preferences_page.py | 1 + .../preferences/ui/preferences_manager.py | 5 +- apptools/preferences/ui/preferences_node.py | 8 ++- apptools/preferences/ui/preferences_page.py | 3 +- apptools/preferences/ui/tree_item.py | 1 + apptools/preferences/ui/widget_editor.py | 1 + apptools/scripting/recorder.py | 22 ++++---- apptools/scripting/recorder_with_ui.py | 5 +- apptools/scripting/tests/test_recorder.py | 1 + apptools/selection/i_selection.py | 1 + apptools/selection/i_selection_provider.py | 1 + apptools/selection/list_selection.py | 2 + apptools/selection/selection_service.py | 1 + .../selection/tests/test_list_selection.py | 6 +- .../selection/tests/test_selection_service.py | 6 +- apptools/sweet_pickle/__init__.py | 13 +++-- apptools/sweet_pickle/global_registry.py | 7 ++- apptools/sweet_pickle/placeholder.py | 1 + .../tests/class_mapping_test_case.py | 1 + .../tests/global_registry_test_case.py | 1 + .../tests/state_function_classes.py | 1 + .../tests/state_function_test_case.py | 2 + .../tests/two_stage_unpickler_test_case.py | 36 ++++++------ .../sweet_pickle/tests/updater_test_case.py | 13 +++-- apptools/sweet_pickle/updater.py | 1 + apptools/sweet_pickle/versioned_unpickler.py | 7 ++- apptools/template/api.py | 18 +++--- .../impl/any_context_data_name_item.py | 8 ++- apptools/template/impl/any_data_name_item.py | 5 +- apptools/template/impl/api.py | 14 ++--- .../template/impl/context_data_name_item.py | 5 +- apptools/template/impl/i_context_adapter.py | 7 ++- .../template/impl/template_data_context.py | 5 +- .../template/impl/template_data_source.py | 1 + .../template/impl/value_data_name_item.py | 5 +- .../template/impl/value_nd_data_name_item.py | 3 +- apptools/template/imutable_template.py | 3 +- apptools/template/itemplate.py | 1 + apptools/template/itemplate_choice.py | 1 + apptools/template/itemplate_data_context.py | 1 + apptools/template/itemplate_data_name_item.py | 5 +- apptools/template/itemplate_data_source.py | 1 + apptools/template/mutable_template.py | 5 +- apptools/template/template_choice.py | 3 +- apptools/template/template_data_name.py | 10 ++-- apptools/template/template_data_names.py | 8 ++- apptools/template/template_impl.py | 3 +- apptools/template/template_traits.py | 3 +- apptools/template/test/enable_editor.py | 1 + apptools/template/test/scatter_plot.py | 3 +- apptools/template/test/scatter_plot_2.py | 5 +- apptools/template/test/scatter_plot_nm.py | 6 +- apptools/template/test/template_view.py | 9 +-- apptools/type_manager/__init__.py | 2 +- .../type_manager/abstract_adapter_factory.py | 3 +- apptools/type_manager/abstract_factory.py | 1 + apptools/type_manager/abstract_type_system.py | 1 + apptools/type_manager/adaptable.py | 3 +- apptools/type_manager/adapter.py | 1 + apptools/type_manager/adapter_factory.py | 3 +- apptools/type_manager/adapter_manager.py | 13 +++-- apptools/type_manager/api.py | 22 ++++---- apptools/type_manager/factory.py | 3 +- apptools/type_manager/hook.py | 4 +- apptools/type_manager/python_type_system.py | 3 +- .../tests/type_manager_test_case.py | 1 + apptools/type_manager/type_manager.py | 11 ++-- apptools/type_manager/util.py | 1 + apptools/type_registry/tests/dummies.py | 6 +- .../type_registry/tests/test_lazy_registry.py | 1 + .../type_registry/tests/test_type_registry.py | 1 + apptools/type_registry/type_registry.py | 8 ++- apptools/undo/i_command.py | 1 + apptools/undo/tests/test_command_stack.py | 2 + apptools/undo/tests/testing_commands.py | 1 + setup.py | 1 - 243 files changed, 755 insertions(+), 488 deletions(-) diff --git a/apptools/__init__.py b/apptools/__init__.py index 1a28f9000..bbedf784e 100644 --- a/apptools/__init__.py +++ b/apptools/__init__.py @@ -1,6 +1,7 @@ # Copyright (c) 2007-2014 by Enthought, Inc. # All rights reserved. +from __future__ import absolute_import try: from apptools._version import full_version as __version__ except ImportError: diff --git a/apptools/appscripting/action/api.py b/apptools/appscripting/action/api.py index 6011afd28..21662f389 100644 --- a/apptools/appscripting/action/api.py +++ b/apptools/appscripting/action/api.py @@ -12,5 +12,5 @@ # Description: #------------------------------------------------------------------------------ -from start_recording_action import StartRecordingAction -from stop_recording_action import StopRecordingAction +from .start_recording_action import StartRecordingAction +from .stop_recording_action import StopRecordingAction diff --git a/apptools/appscripting/action/start_recording_action.py b/apptools/appscripting/action/start_recording_action.py index e906decfa..263928bdb 100644 --- a/apptools/appscripting/action/start_recording_action.py +++ b/apptools/appscripting/action/start_recording_action.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Action from traits.api import Unicode diff --git a/apptools/appscripting/action/stop_recording_action.py b/apptools/appscripting/action/stop_recording_action.py index adf7d17b8..9a8b98309 100644 --- a/apptools/appscripting/action/stop_recording_action.py +++ b/apptools/appscripting/action/stop_recording_action.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Unicode diff --git a/apptools/appscripting/api.py b/apptools/appscripting/api.py index dca72669b..b4447a055 100644 --- a/apptools/appscripting/api.py +++ b/apptools/appscripting/api.py @@ -12,9 +12,9 @@ # Description: #------------------------------------------------------------------------------ -from scriptable_type import create_scriptable_type, make_object_scriptable -from i_bind_event import IBindEvent -from i_script_manager import IScriptManager -from package_globals import get_script_manager, set_script_manager -from script_manager import ScriptManager -from scriptable import scriptable, Scriptable +from .scriptable_type import create_scriptable_type, make_object_scriptable +from .i_bind_event import IBindEvent +from .i_script_manager import IScriptManager +from .package_globals import get_script_manager, set_script_manager +from .script_manager import ScriptManager +from .scriptable import scriptable, Scriptable diff --git a/apptools/appscripting/bind_event.py b/apptools/appscripting/bind_event.py index 5a64867cf..b4e85db97 100644 --- a/apptools/appscripting/bind_event.py +++ b/apptools/appscripting/bind_event.py @@ -14,10 +14,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, HasTraits, provides, Str # Local imports. -from i_bind_event import IBindEvent +from .i_bind_event import IBindEvent @provides(IBindEvent) diff --git a/apptools/appscripting/i_bind_event.py b/apptools/appscripting/i_bind_event.py index b45553802..86cc36f74 100644 --- a/apptools/appscripting/i_bind_event.py +++ b/apptools/appscripting/i_bind_event.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Interface, Str diff --git a/apptools/appscripting/i_script_manager.py b/apptools/appscripting/i_script_manager.py index e406cd108..b2e2fd844 100644 --- a/apptools/appscripting/i_script_manager.py +++ b/apptools/appscripting/i_script_manager.py @@ -14,10 +14,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Bool, Event, Instance, Interface, Unicode # Local imports. -from i_bind_event import IBindEvent +from .i_bind_event import IBindEvent class IScriptManager(Interface): diff --git a/apptools/appscripting/lazy_namespace.py b/apptools/appscripting/lazy_namespace.py index 59ff0b804..0735b5f78 100644 --- a/apptools/appscripting/lazy_namespace.py +++ b/apptools/appscripting/lazy_namespace.py @@ -14,12 +14,13 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Callable, HasTraits # Local imports. -from bind_event import BindEvent -from package_globals import get_script_manager -from scriptable_type import make_object_scriptable +from .bind_event import BindEvent +from .package_globals import get_script_manager +from .scriptable_type import make_object_scriptable class FactoryWrapper(HasTraits): diff --git a/apptools/appscripting/package_globals.py b/apptools/appscripting/package_globals.py index 8a25ab8f2..635a8fc5c 100644 --- a/apptools/appscripting/package_globals.py +++ b/apptools/appscripting/package_globals.py @@ -24,7 +24,7 @@ def get_script_manager(): global _script_manager if _script_manager is None: - from script_manager import ScriptManager + from .script_manager import ScriptManager _script_manager = ScriptManager() diff --git a/apptools/appscripting/script_manager.py b/apptools/appscripting/script_manager.py index 996b8de80..e573e669f 100644 --- a/apptools/appscripting/script_manager.py +++ b/apptools/appscripting/script_manager.py @@ -14,6 +14,7 @@ # Standard library imports. +from __future__ import absolute_import import datetime import types import weakref @@ -23,11 +24,12 @@ implements, Instance, Int, List, Property, Str, Unicode # Local imports. -from bind_event import BindEvent -from i_bind_event import IBindEvent -from i_script_manager import IScriptManager -from lazy_namespace import add_to_namespace, FactoryWrapper, LazyNamespace -from scriptable_type import make_object_scriptable +from .bind_event import BindEvent +from .i_bind_event import IBindEvent +from .i_script_manager import IScriptManager +from .lazy_namespace import add_to_namespace, FactoryWrapper, LazyNamespace +from .scriptable_type import make_object_scriptable +import six @provides(IScriptManager) @@ -405,11 +407,11 @@ def run(self, script): # Initialise the namespace with all explicitly bound objects. nspace = LazyNamespace() - for name, bo in self._namespace.iteritems(): + for name, bo in six.iteritems(self._namespace): if bo.explicitly_bound: add_to_namespace(bo.obj, name, nspace) - exec script in nspace + exec(script, nspace) def run_file(self, file_name): """ Run the given script file. @@ -510,7 +512,7 @@ def new_object(self, obj, scripted_type, args=None, kwargs=None, name=None, # Doing this now avoids problems with mutable arguments. so.args = [self._scriptable_object_as_string(a) for a in args] - for n, value in kwargs.iteritems(): + for n, value in six.iteritems(kwargs): so.kwargs[n] = self._scriptable_object_as_string(value) so.explicitly_bound = False @@ -540,7 +542,7 @@ def args_as_string_list(args, kwargs, so_needed=None): s = ScriptManager.arg_as_string(arg, so_needed) all_args.append(s) - for name, value in kwargs.iteritems(): + for name, value in six.iteritems(kwargs): s = ScriptManager.arg_as_string(value, so_needed) all_args.append('%s=%s' % (name, s)) @@ -589,10 +591,10 @@ def _new_method(self, func, args, kwargs): nargs = nargs[1:] nkwargs = {} - for name, value in kwargs.iteritems(): + for name, value in six.iteritems(kwargs): nkwargs[name] = self._object_as_string(value) - return _ScriptMethod(name=func.func_name, so=so, args=nargs, + return _ScriptMethod(name=func.__name__, so=so, args=nargs, kwargs=nkwargs) def _add_method(self, entry, result): @@ -691,7 +693,7 @@ def _gc_script_obj(obj_ref): """ # Avoid recursive imports. - from package_globals import get_script_manager + from .package_globals import get_script_manager sm = get_script_manager() so = sm._so_by_ref[obj_ref] diff --git a/apptools/appscripting/scriptable.py b/apptools/appscripting/scriptable.py index 841082413..f4797b9d6 100644 --- a/apptools/appscripting/scriptable.py +++ b/apptools/appscripting/scriptable.py @@ -14,11 +14,12 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Property, Undefined from traits.traits import trait_cast # Local imports. -from package_globals import get_script_manager +from .package_globals import get_script_manager # This is the guard that ensures that only outermost scriptable methods get @@ -44,7 +45,7 @@ def _scripter(*args, **kwargs): # See if there is an script manager set. sm = get_script_manager() - if func.func_name == '__init__': + if func.__name__ == '__init__': sm.new_object(args[0], type(args[0]), args[1:], kwargs) try: diff --git a/apptools/appscripting/scriptable_type.py b/apptools/appscripting/scriptable_type.py index 5cc10dea1..3cb39c46f 100644 --- a/apptools/appscripting/scriptable_type.py +++ b/apptools/appscripting/scriptable_type.py @@ -14,6 +14,7 @@ # Standard library imports. +from __future__ import absolute_import import inspect import types @@ -21,8 +22,8 @@ from traits.api import HasTraits # Local imports. -from package_globals import get_script_manager -from scriptable import scriptable, Scriptable +from .package_globals import get_script_manager +from .scriptable import scriptable, Scriptable def create_scriptable_type(scripted_type, name=None, bind_policy='auto', @@ -98,7 +99,7 @@ def __init__(self, *args, **kwargs): except KeyError: pass - names = ndict.keys() + names = list(ndict.keys()) # Create the type dictionary containing replacements for everything that # needs to be scriptable. diff --git a/apptools/help/help_plugin/action/demo_action.py b/apptools/help/help_plugin/action/demo_action.py index 837e886d8..8a6be838f 100644 --- a/apptools/help/help_plugin/action/demo_action.py +++ b/apptools/help/help_plugin/action/demo_action.py @@ -11,6 +11,7 @@ # Thanks for using Enthought open source! # Standard library imports. +from __future__ import absolute_import import logging from os.path import isabs, join, normpath from subprocess import Popen @@ -29,7 +30,7 @@ # This module's parent package. PARENT = '.'.join(__name__.split('.')[:-2]) -from util import get_sys_prefix_relative_filename +from .util import get_sys_prefix_relative_filename # Implementation of the ImageResource class to be used for the DocAction class. @provides(IExtensionPointUser) @@ -87,7 +88,7 @@ def perform(self, event): if filename is not None: try: Popen([sys.executable, filename]) - except OSError, err: + except OSError as err: logger.error( 'Could not execute Python file for Demo "%s".\n\n' \ % self.my_help_code.label + str(err) + \ diff --git a/apptools/help/help_plugin/action/doc_action.py b/apptools/help/help_plugin/action/doc_action.py index 0fb567659..20370f765 100644 --- a/apptools/help/help_plugin/action/doc_action.py +++ b/apptools/help/help_plugin/action/doc_action.py @@ -12,6 +12,7 @@ # Standard library imports. +from __future__ import absolute_import import logging from os.path import isabs, join, normpath from subprocess import Popen @@ -26,7 +27,7 @@ from apptools.help.help_plugin.api import HelpDoc # Local imports -from util import get_sys_prefix_relative_filename +from .util import get_sys_prefix_relative_filename # Logging. logger = logging.getLogger(__name__) @@ -100,7 +101,7 @@ def perform(self, event): import webbrowser try: webbrowser.open(filename) - except (OSError, webbrowser.Error), msg: + except (OSError, webbrowser.Error) as msg: logger.error('Could not open page in browser for '+ \ 'Document "%s":\n\n' % self.my_help_doc.label + \ str(msg) + '\n\nTry changing Dcoument Preferences.') @@ -108,7 +109,7 @@ def perform(self, event): # Run the viewer, passing it the filename try: Popen([self.my_help_doc.viewer, filename]) - except OSError, msg: + except OSError as msg: logger.error('Could not execute program for Document' + \ ' "%s":\n\n ' % self.my_help_doc.label + str(msg) + \ '\n\nTry changing Document Preferences.') diff --git a/apptools/help/help_plugin/action/example_action.py b/apptools/help/help_plugin/action/example_action.py index 53e971b86..a6879d0e4 100644 --- a/apptools/help/help_plugin/action/example_action.py +++ b/apptools/help/help_plugin/action/example_action.py @@ -12,6 +12,7 @@ # Standard library imports. +from __future__ import absolute_import import logging from subprocess import Popen @@ -25,7 +26,7 @@ ExamplesPreferences # Local import -from util import get_sys_prefix_relative_filename +from .util import get_sys_prefix_relative_filename # Logging. logger = logging.getLogger(__name__) @@ -71,7 +72,7 @@ def perform(self, event): # Run the editor, passing it the filename try: Popen([self.preferences.editor, filename]) - except OSError, err: + except OSError as err: logger.error( 'Could not execute program for Example "%s":\n\n ' \ % self.my_help_code.label + str(err) + '\n\nTry ' +\ diff --git a/apptools/help/help_plugin/action/load_url_action.py b/apptools/help/help_plugin/action/load_url_action.py index 478e99818..e83577c5c 100644 --- a/apptools/help/help_plugin/action/load_url_action.py +++ b/apptools/help/help_plugin/action/load_url_action.py @@ -11,7 +11,7 @@ # Thanks for using Enthought open source! # Enthought library imports. -from doc_action import DocAction +from .doc_action import DocAction # This module's parent package. PARENT = '.'.join(__name__.split('.')[:-2]) diff --git a/apptools/help/help_plugin/action/util.py b/apptools/help/help_plugin/action/util.py index e0fdf4514..dec4107ce 100644 --- a/apptools/help/help_plugin/action/util.py +++ b/apptools/help/help_plugin/action/util.py @@ -10,6 +10,7 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! +from __future__ import absolute_import from os.path import isabs, join, normpath import sys diff --git a/apptools/help/help_plugin/api.py b/apptools/help/help_plugin/api.py index f5639d589..5f64a170b 100644 --- a/apptools/help/help_plugin/api.py +++ b/apptools/help/help_plugin/api.py @@ -9,8 +9,8 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from help_code import HelpCode -from help_doc import HelpDoc -from help_plugin import HelpPlugin -from i_help_code import IHelpCode -from i_help_doc import IHelpDoc +from .help_code import HelpCode +from .help_doc import HelpDoc +from .help_plugin import HelpPlugin +from .i_help_code import IHelpCode +from .i_help_doc import IHelpDoc diff --git a/apptools/help/help_plugin/examples_preferences.py b/apptools/help/help_plugin/examples_preferences.py index c7bb62603..4fdc5a06d 100644 --- a/apptools/help/help_plugin/examples_preferences.py +++ b/apptools/help/help_plugin/examples_preferences.py @@ -11,6 +11,7 @@ # Thanks for using Enthought open source! +from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import Either, Enum, File, Str, provides diff --git a/apptools/help/help_plugin/help_code.py b/apptools/help/help_plugin/help_code.py index 19446b994..830f4a336 100644 --- a/apptools/help/help_plugin/help_code.py +++ b/apptools/help/help_plugin/help_code.py @@ -12,10 +12,11 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! +from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import File, Str, provides -from i_help_code import IHelpCode +from .i_help_code import IHelpCode @provides(IHelpCode) class HelpCode(PreferencesHelper): diff --git a/apptools/help/help_plugin/help_doc.py b/apptools/help/help_plugin/help_doc.py index 1f8a1ce54..ec87b6008 100644 --- a/apptools/help/help_plugin/help_doc.py +++ b/apptools/help/help_plugin/help_doc.py @@ -10,10 +10,11 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! +from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import Either, File, Str, provides, Bool -from i_help_doc import IHelpDoc +from .i_help_doc import IHelpDoc @provides(IHelpDoc) class HelpDoc(PreferencesHelper): diff --git a/apptools/help/help_plugin/help_plugin.py b/apptools/help/help_plugin/help_plugin.py index 2cf2bf610..f337cf305 100644 --- a/apptools/help/help_plugin/help_plugin.py +++ b/apptools/help/help_plugin/help_plugin.py @@ -13,6 +13,7 @@ # Thanks for using Enthought open source! # Standard library imports. +from __future__ import absolute_import import logging import new @@ -22,10 +23,10 @@ from traits.api import Instance, List, Str # Local imports -from help_code import HelpCode -from help_doc import HelpDoc -from i_help_code import IHelpCode -from i_help_doc import IHelpDoc +from .help_code import HelpCode +from .help_doc import HelpDoc +from .i_help_code import IHelpCode +from .i_help_doc import IHelpDoc # Logging. logger = logging.getLogger(__name__) diff --git a/apptools/help/help_plugin/help_submenu_manager.py b/apptools/help/help_plugin/help_submenu_manager.py index 6dcdbeb1a..cdc8c59eb 100644 --- a/apptools/help/help_plugin/help_submenu_manager.py +++ b/apptools/help/help_plugin/help_submenu_manager.py @@ -12,6 +12,7 @@ # Standard library imports. +from __future__ import absolute_import import logging # Enthought library imports. @@ -20,13 +21,13 @@ from traits.api import Any, provides, Instance, List, Property # Local imports. -from action.doc_action import DocAction -from action.demo_action import DemoAction -from action.example_action import ExampleAction -from action.load_url_action import LoadURLAction -from examples_preferences import ExamplesPreferences -from i_help_doc import IHelpDoc -from i_help_code import IHelpCode +from .action.doc_action import DocAction +from .action.demo_action import DemoAction +from .action.example_action import ExampleAction +from .action.load_url_action import LoadURLAction +from .examples_preferences import ExamplesPreferences +from .i_help_doc import IHelpDoc +from .i_help_code import IHelpCode # Logging. logger = logging.getLogger(__name__) diff --git a/apptools/help/help_plugin/i_help_code.py b/apptools/help/help_plugin/i_help_code.py index 015166afb..c999b1135 100644 --- a/apptools/help/help_plugin/i_help_code.py +++ b/apptools/help/help_plugin/i_help_code.py @@ -13,6 +13,7 @@ # Thanks for using Enthought open source! +from __future__ import absolute_import from traits.api import Interface, File, Str class IHelpCode(Interface): diff --git a/apptools/help/help_plugin/i_help_doc.py b/apptools/help/help_plugin/i_help_doc.py index 6a6350d46..a3cc87186 100644 --- a/apptools/help/help_plugin/i_help_doc.py +++ b/apptools/help/help_plugin/i_help_doc.py @@ -10,6 +10,7 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! +from __future__ import absolute_import from traits.api import Interface, Either, File, Str, Bool class IHelpDoc(Interface): diff --git a/apptools/help/help_plugin/preferences_pages.py b/apptools/help/help_plugin/preferences_pages.py index f00ad6a3a..b09198b86 100644 --- a/apptools/help/help_plugin/preferences_pages.py +++ b/apptools/help/help_plugin/preferences_pages.py @@ -10,6 +10,7 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! +from __future__ import absolute_import from apptools.preferences.ui.api import PreferencesPage from traits.api import Either, File, Str from traitsui.api import Group, Item, Label, View diff --git a/apptools/io/__init__.py b/apptools/io/__init__.py index 4e00eff5d..56a49c16c 100644 --- a/apptools/io/__init__.py +++ b/apptools/io/__init__.py @@ -14,4 +14,4 @@ """ Provides an abstraction for files and folders in a file system. Part of the AppTools project of the Enthought Tool Suite. """ -from api import * +from .api import * diff --git a/apptools/io/api.py b/apptools/io/api.py index 5a4e7cdb4..9f2a44be4 100644 --- a/apptools/io/api.py +++ b/apptools/io/api.py @@ -11,4 +11,4 @@ # Author: Enthought, Inc. # Description: #------------------------------------------------------------------------------ -from file import File +from .file import File diff --git a/apptools/io/file.py b/apptools/io/file.py index aa84a960f..6510fcf4d 100644 --- a/apptools/io/file.py +++ b/apptools/io/file.py @@ -15,6 +15,7 @@ # Standard/built-in imports. +from __future__ import absolute_import import mimetypes, os, shutil, stat # Enthought library imports. diff --git a/apptools/io/h5/dict_node.py b/apptools/io/h5/dict_node.py index 94cb9d612..397bc172d 100644 --- a/apptools/io/h5/dict_node.py +++ b/apptools/io/h5/dict_node.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from contextlib import closing import json @@ -69,7 +70,7 @@ def __contains__(self, key): return key in self.data def keys(self): - return self.data.keys() + return list(self.data.keys()) #-------------------------------------------------------------------------- # Public interface diff --git a/apptools/io/h5/file.py b/apptools/io/h5/file.py index fc41ede64..bedb0fd70 100644 --- a/apptools/io/h5/file.py +++ b/apptools/io/h5/file.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from collections import Mapping, MutableMapping from functools import partial @@ -6,6 +7,7 @@ from .dict_node import H5DictNode from .table_node import H5TableNode +import six def get_atom(dtype): @@ -423,15 +425,15 @@ def root(self): @property def children_names(self): - return self._h5_group._v_children.keys() + return list(self._h5_group._v_children.keys()) @property def subgroup_names(self): - return self._h5_group._v_groups.keys() + return list(self._h5_group._v_groups.keys()) def iter_groups(self): """ Iterate over `H5Group` nodes that are children of this group. """ - return (_wrap_node(g) for g in self._h5_group._v_groups.itervalues()) + return (_wrap_node(g) for g in six.itervalues(self._h5_group._v_groups)) @h5_group_wrapper(H5File.create_group) def create_group(self, group_subpath, delete_existing=False, **kwargs): diff --git a/apptools/io/h5/table_node.py b/apptools/io/h5/table_node.py index 66c0c4219..8891ade5d 100644 --- a/apptools/io/h5/table_node.py +++ b/apptools/io/h5/table_node.py @@ -1,6 +1,9 @@ +from __future__ import absolute_import import numpy as np from pandas import DataFrame from tables.table import Table as PyTablesTable +import six +from six.moves import zip class _TableRowAccessor(object): @@ -78,7 +81,7 @@ def append(self, data): data : dict A dictionary of column name -> values items """ - rows = zip(*[data[name] for name in self.keys()]) + rows = list(zip(*[data[name] for name in self.keys()])) self._h5_table.append(rows) def __getitem__(self, col_or_cols): @@ -95,7 +98,7 @@ def __getitem__(self, col_or_cols): An array of column data with the column order matching that of `col_or_cols`. """ - if isinstance(col_or_cols, basestring): + if isinstance(col_or_cols, six.string_types): return self._h5_table.col(col_or_cols) column_data = [self._h5_table.col(name) for name in col_or_cols] diff --git a/apptools/io/h5/tests/test_dict_node.py b/apptools/io/h5/tests/test_dict_node.py index 48bfa4157..f812794ab 100644 --- a/apptools/io/h5/tests/test_dict_node.py +++ b/apptools/io/h5/tests/test_dict_node.py @@ -1,8 +1,11 @@ +from __future__ import absolute_import import numpy as np from numpy.testing import raises, assert_allclose from ..dict_node import H5DictNode from .utils import open_h5file, temp_h5_file, temp_file +import six +from six.moves import zip NODE = '/dict_node' @@ -170,14 +173,14 @@ def test_basic_dtypes(): h5dict = H5DictNode.add_to_h5file(h5, NODE, data) assert isinstance(h5dict['a_int'], int) assert isinstance(h5dict['a_float'], float) - assert isinstance(h5dict['a_str'], basestring) + assert isinstance(h5dict['a_str'], six.string_types) def test_mixed_type_list(): with temp_h5_file() as h5: data = dict(a=[1, 1.0, 'abc']) h5dict = H5DictNode.add_to_h5file(h5, NODE, data) - for value, dtype in zip(h5dict['a'], (int, float, basestring)): + for value, dtype in zip(h5dict['a'], (int, float, six.string_types)): assert isinstance(value, dtype) diff --git a/apptools/io/h5/tests/test_file.py b/apptools/io/h5/tests/test_file.py index a521d6759..13b01ee3f 100644 --- a/apptools/io/h5/tests/test_file.py +++ b/apptools/io/h5/tests/test_file.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import import os from contextlib import closing @@ -9,6 +10,8 @@ from ..dict_node import H5DictNode from ..table_node import H5TableNode from .utils import open_h5file, temp_h5_file +from six.moves import map +from six.moves import zip H5_TEST_FILE = '_temp_test_filt.h5' @@ -509,15 +512,15 @@ def test_attribute_iteration_methods(): attrs['count'] = 42 attrs['alpha'] = 0xff - items = attrs.items() + items = list(attrs.items()) assert all(isinstance(x, tuple) for x in items) # unfold the pairs - keys, vals = map(list, zip(*items)) + keys, vals = list(map(list, list(zip(*items)))) - assert keys == attrs.keys() - assert vals == attrs.values() + assert keys == list(attrs.keys()) + assert vals == list(attrs.values()) # Check that __iter__ is consistent assert keys == list(iter(attrs)) diff --git a/apptools/io/h5/tests/test_table_node.py b/apptools/io/h5/tests/test_table_node.py index 844807966..65961c8fb 100644 --- a/apptools/io/h5/tests/test_table_node.py +++ b/apptools/io/h5/tests/test_table_node.py @@ -1,9 +1,11 @@ +from __future__ import absolute_import import numpy as np from numpy.testing import assert_allclose from pandas import DataFrame from ..table_node import H5TableNode from .utils import temp_h5_file +from six.moves import zip NODE = '/table_node' diff --git a/apptools/io/h5/tests/utils.py b/apptools/io/h5/tests/utils.py index 4c5aa0871..c86df85e3 100644 --- a/apptools/io/h5/tests/utils.py +++ b/apptools/io/h5/tests/utils.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from contextlib import contextmanager import tempfile import os diff --git a/apptools/io/h5/utils.py b/apptools/io/h5/utils.py index 495067289..54ae7d010 100644 --- a/apptools/io/h5/utils.py +++ b/apptools/io/h5/utils.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from contextlib import contextmanager from .file import H5File diff --git a/apptools/io/tests/file_test_case.py b/apptools/io/tests/file_test_case.py index 236d711f3..354dea5c4 100644 --- a/apptools/io/tests/file_test_case.py +++ b/apptools/io/tests/file_test_case.py @@ -15,6 +15,7 @@ # Standard library imports. +from __future__ import absolute_import import os, shutil, stat, unittest # Enthought library imports. diff --git a/apptools/io/tests/folder_test_case.py b/apptools/io/tests/folder_test_case.py index 47f1085ad..e3312ad63 100644 --- a/apptools/io/tests/folder_test_case.py +++ b/apptools/io/tests/folder_test_case.py @@ -15,6 +15,7 @@ # Standard library imports. +from __future__ import absolute_import import os, shutil, stat, unittest from os.path import join diff --git a/apptools/logger/agent/attachments.py b/apptools/logger/agent/attachments.py index fdf9839e2..85b34beae 100644 --- a/apptools/logger/agent/attachments.py +++ b/apptools/logger/agent/attachments.py @@ -6,6 +6,7 @@ rewrite. """ +from __future__ import absolute_import import logging import os.path from email import Encoders diff --git a/apptools/logger/agent/quality_agent_mailer.py b/apptools/logger/agent/quality_agent_mailer.py index 2d18213d9..2706345db 100644 --- a/apptools/logger/agent/quality_agent_mailer.py +++ b/apptools/logger/agent/quality_agent_mailer.py @@ -13,11 +13,13 @@ #------------------------------------------------------------------------------ # Standard library imports. +from __future__ import absolute_import import logging import os # Enthought library imports. from traits.util.home_directory import get_home_directory +import six # Setup a logger for this module. @@ -88,7 +90,7 @@ def create_email_message(fromaddr, toaddrs, ccaddrs, subject, priority, """ try: entries = [] - for key, value in os.environ.iteritems(): + for key, value in six.iteritems(os.environ): entries.append('%30s : %s\n' % (key, value)) ctype = 'application/octet-stream' diff --git a/apptools/logger/agent/quality_agent_view.py b/apptools/logger/agent/quality_agent_view.py index 690dffd6f..557977c97 100644 --- a/apptools/logger/agent/quality_agent_view.py +++ b/apptools/logger/agent/quality_agent_view.py @@ -13,6 +13,7 @@ #------------------------------------------------------------------------------ # Standard library imports. +from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/logger/api.py b/apptools/logger/api.py index 20c082c2c..72ded0338 100644 --- a/apptools/logger/api.py +++ b/apptools/logger/api.py @@ -1,5 +1,6 @@ -from logger import add_log_queue_handler, create_log_file_handler -from logger import FORMATTER, LEVEL, LogFileHandler -from log_point import log_point -from filtering_handler import FilteringHandler -from null_handler import NullHandler +from __future__ import absolute_import +from .logger import add_log_queue_handler, create_log_file_handler +from .logger import FORMATTER, LEVEL, LogFileHandler +from .log_point import log_point +from .filtering_handler import FilteringHandler +from .null_handler import NullHandler diff --git a/apptools/logger/custom_excepthook.py b/apptools/logger/custom_excepthook.py index 710cb7158..f2bb319cc 100644 --- a/apptools/logger/custom_excepthook.py +++ b/apptools/logger/custom_excepthook.py @@ -14,6 +14,7 @@ # Standard library imports. +from __future__ import absolute_import import logging from traceback import format_exception diff --git a/apptools/logger/filtering_handler.py b/apptools/logger/filtering_handler.py index 5785208e0..96a495803 100644 --- a/apptools/logger/filtering_handler.py +++ b/apptools/logger/filtering_handler.py @@ -15,13 +15,15 @@ # Standard library imports. +from __future__ import absolute_import +from __future__ import print_function import logging, inspect, os # Local imports. # # fixme: This module was just copied over from 'envisage.core' (so # that we don't rely on Envisage here!). Where should this module go? -from util import get_module_name +from .util import get_module_name class FilteringHandler(logging.Handler): @@ -99,7 +101,7 @@ def emit(self, record): def filtered_emit(self, record): """ Emits a log record if it has not been filtered. """ - print record.getMessage() + print(record.getMessage()) return diff --git a/apptools/logger/log_point.py b/apptools/logger/log_point.py index 0e4321ff5..e53c6d2c9 100644 --- a/apptools/logger/log_point.py +++ b/apptools/logger/log_point.py @@ -18,6 +18,7 @@ """ # Standard library imports. +from __future__ import absolute_import import inspect from cStringIO import StringIO diff --git a/apptools/logger/log_queue_handler.py b/apptools/logger/log_queue_handler.py index 31e8c1c3c..6b276e5c3 100644 --- a/apptools/logger/log_queue_handler.py +++ b/apptools/logger/log_queue_handler.py @@ -13,10 +13,11 @@ #------------------------------------------------------------------------------ # Standard library imports. +from __future__ import absolute_import from logging import Handler # Local imports. -from ring_buffer import RingBuffer +from .ring_buffer import RingBuffer class LogQueueHandler(Handler): @@ -46,7 +47,7 @@ def emit(self, record): if self._view is not None: try: self._view.update() - except Exception, e: + except Exception as e: pass self.dirty = True return @@ -57,7 +58,7 @@ def get(self): try: result = self.ring.get() - except Exception, msg: + except Exception as msg: # we did our best and it won't cause too much damage # to just return a bogus message result = [] @@ -75,7 +76,7 @@ def reset(self): if self._view is not None: try: self._view.update() - except Exception, e: + except Exception as e: pass self.dirty = True return diff --git a/apptools/logger/logger.py b/apptools/logger/logger.py index d3b64f274..09d1db4ae 100644 --- a/apptools/logger/logger.py +++ b/apptools/logger/logger.py @@ -15,6 +15,7 @@ # Standard library imports. +from __future__ import absolute_import import logging from logging.handlers import RotatingFileHandler @@ -22,7 +23,7 @@ from traits.util.api import deprecated # Local imports. -from log_queue_handler import LogQueueHandler +from .log_queue_handler import LogQueueHandler # The default logging level. diff --git a/apptools/logger/null_handler.py b/apptools/logger/null_handler.py index 410f7635f..7305c08ca 100644 --- a/apptools/logger/null_handler.py +++ b/apptools/logger/null_handler.py @@ -15,6 +15,7 @@ # Standard library imports. +from __future__ import absolute_import import logging diff --git a/apptools/logger/plugin/logger_plugin.py b/apptools/logger/plugin/logger_plugin.py index ed4abcdad..6ef4aee95 100644 --- a/apptools/logger/plugin/logger_plugin.py +++ b/apptools/logger/plugin/logger_plugin.py @@ -15,6 +15,7 @@ """ # Standard library imports. +from __future__ import absolute_import import logging # Enthought library imports. @@ -23,8 +24,8 @@ from traits.api import Callable, List # Local imports. -from logger_preferences import LoggerPreferences -from logger_service import LoggerService +from .logger_preferences import LoggerPreferences +from .logger_service import LoggerService ID = 'apptools.logger' diff --git a/apptools/logger/plugin/logger_preferences.py b/apptools/logger/plugin/logger_preferences.py index bbfc17be6..24cd8fc2d 100644 --- a/apptools/logger/plugin/logger_preferences.py +++ b/apptools/logger/plugin/logger_preferences.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import import logging from apptools.preferences.api import PreferencesHelper diff --git a/apptools/logger/plugin/logger_service.py b/apptools/logger/plugin/logger_service.py index 5c30a3a59..4cb74bf17 100644 --- a/apptools/logger/plugin/logger_service.py +++ b/apptools/logger/plugin/logger_service.py @@ -1,4 +1,5 @@ # Standard library imports +from __future__ import absolute_import from cStringIO import StringIO import logging import os @@ -132,7 +133,7 @@ def send_bug_report(self, smtp_server, fromaddr, toaddrs, ccaddrs, message): #server.set_debuglevel(1) server.sendmail(fromaddr, toaddrs + ccaddrs, message.as_string()) server.quit() - except Exception, e: + except Exception as e: logger.exception("Problem sending error report") #### Traits stuff ######################################################### diff --git a/apptools/logger/plugin/view/logger_preferences_page.py b/apptools/logger/plugin/view/logger_preferences_page.py index ab3955adf..7085f21da 100644 --- a/apptools/logger/plugin/view/logger_preferences_page.py +++ b/apptools/logger/plugin/view/logger_preferences_page.py @@ -12,6 +12,7 @@ # Description: #------------------------------------------------------------------------------ +from __future__ import absolute_import import logging from apptools.preferences.ui.api import PreferencesPage diff --git a/apptools/logger/plugin/view/logger_view.py b/apptools/logger/plugin/view/logger_view.py index beb5bfd14..caab2cb07 100644 --- a/apptools/logger/plugin/view/logger_view.py +++ b/apptools/logger/plugin/view/logger_view.py @@ -13,6 +13,7 @@ #------------------------------------------------------------------------------ # Standard library imports +from __future__ import absolute_import from datetime import datetime import logging diff --git a/apptools/logger/util.py b/apptools/logger/util.py index 9ee52a5a8..03cb36852 100644 --- a/apptools/logger/util.py +++ b/apptools/logger/util.py @@ -7,6 +7,7 @@ # Standard library imports. +from __future__ import absolute_import import os from os.path import basename, dirname, isdir, splitdrive, splitext from zipfile import is_zipfile, ZipFile diff --git a/apptools/lru_cache/__init__.py b/apptools/lru_cache/__init__.py index c0163fc68..1859c8fcc 100644 --- a/apptools/lru_cache/__init__.py +++ b/apptools/lru_cache/__init__.py @@ -1,3 +1,4 @@ # -*- coding: utf-8 -*- -from lru_cache import LRUCache +from __future__ import absolute_import +from .lru_cache import LRUCache diff --git a/apptools/lru_cache/lru_cache.py b/apptools/lru_cache/lru_cache.py index eeae7ec80..d92a08389 100644 --- a/apptools/lru_cache/lru_cache.py +++ b/apptools/lru_cache/lru_cache.py @@ -13,6 +13,7 @@ # Author: Enthought, Inc. # ----------------------------------------------------------------------------- +from __future__ import absolute_import from threading import RLock try: @@ -88,7 +89,7 @@ def __setitem__(self, key, result): if dropped and self.cache_drop_callback is not None: self.cache_drop_callback(*dropped) finally: - self.updated = self.keys() + self.updated = list(self.keys()) def get(self, key, default=None): try: @@ -98,15 +99,15 @@ def get(self, key, default=None): def items(self): with self._lock: - return self._cache.items() + return list(self._cache.items()) def keys(self): with self._lock: - return self._cache.keys() + return list(self._cache.keys()) def values(self): with self._lock: - return self._cache.values() + return list(self._cache.values()) def clear(self): with self._lock: diff --git a/apptools/lru_cache/tests/test_lru_cache.py b/apptools/lru_cache/tests/test_lru_cache.py index b1e9fe9d2..df8e76703 100644 --- a/apptools/lru_cache/tests/test_lru_cache.py +++ b/apptools/lru_cache/tests/test_lru_cache.py @@ -3,9 +3,12 @@ from __future__ import division, print_function +from __future__ import absolute_import from nose.tools import assert_equal from ..lru_cache import LRUCache +from six.moves import map +from six.moves import range def test_cache_callback(): @@ -73,7 +76,7 @@ def test_cache_resize(): def test_cache_items(): c = LRUCache(2) - assert_equal([], c.items()) + assert_equal([], list(c.items())) c[0] = str(0) c[1] = str(1) @@ -105,7 +108,7 @@ def test_cache_idempotency(): def test_cache_keys_values(): c = LRUCache(2) - assert_equal([], c.items()) + assert_equal([], list(c.items())) c[0] = str(0) c[1] = str(1) @@ -113,7 +116,7 @@ def test_cache_keys_values(): expected = [1, 2] assert_equal(expected, sorted(c.keys())) - assert_equal(map(str, expected), sorted(c.values())) + assert_equal(list(map(str, expected)), sorted(c.values())) def test_cache_clear(): @@ -141,7 +144,7 @@ def test_updated_event(): c.on_trait_change(lambda x: events.append(x), 'updated') c[0] = 0 - print(c.keys()) + print(list(c.keys())) assert_equal(sorted(events), [[0]]) c[1] = 1 diff --git a/apptools/naming/__init__.py b/apptools/naming/__init__.py index 7556f7381..3a4aead27 100644 --- a/apptools/naming/__init__.py +++ b/apptools/naming/__init__.py @@ -15,4 +15,5 @@ preferences. Part of the AppTools project of the Enthought Tool Suite. """ -from api import * +from __future__ import absolute_import +from .api import * diff --git a/apptools/naming/adapter/__init__.py b/apptools/naming/adapter/__init__.py index b69959fe0..a8c02da55 100644 --- a/apptools/naming/adapter/__init__.py +++ b/apptools/naming/adapter/__init__.py @@ -1 +1,2 @@ -from api import * +from __future__ import absolute_import +from .api import * diff --git a/apptools/naming/adapter/api.py b/apptools/naming/adapter/api.py index 4a84e56c9..b787a9649 100644 --- a/apptools/naming/adapter/api.py +++ b/apptools/naming/adapter/api.py @@ -1,12 +1,13 @@ -from dict_context_adapter import DictContextAdapter -from dict_context_adapter_factory import DictContextAdapterFactory -from instance_context_adapter import InstanceContextAdapter -from instance_context_adapter_factory import InstanceContextAdapterFactory -from list_context_adapter import ListContextAdapter -from list_context_adapter_factory import ListContextAdapterFactory -from trait_list_context_adapter import TraitListContextAdapter -from trait_list_context_adapter_factory import TraitListContextAdapterFactory -from tuple_context_adapter import TupleContextAdapter -from tuple_context_adapter_factory import TupleContextAdapterFactory +from __future__ import absolute_import +from .dict_context_adapter import DictContextAdapter +from .dict_context_adapter_factory import DictContextAdapterFactory +from .instance_context_adapter import InstanceContextAdapter +from .instance_context_adapter_factory import InstanceContextAdapterFactory +from .list_context_adapter import ListContextAdapter +from .list_context_adapter_factory import ListContextAdapterFactory +from .trait_list_context_adapter import TraitListContextAdapter +from .trait_list_context_adapter_factory import TraitListContextAdapterFactory +from .tuple_context_adapter import TupleContextAdapter +from .tuple_context_adapter_factory import TupleContextAdapterFactory -from trait_dict_context_adapter import TraitDictContextAdapter +from .trait_dict_context_adapter import TraitDictContextAdapter diff --git a/apptools/naming/adapter/dict_context_adapter.py b/apptools/naming/adapter/dict_context_adapter.py index a4de2f8f6..1b4f284d2 100644 --- a/apptools/naming/adapter/dict_context_adapter.py +++ b/apptools/naming/adapter/dict_context_adapter.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import Binding, ContextAdapter, naming_manager diff --git a/apptools/naming/adapter/dict_context_adapter_factory.py b/apptools/naming/adapter/dict_context_adapter_factory.py index 175261763..a4c4258a2 100644 --- a/apptools/naming/adapter/dict_context_adapter_factory.py +++ b/apptools/naming/adapter/dict_context_adapter_factory.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory # Local imports. -from dict_context_adapter import DictContextAdapter +from .dict_context_adapter import DictContextAdapter class DictContextAdapterFactory(ContextAdapterFactory): diff --git a/apptools/naming/adapter/instance_context_adapter.py b/apptools/naming/adapter/instance_context_adapter.py index d38b91d36..c087af4d5 100644 --- a/apptools/naming/adapter/instance_context_adapter.py +++ b/apptools/naming/adapter/instance_context_adapter.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import re # Enthought library imports. @@ -144,7 +145,7 @@ def _get_public_attribute_names(self, obj): names = obj.trait_names() elif hasattr(obj, '__dict__'): - names = self.adaptee.__dict__.keys() + names = list(self.adaptee.__dict__.keys()) else: names = [] diff --git a/apptools/naming/adapter/instance_context_adapter_factory.py b/apptools/naming/adapter/instance_context_adapter_factory.py index fec5e20a6..c73658bb7 100644 --- a/apptools/naming/adapter/instance_context_adapter_factory.py +++ b/apptools/naming/adapter/instance_context_adapter_factory.py @@ -2,12 +2,13 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory from traits.api import List, Str from apptools.type_manager import PythonObject # Local imports. -from instance_context_adapter import InstanceContextAdapter +from .instance_context_adapter import InstanceContextAdapter class InstanceContextAdapterFactory(ContextAdapterFactory): diff --git a/apptools/naming/adapter/list_context_adapter.py b/apptools/naming/adapter/list_context_adapter.py index 1226d84af..969f1ae3c 100644 --- a/apptools/naming/adapter/list_context_adapter.py +++ b/apptools/naming/adapter/list_context_adapter.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import Binding, ContextAdapter, naming_manager from traits.api import List, Property diff --git a/apptools/naming/adapter/list_context_adapter_factory.py b/apptools/naming/adapter/list_context_adapter_factory.py index e430a264e..5a161382f 100644 --- a/apptools/naming/adapter/list_context_adapter_factory.py +++ b/apptools/naming/adapter/list_context_adapter_factory.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory # Local imports. -from list_context_adapter import ListContextAdapter +from .list_context_adapter import ListContextAdapter class ListContextAdapterFactory(ContextAdapterFactory): diff --git a/apptools/naming/adapter/trait_dict_context_adapter.py b/apptools/naming/adapter/trait_dict_context_adapter.py index d0f330d51..41017e2e0 100644 --- a/apptools/naming/adapter/trait_dict_context_adapter.py +++ b/apptools/naming/adapter/trait_dict_context_adapter.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Dict, Property, Str # Local imports. -from dict_context_adapter import DictContextAdapter +from .dict_context_adapter import DictContextAdapter class TraitDictContextAdapter(DictContextAdapter): diff --git a/apptools/naming/adapter/trait_dict_context_adapter_factory.py b/apptools/naming/adapter/trait_dict_context_adapter_factory.py index 2b40dd95f..061da936b 100644 --- a/apptools/naming/adapter/trait_dict_context_adapter_factory.py +++ b/apptools/naming/adapter/trait_dict_context_adapter_factory.py @@ -2,11 +2,12 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory from traits.api import Str, TraitDict # Local imports. -from trait_dict_context_adapter import TraitDictContextAdapter +from .trait_dict_context_adapter import TraitDictContextAdapter class TraitDictContextAdapterFactory(ContextAdapterFactory): diff --git a/apptools/naming/adapter/trait_list_context_adapter.py b/apptools/naming/adapter/trait_list_context_adapter.py index c09b5c0d2..ba72a10e6 100644 --- a/apptools/naming/adapter/trait_list_context_adapter.py +++ b/apptools/naming/adapter/trait_list_context_adapter.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, List, Property, Str # Local imports. -from list_context_adapter import ListContextAdapter +from .list_context_adapter import ListContextAdapter class TraitListContextAdapter(ListContextAdapter): diff --git a/apptools/naming/adapter/trait_list_context_adapter_factory.py b/apptools/naming/adapter/trait_list_context_adapter_factory.py index 58c976589..e1fad7d5d 100644 --- a/apptools/naming/adapter/trait_list_context_adapter_factory.py +++ b/apptools/naming/adapter/trait_list_context_adapter_factory.py @@ -2,11 +2,12 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory from traits.api import Str, TraitList # Local imports. -from trait_list_context_adapter import TraitListContextAdapter +from .trait_list_context_adapter import TraitListContextAdapter class TraitListContextAdapterFactory(ContextAdapterFactory): diff --git a/apptools/naming/adapter/tuple_context_adapter.py b/apptools/naming/adapter/tuple_context_adapter.py index 6e62774bc..515e030ab 100644 --- a/apptools/naming/adapter/tuple_context_adapter.py +++ b/apptools/naming/adapter/tuple_context_adapter.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Tuple # Local imports. -from list_context_adapter import ListContextAdapter +from .list_context_adapter import ListContextAdapter class TupleContextAdapter(ListContextAdapter): diff --git a/apptools/naming/adapter/tuple_context_adapter_factory.py b/apptools/naming/adapter/tuple_context_adapter_factory.py index 628313719..458a62aab 100644 --- a/apptools/naming/adapter/tuple_context_adapter_factory.py +++ b/apptools/naming/adapter/tuple_context_adapter_factory.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory # Local imports. -from tuple_context_adapter import TupleContextAdapter +from .tuple_context_adapter import TupleContextAdapter class TupleContextAdapterFactory(ContextAdapterFactory): diff --git a/apptools/naming/address.py b/apptools/naming/address.py index 138b1f4a8..084c5a498 100644 --- a/apptools/naming/address.py +++ b/apptools/naming/address.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, HasTraits, Str diff --git a/apptools/naming/api.py b/apptools/naming/api.py index bd2aaefcd..795135d6b 100644 --- a/apptools/naming/api.py +++ b/apptools/naming/api.py @@ -11,31 +11,32 @@ # Author: Enthought, Inc. # Description: #------------------------------------------------------------------------------ -from exception import NamingError, InvalidNameError, NameAlreadyBoundError -from exception import NameNotFoundError, NotContextError -from exception import OperationNotSupportedError +from __future__ import absolute_import +from .exception import NamingError, InvalidNameError, NameAlreadyBoundError +from .exception import NameNotFoundError, NotContextError +from .exception import OperationNotSupportedError -from address import Address -from binding import Binding -from context import Context -from context_adapter import ContextAdapter -from context_adapter_factory import ContextAdapterFactory -from dynamic_context import DynamicContext -from dir_context import DirContext -from initial_context import InitialContext -from initial_context_factory import InitialContextFactory -from naming_event import NamingEvent -from naming_manager import naming_manager -from object_factory import ObjectFactory -from object_serializer import ObjectSerializer -from py_context import PyContext -from py_object_factory import PyObjectFactory -from pyfs_context import PyFSContext -from pyfs_context_factory import PyFSContextFactory -from pyfs_initial_context_factory import PyFSInitialContextFactory -from pyfs_object_factory import PyFSObjectFactory -from pyfs_state_factory import PyFSStateFactory -from reference import Reference -from referenceable import Referenceable -from referenceable_state_factory import ReferenceableStateFactory -from state_factory import StateFactory +from .address import Address +from .binding import Binding +from .context import Context +from .context_adapter import ContextAdapter +from .context_adapter_factory import ContextAdapterFactory +from .dynamic_context import DynamicContext +from .dir_context import DirContext +from .initial_context import InitialContext +from .initial_context_factory import InitialContextFactory +from .naming_event import NamingEvent +from .naming_manager import naming_manager +from .object_factory import ObjectFactory +from .object_serializer import ObjectSerializer +from .py_context import PyContext +from .py_object_factory import PyObjectFactory +from .pyfs_context import PyFSContext +from .pyfs_context_factory import PyFSContextFactory +from .pyfs_initial_context_factory import PyFSInitialContextFactory +from .pyfs_object_factory import PyFSObjectFactory +from .pyfs_state_factory import PyFSStateFactory +from .reference import Reference +from .referenceable import Referenceable +from .referenceable_state_factory import ReferenceableStateFactory +from .state_factory import StateFactory diff --git a/apptools/naming/binding.py b/apptools/naming/binding.py index ca0508197..6dfc8d97f 100644 --- a/apptools/naming/binding.py +++ b/apptools/naming/binding.py @@ -15,6 +15,7 @@ # Enthought libary imports. +from __future__ import absolute_import from traits.api import Any, HasTraits, Property, Str diff --git a/apptools/naming/context.py b/apptools/naming/context.py index 8ee7a2334..9d1da3788 100644 --- a/apptools/naming/context.py +++ b/apptools/naming/context.py @@ -15,20 +15,21 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Dict, Event, HasTraits, Instance from traits.api import Property, Str from apptools.type_manager.api import TypeManager # Local imports. -from binding import Binding -from exception import InvalidNameError, NameAlreadyBoundError -from exception import NameNotFoundError, NotContextError -from exception import OperationNotSupportedError -from naming_event import NamingEvent -from naming_manager import naming_manager -from object_factory import ObjectFactory -from state_factory import StateFactory -from unique_name import make_unique_name +from .binding import Binding +from .exception import InvalidNameError, NameAlreadyBoundError +from .exception import NameNotFoundError, NotContextError +from .exception import OperationNotSupportedError +from .naming_event import NamingEvent +from .naming_manager import naming_manager +from .object_factory import ObjectFactory +from .state_factory import StateFactory +from .unique_name import make_unique_name # Constants for environment property keys. @@ -698,7 +699,7 @@ def _list_bindings(self): def _list_names(self): """ Lists the names bound in this context. """ - return self._bindings.keys() + return list(self._bindings.keys()) def _is_context(self, name): """ Returns True if a name is bound to a context. """ diff --git a/apptools/naming/context_adapter.py b/apptools/naming/context_adapter.py index d52e5d722..45609d46a 100644 --- a/apptools/naming/context_adapter.py +++ b/apptools/naming/context_adapter.py @@ -15,10 +15,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Dict, Instance, Property, Str # Local imports. -from context import Context +from .context import Context class ContextAdapter(Context): diff --git a/apptools/naming/context_adapter_factory.py b/apptools/naming/context_adapter_factory.py index 7bcac0109..442af0e5a 100644 --- a/apptools/naming/context_adapter_factory.py +++ b/apptools/naming/context_adapter_factory.py @@ -15,10 +15,11 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.type_manager.api import AdapterFactory # Local imports. -from context import Context +from .context import Context class ContextAdapterFactory(AdapterFactory): diff --git a/apptools/naming/dir_context.py b/apptools/naming/dir_context.py index 37d006054..9d8e21fd4 100644 --- a/apptools/naming/dir_context.py +++ b/apptools/naming/dir_context.py @@ -15,11 +15,12 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Dict # Local imports. -from context import Context -from exception import NameNotFoundError, NotContextError +from .context import Context +from .exception import NameNotFoundError, NotContextError class DirContext(Context): diff --git a/apptools/naming/dynamic_context.py b/apptools/naming/dynamic_context.py index 3646b92cf..4ee306a7b 100644 --- a/apptools/naming/dynamic_context.py +++ b/apptools/naming/dynamic_context.py @@ -41,12 +41,13 @@ """ # Standardlibrary imports +from __future__ import absolute_import import logging # Local imports -from binding import Binding -from context import Context -from exception import OperationNotSupportedError +from .binding import Binding +from .context import Context +from .exception import OperationNotSupportedError # Setup a logger for this module. diff --git a/apptools/naming/initial_context.py b/apptools/naming/initial_context.py index e6e18bb7e..b4f253f43 100644 --- a/apptools/naming/initial_context.py +++ b/apptools/naming/initial_context.py @@ -15,7 +15,8 @@ # Local imports. -from context import Context +from __future__ import absolute_import +from .context import Context def InitialContext(environment): diff --git a/apptools/naming/initial_context_factory.py b/apptools/naming/initial_context_factory.py index 287cc96c4..1d2fa859e 100644 --- a/apptools/naming/initial_context_factory.py +++ b/apptools/naming/initial_context_factory.py @@ -15,10 +15,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits # Local imports. -from context import Context +from .context import Context class InitialContextFactory(HasTraits): diff --git a/apptools/naming/naming_event.py b/apptools/naming/naming_event.py index f811c0b6d..b02d9e514 100644 --- a/apptools/naming/naming_event.py +++ b/apptools/naming/naming_event.py @@ -15,10 +15,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance # Local imports. -from binding import Binding +from .binding import Binding # Classes for event traits. diff --git a/apptools/naming/naming_manager.py b/apptools/naming/naming_manager.py index 0adfb0152..92def9b49 100644 --- a/apptools/naming/naming_manager.py +++ b/apptools/naming/naming_manager.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits @@ -39,7 +40,7 @@ def get_state_to_bind(self, obj, name, context): """ # Local imports. - from context import Context + from .context import Context # We get the state factories from the context's environment. state_factories = context.environment[Context.STATE_FACTORIES] @@ -68,7 +69,7 @@ def get_object_instance(self, info, name, context): """ # Local imports. - from context import Context + from .context import Context # We get the object factories from the context's environment. object_factories = context.environment[Context.OBJECT_FACTORIES] diff --git a/apptools/naming/object_factory.py b/apptools/naming/object_factory.py index 32d6e638b..4017ed680 100644 --- a/apptools/naming/object_factory.py +++ b/apptools/naming/object_factory.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits diff --git a/apptools/naming/object_serializer.py b/apptools/naming/object_serializer.py index 70e3ed2a5..b6ca1956b 100644 --- a/apptools/naming/object_serializer.py +++ b/apptools/naming/object_serializer.py @@ -15,6 +15,7 @@ # Standard library imports. +from __future__ import absolute_import import logging from traceback import print_exc from os.path import splitext @@ -59,7 +60,7 @@ def load(self, path): obj = sweet_pickle.load(f) # obj = cPickle.load(f) # obj = pickle.load(f) - except Exception, ex: + except Exception as ex: print_exc() logger.exception( "Failed to load pickle file: %s, %s" % (path, ex)) @@ -89,7 +90,7 @@ def save(self, path, obj): sweet_pickle.dump(obj, f, 1) # cPickle.dump(obj, f, 1) # pickle.dump(obj, f, 1) - except Exception, ex: + except Exception as ex: logger.exception( "Failed to pickle into file: %s, %s, object:%s" % (path, ex, obj)) print_exc() diff --git a/apptools/naming/py_context.py b/apptools/naming/py_context.py index 03ed0d0ad..3adf34aa1 100644 --- a/apptools/naming/py_context.py +++ b/apptools/naming/py_context.py @@ -15,17 +15,18 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Dict, Instance, Property # Local imports. -from address import Address -from binding import Binding -from context import Context -from naming_manager import naming_manager -from py_object_factory import PyObjectFactory -from reference import Reference -from referenceable import Referenceable -from referenceable_state_factory import ReferenceableStateFactory +from .address import Address +from .binding import Binding +from .context import Context +from .naming_manager import naming_manager +from .py_object_factory import PyObjectFactory +from .reference import Reference +from .referenceable import Referenceable +from .referenceable_state_factory import ReferenceableStateFactory # The default environment. @@ -192,7 +193,7 @@ def _list_bindings(self): def _list_names(self): """ Lists the names bound in this context. """ - return self.namespace.keys() + return list(self.namespace.keys()) ########################################################################### # Private interface. diff --git a/apptools/naming/py_object_factory.py b/apptools/naming/py_object_factory.py index 987aa8da6..fcb17009c 100644 --- a/apptools/naming/py_object_factory.py +++ b/apptools/naming/py_object_factory.py @@ -15,8 +15,9 @@ # Local imports. -from object_factory import ObjectFactory -from reference import Reference +from __future__ import absolute_import +from .object_factory import ObjectFactory +from .reference import Reference class PyObjectFactory(ObjectFactory): diff --git a/apptools/naming/pyfs_context.py b/apptools/naming/pyfs_context.py index d34ecd92f..13b1ae8a1 100644 --- a/apptools/naming/pyfs_context.py +++ b/apptools/naming/pyfs_context.py @@ -15,7 +15,8 @@ # Standard library imports. -import cPickle, glob, logging, os +from __future__ import absolute_import +import six.moves.cPickle, glob, logging, os from os.path import join, splitext # Enthought library imports. @@ -23,19 +24,19 @@ from traits.api import Any, Dict, Instance, Property, Str # Local imports. -from address import Address -from binding import Binding -from context import Context -from dir_context import DirContext -from exception import NameNotFoundError, NotContextError -from naming_event import NamingEvent -from naming_manager import naming_manager -from object_serializer import ObjectSerializer -from pyfs_context_factory import PyFSContextFactory -from pyfs_object_factory import PyFSObjectFactory -from pyfs_state_factory import PyFSStateFactory -from reference import Reference -from referenceable import Referenceable +from .address import Address +from .binding import Binding +from .context import Context +from .dir_context import DirContext +from .exception import NameNotFoundError, NotContextError +from .naming_event import NamingEvent +from .naming_manager import naming_manager +from .object_serializer import ObjectSerializer +from .pyfs_context_factory import PyFSContextFactory +from .pyfs_object_factory import PyFSObjectFactory +from .pyfs_state_factory import PyFSStateFactory +from .reference import Reference +from .referenceable import Referenceable # Setup a logger for this module. @@ -443,7 +444,7 @@ def _destroy_subcontext(self, name): def _list_names(self): """ Lists the names bound in this context. """ - return self._name_to_filename_map.keys() + return list(self._name_to_filename_map.keys()) # fixme: YFI this is not part of the protected 'Context' interface so # what is it doing here? @@ -509,7 +510,7 @@ def _save_attributes(self): path = join(self.path, self.ATTRIBUTES_FILE) f = open(path, 'wb') - cPickle.dump(self._attributes, f, 1) + six.moves.cPickle.dump(self._attributes, f, 1) f.close() return @@ -553,7 +554,7 @@ def __attributes_default(self): attributes_file = File(join(self.path, self.ATTRIBUTES_FILE)) if attributes_file.is_file: f = open(attributes_file.path, 'rb') - attributes = cPickle.load(f) + attributes = six.moves.cPickle.load(f) f.close() else: diff --git a/apptools/naming/pyfs_context_factory.py b/apptools/naming/pyfs_context_factory.py index c4d89ebd1..c35ac2109 100644 --- a/apptools/naming/pyfs_context_factory.py +++ b/apptools/naming/pyfs_context_factory.py @@ -15,8 +15,9 @@ # Local imports. -from object_factory import ObjectFactory -from reference import Reference +from __future__ import absolute_import +from .object_factory import ObjectFactory +from .reference import Reference class PyFSContextFactory(ObjectFactory): diff --git a/apptools/naming/pyfs_initial_context_factory.py b/apptools/naming/pyfs_initial_context_factory.py index 8ea6a4c0a..127b93d0e 100644 --- a/apptools/naming/pyfs_initial_context_factory.py +++ b/apptools/naming/pyfs_initial_context_factory.py @@ -15,13 +15,14 @@ # Local imports. -from context import Context -from initial_context_factory import InitialContextFactory -from object_serializer import ObjectSerializer -from pyfs_context import PyFSContext -from pyfs_context_factory import PyFSContextFactory -from pyfs_object_factory import PyFSObjectFactory -from pyfs_state_factory import PyFSStateFactory +from __future__ import absolute_import +from .context import Context +from .initial_context_factory import InitialContextFactory +from .object_serializer import ObjectSerializer +from .pyfs_context import PyFSContext +from .pyfs_context_factory import PyFSContextFactory +from .pyfs_object_factory import PyFSObjectFactory +from .pyfs_state_factory import PyFSStateFactory class PyFSInitialContextFactory(InitialContextFactory): diff --git a/apptools/naming/pyfs_object_factory.py b/apptools/naming/pyfs_object_factory.py index 43604bf8a..7b6493d77 100644 --- a/apptools/naming/pyfs_object_factory.py +++ b/apptools/naming/pyfs_object_factory.py @@ -15,11 +15,12 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.io.api import File # Local imports. -from object_factory import ObjectFactory -from reference import Reference +from .object_factory import ObjectFactory +from .reference import Reference class PyFSObjectFactory(ObjectFactory): diff --git a/apptools/naming/pyfs_state_factory.py b/apptools/naming/pyfs_state_factory.py index f30ffbfc2..1c7dd0bcc 100644 --- a/apptools/naming/pyfs_state_factory.py +++ b/apptools/naming/pyfs_state_factory.py @@ -15,12 +15,13 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.io.api import File # Local imports. -from address import Address -from reference import Reference -from state_factory import StateFactory +from .address import Address +from .reference import Reference +from .state_factory import StateFactory class PyFSStateFactory(StateFactory): diff --git a/apptools/naming/reference.py b/apptools/naming/reference.py index 933cea8f1..cb3ce3d64 100644 --- a/apptools/naming/reference.py +++ b/apptools/naming/reference.py @@ -15,10 +15,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, HasPrivateTraits, List, Str # Local imports. -from address import Address +from .address import Address class Reference(HasPrivateTraits): diff --git a/apptools/naming/referenceable.py b/apptools/naming/referenceable.py index 38a5498d9..c1d6e0813 100644 --- a/apptools/naming/referenceable.py +++ b/apptools/naming/referenceable.py @@ -15,10 +15,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasPrivateTraits, Instance # Local imports. -from reference import Reference +from .reference import Reference class Referenceable(HasPrivateTraits): diff --git a/apptools/naming/referenceable_state_factory.py b/apptools/naming/referenceable_state_factory.py index 10cb1a45d..6faf6b2fa 100644 --- a/apptools/naming/referenceable_state_factory.py +++ b/apptools/naming/referenceable_state_factory.py @@ -15,8 +15,9 @@ # Local imports. -from referenceable import Referenceable -from state_factory import StateFactory +from __future__ import absolute_import +from .referenceable import Referenceable +from .state_factory import StateFactory class ReferenceableStateFactory(StateFactory): diff --git a/apptools/naming/state_factory.py b/apptools/naming/state_factory.py index 16d224a17..12a9dfe4c 100644 --- a/apptools/naming/state_factory.py +++ b/apptools/naming/state_factory.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasPrivateTraits diff --git a/apptools/naming/tests/context_test_case.py b/apptools/naming/tests/context_test_case.py index 9c290ebdd..af32481f8 100644 --- a/apptools/naming/tests/context_test_case.py +++ b/apptools/naming/tests/context_test_case.py @@ -15,6 +15,7 @@ # Standard library imports. +from __future__ import absolute_import import unittest # Enthought library imports. diff --git a/apptools/naming/tests/dir_context_test_case.py b/apptools/naming/tests/dir_context_test_case.py index f36358723..6d93a4a57 100644 --- a/apptools/naming/tests/dir_context_test_case.py +++ b/apptools/naming/tests/dir_context_test_case.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import * # Local imports. diff --git a/apptools/naming/tests/py_context_test_case.py b/apptools/naming/tests/py_context_test_case.py index d850a30d0..749308064 100644 --- a/apptools/naming/tests/py_context_test_case.py +++ b/apptools/naming/tests/py_context_test_case.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import PyContext # Local imports. diff --git a/apptools/naming/tests/pyfs_context_test_case.py b/apptools/naming/tests/pyfs_context_test_case.py index 9393afd5e..784f9ff18 100644 --- a/apptools/naming/tests/pyfs_context_test_case.py +++ b/apptools/naming/tests/pyfs_context_test_case.py @@ -15,6 +15,7 @@ # Standard library imports. +from __future__ import absolute_import import os, shutil, unittest # Enthought library imports. diff --git a/apptools/naming/trait_defs/__init__.py b/apptools/naming/trait_defs/__init__.py index a471ec35f..206213c42 100644 --- a/apptools/naming/trait_defs/__init__.py +++ b/apptools/naming/trait_defs/__init__.py @@ -14,4 +14,5 @@ # Imports: #------------------------------------------------------------------------------ -from api import * +from __future__ import absolute_import +from .api import * diff --git a/apptools/naming/trait_defs/api.py b/apptools/naming/trait_defs/api.py index b57f8bb9f..a0825c4f7 100644 --- a/apptools/naming/trait_defs/api.py +++ b/apptools/naming/trait_defs/api.py @@ -10,4 +10,5 @@ # #------------------------------------------------------------------------------ -from naming_traits import NamingInstance +from __future__ import absolute_import +from .naming_traits import NamingInstance diff --git a/apptools/naming/trait_defs/naming_traits.py b/apptools/naming/trait_defs/naming_traits.py index 48bd01f0f..891118734 100644 --- a/apptools/naming/trait_defs/naming_traits.py +++ b/apptools/naming/trait_defs/naming_traits.py @@ -14,6 +14,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import import sys from traits.api \ @@ -27,6 +28,7 @@ from apptools.naming.api \ import Binding +import six #------------------------------------------------------------------------------- @@ -57,11 +59,11 @@ def __init__ ( self, aClass, or_none, module ): self.module = module self.aClass = aClass if (aClass is not None) \ - and (not isinstance( aClass, ( basestring, type ) )): + and (not isinstance( aClass, ( six.string_types, type ) )): self.aClass = aClass.__class__ def validate ( self, object, name, value ): - if isinstance( value, basestring ): + if isinstance( value, six.string_types ): if value == '': if self.or_none: return '' @@ -72,7 +74,7 @@ def validate ( self, object, name, value ): except: self.validate_failed( object, name, value ) - if isinstance(self.aClass, basestring): + if isinstance(self.aClass, six.string_types): self.resolve_class( object, name, value ) if (isinstance( value, Binding ) and diff --git a/apptools/naming/ui/api.py b/apptools/naming/ui/api.py index e66c1bbd8..733e14316 100644 --- a/apptools/naming/ui/api.py +++ b/apptools/naming/ui/api.py @@ -11,10 +11,11 @@ # Author: Enthought, Inc. # Description: #------------------------------------------------------------------------------ -from context_monitor import ContextMonitor -from context_node_type import ContextNodeType -from explorer import Explorer, explore -from naming_node_manager import NamingNodeManager -from naming_tree import NamingTree -from naming_tree_model import NamingTreeModel -from object_node_type import ObjectNodeType +from __future__ import absolute_import +from .context_monitor import ContextMonitor +from .context_node_type import ContextNodeType +from .explorer import Explorer, explore +from .naming_node_manager import NamingNodeManager +from .naming_tree import NamingTree +from .naming_tree_model import NamingTreeModel +from .object_node_type import ObjectNodeType diff --git a/apptools/naming/ui/context_monitor.py b/apptools/naming/ui/context_monitor.py index fa383607c..f9fb1645c 100644 --- a/apptools/naming/ui/context_monitor.py +++ b/apptools/naming/ui/context_monitor.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.tree.api import NodeMonitor diff --git a/apptools/naming/ui/context_node_type.py b/apptools/naming/ui/context_node_type.py index c3d95394d..9fd3e5e21 100644 --- a/apptools/naming/ui/context_node_type.py +++ b/apptools/naming/ui/context_node_type.py @@ -15,11 +15,13 @@ # Enthought library imports. +from __future__ import absolute_import +from __future__ import print_function from apptools.naming.api import Context from pyface.tree.api import NodeType # Local imports. -from context_monitor import ContextMonitor +from .context_monitor import ContextMonitor class ContextNodeType(NodeType): @@ -78,8 +80,8 @@ def can_set_text(self, node, text): def set_text(self, node, text): """ Sets the label text for a node. """ - print 'Setting text on', node.name, node.obj - print 'Context details', node.obj.name, node.obj.path + print('Setting text on', node.name, node.obj) + print('Context details', node.obj.name, node.obj.path) # Do the rename in the naming system. node.context.rename(node.name, text) diff --git a/apptools/naming/ui/explorer.py b/apptools/naming/ui/explorer.py index cf51aecd6..566426185 100644 --- a/apptools/naming/ui/explorer.py +++ b/apptools/naming/ui/explorer.py @@ -15,12 +15,13 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import Binding, PyContext from pyface.api import PythonShell, SplitApplicationWindow from traits.api import Float, Instance, Str # Local imports. -from naming_tree import NamingTree +from .naming_tree import NamingTree # Factory function for exploring a Python namespace. diff --git a/apptools/naming/ui/naming_node_manager.py b/apptools/naming/ui/naming_node_manager.py index 98146d051..09c8b6cbe 100644 --- a/apptools/naming/ui/naming_node_manager.py +++ b/apptools/naming/ui/naming_node_manager.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.tree.api import NodeManager diff --git a/apptools/naming/ui/naming_tree.py b/apptools/naming/ui/naming_tree.py index 582e4ed9e..9970295f2 100644 --- a/apptools/naming/ui/naming_tree.py +++ b/apptools/naming/ui/naming_tree.py @@ -15,12 +15,13 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import OperationNotSupportedError from pyface.tree.api import NodeTree from traits.api import Instance # Local imports. -from naming_tree_model import NamingTreeModel +from .naming_tree_model import NamingTreeModel class NamingTree(NodeTree): diff --git a/apptools/naming/ui/naming_tree_model.py b/apptools/naming/ui/naming_tree_model.py index 6a92ff198..4a04f74ac 100644 --- a/apptools/naming/ui/naming_tree_model.py +++ b/apptools/naming/ui/naming_tree_model.py @@ -15,14 +15,15 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import Binding from pyface.tree.api import NodeTreeModel from traits.api import Instance # Local imports. -from context_node_type import ContextNodeType -from naming_node_manager import NamingNodeManager -from object_node_type import ObjectNodeType +from .context_node_type import ContextNodeType +from .naming_node_manager import NamingNodeManager +from .object_node_type import ObjectNodeType class NamingTreeModel(NodeTreeModel): diff --git a/apptools/naming/ui/object_node_type.py b/apptools/naming/ui/object_node_type.py index d56e078a9..563ee69dc 100644 --- a/apptools/naming/ui/object_node_type.py +++ b/apptools/naming/ui/object_node_type.py @@ -15,6 +15,7 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.naming.api import Context from pyface.tree.api import NodeType diff --git a/apptools/permissions/action/api.py b/apptools/permissions/action/api.py index 5970725b7..9aa13c0f4 100644 --- a/apptools/permissions/action/api.py +++ b/apptools/permissions/action/api.py @@ -12,6 +12,7 @@ # Description: #------------------------------------------------------------------------------ -from login_action import LoginAction -from logout_action import LogoutAction -from user_menu_manager import UserMenuManager +from __future__ import absolute_import +from .login_action import LoginAction +from .logout_action import LogoutAction +from .user_menu_manager import UserMenuManager diff --git a/apptools/permissions/action/login_action.py b/apptools/permissions/action/login_action.py index caddc68af..200132604 100644 --- a/apptools/permissions/action/login_action.py +++ b/apptools/permissions/action/login_action.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Action from traits.api import Unicode diff --git a/apptools/permissions/action/logout_action.py b/apptools/permissions/action/logout_action.py index 0ff98cd79..7278ae94e 100644 --- a/apptools/permissions/action/logout_action.py +++ b/apptools/permissions/action/logout_action.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Unicode diff --git a/apptools/permissions/action/user_menu_manager.py b/apptools/permissions/action/user_menu_manager.py index b51ed1540..b5853c53b 100644 --- a/apptools/permissions/action/user_menu_manager.py +++ b/apptools/permissions/action/user_menu_manager.py @@ -14,13 +14,14 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Group, MenuManager from traits.api import Unicode # Local imports. from apptools.permissions.package_globals import get_permissions_manager -from login_action import LoginAction -from logout_action import LogoutAction +from .login_action import LoginAction +from .logout_action import LogoutAction class UserMenuManager(MenuManager): diff --git a/apptools/permissions/adapter_base.py b/apptools/permissions/adapter_base.py index 3a29ea1af..53d8fbb23 100644 --- a/apptools/permissions/adapter_base.py +++ b/apptools/permissions/adapter_base.py @@ -14,11 +14,12 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Bool, HasTraits, Instance, List # Local imports. -from package_globals import get_permissions_manager -from permission import Permission +from .package_globals import get_permissions_manager +from .permission import Permission class AdapterBase(HasTraits): @@ -63,7 +64,7 @@ def factory(cls, proxied, permissions, show): if isinstance(proxied, object_type): break else: - raise TypeError, "no SecureProxy adapter registered for %s" % proxied + raise TypeError("no SecureProxy adapter registered for %s" % proxied) adapter = adapter_type(proxied=proxied, permissions=permissions, show=show) diff --git a/apptools/permissions/adapters/pyface_action.py b/apptools/permissions/adapters/pyface_action.py index 33ed2aac0..e1f7333d8 100644 --- a/apptools/permissions/adapters/pyface_action.py +++ b/apptools/permissions/adapters/pyface_action.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.permissions.adapter_base import AdapterBase from pyface.action.api import Action diff --git a/apptools/permissions/adapters/qt4_widget.py b/apptools/permissions/adapters/qt4_widget.py index f95214eb7..a70f0b0af 100644 --- a/apptools/permissions/adapters/qt4_widget.py +++ b/apptools/permissions/adapters/qt4_widget.py @@ -14,6 +14,7 @@ # Major library imports. +from __future__ import absolute_import from pyface.qt import QtGui # Enthought library imports. diff --git a/apptools/permissions/adapters/wx_window.py b/apptools/permissions/adapters/wx_window.py index eda732290..472a1ca9c 100644 --- a/apptools/permissions/adapters/wx_window.py +++ b/apptools/permissions/adapters/wx_window.py @@ -14,6 +14,7 @@ # Major library imports. +from __future__ import absolute_import import wx # Enthought library imports. diff --git a/apptools/permissions/api.py b/apptools/permissions/api.py index 1a9ad9569..ba5bf1fc1 100644 --- a/apptools/permissions/api.py +++ b/apptools/permissions/api.py @@ -12,11 +12,12 @@ # Description: #------------------------------------------------------------------------------ -from adapter_base import AdapterBase -from i_policy_manager import IPolicyManager -from i_user import IUser -from i_user_manager import IUserManager -from package_globals import get_permissions_manager, set_permissions_manager -from permission import ManagePolicyPermission, ManageUsersPermission, Permission -from permissions_manager import PermissionsManager -from secure_proxy import SecureHandler, SecureProxy +from __future__ import absolute_import +from .adapter_base import AdapterBase +from .i_policy_manager import IPolicyManager +from .i_user import IUser +from .i_user_manager import IUserManager +from .package_globals import get_permissions_manager, set_permissions_manager +from .permission import ManagePolicyPermission, ManageUsersPermission, Permission +from .permissions_manager import PermissionsManager +from .secure_proxy import SecureHandler, SecureProxy diff --git a/apptools/permissions/default/api.py b/apptools/permissions/default/api.py index 3a4552bb9..fa89a6050 100644 --- a/apptools/permissions/default/api.py +++ b/apptools/permissions/default/api.py @@ -12,9 +12,10 @@ # Description: #------------------------------------------------------------------------------ -from i_policy_storage import IPolicyStorage, PolicyStorageError -from i_user_database import IUserDatabase -from i_user_storage import IUserStorage, UserStorageError -from policy_manager import PolicyManager -from user_database import UserDatabase -from user_manager import UserManager +from __future__ import absolute_import +from .i_policy_storage import IPolicyStorage, PolicyStorageError +from .i_user_database import IUserDatabase +from .i_user_storage import IUserStorage, UserStorageError +from .policy_manager import PolicyManager +from .user_database import UserDatabase +from .user_manager import UserManager diff --git a/apptools/permissions/default/i_policy_storage.py b/apptools/permissions/default/i_policy_storage.py index 2c73fc5bd..db253e47c 100644 --- a/apptools/permissions/default/i_policy_storage.py +++ b/apptools/permissions/default/i_policy_storage.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Interface diff --git a/apptools/permissions/default/i_user_database.py b/apptools/permissions/default/i_user_database.py index 42bc5dc50..9c28112df 100644 --- a/apptools/permissions/default/i_user_database.py +++ b/apptools/permissions/default/i_user_database.py @@ -14,10 +14,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Bool, Instance, Interface # Local imports. -from i_user_storage import IUserStorage +from .i_user_storage import IUserStorage class IUserDatabase(Interface): diff --git a/apptools/permissions/default/i_user_storage.py b/apptools/permissions/default/i_user_storage.py index fe478f6dc..648c6b8a3 100644 --- a/apptools/permissions/default/i_user_storage.py +++ b/apptools/permissions/default/i_user_storage.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Interface, List, Str diff --git a/apptools/permissions/default/persistent.py b/apptools/permissions/default/persistent.py index 7a388cd7f..2d5e8904a 100644 --- a/apptools/permissions/default/persistent.py +++ b/apptools/permissions/default/persistent.py @@ -14,7 +14,8 @@ # Standard library imports. -import cPickle as pickle +from __future__ import absolute_import +import six.moves.cPickle as pickle import errno import os @@ -54,7 +55,7 @@ def lock(self): try: os.mkdir(self._lock) - except OSError, e: + except OSError as e: if e.errno == errno.EEXIST: msg = "The lock on %s is held by another application or user." % self._desc else: @@ -67,7 +68,7 @@ def unlock(self): try: os.rmdir(self._lock) - except OSError, e: + except OSError as e: raise PersistentError("Unable to release lock on %s: %s." % (self._desc, e)) def read(self): @@ -83,7 +84,7 @@ def read(self): raise PersistentError("Unable to read %s." % self._desc) finally: f.close() - except IOError, e: + except IOError as e: if e.errno == errno.ENOENT: data = self._factory() else: @@ -104,7 +105,7 @@ def write(self, data): raise PersistentError("Unable to write %s." % self._desc) finally: f.close() - except IOError, e: + except IOError as e: raise PersistentError("Unable to create %s: %s." % (self._desc, e)) diff --git a/apptools/permissions/default/policy_data.py b/apptools/permissions/default/policy_data.py index 83d493442..ea71fce76 100644 --- a/apptools/permissions/default/policy_data.py +++ b/apptools/permissions/default/policy_data.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Unicode # Local imports. diff --git a/apptools/permissions/default/policy_manager.py b/apptools/permissions/default/policy_manager.py index b49782608..a33e70a4b 100644 --- a/apptools/permissions/default/policy_manager.py +++ b/apptools/permissions/default/policy_manager.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.api import error from pyface.action.api import Action from traits.api import Dict, HasTraits, provides, Instance, List @@ -22,9 +23,9 @@ from apptools.permissions.i_policy_manager import IPolicyManager from apptools.permissions.permission import ManagePolicyPermission, Permission from apptools.permissions.secure_proxy import SecureProxy -from i_policy_storage import IPolicyStorage, PolicyStorageError -from role_assignment import role_assignment -from role_definition import role_definition +from .i_policy_storage import IPolicyStorage, PolicyStorageError +from .role_assignment import role_assignment +from .role_definition import role_definition @provides(IPolicyManager) @@ -77,7 +78,7 @@ def load_policy(self, user): # Get the user's policy. try: user_name, perm_ids = self.policy_storage.get_policy(user.name) - except PolicyStorageError, e: + except PolicyStorageError as e: error(None, str(e)) return @@ -93,12 +94,12 @@ def load_policy(self, user): def register_permission(self, permission): """Register the given permission.""" - if self.permissions.has_key(permission.id): + if permission.id in self.permissions: other = self.permissions[permission.id] if other.application_defined: if permission.application_defined: - raise KeyError, 'permission "%s" has already been defined' % permission.id + raise KeyError('permission "%s" has already been defined' % permission.id) # Use the description from the policy manager, if there is # one, in preference to the application supplied one. @@ -113,7 +114,7 @@ def register_permission(self, permission): else: # This should never happen if the policy manager is working # properly. - raise KeyError, 'permission "%s" has already been defined by the same policy manager' % permission.id + raise KeyError('permission "%s" has already been defined by the same policy manager' % permission.id) else: self.permissions[permission.id] = permission diff --git a/apptools/permissions/default/policy_storage.py b/apptools/permissions/default/policy_storage.py index 4cc732841..de2d38adb 100644 --- a/apptools/permissions/default/policy_storage.py +++ b/apptools/permissions/default/policy_storage.py @@ -14,11 +14,12 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance, provides # Local imports. -from i_policy_storage import IPolicyStorage, PolicyStorageError -from persistent import Persistent, PersistentError +from .i_policy_storage import IPolicyStorage, PolicyStorageError +from .persistent import Persistent, PersistentError @provides(IPolicyStorage) @@ -49,7 +50,7 @@ def add_role(self, name, description, perm_ids): try: roles, assigns = self._db.read() - if roles.has_key(name): + if name in roles: raise PolicyStorageError("The role \"%s\" already exists." % name) roles[name] = (description, perm_ids) @@ -72,7 +73,7 @@ def delete_role(self, name): try: roles, assigns = self._db.read() - if not roles.has_key(name): + if name not in roles: raise PolicyStorageError("The role \"%s\" does not exist." % name) del roles[name] @@ -149,7 +150,7 @@ def modify_role(self, name, description, perm_ids): try: roles, assigns = self._db.read() - if not roles.has_key(name): + if name not in roles: raise PolicyStorageError("The role \"%s\" does not exist." % name) roles[name] = (description, perm_ids) @@ -203,7 +204,7 @@ def _readonly_copy(self): data = self._db.read() finally: self._db.unlock() - except PersistentError, e: + except PersistentError as e: raise PolicyStorageError(str(e)) return data diff --git a/apptools/permissions/default/role_assignment.py b/apptools/permissions/default/role_assignment.py index f049af70e..d8bb54ddb 100644 --- a/apptools/permissions/default/role_assignment.py +++ b/apptools/permissions/default/role_assignment.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.api import error from traits.api import Dict, Instance from traitsui.api import Group, Handler, Item, SetEditor, View @@ -21,8 +22,8 @@ # Local imports. from apptools.permissions.package_globals import get_permissions_manager -from i_policy_storage import PolicyStorageError -from policy_data import Assignment, Role +from .i_policy_storage import PolicyStorageError +from .policy_data import Assignment, Role class _AssignmentView(View): @@ -43,7 +44,7 @@ def __init__(self, all_roles, **traits): buttons = [Action(name="Search"), Action(name="Save"), CancelButton] - roles_editor = SetEditor(values=all_roles.values(), + roles_editor = SetEditor(values=list(all_roles.values()), left_column_title="Available Roles", right_column_title="Assigned Roles") @@ -78,7 +79,7 @@ def _search_clicked(self, info): try: user_name, role_names = pm.policy_manager.policy_storage.get_assignment(user.name) - except PolicyStorageError, e: + except PolicyStorageError as e: self._ps_error(e) return @@ -99,7 +100,7 @@ def _save_clicked(self, info): get_permissions_manager().policy_manager.policy_storage.set_assignment(assignment.user_name, [r.name for r in assignment.roles]) info.ui.dispose() - except PolicyStorageError, e: + except PolicyStorageError as e: self._ps_error(e) ########################################################################### @@ -164,7 +165,7 @@ def role_assignment(): try: roles = get_permissions_manager().policy_manager.policy_storage.all_roles() - except PolicyStorageError, e: + except PolicyStorageError as e: error(None, str(e)) return diff --git a/apptools/permissions/default/role_definition.py b/apptools/permissions/default/role_definition.py index ae9b5744c..046c0ceb9 100644 --- a/apptools/permissions/default/role_definition.py +++ b/apptools/permissions/default/role_definition.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.api import confirm, error, YES from traits.api import Instance from traitsui.api import Group, Handler, Item, SetEditor, View @@ -22,9 +23,9 @@ # Local imports. from apptools.permissions.package_globals import get_permissions_manager from apptools.permissions.permission import Permission -from i_policy_storage import PolicyStorageError -from policy_data import Role -from select_role import select_role +from .i_policy_storage import PolicyStorageError +from .policy_data import Role +from .select_role import select_role class _RoleView(View): @@ -46,7 +47,7 @@ def __init__(self, **traits): buttons = [Action(name="Search"), Action(name="Add"), Action(name="Modify"), Action(name="Delete"), CancelButton] - all_perms = get_permissions_manager().policy_manager.permissions.values() + all_perms = list(get_permissions_manager().policy_manager.permissions.values()) perms_editor = SetEditor(values=all_perms, left_column_title="Available Permissions", @@ -75,7 +76,7 @@ def _search_clicked(self, info): # Get all roles that satisfy the criteria. try: roles = get_permissions_manager().policy_manager.policy_storage.matching_roles(role.name) - except PolicyStorageError, e: + except PolicyStorageError as e: self._ps_error(e) return @@ -104,7 +105,7 @@ def _add_clicked(self, info): role.name, role.description, [p.id for p in role.permissions]) info.ui.dispose() - except PolicyStorageError, e: + except PolicyStorageError as e: self._ps_error(e) def _modify_clicked(self, info): @@ -120,7 +121,7 @@ def _modify_clicked(self, info): role.name, role.description, [p.id for p in role.permissions]) info.ui.dispose() - except PolicyStorageError, e: + except PolicyStorageError as e: self._ps_error(e) def _delete_clicked(self, info): @@ -136,7 +137,7 @@ def _delete_clicked(self, info): get_permissions_manager().policy_manager.policy_storage.delete_role(role.name) info.ui.dispose() - except PolicyStorageError, e: + except PolicyStorageError as e: self._ps_error(e) ########################################################################### diff --git a/apptools/permissions/default/select_role.py b/apptools/permissions/default/select_role.py index c81eb18b1..3412f84d6 100644 --- a/apptools/permissions/default/select_role.py +++ b/apptools/permissions/default/select_role.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Unicode from traitsui.api import Item, TableEditor, View from traitsui.menu import OKCancelButtons diff --git a/apptools/permissions/default/select_user.py b/apptools/permissions/default/select_user.py index f41f0e123..41c52a279 100644 --- a/apptools/permissions/default/select_user.py +++ b/apptools/permissions/default/select_user.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Unicode from traitsui.api import Item, TableEditor, View from traitsui.menu import OKCancelButtons diff --git a/apptools/permissions/default/user_database.py b/apptools/permissions/default/user_database.py index e590d0821..5addee4e8 100644 --- a/apptools/permissions/default/user_database.py +++ b/apptools/permissions/default/user_database.py @@ -14,6 +14,7 @@ # Standard library imports. +from __future__ import absolute_import import os # Enthought library imports. @@ -25,9 +26,9 @@ # Local imports. from apptools.permissions.i_user import IUser -from i_user_database import IUserDatabase -from i_user_storage import IUserStorage, UserStorageError -from select_user import select_user +from .i_user_database import IUserDatabase +from .i_user_storage import IUserStorage, UserStorageError +from .select_user import select_user @provides(IUser) @@ -312,7 +313,7 @@ def authenticate_user(self, user): try: name, description, blob = self.user_storage.authenticate_user( lu.name.strip(), lu.password) - except UserStorageError, e: + except UserStorageError as e: self._us_error(e) return False @@ -349,7 +350,7 @@ def change_password(self, user): # Update the password in the database. try: self.user_storage.update_password(name, np.new_password) - except UserStorageError, e: + except UserStorageError as e: self._us_error(e) def add_user(self): @@ -365,7 +366,7 @@ def add_user(self): try: self.user_storage.add_user(vuac.name.strip(), vuac.description, vuac.password) - except UserStorageError, e: + except UserStorageError as e: self._us_error(e) def modify_user(self): @@ -381,7 +382,7 @@ def modify_user(self): try: self.user_storage.modify_user(vuac.name.strip(), vuac.description, vuac.password) - except UserStorageError, e: + except UserStorageError as e: self._us_error(e) def delete_user(self): @@ -400,7 +401,7 @@ def delete_user(self): # Delete the data from the database. try: self.user_storage.delete_user(name) - except UserStorageError, e: + except UserStorageError as e: self._us_error(e) def matching_user(self, name): @@ -463,7 +464,7 @@ def _blob_changed(self, user, tname, old, new): if not self._updating_blob_internally: try: self.user_storage.update_blob(user.name, user.blob) - except UserStorageError, e: + except UserStorageError as e: self._us_error(e) ########################################################################### @@ -477,7 +478,7 @@ def _select_user(self, name): # Get all users that satisfy the criteria. try: users = self.user_storage.matching_users(name) - except UserStorageError, e: + except UserStorageError as e: self._us_error(e) return '', '' diff --git a/apptools/permissions/default/user_manager.py b/apptools/permissions/default/user_manager.py index e7f97cccb..8abaebe4e 100644 --- a/apptools/permissions/default/user_manager.py +++ b/apptools/permissions/default/user_manager.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Event, HasTraits, provides, \ Instance, List, Unicode @@ -23,7 +24,7 @@ from apptools.permissions.i_user_manager import IUserManager from apptools.permissions.package_globals import get_permissions_manager from apptools.permissions.permission import ManageUsersPermission -from i_user_database import IUserDatabase +from .i_user_database import IUserDatabase @provides(IUserManager) diff --git a/apptools/permissions/default/user_storage.py b/apptools/permissions/default/user_storage.py index 5551d257b..44890ce29 100644 --- a/apptools/permissions/default/user_storage.py +++ b/apptools/permissions/default/user_storage.py @@ -14,11 +14,12 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance, provides # Local imports. -from i_user_storage import IUserStorage, UserStorageError -from persistent import Persistent, PersistentError +from .i_user_storage import IUserStorage, UserStorageError +from .persistent import Persistent, PersistentError @provides(IUserStorage) @@ -51,7 +52,7 @@ def add_user(self, name, description, password): try: users = self._db.read() - if users.has_key(name): + if name in users: raise UserStorageError("The user \"%s\" already exists." % name) users[name] = (description, {}, password) @@ -190,7 +191,7 @@ def _readonly_copy(self): data = self._db.read() finally: self._db.unlock() - except PersistentError, e: + except PersistentError as e: raise UserStorageError(str(e)) return data diff --git a/apptools/permissions/i_policy_manager.py b/apptools/permissions/i_policy_manager.py index 3f00cf83d..e9dcd9a9e 100644 --- a/apptools/permissions/i_policy_manager.py +++ b/apptools/permissions/i_policy_manager.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Action from traits.api import Instance, Interface, List diff --git a/apptools/permissions/i_user.py b/apptools/permissions/i_user.py index f836f936f..589a933a4 100644 --- a/apptools/permissions/i_user.py +++ b/apptools/permissions/i_user.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Bool, Dict, Interface, Unicode diff --git a/apptools/permissions/i_user_manager.py b/apptools/permissions/i_user_manager.py index 509f8dab9..da0443121 100644 --- a/apptools/permissions/i_user_manager.py +++ b/apptools/permissions/i_user_manager.py @@ -14,11 +14,12 @@ # Enthought library imports. +from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Event, Instance, Interface, List # Local imports. -from i_user import IUser +from .i_user import IUser class IUserManager(Interface): diff --git a/apptools/permissions/package_globals.py b/apptools/permissions/package_globals.py index f037b9427..4ef639477 100644 --- a/apptools/permissions/package_globals.py +++ b/apptools/permissions/package_globals.py @@ -14,6 +14,7 @@ # The permissions manager. +from __future__ import absolute_import _permissions_manager = None @@ -24,7 +25,7 @@ def get_permissions_manager(): global _permissions_manager if _permissions_manager is None: - from permissions_manager import PermissionsManager + from .permissions_manager import PermissionsManager _permissions_manager = PermissionsManager() diff --git a/apptools/permissions/permission.py b/apptools/permissions/permission.py index e4488905e..dc90af6e8 100644 --- a/apptools/permissions/permission.py +++ b/apptools/permissions/permission.py @@ -14,10 +14,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Bool, HasTraits, Property, Str, Unicode # Locals imports. -from package_globals import get_permissions_manager +from .package_globals import get_permissions_manager class Permission(HasTraits): diff --git a/apptools/permissions/permissions_manager.py b/apptools/permissions/permissions_manager.py index d7604ffac..275924fa1 100644 --- a/apptools/permissions/permissions_manager.py +++ b/apptools/permissions/permissions_manager.py @@ -14,11 +14,12 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Bool, HasTraits, Instance # Local imports. -from i_policy_manager import IPolicyManager -from i_user_manager import IUserManager +from .i_policy_manager import IPolicyManager +from .i_user_manager import IUserManager class PermissionsManager(HasTraits): diff --git a/apptools/permissions/secure_proxy.py b/apptools/permissions/secure_proxy.py index a564bf256..f1e9cfecb 100644 --- a/apptools/permissions/secure_proxy.py +++ b/apptools/permissions/secure_proxy.py @@ -14,21 +14,22 @@ # Enthought library imports. +from __future__ import absolute_import from traits.etsconfig.api import ETSConfig from traitsui.api import Handler # Local imports. -from adapter_base import AdapterBase -from package_globals import get_permissions_manager +from .adapter_base import AdapterBase +from .package_globals import get_permissions_manager # Register the bundled adapters. -from adapters import pyface_action +from .adapters import pyface_action if ETSConfig.toolkit == 'wx': - from adapters import wx_window + from .adapters import wx_window elif ETSConfig.toolkit == 'qt4': - from adapters import qt4_widget + from .adapters import qt4_widget class SecureProxy(object): diff --git a/apptools/persistence/file_path.py b/apptools/persistence/file_path.py index 71932b2d4..702e2b888 100644 --- a/apptools/persistence/file_path.py +++ b/apptools/persistence/file_path.py @@ -7,6 +7,7 @@ # License: BSD Style. # Standard library imports. +from __future__ import absolute_import import os from os.path import abspath, normpath, dirname, commonprefix, join diff --git a/apptools/persistence/project_loader.py b/apptools/persistence/project_loader.py index 2ddbe34c1..e0bd5f69c 100644 --- a/apptools/persistence/project_loader.py +++ b/apptools/persistence/project_loader.py @@ -1,5 +1,6 @@ # Standard library imports +from __future__ import absolute_import import sys import pickle import logging @@ -26,7 +27,7 @@ def load_project(pickle_filename, updater_path, application_version, protocol, project_version = metadata.get('version', False) if not project_version: - raise ValueError, "Could not read version number from the project file" + raise ValueError("Could not read version number from the project file") logger.debug('Project version: %d, Application version: %d' % (project_version, application_version)) diff --git a/apptools/persistence/spickle.py b/apptools/persistence/spickle.py index 6d4b759a6..4b86024b7 100644 --- a/apptools/persistence/spickle.py +++ b/apptools/persistence/spickle.py @@ -15,6 +15,7 @@ # Copyright (c) 2006-2015, Prabhu Ramachandran # License: BSD Style. +from __future__ import absolute_import import sys if sys.version_info[0] > 2: raise ImportError("This module does not work with Python 3.x") diff --git a/apptools/persistence/state_pickler.py b/apptools/persistence/state_pickler.py index fb82746f4..708063c3b 100644 --- a/apptools/persistence/state_pickler.py +++ b/apptools/persistence/state_pickler.py @@ -98,6 +98,7 @@ # License: BSD Style. # Standard library imports. +from __future__ import absolute_import import base64 import sys import types @@ -110,6 +111,9 @@ # Local imports. from . import version_registry from .file_path import FilePath +import six +from six.moves import range +from six.moves import zip PY_VER = sys.version_info[0] NumpyArrayType = type(numpy.array([])) @@ -269,8 +273,8 @@ def __init__(self): State: self._do_state, } if PY_VER == 2: - type_map[long] = self._do_basic_type - type_map[unicode] = self._do_basic_type + type_map[int] = self._do_basic_type + type_map[six.text_type] = self._do_basic_type self.type_map = type_map def dump(self, value, file): @@ -440,7 +444,7 @@ def _do_list(self, value): def _do_dict(self, value): idx = self._register(value) vals = [self._do(x) for x in value.values()] - data = dict(zip(value.keys(), vals)) + data = dict(list(zip(list(value.keys()), vals))) return dict(type='dict', id=idx, data=data) def _do_numeric(self, value): diff --git a/apptools/persistence/tests/test_file_path.py b/apptools/persistence/tests/test_file_path.py index 3c15bcfff..3ef63f7cc 100644 --- a/apptools/persistence/tests/test_file_path.py +++ b/apptools/persistence/tests/test_file_path.py @@ -6,6 +6,7 @@ # License: BSD Style. # Standard library imports. +from __future__ import absolute_import import unittest import os import sys diff --git a/apptools/persistence/tests/test_spickle.py b/apptools/persistence/tests/test_spickle.py index 20cfd3daf..02620c503 100644 --- a/apptools/persistence/tests/test_spickle.py +++ b/apptools/persistence/tests/test_spickle.py @@ -6,6 +6,7 @@ # License: BSD Style. +from __future__ import absolute_import import unittest import numpy from pickle import dumps diff --git a/apptools/persistence/tests/test_state_pickler.py b/apptools/persistence/tests/test_state_pickler.py index 70bf42573..3a6ed230c 100644 --- a/apptools/persistence/tests/test_state_pickler.py +++ b/apptools/persistence/tests/test_state_pickler.py @@ -5,6 +5,7 @@ # Copyright (c) 2005-2015, Enthought, Inc. # License: BSD Style. +from __future__ import absolute_import import base64 import unittest import math @@ -15,6 +16,7 @@ from traits.api import Bool, Int, Long, Array, Float, Complex, Any, \ Str, Unicode, Instance, Tuple, List, Dict, HasTraits +from six.moves import range try: from tvtk.api import tvtk diff --git a/apptools/persistence/tests/test_version_registry.py b/apptools/persistence/tests/test_version_registry.py index 3656e062b..2d413512e 100644 --- a/apptools/persistence/tests/test_version_registry.py +++ b/apptools/persistence/tests/test_version_registry.py @@ -6,6 +6,7 @@ # License: BSD Style. # Standard library imports. +from __future__ import absolute_import import sys from imp import reload import unittest diff --git a/apptools/persistence/version_registry.py b/apptools/persistence/version_registry.py index ce7e6e7ed..72505244d 100644 --- a/apptools/persistence/version_registry.py +++ b/apptools/persistence/version_registry.py @@ -6,6 +6,7 @@ # License: BSD Style. # Standard library imports. +from __future__ import absolute_import import sys import inspect import logging diff --git a/apptools/persistence/versioned_unpickler.py b/apptools/persistence/versioned_unpickler.py index 2dcc0acbb..62d9b3522 100644 --- a/apptools/persistence/versioned_unpickler.py +++ b/apptools/persistence/versioned_unpickler.py @@ -1,4 +1,5 @@ # Standard library imports +from __future__ import absolute_import from pickle import * import sys, new import logging @@ -72,7 +73,7 @@ def initialize(self, max_pass): raise UnpicklingError(msg) for o, g in generators[:]: try: - g.next() + next(g) except StopIteration: generators.remove((o, g)) diff --git a/apptools/preferences/i_preferences.py b/apptools/preferences/i_preferences.py index 4b7596744..4886528a3 100644 --- a/apptools/preferences/i_preferences.py +++ b/apptools/preferences/i_preferences.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Instance, Interface, Str diff --git a/apptools/preferences/preference_binding.py b/apptools/preferences/preference_binding.py index 7f0d8446c..1dab2fc56 100644 --- a/apptools/preferences/preference_binding.py +++ b/apptools/preferences/preference_binding.py @@ -2,12 +2,14 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, HasTraits, Instance, Str, Undefined from traits.api import Unicode # Local imports. from .i_preferences import IPreferences from .package_globals import get_default_preferences +import six class PreferenceBinding(HasTraits): @@ -101,7 +103,7 @@ def _get_value(self, trait_name, value): # If the trait type is 'Unicode' then we convert the raw value. elif type(handler) is Unicode: - value = unicode(value) + value = six.text_type(value) # Otherwise, we eval it! else: diff --git a/apptools/preferences/preferences.py b/apptools/preferences/preferences.py index 330bdeae1..4f46ea147 100644 --- a/apptools/preferences/preferences.py +++ b/apptools/preferences/preferences.py @@ -1,8 +1,8 @@ """ The default implementation of a node in a preferences hierarchy. """ -from __future__ import print_function - # Standard library imports. +from __future__ import absolute_import +from __future__ import print_function import logging, threading # Enthought library imports. @@ -11,6 +11,7 @@ # Local imports. from .i_preferences import IPreferences +import six # Logging. @@ -493,7 +494,7 @@ def _keys(self): """ Return the preference keys of this node. """ self._lk.acquire() - keys = self._preferences.keys() + keys = list(self._preferences.keys()) self._lk.release() return keys @@ -515,7 +516,7 @@ def _node_names(self): """ Return the names of the children of this node. """ self._lk.acquire() - node_names = self._children.keys() + node_names = list(self._children.keys()) self._lk.release() return node_names @@ -546,7 +547,7 @@ def _set(self, key, value): # everything must be unicode encoded so that ConfigObj configuration # can properly serialize the data. Python str are supposed to be ASCII # encoded. - value = unicode(value) + value = six.text_type(value) self._lk.acquire() old = self._preferences.get(key) @@ -575,7 +576,7 @@ def dump(self, indent=''): if indent == '': print() - print(indent, 'Node(%s)' % self.name, self._preferences) + print((indent, 'Node(%s)' % self.name, self._preferences)) indent += ' ' for child in self._children.values(): diff --git a/apptools/preferences/preferences_helper.py b/apptools/preferences/preferences_helper.py index 60602b9f5..cfe7e17af 100644 --- a/apptools/preferences/preferences_helper.py +++ b/apptools/preferences/preferences_helper.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/preferences/scoped_preferences.py b/apptools/preferences/scoped_preferences.py index 6094e6c68..b786467d2 100644 --- a/apptools/preferences/scoped_preferences.py +++ b/apptools/preferences/scoped_preferences.py @@ -3,6 +3,7 @@ from __future__ import print_function # Standard library imports. +from __future__ import absolute_import from os.path import join # Enthought library imports. @@ -200,7 +201,7 @@ def keys(self, path=''): keys = set() for node in nodes: - keys.update(node.node(path).keys()) + keys.update(list(node.node(path).keys())) return list(keys) diff --git a/apptools/preferences/tests/preference_binding_test_case.py b/apptools/preferences/tests/preference_binding_test_case.py index 8c9f682c5..f9c68a419 100644 --- a/apptools/preferences/tests/preference_binding_test_case.py +++ b/apptools/preferences/tests/preference_binding_test_case.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import os, tempfile, unittest from os.path import join diff --git a/apptools/preferences/tests/preferences_helper_test_case.py b/apptools/preferences/tests/preferences_helper_test_case.py index ba35278b1..661b86017 100644 --- a/apptools/preferences/tests/preferences_helper_test_case.py +++ b/apptools/preferences/tests/preferences_helper_test_case.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import time import unittest diff --git a/apptools/preferences/tests/preferences_test_case.py b/apptools/preferences/tests/preferences_test_case.py index d5c4ee33c..fb4483135 100644 --- a/apptools/preferences/tests/preferences_test_case.py +++ b/apptools/preferences/tests/preferences_test_case.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import os, tempfile, unittest from os.path import join @@ -164,14 +165,14 @@ def test_keys(self): p = self.preferences # It should be empty to start with! - self.assertEqual([], p.keys()) + self.assertEqual([], list(p.keys())) # Set some preferences in the node. p.set('a', '1') p.set('b', '2') p.set('c', '3') - keys = p.keys() + keys = list(p.keys()) keys.sort() self.assertEqual(['a', 'b', 'c'], keys) diff --git a/apptools/preferences/tests/py_config_file.py b/apptools/preferences/tests/py_config_file.py index 900298667..d46c1b575 100644 --- a/apptools/preferences/tests/py_config_file.py +++ b/apptools/preferences/tests/py_config_file.py @@ -1,4 +1,7 @@ """ A Python based configuration file with hierarchical sections. """ +from __future__ import print_function +from __future__ import absolute_import +import six class PyConfigFile(dict): @@ -121,7 +124,7 @@ def _get_file(self, file_or_filename, mode='r'): """ - if isinstance(file_or_filename, basestring): + if isinstance(file_or_filename, six.string_types): f = open(file_or_filename, mode) else: @@ -167,7 +170,7 @@ def _parse_section(self, section_name, section_body): # # [acme.blargle] # blitzel = acme.foo.bar + acme.foo.baz - exec section_body in self._namespaces, section + exec(section_body, self._namespaces, section) # The '__builtins__' dictionary gets added to 'self._namespaces' as # by the call to 'exec'. However, we want 'self._namespaces' to only @@ -201,7 +204,7 @@ def _pretty_print_namespaces(self): """ Pretty print the 'dotted' namespaces. """ for name, value in self._namespaces.items(): - print 'Namespace:', name + print('Namespace:', name) value.pretty_print(' ') return @@ -250,11 +253,11 @@ def pretty_print(self, indent=''): for name, value in self.__dict__.items(): if isinstance(value, _Namespace): - print indent, 'Namespace:', name + print(indent, 'Namespace:', name) value.pretty_print(indent + ' ') else: - print indent, name, ':', value + print(indent, name, ':', value) return diff --git a/apptools/preferences/tests/py_config_file_test_case.py b/apptools/preferences/tests/py_config_file_test_case.py index fec301064..314a1076e 100644 --- a/apptools/preferences/tests/py_config_file_test_case.py +++ b/apptools/preferences/tests/py_config_file_test_case.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import os, tempfile, unittest from os.path import join @@ -9,7 +10,7 @@ from pkg_resources import resource_filename # Enthought library imports. -from py_config_file import PyConfigFile +from .py_config_file import PyConfigFile # This module's package. diff --git a/apptools/preferences/tests/scoped_preferences_test_case.py b/apptools/preferences/tests/scoped_preferences_test_case.py index 8a1f3ed8d..1f8f8c7bc 100644 --- a/apptools/preferences/tests/scoped_preferences_test_case.py +++ b/apptools/preferences/tests/scoped_preferences_test_case.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import os, tempfile, unittest from os.path import join @@ -12,7 +13,7 @@ from apptools.preferences.api import Preferences, ScopedPreferences # Local imports. -from preferences_test_case import PreferencesTestCase +from .preferences_test_case import PreferencesTestCase # This module's package. diff --git a/apptools/preferences/ui/api.py b/apptools/preferences/ui/api.py index 5e829e3f6..478673811 100644 --- a/apptools/preferences/ui/api.py +++ b/apptools/preferences/ui/api.py @@ -1,4 +1,5 @@ -from i_preferences_page import IPreferencesPage +from __future__ import absolute_import +from .i_preferences_page import IPreferencesPage -from preferences_manager import PreferencesManager -from preferences_page import PreferencesPage +from .preferences_manager import PreferencesManager +from .preferences_page import PreferencesPage diff --git a/apptools/preferences/ui/i_preferences_page.py b/apptools/preferences/ui/i_preferences_page.py index ff38c7bfb..f661cf10b 100644 --- a/apptools/preferences/ui/i_preferences_page.py +++ b/apptools/preferences/ui/i_preferences_page.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Interface, Str diff --git a/apptools/preferences/ui/preferences_manager.py b/apptools/preferences/ui/preferences_manager.py index fa0e58a92..5d86ef012 100644 --- a/apptools/preferences/ui/preferences_manager.py +++ b/apptools/preferences/ui/preferences_manager.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Property, \ Any, Bool, Dict from traitsui.api import Handler, HSplit, Item, TreeEditor @@ -9,8 +10,8 @@ from traitsui.menu import Action # Local imports. -from preferences_node import PreferencesNode -from preferences_page import PreferencesPage +from .preferences_node import PreferencesNode +from .preferences_page import PreferencesPage # fixme: This is part of the attempt to allow developers to use non-Traits UI # preferences pages. It doesn't work yet! diff --git a/apptools/preferences/ui/preferences_node.py b/apptools/preferences/ui/preferences_node.py index 8d741bbd4..2a72b1696 100644 --- a/apptools/preferences/ui/preferences_node.py +++ b/apptools/preferences/ui/preferences_node.py @@ -15,11 +15,13 @@ # Enthought library imports. +from __future__ import absolute_import +from __future__ import print_function from traits.api import Delegate, Instance, Str # Local imports. -from i_preferences_page import IPreferencesPage -from tree_item import TreeItem +from .i_preferences_page import IPreferencesPage +from .tree_item import TreeItem class PreferencesNode(TreeItem): @@ -91,7 +93,7 @@ def lookup(self, name): def dump(self, indent=''): """ Pretty-print the node to stdout. """ - print indent, 'Node', str(self) + print(indent, 'Node', str(self)) for child in self.children: child.dump(indent+' ') diff --git a/apptools/preferences/ui/preferences_page.py b/apptools/preferences/ui/preferences_page.py index b55f63ac6..7ac3c9e81 100644 --- a/apptools/preferences/ui/preferences_page.py +++ b/apptools/preferences/ui/preferences_page.py @@ -2,11 +2,12 @@ # Enthought library imports. +from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import Any, Dict, Str, provides # Local imports. -from i_preferences_page import IPreferencesPage +from .i_preferences_page import IPreferencesPage @provides(IPreferencesPage) diff --git a/apptools/preferences/ui/tree_item.py b/apptools/preferences/ui/tree_item.py index 7e163386d..de0067c2a 100644 --- a/apptools/preferences/ui/tree_item.py +++ b/apptools/preferences/ui/tree_item.py @@ -33,6 +33,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Bool, HasTraits, Instance, List, Property diff --git a/apptools/preferences/ui/widget_editor.py b/apptools/preferences/ui/widget_editor.py index 187cfed13..1c0161808 100644 --- a/apptools/preferences/ui/widget_editor.py +++ b/apptools/preferences/ui/widget_editor.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.etsconfig.api import ETSConfig from traits.api import Any from traitsui.api import EditorFactory diff --git a/apptools/scripting/recorder.py b/apptools/scripting/recorder.py index 9b6bb2554..cbf1e91d9 100644 --- a/apptools/scripting/recorder.py +++ b/apptools/scripting/recorder.py @@ -9,10 +9,12 @@ # Copyright (c) 2008-2015, Enthought, Inc. # License: BSD Style. +from __future__ import absolute_import import warnings import sys +import six PY_VER = sys.version_info[0] -import __builtin__ +import six.moves.builtins from traits.api import (HasTraits, List, Str, Dict, Bool, Unicode, Property, Int, Instance) @@ -221,9 +223,9 @@ def register(self, object, parent=None, trait_name_on_parent='', # Always ignore these. ignore.extend(['trait_added', 'trait_modified']) - sub_recordables = object.traits(record=True).keys() + sub_recordables = list(object.traits(record=True).keys()) # Find all the trait names we must ignore. - ignore.extend(object.traits(record=False).keys()) + ignore.extend(list(object.traits(record=False).keys())) # The traits to listen for. tnames = [t for t in object.trait_names() if not t.startswith('_') and not t.endswith('_') \ @@ -376,7 +378,7 @@ def save(self, file): if PY_VER == 3: file.write(self.get_code()) else: - file.write(unicode(self.get_code(), encoding='utf-8')) + file.write(six.text_type(self.get_code(), encoding='utf-8')) file.flush() def record_function(self, func, args, kw): @@ -429,7 +431,7 @@ def clear(self): # First unregister any registered objects. registry = self._registry while len(registry) > 0: - self.unregister(registry.keys()[0]) + self.unregister(list(registry.keys())[0]) # Clear the various lists. self.lines[:] = [] self._registry.clear() @@ -503,7 +505,7 @@ def _get_unique_name(self, obj): nm = self._name_map result = '' builtin = False - if cname in __builtin__.__dict__: + if cname in six.moves.builtins.__dict__: builtin = True if hasattr(obj, '__name__'): cname = obj.__name__ @@ -625,7 +627,7 @@ def _analyze_code(self, code): def _function_as_string(self, func, args, kw): """Return a string representing the function call.""" func_name = func.__name__ - func_code = func.func_code + func_code = func.__code__ # Even if func is really a decorated method it never shows up as # a bound or unbound method here, so we have to inspect the # argument names to figure out if this is a method or function. @@ -649,7 +651,7 @@ def _function_as_string(self, func, args, kw): # Convert the keyword args. kwl = ['%s=%s'%(key, self._object_as_string(value)) - for key, value in kw.iteritems()] + for key, value in six.iteritems(kw)] argl.extend(kwl) # Make a string representation of the args, kw. @@ -691,7 +693,7 @@ def _return_as_string(self, object): """Return a string given a returned object from a function. """ result = '' - long_type = long if PY_VER == 2 else int + long_type = int if PY_VER == 2 else int ignore = (float, complex, bool, int, long_type, str) if object is not None and type(object) not in ignore: # If object is not know, register it. @@ -710,7 +712,7 @@ def _import_class_string(self, cls): """ cname = cls.__name__ result = '' - if cname not in __builtin__.__dict__: + if cname not in six.moves.builtins.__dict__: mod = cls.__module__ typename = '%s.%s'%(mod, cname) if typename not in self._known_types: diff --git a/apptools/scripting/recorder_with_ui.py b/apptools/scripting/recorder_with_ui.py index 659f79ee6..eef0cff66 100644 --- a/apptools/scripting/recorder_with_ui.py +++ b/apptools/scripting/recorder_with_ui.py @@ -5,6 +5,7 @@ # Copyright (c) 2008, Prabhu Ramachandran. # License: BSD Style. +from __future__ import absolute_import from traits.api import Code, Button, Int, on_trait_change, Any from traitsui.api import (View, Item, Group, HGroup, CodeEditor, spring, Handler) @@ -69,8 +70,8 @@ def on_ui_close(self): """Called from the CloseHandler when the UI is closed. This method basically stops the recording. """ - from util import stop_recording - from package_globals import get_recorder + from .util import stop_recording + from .package_globals import get_recorder if get_recorder() is self: stop_recording(self.root, save=False) diff --git a/apptools/scripting/tests/test_recorder.py b/apptools/scripting/tests/test_recorder.py index c3ec460f6..3e2ed7bb8 100644 --- a/apptools/scripting/tests/test_recorder.py +++ b/apptools/scripting/tests/test_recorder.py @@ -5,6 +5,7 @@ # Copyright (c) 2008-2015, Enthought, Inc. # License: BSD Style. +from __future__ import absolute_import import unittest from traits.api import (HasTraits, Float, Instance, diff --git a/apptools/selection/i_selection.py b/apptools/selection/i_selection.py index 4831234a6..3f7b5aa70 100644 --- a/apptools/selection/i_selection.py +++ b/apptools/selection/i_selection.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from traits.api import Interface, List, Str diff --git a/apptools/selection/i_selection_provider.py b/apptools/selection/i_selection_provider.py index cd98b9889..9740a998c 100644 --- a/apptools/selection/i_selection_provider.py +++ b/apptools/selection/i_selection_provider.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from traits.api import Event, Interface, Str diff --git a/apptools/selection/list_selection.py b/apptools/selection/list_selection.py index bb93013b3..940a3ebed 100644 --- a/apptools/selection/list_selection.py +++ b/apptools/selection/list_selection.py @@ -1,6 +1,8 @@ +from __future__ import absolute_import from traits.api import HasTraits, List, provides, Str from apptools.selection.i_selection import IListSelection +from six.moves import range @provides(IListSelection) diff --git a/apptools/selection/selection_service.py b/apptools/selection/selection_service.py index 94c55fd77..de8cce5f9 100644 --- a/apptools/selection/selection_service.py +++ b/apptools/selection/selection_service.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import from traits.api import Dict, HasTraits from apptools.selection.errors import ( diff --git a/apptools/selection/tests/test_list_selection.py b/apptools/selection/tests/test_list_selection.py index 17173f3aa..07db179bd 100644 --- a/apptools/selection/tests/test_list_selection.py +++ b/apptools/selection/tests/test_list_selection.py @@ -1,8 +1,10 @@ +from __future__ import absolute_import import numpy from traits.testing.unittest_tools import unittest from apptools.selection.api import ListSelection +from six.moves import range class TestListSelection(unittest.TestCase): @@ -26,7 +28,7 @@ def test_list_selection_of_sequence_items(self): self.assertEqual(list_selection.indices, [2, 1]) def test_list_selection_of_numpy_array_items(self): - data = numpy.array(range(10)) + data = numpy.array(list(range(10))) all_items = [data, data + 10, data + 30] selected = [all_items[0], all_items[2]] @@ -37,7 +39,7 @@ def test_list_selection_of_numpy_array_items(self): self.assertEqual(list_selection.indices, [0, 2]) def test_list_selection_with_invalid_selected_items(self): - data = numpy.array(range(10)) + data = numpy.array(list(range(10))) all_items = [data, data + 10, data + 30] selected = [data-10, ] diff --git a/apptools/selection/tests/test_selection_service.py b/apptools/selection/tests/test_selection_service.py index 1f5aae094..74fa1c8aa 100644 --- a/apptools/selection/tests/test_selection_service.py +++ b/apptools/selection/tests/test_selection_service.py @@ -1,9 +1,11 @@ +from __future__ import absolute_import from traits.api import Any, Event, HasTraits, List, provides, Str from traits.testing.unittest_tools import unittest from apptools.selection.api import ( IDConflictError, ISelection, ISelectionProvider, ListenerNotConnectedError, ListSelection, ProviderNotRegisteredError, SelectionService) +from six.moves import range @provides(ISelection) @@ -222,7 +224,7 @@ def test_disconnect_unknown_listener(self): def test_set_selection(self): service = SelectionService() - provider = SimpleListProvider(items=range(10)) + provider = SimpleListProvider(items=list(range(10))) service.add_selection_provider(provider) provider_id = provider.provider_id @@ -253,7 +255,7 @@ def test_ignore_missing(self): # raise an exception. service = SelectionService() - provider = SimpleListProvider(items=range(10)) + provider = SimpleListProvider(items=list(range(10))) service.add_selection_provider(provider) new_selection = [0, 11, 1] diff --git a/apptools/sweet_pickle/__init__.py b/apptools/sweet_pickle/__init__.py index c5b6930c3..26e83de57 100644 --- a/apptools/sweet_pickle/__init__.py +++ b/apptools/sweet_pickle/__init__.py @@ -106,7 +106,8 @@ ############################################################################## # Expose our custom pickler as the standard Unpickler -from versioned_unpickler import VersionedUnpickler as Unpickler +from __future__ import absolute_import +from .versioned_unpickler import VersionedUnpickler as Unpickler # Use our custom unpickler to load from files def load(file, max_pass=-1): @@ -121,18 +122,18 @@ def loads(str, max_pass=-1): # We don't customize the Python pickler, though we do use the cPickle module # for improved performance. -from cPickle import Pickler +from six.moves.cPickle import Pickler # Implement the dump and dumps methods so that all traits in a HasTraits object # get included in the pickle. def dump(obj, file, protocol=2): _flush_traits(obj) - from cPickle import dump as d + from six.moves.cPickle import dump as d return d(obj, file, protocol) def dumps(obj, protocol=2): _flush_traits(obj) - from cPickle import dumps as ds + from six.moves.cPickle import dumps as ds return ds(obj, protocol) # We don't customize exceptions so just map to the Python pickle package @@ -143,14 +144,14 @@ def dumps(obj, protocol=2): # Allow retrieval of the global registry ############################################################################## -from global_registry import get_global_registry +from .global_registry import get_global_registry ############################################################################## # Expose our Updater class so users can explicitly create their own. ############################################################################## -from updater import Updater +from .updater import Updater ############################################################################## diff --git a/apptools/sweet_pickle/global_registry.py b/apptools/sweet_pickle/global_registry.py index 79b4d30c8..c034d2c8d 100644 --- a/apptools/sweet_pickle/global_registry.py +++ b/apptools/sweet_pickle/global_registry.py @@ -38,10 +38,11 @@ class instances into the project. framework manages the repository. """ +from __future__ import absolute_import try: - import thread as _thread + import six.moves._thread as _thread except ImportError: - import dummy_thread as _thread + import six.moves._dummy_thread as _thread ############################################################################## @@ -65,7 +66,7 @@ def get_global_registry(): _global_registry_lock.acquire() try: if _global_registry is None: - from updater import Updater + from .updater import Updater _global_registry = Updater() finally: _global_registry_lock.release() diff --git a/apptools/sweet_pickle/placeholder.py b/apptools/sweet_pickle/placeholder.py index 90c8bb639..ba599209e 100644 --- a/apptools/sweet_pickle/placeholder.py +++ b/apptools/sweet_pickle/placeholder.py @@ -12,6 +12,7 @@ """ # Enthought library imports +from __future__ import absolute_import from traits.api import HasTraits diff --git a/apptools/sweet_pickle/tests/class_mapping_test_case.py b/apptools/sweet_pickle/tests/class_mapping_test_case.py index 14b26a6fc..3909566de 100644 --- a/apptools/sweet_pickle/tests/class_mapping_test_case.py +++ b/apptools/sweet_pickle/tests/class_mapping_test_case.py @@ -12,6 +12,7 @@ """ # Standard library imports. +from __future__ import absolute_import import unittest # Enthought library imports diff --git a/apptools/sweet_pickle/tests/global_registry_test_case.py b/apptools/sweet_pickle/tests/global_registry_test_case.py index 4cdefac8e..e2f6c45e7 100644 --- a/apptools/sweet_pickle/tests/global_registry_test_case.py +++ b/apptools/sweet_pickle/tests/global_registry_test_case.py @@ -11,6 +11,7 @@ """ # Standard library imports. +from __future__ import absolute_import import unittest # Enthought library imports diff --git a/apptools/sweet_pickle/tests/state_function_classes.py b/apptools/sweet_pickle/tests/state_function_classes.py index 073b4962a..a09774934 100644 --- a/apptools/sweet_pickle/tests/state_function_classes.py +++ b/apptools/sweet_pickle/tests/state_function_classes.py @@ -8,6 +8,7 @@ #----------------------------------------------------------------------------- # Standard library imports +from __future__ import absolute_import import logging # Enthought library imports diff --git a/apptools/sweet_pickle/tests/state_function_test_case.py b/apptools/sweet_pickle/tests/state_function_test_case.py index 4ca6009b6..54f891c3a 100644 --- a/apptools/sweet_pickle/tests/state_function_test_case.py +++ b/apptools/sweet_pickle/tests/state_function_test_case.py @@ -12,6 +12,7 @@ """ # Standard library imports. +from __future__ import absolute_import import unittest import logging @@ -19,6 +20,7 @@ import apptools.sweet_pickle as sweet_pickle from apptools.sweet_pickle.global_registry import _clear_global_registry from traits.api import Bool, Float, HasTraits, Int, Str +from six.moves import range logger = logging.getLogger(__name__) diff --git a/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py b/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py index 1862031a8..e7a3bc1ff 100644 --- a/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py +++ b/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py @@ -8,6 +8,8 @@ #----------------------------------------------------------------------------- # Test cases. +from __future__ import absolute_import +from __future__ import print_function import random import pickle import apptools.sweet_pickle as sweet_pickle @@ -61,7 +63,7 @@ def __initialize__(self): def test_generic(): - print '\nRunning generic test...' + print('\nRunning generic test...') a = A() b = B() @@ -74,19 +76,19 @@ def test_generic(): s = pickle.dumps(a) new_a = pickle.loads(s) try: - print '\ta.x: %s' % new_a.x - print '\ta.b_ref.y: %s' % new_a.b_ref.y - except Exception, msg: - print '\t%s' % 'Expected Error'.center(75,'*') - print '\t%s' % msg - print '\t%s' % ('*'*75) + print('\ta.x: %s' % new_a.x) + print('\ta.b_ref.y: %s' % new_a.b_ref.y) + except Exception as msg: + print('\t%s' % 'Expected Error'.center(75,'*')) + print('\t%s' % msg) + print('\t%s' % ('*'*75)) # This will work! s = pickle.dumps(a) new_a = sweet_pickle.loads(s) assert new_a.x == new_a.b_ref.y == value - print 'Generic test succesfull.\n\n' + print('Generic test succesfull.\n\n') ######################################## @@ -145,12 +147,12 @@ def __init__(self): self.finder = StringFinder(self.reader, 'e') def get(self): - print '\t%s' % self.finder.data - print '\t%s' % self.reader.data + print('\t%s' % self.finder.data) + print('\t%s' % self.reader.data) def test_toy_app(): - print '\nRunning toy app test...' + print('\nRunning toy app test...') a = Application() a.finder.find() @@ -160,19 +162,19 @@ def test_toy_app(): # Won't work. try: b.get() - except Exception, msg: - print '\t%s' % 'Expected Error'.center(75,'*') - print '\t%s' % msg - print '\t%s' % ('*'*75) + except Exception as msg: + print('\t%s' % 'Expected Error'.center(75,'*')) + print('\t%s' % msg) + print('\t%s' % ('*'*75)) # Works fine. c = sweet_pickle.loads(s) c.get() - print 'Toy app test succesfull.\n\n' + print('Toy app test succesfull.\n\n') if __name__ == '__main__': test_generic() test_toy_app() - print 'ALL TESTS SUCCESFULL\n' + print('ALL TESTS SUCCESFULL\n') diff --git a/apptools/sweet_pickle/tests/updater_test_case.py b/apptools/sweet_pickle/tests/updater_test_case.py index 5728229e7..1b5ab8765 100644 --- a/apptools/sweet_pickle/tests/updater_test_case.py +++ b/apptools/sweet_pickle/tests/updater_test_case.py @@ -11,6 +11,7 @@ """ # Standard library imports. +from __future__ import absolute_import import unittest import logging @@ -211,9 +212,9 @@ def fn1(): self.assertEqual(1, len(self.registry.state_functions)) self.assertEqual(1, len(self.registry.version_attribute_map)) self.assertEqual(1, len(self.registry._state_function_classes)) - self._validate_class_map_contents(updater.class_map.items()) + self._validate_class_map_contents(list(updater.class_map.items())) counts = {('foo', 'Foo'): 1} - self._validate_state_function_contents(updater.state_functions.items(), + self._validate_state_function_contents(list(updater.state_functions.items()), counts) # Merge in a second updater and validate the state of the registry is @@ -238,8 +239,8 @@ def fn2(): self.assertEqual(2, len(self.registry.state_functions)) self.assertEqual(2, len(self.registry.version_attribute_map)) self.assertEqual(1, len(self.registry._state_function_classes)) - self._validate_class_map_contents(updater.class_map.items() + \ - updater2.class_map.items()) + self._validate_class_map_contents(list(updater.class_map.items()) + \ + list(updater2.class_map.items())) counts = {('foo', 'Foo'): 3} self._validate_state_function_contents( [ (('foo', 'Foo', 1), [fn1, fn2]), (('foo', 'Foo', 2), [fn2]) ], @@ -291,11 +292,11 @@ def _validate_exactly_one_state_function(self, key, value): self.assertEqual(1, len(self.registry.state_functions)) self.assertEqual(0, len(self.registry.version_attribute_map)) self.assertEqual(1, len(self.registry._state_function_classes)) - self.assertEqual(key, self.registry.state_functions.keys()[0]) + self.assertEqual(key, list(self.registry.state_functions.keys())[0]) self.assertEqual(value, self.registry.state_functions[key]) classes_key = (key[0], key[1]) self.assertEqual(classes_key, - self.registry._state_function_classes.keys()[0]) + list(self.registry._state_function_classes.keys())[0]) self.assertEqual(len(value), self.registry._state_function_classes[classes_key]) diff --git a/apptools/sweet_pickle/updater.py b/apptools/sweet_pickle/updater.py index 32207205a..6c0c2256c 100644 --- a/apptools/sweet_pickle/updater.py +++ b/apptools/sweet_pickle/updater.py @@ -12,6 +12,7 @@ """ # Standard library imports +from __future__ import absolute_import import logging # Enthought library imports diff --git a/apptools/sweet_pickle/versioned_unpickler.py b/apptools/sweet_pickle/versioned_unpickler.py index 8e339cbbc..6cec6d8bd 100644 --- a/apptools/sweet_pickle/versioned_unpickler.py +++ b/apptools/sweet_pickle/versioned_unpickler.py @@ -17,6 +17,7 @@ """ # Standard library imports. +from __future__ import absolute_import import sys import logging from os import path @@ -161,7 +162,7 @@ def initialize(self, max_pass): raise UnpicklingError(msg) for o, g in generators[:]: try: - g.next() + next(g) except StopIteration: generators.remove((o, g)) @@ -218,7 +219,7 @@ def __init__(self, file, **kws): self._file = file if self.updater is None: - from global_registry import get_global_registry + from .global_registry import get_global_registry self.updater = get_global_registry() logger.debug('VersionedUnpickler [%s] using Updater [%s]', self, self.updater) @@ -276,7 +277,7 @@ def find_class(self, module, name): # Retrieve the target class definition try: klass = super(VersionedUnpickler, self).find_class(module, name) - except Exception, e: + except Exception as e: from apptools.sweet_pickle import UnpicklingError logger.debug('Traceback when finding class [%s.%s]:' \ % (module, name), exc_info=True) diff --git a/apptools/template/api.py b/apptools/template/api.py index e86fa15a8..db5d5942a 100644 --- a/apptools/template/api.py +++ b/apptools/template/api.py @@ -17,31 +17,31 @@ # Imports: #------------------------------------------------------------------------------- -from template_traits \ +from .template_traits \ import TDataSource, TInstance, TList, TInt, TFloat, TStr, TBool, TRange, \ TEnum, TDerived -from itemplate \ +from .itemplate \ import ITemplate -from imutable_template \ +from .imutable_template \ import IMutableTemplate -from itemplate_data_context \ +from .itemplate_data_context \ import ITemplateDataContext, ITemplateDataContextError -from template_data_name \ +from .template_data_name \ import TemplateDataName -from template_data_names \ +from .template_data_names \ import TemplateDataNames -from template_impl \ +from .template_impl \ import Template -from mutable_template \ +from .mutable_template \ import MutableTemplate -from template_choice \ +from .template_choice \ import TemplateChoice diff --git a/apptools/template/impl/any_context_data_name_item.py b/apptools/template/impl/any_context_data_name_item.py index 5a997c787..77119dbd5 100644 --- a/apptools/template/impl/any_context_data_name_item.py +++ b/apptools/template/impl/any_context_data_name_item.py @@ -23,6 +23,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Property, provides, on_trait_change @@ -35,8 +36,9 @@ from apptools.template.template_impl \ import Template -from template_data_context \ +from .template_data_context \ import TemplateDataContext +from six.moves import filter #------------------------------------------------------------------------------- # 'AnyContextDataNameItem' class: @@ -122,13 +124,13 @@ def inputs_changed ( self ): filter = self.filter gdc = input_context.get_data_context for name in input_context.data_contexts: - if filter( name, gdc( name ) ): + if list(filter( name, gdc( name ) )): contexts[ name ] = context # If the result set is not empty, create an output context for it: n = len( contexts ) if n == 1: - output_context = values.values()[0] + output_context = list(values.values())[0] elif n > 1: output_context = TemplateDataContext( data_context_path = input_context.data_context_path, diff --git a/apptools/template/impl/any_data_name_item.py b/apptools/template/impl/any_data_name_item.py index b7b413050..3e2248f38 100644 --- a/apptools/template/impl/any_data_name_item.py +++ b/apptools/template/impl/any_data_name_item.py @@ -21,6 +21,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Property, provides @@ -36,10 +37,10 @@ from apptools.template.template_impl \ import Template -from template_data_context \ +from .template_data_context \ import TemplateDataContext -from helper \ +from .helper \ import path_for #------------------------------------------------------------------------------- diff --git a/apptools/template/impl/api.py b/apptools/template/impl/api.py index 10fe0c098..62bb6f677 100644 --- a/apptools/template/impl/api.py +++ b/apptools/template/impl/api.py @@ -10,25 +10,25 @@ # #------------------------------------------------------------------------------- -from any_context_data_name_item \ +from .any_context_data_name_item \ import AnyContextDataNameItem -from any_data_name_item \ +from .any_data_name_item \ import AnyDataNameItem -from context_data_name_item \ +from .context_data_name_item \ import ContextDataNameItem -from template_data_context \ +from .template_data_context \ import TemplateDataContext -from template_data_source \ +from .template_data_source \ import TemplateDataSource -from value_data_name_item \ +from .value_data_name_item \ import ValueDataNameItem -from value_nd_data_name_item \ +from .value_nd_data_name_item \ import ValueNDDataNameItem, Value1DDataNameItem, Value2DDataNameItem, \ Value3DDataNameItem diff --git a/apptools/template/impl/context_data_name_item.py b/apptools/template/impl/context_data_name_item.py index ca9d4fb4f..cf533ccf7 100644 --- a/apptools/template/impl/context_data_name_item.py +++ b/apptools/template/impl/context_data_name_item.py @@ -21,13 +21,14 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from apptools.template.template_traits \ import TStr -from any_context_data_name_item \ +from .any_context_data_name_item \ import AnyContextDataNameItem -from helper \ +from .helper \ import path_for, parse_name #------------------------------------------------------------------------------- diff --git a/apptools/template/impl/i_context_adapter.py b/apptools/template/impl/i_context_adapter.py index 64864111f..5d27ee2a0 100644 --- a/apptools/template/impl/i_context_adapter.py +++ b/apptools/template/impl/i_context_adapter.py @@ -20,6 +20,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Adapter, Str, List, adapts @@ -32,7 +33,7 @@ from apptools.template.itemplate_data_context \ import ITemplateDataContext, ITemplateDataContextError -from helper \ +from .helper \ import path_for #------------------------------------------------------------------------------- @@ -84,7 +85,7 @@ def get_data_context_value ( self, name ): raise ITemplateDataContextError( "No value named '%s' found." % name ) - except Exception, excp: + except Exception as excp: raise ITemplateDataContextError( str( excp ) ) def get_data_context ( self, name ): @@ -113,7 +114,7 @@ def get_data_context ( self, name ): raise ITemplateDataContextError( "No context named '%s' found." % name ) - except Exception, excp: + except Exception as excp: raise ITemplateDataContextError( str( excp ) ) #-- Traits Event Handlers -------------------------------------------------- diff --git a/apptools/template/impl/template_data_context.py b/apptools/template/impl/template_data_context.py index 8974ae822..2ba484e0c 100644 --- a/apptools/template/impl/template_data_context.py +++ b/apptools/template/impl/template_data_context.py @@ -23,6 +23,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api\ import HasPrivateTraits, Dict, Str, Any, Property, provides, \ cached_property @@ -69,13 +70,13 @@ class TemplateDataContext ( HasPrivateTraits ): @cached_property def _get_data_context_values ( self ): - values = self.values.keys() + values = list(self.values.keys()) values.sort() return values @cached_property def _get_data_contexts ( self ): - contexts = self.contexts.keys() + contexts = list(self.contexts.keys()) contexts.sort() return contexts diff --git a/apptools/template/impl/template_data_source.py b/apptools/template/impl/template_data_source.py index eb6ec8460..4922e7f75 100644 --- a/apptools/template/impl/template_data_source.py +++ b/apptools/template/impl/template_data_source.py @@ -19,6 +19,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import provides diff --git a/apptools/template/impl/value_data_name_item.py b/apptools/template/impl/value_data_name_item.py index 45bbabf29..9fe6bca3d 100644 --- a/apptools/template/impl/value_data_name_item.py +++ b/apptools/template/impl/value_data_name_item.py @@ -23,6 +23,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Bool @@ -35,10 +36,10 @@ from apptools.template.itemplate_data_context \ import ITemplateDataContext -from any_data_name_item \ +from .any_data_name_item \ import AnyDataNameItem -from helper \ +from .helper \ import parse_name, path_for #------------------------------------------------------------------------------- diff --git a/apptools/template/impl/value_nd_data_name_item.py b/apptools/template/impl/value_nd_data_name_item.py index 2bd74e86f..a0ef1a3f3 100644 --- a/apptools/template/impl/value_nd_data_name_item.py +++ b/apptools/template/impl/value_nd_data_name_item.py @@ -23,6 +23,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from numpy \ import array @@ -32,7 +33,7 @@ from apptools.template.template_choice \ import TemplateChoice -from any_data_name_item \ +from .any_data_name_item \ import AnyDataNameItem #------------------------------------------------------------------------------- diff --git a/apptools/template/imutable_template.py b/apptools/template/imutable_template.py index 3fa424228..9a7c54686 100644 --- a/apptools/template/imutable_template.py +++ b/apptools/template/imutable_template.py @@ -17,10 +17,11 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Event -from itemplate \ +from .itemplate \ import ITemplate #------------------------------------------------------------------------------- diff --git a/apptools/template/itemplate.py b/apptools/template/itemplate.py index 4f4de7956..17011f617 100644 --- a/apptools/template/itemplate.py +++ b/apptools/template/itemplate.py @@ -19,6 +19,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Interface diff --git a/apptools/template/itemplate_choice.py b/apptools/template/itemplate_choice.py index 06f08eb4d..78582c18c 100644 --- a/apptools/template/itemplate_choice.py +++ b/apptools/template/itemplate_choice.py @@ -19,6 +19,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Interface, Str diff --git a/apptools/template/itemplate_data_context.py b/apptools/template/itemplate_data_context.py index edd13f02d..434d4ef18 100644 --- a/apptools/template/itemplate_data_context.py +++ b/apptools/template/itemplate_data_context.py @@ -21,6 +21,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api\ import Interface, List, Str diff --git a/apptools/template/itemplate_data_name_item.py b/apptools/template/itemplate_data_name_item.py index da6819828..4a9aecd62 100644 --- a/apptools/template/itemplate_data_name_item.py +++ b/apptools/template/itemplate_data_name_item.py @@ -19,13 +19,14 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Interface, Instance, List -from itemplate_data_context \ +from .itemplate_data_context \ import ITemplateDataContext -from itemplate_choice \ +from .itemplate_choice \ import ITemplateChoice #------------------------------------------------------------------------------- diff --git a/apptools/template/itemplate_data_source.py b/apptools/template/itemplate_data_source.py index b4f7b59be..3c7f523a2 100644 --- a/apptools/template/itemplate_data_source.py +++ b/apptools/template/itemplate_data_source.py @@ -19,6 +19,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Interface diff --git a/apptools/template/mutable_template.py b/apptools/template/mutable_template.py index 62bae7a48..75f8334ba 100644 --- a/apptools/template/mutable_template.py +++ b/apptools/template/mutable_template.py @@ -17,13 +17,14 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Event, provides -from template_impl \ +from .template_impl \ import Template -from imutable_template \ +from .imutable_template \ import IMutableTemplate #------------------------------------------------------------------------------- diff --git a/apptools/template/template_choice.py b/apptools/template/template_choice.py index c457f2340..567712833 100644 --- a/apptools/template/template_choice.py +++ b/apptools/template/template_choice.py @@ -15,10 +15,11 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Str, provides -from itemplate_choice \ +from .itemplate_choice \ import ITemplateChoice #------------------------------------------------------------------------------- diff --git a/apptools/template/template_data_name.py b/apptools/template/template_data_name.py index a9b1cecf8..b736237fe 100644 --- a/apptools/template/template_data_name.py +++ b/apptools/template/template_data_name.py @@ -19,21 +19,23 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Bool, Property, Undefined, \ on_trait_change, cached_property -from itemplate_data_name_item \ +from .itemplate_data_name_item \ import ITemplateDataNameItem -from itemplate_data_context \ +from .itemplate_data_context \ import ITemplateDataContext -from template_impl \ +from .template_impl \ import Template -from template_traits \ +from .template_traits \ import TList, TStr, TBool +from six.moves import range #------------------------------------------------------------------------------- # 'TemplateDataName' interface: diff --git a/apptools/template/template_data_names.py b/apptools/template/template_data_names.py index 8b2e54335..55fe8612f 100644 --- a/apptools/template/template_data_names.py +++ b/apptools/template/template_data_names.py @@ -19,6 +19,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Int, List, Property, Delegate, \ cached_property @@ -29,14 +30,15 @@ from traitsui.table_column \ import ObjectColumn -from template_data_name \ +from .template_data_name \ import TemplateDataName -from itemplate_data_context \ +from .itemplate_data_context \ import ITemplateDataContext -from template_choice \ +from .template_choice \ import TemplateChoice +from six.moves import range #------------------------------------------------------------------------------- # Table editor support for editing a list of TemplateDataName objects: diff --git a/apptools/template/template_impl.py b/apptools/template/template_impl.py index a96d3a9ac..659c46a24 100644 --- a/apptools/template/template_impl.py +++ b/apptools/template/template_impl.py @@ -19,10 +19,11 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Undefined, provides -from itemplate \ +from .itemplate \ import ITemplate #------------------------------------------------------------------------------- diff --git a/apptools/template/template_traits.py b/apptools/template/template_traits.py index 0bff18c8c..2bca7dcc9 100644 --- a/apptools/template/template_traits.py +++ b/apptools/template/template_traits.py @@ -17,10 +17,11 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Instance, Int, Float, Str, List, Bool, Range, TraitType, Undefined -from itemplate_data_source \ +from .itemplate_data_source \ import ITemplateDataSource #------------------------------------------------------------------------------- diff --git a/apptools/template/test/enable_editor.py b/apptools/template/test/enable_editor.py index 06f872afa..8f5e23307 100644 --- a/apptools/template/test/enable_editor.py +++ b/apptools/template/test/enable_editor.py @@ -17,6 +17,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import import wx from traitsui.wx.editor \ diff --git a/apptools/template/test/scatter_plot.py b/apptools/template/test/scatter_plot.py index 8534a0e82..08e275dd4 100644 --- a/apptools/template/test/scatter_plot.py +++ b/apptools/template/test/scatter_plot.py @@ -18,6 +18,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Undefined @@ -48,7 +49,7 @@ from apptools.template.impl.api \ import TemplateDataSource, ValueDataNameItem -from enable_editor \ +from .enable_editor \ import EnableEditor #------------------------------------------------------------------------------- diff --git a/apptools/template/test/scatter_plot_2.py b/apptools/template/test/scatter_plot_2.py index 3bf020e0c..b0a5612ef 100644 --- a/apptools/template/test/scatter_plot_2.py +++ b/apptools/template/test/scatter_plot_2.py @@ -20,6 +20,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Undefined @@ -44,10 +45,10 @@ from apptools.template.api \ import Template, TRange, TStr, TInstance, TDerived -from enable_editor \ +from .enable_editor \ import EnableEditor -from scatter_plot \ +from .scatter_plot \ import ScatterPlot #------------------------------------------------------------------------------- diff --git a/apptools/template/test/scatter_plot_nm.py b/apptools/template/test/scatter_plot_nm.py index 9762e3f98..b428c34a6 100644 --- a/apptools/template/test/scatter_plot_nm.py +++ b/apptools/template/test/scatter_plot_nm.py @@ -20,6 +20,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api \ import Undefined @@ -44,11 +45,12 @@ from apptools.template.api \ import MutableTemplate, TRange, TStr, TList, TDerived -from enable_editor \ +from .enable_editor \ import EnableEditor -from scatter_plot \ +from .scatter_plot \ import ScatterPlot +from six.moves import range #------------------------------------------------------------------------------- # Trait definitions: diff --git a/apptools/template/test/template_view.py b/apptools/template/test/template_view.py index 45fb82a58..23f460b28 100644 --- a/apptools/template/test/template_view.py +++ b/apptools/template/test/template_view.py @@ -17,6 +17,7 @@ # Imports: #------------------------------------------------------------------------------- +from __future__ import absolute_import import sys from os.path \ @@ -49,7 +50,7 @@ from apptools.template.api \ import ITemplate, ITemplateDataContext, TemplateDataNames, Template -from enable_editor \ +from .enable_editor \ import EnableEditor #-- Adapters that might be used ------------------------------------------------ @@ -287,7 +288,7 @@ def _load_python_template ( self, file_name ): self.template = template self.template_file_name = file_name - except Exception, excp: + except Exception as excp: self.template_view = Message( str( excp ) ) # Clean up the Python path: @@ -309,7 +310,7 @@ def _load_pickled_template ( self, file_name ): module = __import__( module_name ) self.template = load( fh ) self.template_file_name = file_name - except Exception, excp: + except Exception as excp: import traceback traceback.print_exc() self.template_view = Message( str( excp ) ) @@ -325,7 +326,7 @@ def _load_las_file ( self, file_name ): """ try: self.context = import_log_files( file_name, 'las' ) - except Exception, excp: + except Exception as excp: self.names_view = Message( str( excp ) ) def _save_pickled_template ( self ): diff --git a/apptools/type_manager/__init__.py b/apptools/type_manager/__init__.py index ce4b5efe5..71c9ca829 100644 --- a/apptools/type_manager/__init__.py +++ b/apptools/type_manager/__init__.py @@ -6,4 +6,4 @@ hooks for methods and functions. Part of the AppTools project of the Enthought Tool Suite. """ -from api import * +from .api import * diff --git a/apptools/type_manager/abstract_adapter_factory.py b/apptools/type_manager/abstract_adapter_factory.py index fa49f165b..aab0f54d7 100644 --- a/apptools/type_manager/abstract_adapter_factory.py +++ b/apptools/type_manager/abstract_adapter_factory.py @@ -1,13 +1,14 @@ """ Abstract base class for all adapter factories. """ # Standard library imports. +from __future__ import absolute_import import logging # Enthought library imports. from traits.api import Delegate, HasTraits, Instance # Local imports. -from adapter_manager import AdapterManager +from .adapter_manager import AdapterManager logger = logging.getLogger(__name__) diff --git a/apptools/type_manager/abstract_factory.py b/apptools/type_manager/abstract_factory.py index c78b2b2a9..3905fdebc 100644 --- a/apptools/type_manager/abstract_factory.py +++ b/apptools/type_manager/abstract_factory.py @@ -1,6 +1,7 @@ """ Abstract base class for all object factories. """ # Standard library imports. +from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/type_manager/abstract_type_system.py b/apptools/type_manager/abstract_type_system.py index 7833d0f2f..b95fcb065 100644 --- a/apptools/type_manager/abstract_type_system.py +++ b/apptools/type_manager/abstract_type_system.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits diff --git a/apptools/type_manager/adaptable.py b/apptools/type_manager/adaptable.py index 594a3d5e4..05086a376 100644 --- a/apptools/type_manager/adaptable.py +++ b/apptools/type_manager/adaptable.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance # Local imports. -from adapter_manager import AdapterManager +from .adapter_manager import AdapterManager class Adaptable(HasTraits): diff --git a/apptools/type_manager/adapter.py b/apptools/type_manager/adapter.py index c2c311691..7f8e4b708 100644 --- a/apptools/type_manager/adapter.py +++ b/apptools/type_manager/adapter.py @@ -2,6 +2,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, HasTraits diff --git a/apptools/type_manager/adapter_factory.py b/apptools/type_manager/adapter_factory.py index 336f7bd11..9fe891f33 100644 --- a/apptools/type_manager/adapter_factory.py +++ b/apptools/type_manager/adapter_factory.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any # Local imports. -from abstract_adapter_factory import AbstractAdapterFactory +from .abstract_adapter_factory import AbstractAdapterFactory class AdapterFactory(AbstractAdapterFactory): diff --git a/apptools/type_manager/adapter_manager.py b/apptools/type_manager/adapter_manager.py index a627e2030..514953cd5 100644 --- a/apptools/type_manager/adapter_manager.py +++ b/apptools/type_manager/adapter_manager.py @@ -1,12 +1,15 @@ """ A manager for adapter factories. """ +from __future__ import absolute_import +from __future__ import print_function +import six # Enthought library imports. from traits.api import Dict, HasTraits, Instance, Property # Local imports. -from abstract_type_system import AbstractTypeSystem -from python_type_system import PythonTypeSystem +from .abstract_type_system import AbstractTypeSystem +from .python_type_system import PythonTypeSystem class AdapterManager(HasTraits): @@ -141,7 +144,7 @@ def register_type_adapters(self, factory, adaptee_class): """ - if isinstance(adaptee_class, basestring): + if isinstance(adaptee_class, six.string_types): adaptee_class_name = adaptee_class else: @@ -179,7 +182,7 @@ def register_adapters(self, factory, adaptee_class): """ - print 'DEPRECATED: use "register_type_adapters" instead.' + print('DEPRECATED: use "register_type_adapters" instead.') self.register_type_adapters(factory, adaptee_class) @@ -188,7 +191,7 @@ def register_adapters(self, factory, adaptee_class): def unregister_adapters(self, factory): """ Unregisters an adapter factory. """ - print 'DEPRECATED: use "unregister_type_adapters" instead.' + print('DEPRECATED: use "unregister_type_adapters" instead.') self.unregister_type_adapters(factory) diff --git a/apptools/type_manager/api.py b/apptools/type_manager/api.py index b7fe5c79d..6779c3937 100644 --- a/apptools/type_manager/api.py +++ b/apptools/type_manager/api.py @@ -1,11 +1,11 @@ -from abstract_adapter_factory import AbstractAdapterFactory -from abstract_factory import AbstractFactory -from abstract_type_system import AbstractTypeSystem -from adaptable import Adaptable -from adapter import Adapter -from adapter_factory import AdapterFactory -from adapter_manager import AdapterManager -from factory import Factory -from hook import add_pre, add_post, remove_pre, remove_post -from python_type_system import PythonObject, PythonTypeSystem -from type_manager import TypeManager +from .abstract_adapter_factory import AbstractAdapterFactory +from .abstract_factory import AbstractFactory +from .abstract_type_system import AbstractTypeSystem +from .adaptable import Adaptable +from .adapter import Adapter +from .adapter_factory import AdapterFactory +from .adapter_manager import AdapterManager +from .factory import Factory +from .hook import add_pre, add_post, remove_pre, remove_post +from .python_type_system import PythonObject, PythonTypeSystem +from .type_manager import TypeManager diff --git a/apptools/type_manager/factory.py b/apptools/type_manager/factory.py index c036723a8..4e585dfbf 100644 --- a/apptools/type_manager/factory.py +++ b/apptools/type_manager/factory.py @@ -2,10 +2,11 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any # Local imports. -from abstract_factory import AbstractFactory +from .abstract_factory import AbstractFactory class Factory(AbstractFactory): diff --git a/apptools/type_manager/hook.py b/apptools/type_manager/hook.py index 7eb83960e..e885f7de7 100644 --- a/apptools/type_manager/hook.py +++ b/apptools/type_manager/hook.py @@ -71,7 +71,7 @@ def hooked_method(self, *args, **kw): # Python < 2.4 does not allow this. try: - hooked_method.func_name = method_name + hooked_method.__name__ = method_name except: pass @@ -81,7 +81,7 @@ def hooked_method(self, *args, **kw): # Is the original method actually defined on the class, or is it # inherited? - hooked_method.__inherited__ = not klass.__dict__.has_key(method_name) + hooked_method.__inherited__ = method_name not in klass.__dict__ # Save the original method... # diff --git a/apptools/type_manager/python_type_system.py b/apptools/type_manager/python_type_system.py index d22efc533..7e82f6091 100644 --- a/apptools/type_manager/python_type_system.py +++ b/apptools/type_manager/python_type_system.py @@ -2,10 +2,11 @@ # Standard library imports. +from __future__ import absolute_import import inspect # Local imports. -from abstract_type_system import AbstractTypeSystem +from .abstract_type_system import AbstractTypeSystem class PythonObject: diff --git a/apptools/type_manager/tests/type_manager_test_case.py b/apptools/type_manager/tests/type_manager_test_case.py index 941e8cc5f..bd30904ae 100644 --- a/apptools/type_manager/tests/type_manager_test_case.py +++ b/apptools/type_manager/tests/type_manager_test_case.py @@ -2,6 +2,7 @@ # Standard library imports. +from __future__ import absolute_import import unittest # Enthought library imports. diff --git a/apptools/type_manager/type_manager.py b/apptools/type_manager/type_manager.py index dfb7c9ca7..92d9fe3dc 100644 --- a/apptools/type_manager/type_manager.py +++ b/apptools/type_manager/type_manager.py @@ -2,14 +2,15 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import HasTraits, Instance, Property, Str # Local imports. -from abstract_type_system import AbstractTypeSystem -from adapter_manager import AdapterManager -from factory import Factory -from hook import add_pre, add_post, remove_pre, remove_post -from python_type_system import PythonTypeSystem +from .abstract_type_system import AbstractTypeSystem +from .adapter_manager import AdapterManager +from .factory import Factory +from .hook import add_pre, add_post, remove_pre, remove_post +from .python_type_system import PythonTypeSystem class TypeManager(HasTraits): diff --git a/apptools/type_manager/util.py b/apptools/type_manager/util.py index 6454efb52..9042dd173 100644 --- a/apptools/type_manager/util.py +++ b/apptools/type_manager/util.py @@ -7,6 +7,7 @@ # Standard library imports. +from __future__ import absolute_import from inspect import getclasstree diff --git a/apptools/type_registry/tests/dummies.py b/apptools/type_registry/tests/dummies.py index 83d98ecbf..18c0484a4 100644 --- a/apptools/type_registry/tests/dummies.py +++ b/apptools/type_registry/tests/dummies.py @@ -1,4 +1,6 @@ +from __future__ import absolute_import import abc +import six class A(object): @@ -21,8 +23,8 @@ class Mixed(A, D): pass -class Abstract(object): - __metaclass__ = abc.ABCMeta +class Abstract(six.with_metaclass(abc.ABCMeta, object)): + pass class Concrete(object): diff --git a/apptools/type_registry/tests/test_lazy_registry.py b/apptools/type_registry/tests/test_lazy_registry.py index 527cc3512..f370bead0 100644 --- a/apptools/type_registry/tests/test_lazy_registry.py +++ b/apptools/type_registry/tests/test_lazy_registry.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import import unittest from ..type_registry import LazyRegistry diff --git a/apptools/type_registry/tests/test_type_registry.py b/apptools/type_registry/tests/test_type_registry.py index 724b7212f..c79fa8933 100644 --- a/apptools/type_registry/tests/test_type_registry.py +++ b/apptools/type_registry/tests/test_type_registry.py @@ -1,3 +1,4 @@ +from __future__ import absolute_import import unittest from ..type_registry import TypeRegistry diff --git a/apptools/type_registry/type_registry.py b/apptools/type_registry/type_registry.py index 4faec06f0..b41a47a45 100644 --- a/apptools/type_registry/type_registry.py +++ b/apptools/type_registry/type_registry.py @@ -1,3 +1,5 @@ +from __future__ import absolute_import +import six def get_mro(obj_class): """ Get a reasonable method resolution order of a class and its superclasses for both old-style and new-style classes. @@ -54,7 +56,7 @@ def push(self, typ, obj): obj : object The object to register. """ - if isinstance(typ, basestring): + if isinstance(typ, six.string_types): # Check the cached types. for cls in self.type_map: if _mod_name_key(cls) == typ: @@ -97,7 +99,7 @@ def pop(self, typ): ------ KeyError if the type is not registered. """ - if isinstance(typ, basestring): + if isinstance(typ, six.string_types): if typ not in self.name_map: # We may have it cached in the type map. We will have to # iterate over all of the types to check. @@ -204,7 +206,7 @@ def lookup_all_by_type(self, typ): return objs # None of the concrete superclasses. Check the ABCs. - for abstract, objs in self.abc_map.iteritems(): + for abstract, objs in self.abc_map.items(): if issubclass(typ, abstract) and objs: return objs diff --git a/apptools/undo/i_command.py b/apptools/undo/i_command.py index 7adb7ac5b..7e7616910 100644 --- a/apptools/undo/i_command.py +++ b/apptools/undo/i_command.py @@ -14,6 +14,7 @@ # Enthought library imports. +from __future__ import absolute_import from traits.api import Any, Interface, Unicode diff --git a/apptools/undo/tests/test_command_stack.py b/apptools/undo/tests/test_command_stack.py index be23e86c5..43e12a8a2 100644 --- a/apptools/undo/tests/test_command_stack.py +++ b/apptools/undo/tests/test_command_stack.py @@ -12,12 +12,14 @@ # # ----------------------------------------------------------------------------- +from __future__ import absolute_import from traits.testing.unittest_tools import unittest from contextlib import contextmanager from nose.tools import assert_equal from apptools.undo.api import CommandStack, UndoManager from apptools.undo.tests.testing_commands import SimpleCommand, UnnamedCommand +from six.moves import range class TestCommandStack(unittest.TestCase): diff --git a/apptools/undo/tests/testing_commands.py b/apptools/undo/tests/testing_commands.py index bfa7a8468..05a87abf6 100644 --- a/apptools/undo/tests/testing_commands.py +++ b/apptools/undo/tests/testing_commands.py @@ -12,6 +12,7 @@ # # ----------------------------------------------------------------------------- +from __future__ import absolute_import from traits.api import Int from apptools.undo.api import AbstractCommand diff --git a/setup.py b/setup.py index e6fb23dea..23f17fc0d 100644 --- a/setup.py +++ b/setup.py @@ -137,5 +137,4 @@ def write_version_py(filename='apptools/_version.py'): packages=find_packages(), platforms=["Windows", "Linux", "Mac OS-X", "Unix", "Solaris"], zip_safe=False, - use_2to3=True ) From a4006ddd0989bdeef938313622fe11e39a0f02df Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 13 May 2019 10:32:27 +0530 Subject: [PATCH 02/12] FIX : Fixes - Replace Long trait type with Int - Do not modify dictionary during iteration modified: apptools/io/h5/dict_node.py modified: apptools/persistence/tests/test_state_pickler.py --- apptools/io/h5/dict_node.py | 6 +++++- apptools/persistence/tests/test_state_pickler.py | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/apptools/io/h5/dict_node.py b/apptools/io/h5/dict_node.py index 397bc172d..33d7de063 100644 --- a/apptools/io/h5/dict_node.py +++ b/apptools/io/h5/dict_node.py @@ -214,8 +214,12 @@ def _handle_array_values(cls, pyt_file, group_path, data): # Remove stored arrays which are no longer in the data dictionary. pyt_children = group._v_children + nodes_to_remove = [] for key in pyt_children.keys(): if key not in data: - pyt_file.remove_node(group, key) + nodes_to_remove.append(key) + + for key in nodes_to_remove: + pyt_file.remove_node(group, key) return out_data diff --git a/apptools/persistence/tests/test_state_pickler.py b/apptools/persistence/tests/test_state_pickler.py index 3a6ed230c..3a60059dd 100644 --- a/apptools/persistence/tests/test_state_pickler.py +++ b/apptools/persistence/tests/test_state_pickler.py @@ -65,7 +65,7 @@ def __init__(self): class TestTraits(HasTraits): b = Bool(False) i = Int(7) - l = Long(12345678901234567890) + l = Int(12345678901234567890) f = Float(math.pi) c = Complex(complex(1.01234, 2.3)) n = Any From 28a8861caab5cae363b06e0359334d2e3ab1dff5 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 13 May 2019 11:04:29 +0530 Subject: [PATCH 03/12] FIX : Pickle long types using StatePickler Explicitly use long type in the type map used to pickle values in StatePickler modified: apptools/persistence/state_pickler.py new file: apptools/persistence/tests/__init__.py modified: apptools/persistence/tests/test_state_pickler.py --- apptools/persistence/state_pickler.py | 2 +- apptools/persistence/tests/__init__.py | 0 apptools/persistence/tests/test_state_pickler.py | 9 +++++++-- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 apptools/persistence/tests/__init__.py diff --git a/apptools/persistence/state_pickler.py b/apptools/persistence/state_pickler.py index 708063c3b..36a78fa81 100644 --- a/apptools/persistence/state_pickler.py +++ b/apptools/persistence/state_pickler.py @@ -273,7 +273,7 @@ def __init__(self): State: self._do_state, } if PY_VER == 2: - type_map[int] = self._do_basic_type + type_map[long] = self._do_basic_type type_map[six.text_type] = self._do_basic_type self.type_map = type_map diff --git a/apptools/persistence/tests/__init__.py b/apptools/persistence/tests/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/apptools/persistence/tests/test_state_pickler.py b/apptools/persistence/tests/test_state_pickler.py index 3a60059dd..1b55309d2 100644 --- a/apptools/persistence/tests/test_state_pickler.py +++ b/apptools/persistence/tests/test_state_pickler.py @@ -13,10 +13,15 @@ import tempfile import numpy +import six from traits.api import Bool, Int, Long, Array, Float, Complex, Any, \ Str, Unicode, Instance, Tuple, List, Dict, HasTraits -from six.moves import range + +if six.PY2: + long_trait_type = Long +else: + long_trait_type = Int try: from tvtk.api import tvtk @@ -65,7 +70,7 @@ def __init__(self): class TestTraits(HasTraits): b = Bool(False) i = Int(7) - l = Int(12345678901234567890) + l = long_trait_type(12345678901234567890) f = Float(math.pi) c = Complex(complex(1.01234, 2.3)) n = Any From 27921db5d77d6844cfea974904484d48a12cf860 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 13 May 2019 14:15:43 +0530 Subject: [PATCH 04/12] CLN : Remove absolute_import imports from future --- apptools/__init__.py | 1 - apptools/appscripting/action/start_recording_action.py | 1 - apptools/appscripting/action/stop_recording_action.py | 1 - apptools/appscripting/bind_event.py | 1 - apptools/appscripting/i_bind_event.py | 1 - apptools/appscripting/i_script_manager.py | 1 - apptools/appscripting/lazy_namespace.py | 1 - apptools/appscripting/script_manager.py | 1 - apptools/appscripting/scriptable.py | 1 - apptools/appscripting/scriptable_type.py | 1 - apptools/help/help_plugin/action/demo_action.py | 1 - apptools/help/help_plugin/action/doc_action.py | 1 - apptools/help/help_plugin/action/example_action.py | 1 - apptools/help/help_plugin/action/util.py | 1 - apptools/help/help_plugin/examples_preferences.py | 1 - apptools/help/help_plugin/help_code.py | 1 - apptools/help/help_plugin/help_doc.py | 1 - apptools/help/help_plugin/help_plugin.py | 1 - apptools/help/help_plugin/help_submenu_manager.py | 1 - apptools/help/help_plugin/i_help_code.py | 1 - apptools/help/help_plugin/i_help_doc.py | 1 - apptools/help/help_plugin/preferences_pages.py | 1 - apptools/io/file.py | 1 - apptools/io/h5/dict_node.py | 1 - apptools/io/h5/file.py | 1 - apptools/io/h5/table_node.py | 1 - apptools/io/h5/tests/test_dict_node.py | 1 - apptools/io/h5/tests/test_file.py | 1 - apptools/io/h5/tests/test_table_node.py | 1 - apptools/io/h5/tests/utils.py | 1 - apptools/io/h5/utils.py | 1 - apptools/io/tests/file_test_case.py | 1 - apptools/io/tests/folder_test_case.py | 1 - apptools/logger/agent/attachments.py | 1 - apptools/logger/agent/quality_agent_mailer.py | 1 - apptools/logger/agent/quality_agent_view.py | 1 - apptools/logger/api.py | 1 - apptools/logger/custom_excepthook.py | 1 - apptools/logger/filtering_handler.py | 1 - apptools/logger/log_point.py | 1 - apptools/logger/log_queue_handler.py | 1 - apptools/logger/logger.py | 1 - apptools/logger/null_handler.py | 1 - apptools/logger/plugin/logger_plugin.py | 1 - apptools/logger/plugin/logger_preferences.py | 1 - apptools/logger/plugin/logger_service.py | 1 - apptools/logger/plugin/view/logger_preferences_page.py | 1 - apptools/logger/plugin/view/logger_view.py | 1 - apptools/logger/util.py | 1 - apptools/lru_cache/__init__.py | 1 - apptools/lru_cache/lru_cache.py | 1 - apptools/lru_cache/tests/test_lru_cache.py | 1 - apptools/naming/__init__.py | 1 - apptools/naming/adapter/__init__.py | 1 - apptools/naming/adapter/api.py | 1 - apptools/naming/adapter/dict_context_adapter.py | 1 - apptools/naming/adapter/dict_context_adapter_factory.py | 1 - apptools/naming/adapter/instance_context_adapter.py | 1 - apptools/naming/adapter/instance_context_adapter_factory.py | 1 - apptools/naming/adapter/list_context_adapter.py | 1 - apptools/naming/adapter/list_context_adapter_factory.py | 1 - apptools/naming/adapter/trait_dict_context_adapter.py | 1 - apptools/naming/adapter/trait_dict_context_adapter_factory.py | 1 - apptools/naming/adapter/trait_list_context_adapter.py | 1 - apptools/naming/adapter/trait_list_context_adapter_factory.py | 1 - apptools/naming/adapter/tuple_context_adapter.py | 1 - apptools/naming/adapter/tuple_context_adapter_factory.py | 1 - apptools/naming/address.py | 1 - apptools/naming/api.py | 1 - apptools/naming/binding.py | 1 - apptools/naming/context.py | 1 - apptools/naming/context_adapter.py | 1 - apptools/naming/context_adapter_factory.py | 1 - apptools/naming/dir_context.py | 1 - apptools/naming/dynamic_context.py | 1 - apptools/naming/initial_context.py | 1 - apptools/naming/initial_context_factory.py | 1 - apptools/naming/naming_event.py | 1 - apptools/naming/naming_manager.py | 1 - apptools/naming/object_factory.py | 1 - apptools/naming/object_serializer.py | 1 - apptools/naming/py_context.py | 1 - apptools/naming/py_object_factory.py | 1 - apptools/naming/pyfs_context.py | 1 - apptools/naming/pyfs_context_factory.py | 1 - apptools/naming/pyfs_initial_context_factory.py | 1 - apptools/naming/pyfs_object_factory.py | 1 - apptools/naming/pyfs_state_factory.py | 1 - apptools/naming/reference.py | 1 - apptools/naming/referenceable.py | 1 - apptools/naming/referenceable_state_factory.py | 1 - apptools/naming/state_factory.py | 1 - apptools/naming/tests/context_test_case.py | 1 - apptools/naming/tests/dir_context_test_case.py | 1 - apptools/naming/tests/py_context_test_case.py | 1 - apptools/naming/tests/pyfs_context_test_case.py | 1 - apptools/naming/trait_defs/__init__.py | 1 - apptools/naming/trait_defs/api.py | 1 - apptools/naming/trait_defs/naming_traits.py | 1 - apptools/naming/ui/api.py | 1 - apptools/naming/ui/context_monitor.py | 1 - apptools/naming/ui/context_node_type.py | 1 - apptools/naming/ui/explorer.py | 1 - apptools/naming/ui/naming_node_manager.py | 1 - apptools/naming/ui/naming_tree.py | 1 - apptools/naming/ui/naming_tree_model.py | 1 - apptools/naming/ui/object_node_type.py | 1 - apptools/permissions/action/api.py | 1 - apptools/permissions/action/login_action.py | 1 - apptools/permissions/action/logout_action.py | 1 - apptools/permissions/action/user_menu_manager.py | 1 - apptools/permissions/adapter_base.py | 1 - apptools/permissions/adapters/pyface_action.py | 1 - apptools/permissions/adapters/qt4_widget.py | 1 - apptools/permissions/adapters/wx_window.py | 1 - apptools/permissions/api.py | 1 - apptools/permissions/default/api.py | 1 - apptools/permissions/default/i_policy_storage.py | 1 - apptools/permissions/default/i_user_database.py | 1 - apptools/permissions/default/i_user_storage.py | 1 - apptools/permissions/default/persistent.py | 1 - apptools/permissions/default/policy_data.py | 1 - apptools/permissions/default/policy_manager.py | 1 - apptools/permissions/default/policy_storage.py | 1 - apptools/permissions/default/role_assignment.py | 1 - apptools/permissions/default/role_definition.py | 1 - apptools/permissions/default/select_role.py | 1 - apptools/permissions/default/select_user.py | 1 - apptools/permissions/default/user_database.py | 1 - apptools/permissions/default/user_manager.py | 1 - apptools/permissions/default/user_storage.py | 1 - apptools/permissions/i_policy_manager.py | 1 - apptools/permissions/i_user.py | 1 - apptools/permissions/i_user_manager.py | 1 - apptools/permissions/package_globals.py | 1 - apptools/permissions/permission.py | 1 - apptools/permissions/permissions_manager.py | 1 - apptools/permissions/secure_proxy.py | 1 - apptools/persistence/file_path.py | 1 - apptools/persistence/project_loader.py | 1 - apptools/persistence/spickle.py | 1 - apptools/persistence/state_pickler.py | 1 - apptools/persistence/tests/test_file_path.py | 1 - apptools/persistence/tests/test_spickle.py | 1 - apptools/persistence/tests/test_state_pickler.py | 1 - apptools/persistence/tests/test_version_registry.py | 1 - apptools/persistence/version_registry.py | 1 - apptools/persistence/versioned_unpickler.py | 1 - apptools/preferences/i_preferences.py | 1 - apptools/preferences/preference_binding.py | 1 - apptools/preferences/preferences.py | 1 - apptools/preferences/preferences_helper.py | 1 - apptools/preferences/scoped_preferences.py | 1 - apptools/preferences/tests/preference_binding_test_case.py | 1 - apptools/preferences/tests/preferences_helper_test_case.py | 1 - apptools/preferences/tests/preferences_test_case.py | 1 - apptools/preferences/tests/py_config_file.py | 1 - apptools/preferences/tests/py_config_file_test_case.py | 1 - apptools/preferences/tests/scoped_preferences_test_case.py | 1 - apptools/preferences/ui/api.py | 1 - apptools/preferences/ui/i_preferences_page.py | 1 - apptools/preferences/ui/preferences_manager.py | 1 - apptools/preferences/ui/preferences_node.py | 1 - apptools/preferences/ui/preferences_page.py | 1 - apptools/preferences/ui/tree_item.py | 1 - apptools/preferences/ui/widget_editor.py | 1 - apptools/scripting/recorder.py | 1 - apptools/scripting/recorder_with_ui.py | 1 - apptools/scripting/tests/test_recorder.py | 1 - apptools/selection/i_selection.py | 1 - apptools/selection/i_selection_provider.py | 1 - apptools/selection/list_selection.py | 1 - apptools/selection/selection_service.py | 1 - apptools/selection/tests/test_list_selection.py | 1 - apptools/selection/tests/test_selection_service.py | 1 - apptools/sweet_pickle/__init__.py | 1 - apptools/sweet_pickle/global_registry.py | 1 - apptools/sweet_pickle/placeholder.py | 1 - apptools/sweet_pickle/tests/class_mapping_test_case.py | 1 - apptools/sweet_pickle/tests/global_registry_test_case.py | 1 - apptools/sweet_pickle/tests/state_function_classes.py | 1 - apptools/sweet_pickle/tests/state_function_test_case.py | 1 - apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py | 1 - apptools/sweet_pickle/tests/updater_test_case.py | 1 - apptools/sweet_pickle/updater.py | 1 - apptools/sweet_pickle/versioned_unpickler.py | 1 - apptools/template/impl/any_context_data_name_item.py | 1 - apptools/template/impl/any_data_name_item.py | 1 - apptools/template/impl/context_data_name_item.py | 1 - apptools/template/impl/i_context_adapter.py | 1 - apptools/template/impl/template_data_context.py | 1 - apptools/template/impl/template_data_source.py | 1 - apptools/template/impl/value_data_name_item.py | 1 - apptools/template/impl/value_nd_data_name_item.py | 1 - apptools/template/imutable_template.py | 1 - apptools/template/itemplate.py | 1 - apptools/template/itemplate_choice.py | 1 - apptools/template/itemplate_data_context.py | 1 - apptools/template/itemplate_data_name_item.py | 1 - apptools/template/itemplate_data_source.py | 1 - apptools/template/mutable_template.py | 1 - apptools/template/template_choice.py | 1 - apptools/template/template_data_name.py | 1 - apptools/template/template_data_names.py | 1 - apptools/template/template_impl.py | 1 - apptools/template/template_traits.py | 1 - apptools/template/test/enable_editor.py | 1 - apptools/template/test/scatter_plot.py | 1 - apptools/template/test/scatter_plot_2.py | 1 - apptools/template/test/scatter_plot_nm.py | 1 - apptools/template/test/template_view.py | 1 - apptools/type_manager/abstract_adapter_factory.py | 1 - apptools/type_manager/abstract_factory.py | 1 - apptools/type_manager/abstract_type_system.py | 1 - apptools/type_manager/adaptable.py | 1 - apptools/type_manager/adapter.py | 1 - apptools/type_manager/adapter_factory.py | 1 - apptools/type_manager/adapter_manager.py | 1 - apptools/type_manager/factory.py | 1 - apptools/type_manager/python_type_system.py | 1 - apptools/type_manager/tests/type_manager_test_case.py | 1 - apptools/type_manager/type_manager.py | 1 - apptools/type_manager/util.py | 1 - apptools/type_registry/tests/dummies.py | 1 - apptools/type_registry/tests/test_lazy_registry.py | 1 - apptools/type_registry/tests/test_type_registry.py | 1 - apptools/type_registry/type_registry.py | 1 - apptools/undo/abstract_command.py | 2 -- apptools/undo/action/abstract_command_stack_action.py | 2 -- apptools/undo/action/api.py | 2 -- apptools/undo/action/command_action.py | 2 -- apptools/undo/action/redo_action.py | 2 -- apptools/undo/action/undo_action.py | 2 -- apptools/undo/api.py | 2 -- apptools/undo/command_stack.py | 2 -- apptools/undo/i_command.py | 1 - apptools/undo/i_command_stack.py | 2 -- apptools/undo/i_undo_manager.py | 2 -- apptools/undo/tests/test_command_stack.py | 1 - apptools/undo/tests/testing_commands.py | 1 - apptools/undo/undo_manager.py | 2 -- 241 files changed, 252 deletions(-) diff --git a/apptools/__init__.py b/apptools/__init__.py index bbedf784e..1a28f9000 100644 --- a/apptools/__init__.py +++ b/apptools/__init__.py @@ -1,7 +1,6 @@ # Copyright (c) 2007-2014 by Enthought, Inc. # All rights reserved. -from __future__ import absolute_import try: from apptools._version import full_version as __version__ except ImportError: diff --git a/apptools/appscripting/action/start_recording_action.py b/apptools/appscripting/action/start_recording_action.py index 263928bdb..e906decfa 100644 --- a/apptools/appscripting/action/start_recording_action.py +++ b/apptools/appscripting/action/start_recording_action.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Action from traits.api import Unicode diff --git a/apptools/appscripting/action/stop_recording_action.py b/apptools/appscripting/action/stop_recording_action.py index 9a8b98309..adf7d17b8 100644 --- a/apptools/appscripting/action/stop_recording_action.py +++ b/apptools/appscripting/action/stop_recording_action.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Unicode diff --git a/apptools/appscripting/bind_event.py b/apptools/appscripting/bind_event.py index b4e85db97..2c289bf7d 100644 --- a/apptools/appscripting/bind_event.py +++ b/apptools/appscripting/bind_event.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, HasTraits, provides, Str # Local imports. diff --git a/apptools/appscripting/i_bind_event.py b/apptools/appscripting/i_bind_event.py index 86cc36f74..b45553802 100644 --- a/apptools/appscripting/i_bind_event.py +++ b/apptools/appscripting/i_bind_event.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Interface, Str diff --git a/apptools/appscripting/i_script_manager.py b/apptools/appscripting/i_script_manager.py index b2e2fd844..cf029ba09 100644 --- a/apptools/appscripting/i_script_manager.py +++ b/apptools/appscripting/i_script_manager.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Bool, Event, Instance, Interface, Unicode # Local imports. diff --git a/apptools/appscripting/lazy_namespace.py b/apptools/appscripting/lazy_namespace.py index 0735b5f78..af04c9400 100644 --- a/apptools/appscripting/lazy_namespace.py +++ b/apptools/appscripting/lazy_namespace.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Callable, HasTraits # Local imports. diff --git a/apptools/appscripting/script_manager.py b/apptools/appscripting/script_manager.py index e573e669f..4a4584375 100644 --- a/apptools/appscripting/script_manager.py +++ b/apptools/appscripting/script_manager.py @@ -14,7 +14,6 @@ # Standard library imports. -from __future__ import absolute_import import datetime import types import weakref diff --git a/apptools/appscripting/scriptable.py b/apptools/appscripting/scriptable.py index f4797b9d6..329e18fde 100644 --- a/apptools/appscripting/scriptable.py +++ b/apptools/appscripting/scriptable.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Property, Undefined from traits.traits import trait_cast diff --git a/apptools/appscripting/scriptable_type.py b/apptools/appscripting/scriptable_type.py index 3cb39c46f..e55dc43ed 100644 --- a/apptools/appscripting/scriptable_type.py +++ b/apptools/appscripting/scriptable_type.py @@ -14,7 +14,6 @@ # Standard library imports. -from __future__ import absolute_import import inspect import types diff --git a/apptools/help/help_plugin/action/demo_action.py b/apptools/help/help_plugin/action/demo_action.py index 8a6be838f..84fa088bb 100644 --- a/apptools/help/help_plugin/action/demo_action.py +++ b/apptools/help/help_plugin/action/demo_action.py @@ -11,7 +11,6 @@ # Thanks for using Enthought open source! # Standard library imports. -from __future__ import absolute_import import logging from os.path import isabs, join, normpath from subprocess import Popen diff --git a/apptools/help/help_plugin/action/doc_action.py b/apptools/help/help_plugin/action/doc_action.py index 20370f765..9851439e0 100644 --- a/apptools/help/help_plugin/action/doc_action.py +++ b/apptools/help/help_plugin/action/doc_action.py @@ -12,7 +12,6 @@ # Standard library imports. -from __future__ import absolute_import import logging from os.path import isabs, join, normpath from subprocess import Popen diff --git a/apptools/help/help_plugin/action/example_action.py b/apptools/help/help_plugin/action/example_action.py index a6879d0e4..54d663096 100644 --- a/apptools/help/help_plugin/action/example_action.py +++ b/apptools/help/help_plugin/action/example_action.py @@ -12,7 +12,6 @@ # Standard library imports. -from __future__ import absolute_import import logging from subprocess import Popen diff --git a/apptools/help/help_plugin/action/util.py b/apptools/help/help_plugin/action/util.py index dec4107ce..e0fdf4514 100644 --- a/apptools/help/help_plugin/action/util.py +++ b/apptools/help/help_plugin/action/util.py @@ -10,7 +10,6 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from __future__ import absolute_import from os.path import isabs, join, normpath import sys diff --git a/apptools/help/help_plugin/examples_preferences.py b/apptools/help/help_plugin/examples_preferences.py index 4fdc5a06d..c7bb62603 100644 --- a/apptools/help/help_plugin/examples_preferences.py +++ b/apptools/help/help_plugin/examples_preferences.py @@ -11,7 +11,6 @@ # Thanks for using Enthought open source! -from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import Either, Enum, File, Str, provides diff --git a/apptools/help/help_plugin/help_code.py b/apptools/help/help_plugin/help_code.py index 830f4a336..69d9e87f7 100644 --- a/apptools/help/help_plugin/help_code.py +++ b/apptools/help/help_plugin/help_code.py @@ -12,7 +12,6 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import File, Str, provides diff --git a/apptools/help/help_plugin/help_doc.py b/apptools/help/help_plugin/help_doc.py index ec87b6008..53e5e611b 100644 --- a/apptools/help/help_plugin/help_doc.py +++ b/apptools/help/help_plugin/help_doc.py @@ -10,7 +10,6 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import Either, File, Str, provides, Bool diff --git a/apptools/help/help_plugin/help_plugin.py b/apptools/help/help_plugin/help_plugin.py index f337cf305..1bebb9317 100644 --- a/apptools/help/help_plugin/help_plugin.py +++ b/apptools/help/help_plugin/help_plugin.py @@ -13,7 +13,6 @@ # Thanks for using Enthought open source! # Standard library imports. -from __future__ import absolute_import import logging import new diff --git a/apptools/help/help_plugin/help_submenu_manager.py b/apptools/help/help_plugin/help_submenu_manager.py index cdc8c59eb..fc23ca5ce 100644 --- a/apptools/help/help_plugin/help_submenu_manager.py +++ b/apptools/help/help_plugin/help_submenu_manager.py @@ -12,7 +12,6 @@ # Standard library imports. -from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/help/help_plugin/i_help_code.py b/apptools/help/help_plugin/i_help_code.py index c999b1135..015166afb 100644 --- a/apptools/help/help_plugin/i_help_code.py +++ b/apptools/help/help_plugin/i_help_code.py @@ -13,7 +13,6 @@ # Thanks for using Enthought open source! -from __future__ import absolute_import from traits.api import Interface, File, Str class IHelpCode(Interface): diff --git a/apptools/help/help_plugin/i_help_doc.py b/apptools/help/help_plugin/i_help_doc.py index a3cc87186..6a6350d46 100644 --- a/apptools/help/help_plugin/i_help_doc.py +++ b/apptools/help/help_plugin/i_help_doc.py @@ -10,7 +10,6 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from __future__ import absolute_import from traits.api import Interface, Either, File, Str, Bool class IHelpDoc(Interface): diff --git a/apptools/help/help_plugin/preferences_pages.py b/apptools/help/help_plugin/preferences_pages.py index b09198b86..f00ad6a3a 100644 --- a/apptools/help/help_plugin/preferences_pages.py +++ b/apptools/help/help_plugin/preferences_pages.py @@ -10,7 +10,6 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from __future__ import absolute_import from apptools.preferences.ui.api import PreferencesPage from traits.api import Either, File, Str from traitsui.api import Group, Item, Label, View diff --git a/apptools/io/file.py b/apptools/io/file.py index 6510fcf4d..aa84a960f 100644 --- a/apptools/io/file.py +++ b/apptools/io/file.py @@ -15,7 +15,6 @@ # Standard/built-in imports. -from __future__ import absolute_import import mimetypes, os, shutil, stat # Enthought library imports. diff --git a/apptools/io/h5/dict_node.py b/apptools/io/h5/dict_node.py index 33d7de063..302de7e11 100644 --- a/apptools/io/h5/dict_node.py +++ b/apptools/io/h5/dict_node.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from contextlib import closing import json diff --git a/apptools/io/h5/file.py b/apptools/io/h5/file.py index bedb0fd70..e3c99536c 100644 --- a/apptools/io/h5/file.py +++ b/apptools/io/h5/file.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from collections import Mapping, MutableMapping from functools import partial diff --git a/apptools/io/h5/table_node.py b/apptools/io/h5/table_node.py index 8891ade5d..5bdb02442 100644 --- a/apptools/io/h5/table_node.py +++ b/apptools/io/h5/table_node.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import numpy as np from pandas import DataFrame from tables.table import Table as PyTablesTable diff --git a/apptools/io/h5/tests/test_dict_node.py b/apptools/io/h5/tests/test_dict_node.py index f812794ab..a6fb37e30 100644 --- a/apptools/io/h5/tests/test_dict_node.py +++ b/apptools/io/h5/tests/test_dict_node.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import numpy as np from numpy.testing import raises, assert_allclose diff --git a/apptools/io/h5/tests/test_file.py b/apptools/io/h5/tests/test_file.py index 13b01ee3f..a13835ae9 100644 --- a/apptools/io/h5/tests/test_file.py +++ b/apptools/io/h5/tests/test_file.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import os from contextlib import closing diff --git a/apptools/io/h5/tests/test_table_node.py b/apptools/io/h5/tests/test_table_node.py index 65961c8fb..fbb731ffd 100644 --- a/apptools/io/h5/tests/test_table_node.py +++ b/apptools/io/h5/tests/test_table_node.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import numpy as np from numpy.testing import assert_allclose from pandas import DataFrame diff --git a/apptools/io/h5/tests/utils.py b/apptools/io/h5/tests/utils.py index c86df85e3..4c5aa0871 100644 --- a/apptools/io/h5/tests/utils.py +++ b/apptools/io/h5/tests/utils.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from contextlib import contextmanager import tempfile import os diff --git a/apptools/io/h5/utils.py b/apptools/io/h5/utils.py index 54ae7d010..495067289 100644 --- a/apptools/io/h5/utils.py +++ b/apptools/io/h5/utils.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from contextlib import contextmanager from .file import H5File diff --git a/apptools/io/tests/file_test_case.py b/apptools/io/tests/file_test_case.py index 354dea5c4..236d711f3 100644 --- a/apptools/io/tests/file_test_case.py +++ b/apptools/io/tests/file_test_case.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import os, shutil, stat, unittest # Enthought library imports. diff --git a/apptools/io/tests/folder_test_case.py b/apptools/io/tests/folder_test_case.py index e3312ad63..47f1085ad 100644 --- a/apptools/io/tests/folder_test_case.py +++ b/apptools/io/tests/folder_test_case.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import os, shutil, stat, unittest from os.path import join diff --git a/apptools/logger/agent/attachments.py b/apptools/logger/agent/attachments.py index 85b34beae..fdf9839e2 100644 --- a/apptools/logger/agent/attachments.py +++ b/apptools/logger/agent/attachments.py @@ -6,7 +6,6 @@ rewrite. """ -from __future__ import absolute_import import logging import os.path from email import Encoders diff --git a/apptools/logger/agent/quality_agent_mailer.py b/apptools/logger/agent/quality_agent_mailer.py index 2706345db..6f1b2cde8 100644 --- a/apptools/logger/agent/quality_agent_mailer.py +++ b/apptools/logger/agent/quality_agent_mailer.py @@ -13,7 +13,6 @@ #------------------------------------------------------------------------------ # Standard library imports. -from __future__ import absolute_import import logging import os diff --git a/apptools/logger/agent/quality_agent_view.py b/apptools/logger/agent/quality_agent_view.py index 557977c97..690dffd6f 100644 --- a/apptools/logger/agent/quality_agent_view.py +++ b/apptools/logger/agent/quality_agent_view.py @@ -13,7 +13,6 @@ #------------------------------------------------------------------------------ # Standard library imports. -from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/logger/api.py b/apptools/logger/api.py index 72ded0338..603c6d971 100644 --- a/apptools/logger/api.py +++ b/apptools/logger/api.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from .logger import add_log_queue_handler, create_log_file_handler from .logger import FORMATTER, LEVEL, LogFileHandler from .log_point import log_point diff --git a/apptools/logger/custom_excepthook.py b/apptools/logger/custom_excepthook.py index f2bb319cc..710cb7158 100644 --- a/apptools/logger/custom_excepthook.py +++ b/apptools/logger/custom_excepthook.py @@ -14,7 +14,6 @@ # Standard library imports. -from __future__ import absolute_import import logging from traceback import format_exception diff --git a/apptools/logger/filtering_handler.py b/apptools/logger/filtering_handler.py index 96a495803..0beb009df 100644 --- a/apptools/logger/filtering_handler.py +++ b/apptools/logger/filtering_handler.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import from __future__ import print_function import logging, inspect, os diff --git a/apptools/logger/log_point.py b/apptools/logger/log_point.py index e53c6d2c9..0e4321ff5 100644 --- a/apptools/logger/log_point.py +++ b/apptools/logger/log_point.py @@ -18,7 +18,6 @@ """ # Standard library imports. -from __future__ import absolute_import import inspect from cStringIO import StringIO diff --git a/apptools/logger/log_queue_handler.py b/apptools/logger/log_queue_handler.py index 6b276e5c3..6ba9a8dc1 100644 --- a/apptools/logger/log_queue_handler.py +++ b/apptools/logger/log_queue_handler.py @@ -13,7 +13,6 @@ #------------------------------------------------------------------------------ # Standard library imports. -from __future__ import absolute_import from logging import Handler # Local imports. diff --git a/apptools/logger/logger.py b/apptools/logger/logger.py index 09d1db4ae..55382772c 100644 --- a/apptools/logger/logger.py +++ b/apptools/logger/logger.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import logging from logging.handlers import RotatingFileHandler diff --git a/apptools/logger/null_handler.py b/apptools/logger/null_handler.py index 7305c08ca..410f7635f 100644 --- a/apptools/logger/null_handler.py +++ b/apptools/logger/null_handler.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import logging diff --git a/apptools/logger/plugin/logger_plugin.py b/apptools/logger/plugin/logger_plugin.py index 6ef4aee95..5f81d02a4 100644 --- a/apptools/logger/plugin/logger_plugin.py +++ b/apptools/logger/plugin/logger_plugin.py @@ -15,7 +15,6 @@ """ # Standard library imports. -from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/logger/plugin/logger_preferences.py b/apptools/logger/plugin/logger_preferences.py index 24cd8fc2d..bbfc17be6 100644 --- a/apptools/logger/plugin/logger_preferences.py +++ b/apptools/logger/plugin/logger_preferences.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import logging from apptools.preferences.api import PreferencesHelper diff --git a/apptools/logger/plugin/logger_service.py b/apptools/logger/plugin/logger_service.py index 4cb74bf17..26b01d7de 100644 --- a/apptools/logger/plugin/logger_service.py +++ b/apptools/logger/plugin/logger_service.py @@ -1,5 +1,4 @@ # Standard library imports -from __future__ import absolute_import from cStringIO import StringIO import logging import os diff --git a/apptools/logger/plugin/view/logger_preferences_page.py b/apptools/logger/plugin/view/logger_preferences_page.py index 7085f21da..ab3955adf 100644 --- a/apptools/logger/plugin/view/logger_preferences_page.py +++ b/apptools/logger/plugin/view/logger_preferences_page.py @@ -12,7 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import import logging from apptools.preferences.ui.api import PreferencesPage diff --git a/apptools/logger/plugin/view/logger_view.py b/apptools/logger/plugin/view/logger_view.py index caab2cb07..beb5bfd14 100644 --- a/apptools/logger/plugin/view/logger_view.py +++ b/apptools/logger/plugin/view/logger_view.py @@ -13,7 +13,6 @@ #------------------------------------------------------------------------------ # Standard library imports -from __future__ import absolute_import from datetime import datetime import logging diff --git a/apptools/logger/util.py b/apptools/logger/util.py index 03cb36852..9ee52a5a8 100644 --- a/apptools/logger/util.py +++ b/apptools/logger/util.py @@ -7,7 +7,6 @@ # Standard library imports. -from __future__ import absolute_import import os from os.path import basename, dirname, isdir, splitdrive, splitext from zipfile import is_zipfile, ZipFile diff --git a/apptools/lru_cache/__init__.py b/apptools/lru_cache/__init__.py index 1859c8fcc..3aae4b199 100644 --- a/apptools/lru_cache/__init__.py +++ b/apptools/lru_cache/__init__.py @@ -1,4 +1,3 @@ # -*- coding: utf-8 -*- -from __future__ import absolute_import from .lru_cache import LRUCache diff --git a/apptools/lru_cache/lru_cache.py b/apptools/lru_cache/lru_cache.py index d92a08389..f798e7c9b 100644 --- a/apptools/lru_cache/lru_cache.py +++ b/apptools/lru_cache/lru_cache.py @@ -13,7 +13,6 @@ # Author: Enthought, Inc. # ----------------------------------------------------------------------------- -from __future__ import absolute_import from threading import RLock try: diff --git a/apptools/lru_cache/tests/test_lru_cache.py b/apptools/lru_cache/tests/test_lru_cache.py index df8e76703..001a838fc 100644 --- a/apptools/lru_cache/tests/test_lru_cache.py +++ b/apptools/lru_cache/tests/test_lru_cache.py @@ -3,7 +3,6 @@ from __future__ import division, print_function -from __future__ import absolute_import from nose.tools import assert_equal from ..lru_cache import LRUCache diff --git a/apptools/naming/__init__.py b/apptools/naming/__init__.py index 3a4aead27..f6a35febc 100644 --- a/apptools/naming/__init__.py +++ b/apptools/naming/__init__.py @@ -15,5 +15,4 @@ preferences. Part of the AppTools project of the Enthought Tool Suite. """ -from __future__ import absolute_import from .api import * diff --git a/apptools/naming/adapter/__init__.py b/apptools/naming/adapter/__init__.py index a8c02da55..0a0e47b0b 100644 --- a/apptools/naming/adapter/__init__.py +++ b/apptools/naming/adapter/__init__.py @@ -1,2 +1 @@ -from __future__ import absolute_import from .api import * diff --git a/apptools/naming/adapter/api.py b/apptools/naming/adapter/api.py index b787a9649..3f49410cd 100644 --- a/apptools/naming/adapter/api.py +++ b/apptools/naming/adapter/api.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from .dict_context_adapter import DictContextAdapter from .dict_context_adapter_factory import DictContextAdapterFactory from .instance_context_adapter import InstanceContextAdapter diff --git a/apptools/naming/adapter/dict_context_adapter.py b/apptools/naming/adapter/dict_context_adapter.py index 1b4f284d2..a4de2f8f6 100644 --- a/apptools/naming/adapter/dict_context_adapter.py +++ b/apptools/naming/adapter/dict_context_adapter.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import Binding, ContextAdapter, naming_manager diff --git a/apptools/naming/adapter/dict_context_adapter_factory.py b/apptools/naming/adapter/dict_context_adapter_factory.py index a4c4258a2..e2f4478d1 100644 --- a/apptools/naming/adapter/dict_context_adapter_factory.py +++ b/apptools/naming/adapter/dict_context_adapter_factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory # Local imports. diff --git a/apptools/naming/adapter/instance_context_adapter.py b/apptools/naming/adapter/instance_context_adapter.py index c087af4d5..4e0e1edc0 100644 --- a/apptools/naming/adapter/instance_context_adapter.py +++ b/apptools/naming/adapter/instance_context_adapter.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import re # Enthought library imports. diff --git a/apptools/naming/adapter/instance_context_adapter_factory.py b/apptools/naming/adapter/instance_context_adapter_factory.py index c73658bb7..b6dde2c99 100644 --- a/apptools/naming/adapter/instance_context_adapter_factory.py +++ b/apptools/naming/adapter/instance_context_adapter_factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory from traits.api import List, Str from apptools.type_manager import PythonObject diff --git a/apptools/naming/adapter/list_context_adapter.py b/apptools/naming/adapter/list_context_adapter.py index 969f1ae3c..1226d84af 100644 --- a/apptools/naming/adapter/list_context_adapter.py +++ b/apptools/naming/adapter/list_context_adapter.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import Binding, ContextAdapter, naming_manager from traits.api import List, Property diff --git a/apptools/naming/adapter/list_context_adapter_factory.py b/apptools/naming/adapter/list_context_adapter_factory.py index 5a161382f..4c953dec8 100644 --- a/apptools/naming/adapter/list_context_adapter_factory.py +++ b/apptools/naming/adapter/list_context_adapter_factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory # Local imports. diff --git a/apptools/naming/adapter/trait_dict_context_adapter.py b/apptools/naming/adapter/trait_dict_context_adapter.py index 41017e2e0..2556f5b2a 100644 --- a/apptools/naming/adapter/trait_dict_context_adapter.py +++ b/apptools/naming/adapter/trait_dict_context_adapter.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Dict, Property, Str # Local imports. diff --git a/apptools/naming/adapter/trait_dict_context_adapter_factory.py b/apptools/naming/adapter/trait_dict_context_adapter_factory.py index 061da936b..373b60116 100644 --- a/apptools/naming/adapter/trait_dict_context_adapter_factory.py +++ b/apptools/naming/adapter/trait_dict_context_adapter_factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory from traits.api import Str, TraitDict diff --git a/apptools/naming/adapter/trait_list_context_adapter.py b/apptools/naming/adapter/trait_list_context_adapter.py index ba72a10e6..a7b0a7425 100644 --- a/apptools/naming/adapter/trait_list_context_adapter.py +++ b/apptools/naming/adapter/trait_list_context_adapter.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, List, Property, Str # Local imports. diff --git a/apptools/naming/adapter/trait_list_context_adapter_factory.py b/apptools/naming/adapter/trait_list_context_adapter_factory.py index e1fad7d5d..191110cb8 100644 --- a/apptools/naming/adapter/trait_list_context_adapter_factory.py +++ b/apptools/naming/adapter/trait_list_context_adapter_factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory from traits.api import Str, TraitList diff --git a/apptools/naming/adapter/tuple_context_adapter.py b/apptools/naming/adapter/tuple_context_adapter.py index 515e030ab..f5f6e9ecb 100644 --- a/apptools/naming/adapter/tuple_context_adapter.py +++ b/apptools/naming/adapter/tuple_context_adapter.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Tuple # Local imports. diff --git a/apptools/naming/adapter/tuple_context_adapter_factory.py b/apptools/naming/adapter/tuple_context_adapter_factory.py index 458a62aab..c87f2d58d 100644 --- a/apptools/naming/adapter/tuple_context_adapter_factory.py +++ b/apptools/naming/adapter/tuple_context_adapter_factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import ContextAdapterFactory # Local imports. diff --git a/apptools/naming/address.py b/apptools/naming/address.py index 084c5a498..138b1f4a8 100644 --- a/apptools/naming/address.py +++ b/apptools/naming/address.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, HasTraits, Str diff --git a/apptools/naming/api.py b/apptools/naming/api.py index 795135d6b..9bd6e227c 100644 --- a/apptools/naming/api.py +++ b/apptools/naming/api.py @@ -11,7 +11,6 @@ # Author: Enthought, Inc. # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import from .exception import NamingError, InvalidNameError, NameAlreadyBoundError from .exception import NameNotFoundError, NotContextError from .exception import OperationNotSupportedError diff --git a/apptools/naming/binding.py b/apptools/naming/binding.py index 6dfc8d97f..ca0508197 100644 --- a/apptools/naming/binding.py +++ b/apptools/naming/binding.py @@ -15,7 +15,6 @@ # Enthought libary imports. -from __future__ import absolute_import from traits.api import Any, HasTraits, Property, Str diff --git a/apptools/naming/context.py b/apptools/naming/context.py index 9d1da3788..fa4d66795 100644 --- a/apptools/naming/context.py +++ b/apptools/naming/context.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Dict, Event, HasTraits, Instance from traits.api import Property, Str from apptools.type_manager.api import TypeManager diff --git a/apptools/naming/context_adapter.py b/apptools/naming/context_adapter.py index 45609d46a..f6ca834e6 100644 --- a/apptools/naming/context_adapter.py +++ b/apptools/naming/context_adapter.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Dict, Instance, Property, Str # Local imports. diff --git a/apptools/naming/context_adapter_factory.py b/apptools/naming/context_adapter_factory.py index 442af0e5a..0289e4c8e 100644 --- a/apptools/naming/context_adapter_factory.py +++ b/apptools/naming/context_adapter_factory.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.type_manager.api import AdapterFactory # Local imports. diff --git a/apptools/naming/dir_context.py b/apptools/naming/dir_context.py index 9d8e21fd4..d8b73cfa2 100644 --- a/apptools/naming/dir_context.py +++ b/apptools/naming/dir_context.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Dict # Local imports. diff --git a/apptools/naming/dynamic_context.py b/apptools/naming/dynamic_context.py index 4ee306a7b..19c2d5478 100644 --- a/apptools/naming/dynamic_context.py +++ b/apptools/naming/dynamic_context.py @@ -41,7 +41,6 @@ """ # Standardlibrary imports -from __future__ import absolute_import import logging # Local imports diff --git a/apptools/naming/initial_context.py b/apptools/naming/initial_context.py index b4f253f43..3a1d5750d 100644 --- a/apptools/naming/initial_context.py +++ b/apptools/naming/initial_context.py @@ -15,7 +15,6 @@ # Local imports. -from __future__ import absolute_import from .context import Context diff --git a/apptools/naming/initial_context_factory.py b/apptools/naming/initial_context_factory.py index 1d2fa859e..8b302b43f 100644 --- a/apptools/naming/initial_context_factory.py +++ b/apptools/naming/initial_context_factory.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits # Local imports. diff --git a/apptools/naming/naming_event.py b/apptools/naming/naming_event.py index b02d9e514..92c0836e3 100644 --- a/apptools/naming/naming_event.py +++ b/apptools/naming/naming_event.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance # Local imports. diff --git a/apptools/naming/naming_manager.py b/apptools/naming/naming_manager.py index 92def9b49..25798ee29 100644 --- a/apptools/naming/naming_manager.py +++ b/apptools/naming/naming_manager.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits diff --git a/apptools/naming/object_factory.py b/apptools/naming/object_factory.py index 4017ed680..32d6e638b 100644 --- a/apptools/naming/object_factory.py +++ b/apptools/naming/object_factory.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits diff --git a/apptools/naming/object_serializer.py b/apptools/naming/object_serializer.py index b6ca1956b..751a80825 100644 --- a/apptools/naming/object_serializer.py +++ b/apptools/naming/object_serializer.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import logging from traceback import print_exc from os.path import splitext diff --git a/apptools/naming/py_context.py b/apptools/naming/py_context.py index 3adf34aa1..df38b43ec 100644 --- a/apptools/naming/py_context.py +++ b/apptools/naming/py_context.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Dict, Instance, Property # Local imports. diff --git a/apptools/naming/py_object_factory.py b/apptools/naming/py_object_factory.py index fcb17009c..be5006725 100644 --- a/apptools/naming/py_object_factory.py +++ b/apptools/naming/py_object_factory.py @@ -15,7 +15,6 @@ # Local imports. -from __future__ import absolute_import from .object_factory import ObjectFactory from .reference import Reference diff --git a/apptools/naming/pyfs_context.py b/apptools/naming/pyfs_context.py index 13b1ae8a1..2a28ceaa8 100644 --- a/apptools/naming/pyfs_context.py +++ b/apptools/naming/pyfs_context.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import six.moves.cPickle, glob, logging, os from os.path import join, splitext diff --git a/apptools/naming/pyfs_context_factory.py b/apptools/naming/pyfs_context_factory.py index c35ac2109..d2f733ec8 100644 --- a/apptools/naming/pyfs_context_factory.py +++ b/apptools/naming/pyfs_context_factory.py @@ -15,7 +15,6 @@ # Local imports. -from __future__ import absolute_import from .object_factory import ObjectFactory from .reference import Reference diff --git a/apptools/naming/pyfs_initial_context_factory.py b/apptools/naming/pyfs_initial_context_factory.py index 127b93d0e..8932ec09a 100644 --- a/apptools/naming/pyfs_initial_context_factory.py +++ b/apptools/naming/pyfs_initial_context_factory.py @@ -15,7 +15,6 @@ # Local imports. -from __future__ import absolute_import from .context import Context from .initial_context_factory import InitialContextFactory from .object_serializer import ObjectSerializer diff --git a/apptools/naming/pyfs_object_factory.py b/apptools/naming/pyfs_object_factory.py index 7b6493d77..117fbb324 100644 --- a/apptools/naming/pyfs_object_factory.py +++ b/apptools/naming/pyfs_object_factory.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.io.api import File # Local imports. diff --git a/apptools/naming/pyfs_state_factory.py b/apptools/naming/pyfs_state_factory.py index 1c7dd0bcc..2fcd58472 100644 --- a/apptools/naming/pyfs_state_factory.py +++ b/apptools/naming/pyfs_state_factory.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.io.api import File # Local imports. diff --git a/apptools/naming/reference.py b/apptools/naming/reference.py index cb3ce3d64..07504990f 100644 --- a/apptools/naming/reference.py +++ b/apptools/naming/reference.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, HasPrivateTraits, List, Str # Local imports. diff --git a/apptools/naming/referenceable.py b/apptools/naming/referenceable.py index c1d6e0813..7e322e49f 100644 --- a/apptools/naming/referenceable.py +++ b/apptools/naming/referenceable.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasPrivateTraits, Instance # Local imports. diff --git a/apptools/naming/referenceable_state_factory.py b/apptools/naming/referenceable_state_factory.py index 6faf6b2fa..9857fb9ac 100644 --- a/apptools/naming/referenceable_state_factory.py +++ b/apptools/naming/referenceable_state_factory.py @@ -15,7 +15,6 @@ # Local imports. -from __future__ import absolute_import from .referenceable import Referenceable from .state_factory import StateFactory diff --git a/apptools/naming/state_factory.py b/apptools/naming/state_factory.py index 12a9dfe4c..16d224a17 100644 --- a/apptools/naming/state_factory.py +++ b/apptools/naming/state_factory.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasPrivateTraits diff --git a/apptools/naming/tests/context_test_case.py b/apptools/naming/tests/context_test_case.py index af32481f8..9c290ebdd 100644 --- a/apptools/naming/tests/context_test_case.py +++ b/apptools/naming/tests/context_test_case.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import unittest # Enthought library imports. diff --git a/apptools/naming/tests/dir_context_test_case.py b/apptools/naming/tests/dir_context_test_case.py index 6d93a4a57..f36358723 100644 --- a/apptools/naming/tests/dir_context_test_case.py +++ b/apptools/naming/tests/dir_context_test_case.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import * # Local imports. diff --git a/apptools/naming/tests/py_context_test_case.py b/apptools/naming/tests/py_context_test_case.py index 749308064..d850a30d0 100644 --- a/apptools/naming/tests/py_context_test_case.py +++ b/apptools/naming/tests/py_context_test_case.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import PyContext # Local imports. diff --git a/apptools/naming/tests/pyfs_context_test_case.py b/apptools/naming/tests/pyfs_context_test_case.py index 784f9ff18..9393afd5e 100644 --- a/apptools/naming/tests/pyfs_context_test_case.py +++ b/apptools/naming/tests/pyfs_context_test_case.py @@ -15,7 +15,6 @@ # Standard library imports. -from __future__ import absolute_import import os, shutil, unittest # Enthought library imports. diff --git a/apptools/naming/trait_defs/__init__.py b/apptools/naming/trait_defs/__init__.py index 206213c42..7edb26e50 100644 --- a/apptools/naming/trait_defs/__init__.py +++ b/apptools/naming/trait_defs/__init__.py @@ -14,5 +14,4 @@ # Imports: #------------------------------------------------------------------------------ -from __future__ import absolute_import from .api import * diff --git a/apptools/naming/trait_defs/api.py b/apptools/naming/trait_defs/api.py index a0825c4f7..681fe634a 100644 --- a/apptools/naming/trait_defs/api.py +++ b/apptools/naming/trait_defs/api.py @@ -10,5 +10,4 @@ # #------------------------------------------------------------------------------ -from __future__ import absolute_import from .naming_traits import NamingInstance diff --git a/apptools/naming/trait_defs/naming_traits.py b/apptools/naming/trait_defs/naming_traits.py index 891118734..cd2a76edc 100644 --- a/apptools/naming/trait_defs/naming_traits.py +++ b/apptools/naming/trait_defs/naming_traits.py @@ -14,7 +14,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import import sys from traits.api \ diff --git a/apptools/naming/ui/api.py b/apptools/naming/ui/api.py index 733e14316..565ef7274 100644 --- a/apptools/naming/ui/api.py +++ b/apptools/naming/ui/api.py @@ -11,7 +11,6 @@ # Author: Enthought, Inc. # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import from .context_monitor import ContextMonitor from .context_node_type import ContextNodeType from .explorer import Explorer, explore diff --git a/apptools/naming/ui/context_monitor.py b/apptools/naming/ui/context_monitor.py index f9fb1645c..fa383607c 100644 --- a/apptools/naming/ui/context_monitor.py +++ b/apptools/naming/ui/context_monitor.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.tree.api import NodeMonitor diff --git a/apptools/naming/ui/context_node_type.py b/apptools/naming/ui/context_node_type.py index 9fd3e5e21..1b53d5a5d 100644 --- a/apptools/naming/ui/context_node_type.py +++ b/apptools/naming/ui/context_node_type.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from __future__ import print_function from apptools.naming.api import Context from pyface.tree.api import NodeType diff --git a/apptools/naming/ui/explorer.py b/apptools/naming/ui/explorer.py index 566426185..6f60c916a 100644 --- a/apptools/naming/ui/explorer.py +++ b/apptools/naming/ui/explorer.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import Binding, PyContext from pyface.api import PythonShell, SplitApplicationWindow from traits.api import Float, Instance, Str diff --git a/apptools/naming/ui/naming_node_manager.py b/apptools/naming/ui/naming_node_manager.py index 09c8b6cbe..98146d051 100644 --- a/apptools/naming/ui/naming_node_manager.py +++ b/apptools/naming/ui/naming_node_manager.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.tree.api import NodeManager diff --git a/apptools/naming/ui/naming_tree.py b/apptools/naming/ui/naming_tree.py index 9970295f2..f36d3251a 100644 --- a/apptools/naming/ui/naming_tree.py +++ b/apptools/naming/ui/naming_tree.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import OperationNotSupportedError from pyface.tree.api import NodeTree from traits.api import Instance diff --git a/apptools/naming/ui/naming_tree_model.py b/apptools/naming/ui/naming_tree_model.py index 4a04f74ac..c1927373d 100644 --- a/apptools/naming/ui/naming_tree_model.py +++ b/apptools/naming/ui/naming_tree_model.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import Binding from pyface.tree.api import NodeTreeModel from traits.api import Instance diff --git a/apptools/naming/ui/object_node_type.py b/apptools/naming/ui/object_node_type.py index 563ee69dc..d56e078a9 100644 --- a/apptools/naming/ui/object_node_type.py +++ b/apptools/naming/ui/object_node_type.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.naming.api import Context from pyface.tree.api import NodeType diff --git a/apptools/permissions/action/api.py b/apptools/permissions/action/api.py index 9aa13c0f4..a946c1c26 100644 --- a/apptools/permissions/action/api.py +++ b/apptools/permissions/action/api.py @@ -12,7 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import from .login_action import LoginAction from .logout_action import LogoutAction from .user_menu_manager import UserMenuManager diff --git a/apptools/permissions/action/login_action.py b/apptools/permissions/action/login_action.py index 200132604..caddc68af 100644 --- a/apptools/permissions/action/login_action.py +++ b/apptools/permissions/action/login_action.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Action from traits.api import Unicode diff --git a/apptools/permissions/action/logout_action.py b/apptools/permissions/action/logout_action.py index 7278ae94e..0ff98cd79 100644 --- a/apptools/permissions/action/logout_action.py +++ b/apptools/permissions/action/logout_action.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Unicode diff --git a/apptools/permissions/action/user_menu_manager.py b/apptools/permissions/action/user_menu_manager.py index b5853c53b..e18e2d95e 100644 --- a/apptools/permissions/action/user_menu_manager.py +++ b/apptools/permissions/action/user_menu_manager.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Group, MenuManager from traits.api import Unicode diff --git a/apptools/permissions/adapter_base.py b/apptools/permissions/adapter_base.py index 53d8fbb23..f832dd506 100644 --- a/apptools/permissions/adapter_base.py +++ b/apptools/permissions/adapter_base.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Bool, HasTraits, Instance, List # Local imports. diff --git a/apptools/permissions/adapters/pyface_action.py b/apptools/permissions/adapters/pyface_action.py index e1f7333d8..33ed2aac0 100644 --- a/apptools/permissions/adapters/pyface_action.py +++ b/apptools/permissions/adapters/pyface_action.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.permissions.adapter_base import AdapterBase from pyface.action.api import Action diff --git a/apptools/permissions/adapters/qt4_widget.py b/apptools/permissions/adapters/qt4_widget.py index a70f0b0af..f95214eb7 100644 --- a/apptools/permissions/adapters/qt4_widget.py +++ b/apptools/permissions/adapters/qt4_widget.py @@ -14,7 +14,6 @@ # Major library imports. -from __future__ import absolute_import from pyface.qt import QtGui # Enthought library imports. diff --git a/apptools/permissions/adapters/wx_window.py b/apptools/permissions/adapters/wx_window.py index 472a1ca9c..eda732290 100644 --- a/apptools/permissions/adapters/wx_window.py +++ b/apptools/permissions/adapters/wx_window.py @@ -14,7 +14,6 @@ # Major library imports. -from __future__ import absolute_import import wx # Enthought library imports. diff --git a/apptools/permissions/api.py b/apptools/permissions/api.py index ba5bf1fc1..030dd87fe 100644 --- a/apptools/permissions/api.py +++ b/apptools/permissions/api.py @@ -12,7 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import from .adapter_base import AdapterBase from .i_policy_manager import IPolicyManager from .i_user import IUser diff --git a/apptools/permissions/default/api.py b/apptools/permissions/default/api.py index fa89a6050..8214cbf88 100644 --- a/apptools/permissions/default/api.py +++ b/apptools/permissions/default/api.py @@ -12,7 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import from .i_policy_storage import IPolicyStorage, PolicyStorageError from .i_user_database import IUserDatabase from .i_user_storage import IUserStorage, UserStorageError diff --git a/apptools/permissions/default/i_policy_storage.py b/apptools/permissions/default/i_policy_storage.py index db253e47c..2c73fc5bd 100644 --- a/apptools/permissions/default/i_policy_storage.py +++ b/apptools/permissions/default/i_policy_storage.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Interface diff --git a/apptools/permissions/default/i_user_database.py b/apptools/permissions/default/i_user_database.py index 9c28112df..5de6e723f 100644 --- a/apptools/permissions/default/i_user_database.py +++ b/apptools/permissions/default/i_user_database.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Bool, Instance, Interface # Local imports. diff --git a/apptools/permissions/default/i_user_storage.py b/apptools/permissions/default/i_user_storage.py index 648c6b8a3..fe478f6dc 100644 --- a/apptools/permissions/default/i_user_storage.py +++ b/apptools/permissions/default/i_user_storage.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Interface, List, Str diff --git a/apptools/permissions/default/persistent.py b/apptools/permissions/default/persistent.py index 2d5e8904a..b453a0680 100644 --- a/apptools/permissions/default/persistent.py +++ b/apptools/permissions/default/persistent.py @@ -14,7 +14,6 @@ # Standard library imports. -from __future__ import absolute_import import six.moves.cPickle as pickle import errno import os diff --git a/apptools/permissions/default/policy_data.py b/apptools/permissions/default/policy_data.py index ea71fce76..83d493442 100644 --- a/apptools/permissions/default/policy_data.py +++ b/apptools/permissions/default/policy_data.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Unicode # Local imports. diff --git a/apptools/permissions/default/policy_manager.py b/apptools/permissions/default/policy_manager.py index a33e70a4b..f5d52ba04 100644 --- a/apptools/permissions/default/policy_manager.py +++ b/apptools/permissions/default/policy_manager.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.api import error from pyface.action.api import Action from traits.api import Dict, HasTraits, provides, Instance, List diff --git a/apptools/permissions/default/policy_storage.py b/apptools/permissions/default/policy_storage.py index de2d38adb..c94453d26 100644 --- a/apptools/permissions/default/policy_storage.py +++ b/apptools/permissions/default/policy_storage.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance, provides # Local imports. diff --git a/apptools/permissions/default/role_assignment.py b/apptools/permissions/default/role_assignment.py index d8bb54ddb..f5b3aeb06 100644 --- a/apptools/permissions/default/role_assignment.py +++ b/apptools/permissions/default/role_assignment.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.api import error from traits.api import Dict, Instance from traitsui.api import Group, Handler, Item, SetEditor, View diff --git a/apptools/permissions/default/role_definition.py b/apptools/permissions/default/role_definition.py index 046c0ceb9..e3b3bbd8c 100644 --- a/apptools/permissions/default/role_definition.py +++ b/apptools/permissions/default/role_definition.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.api import confirm, error, YES from traits.api import Instance from traitsui.api import Group, Handler, Item, SetEditor, View diff --git a/apptools/permissions/default/select_role.py b/apptools/permissions/default/select_role.py index 3412f84d6..c81eb18b1 100644 --- a/apptools/permissions/default/select_role.py +++ b/apptools/permissions/default/select_role.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Unicode from traitsui.api import Item, TableEditor, View from traitsui.menu import OKCancelButtons diff --git a/apptools/permissions/default/select_user.py b/apptools/permissions/default/select_user.py index 41c52a279..f41f0e123 100644 --- a/apptools/permissions/default/select_user.py +++ b/apptools/permissions/default/select_user.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Unicode from traitsui.api import Item, TableEditor, View from traitsui.menu import OKCancelButtons diff --git a/apptools/permissions/default/user_database.py b/apptools/permissions/default/user_database.py index 5addee4e8..d7d88824a 100644 --- a/apptools/permissions/default/user_database.py +++ b/apptools/permissions/default/user_database.py @@ -14,7 +14,6 @@ # Standard library imports. -from __future__ import absolute_import import os # Enthought library imports. diff --git a/apptools/permissions/default/user_manager.py b/apptools/permissions/default/user_manager.py index 8abaebe4e..d720f208a 100644 --- a/apptools/permissions/default/user_manager.py +++ b/apptools/permissions/default/user_manager.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Event, HasTraits, provides, \ Instance, List, Unicode diff --git a/apptools/permissions/default/user_storage.py b/apptools/permissions/default/user_storage.py index 44890ce29..3b17e5fb7 100644 --- a/apptools/permissions/default/user_storage.py +++ b/apptools/permissions/default/user_storage.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance, provides # Local imports. diff --git a/apptools/permissions/i_policy_manager.py b/apptools/permissions/i_policy_manager.py index e9dcd9a9e..3f00cf83d 100644 --- a/apptools/permissions/i_policy_manager.py +++ b/apptools/permissions/i_policy_manager.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Action from traits.api import Instance, Interface, List diff --git a/apptools/permissions/i_user.py b/apptools/permissions/i_user.py index 589a933a4..f836f936f 100644 --- a/apptools/permissions/i_user.py +++ b/apptools/permissions/i_user.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Bool, Dict, Interface, Unicode diff --git a/apptools/permissions/i_user_manager.py b/apptools/permissions/i_user_manager.py index da0443121..9ad01579a 100644 --- a/apptools/permissions/i_user_manager.py +++ b/apptools/permissions/i_user_manager.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from pyface.action.api import Action from traits.api import Bool, Event, Instance, Interface, List diff --git a/apptools/permissions/package_globals.py b/apptools/permissions/package_globals.py index 4ef639477..f99fae2a3 100644 --- a/apptools/permissions/package_globals.py +++ b/apptools/permissions/package_globals.py @@ -14,7 +14,6 @@ # The permissions manager. -from __future__ import absolute_import _permissions_manager = None diff --git a/apptools/permissions/permission.py b/apptools/permissions/permission.py index dc90af6e8..c03dcacb3 100644 --- a/apptools/permissions/permission.py +++ b/apptools/permissions/permission.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Bool, HasTraits, Property, Str, Unicode # Locals imports. diff --git a/apptools/permissions/permissions_manager.py b/apptools/permissions/permissions_manager.py index 275924fa1..d972fba01 100644 --- a/apptools/permissions/permissions_manager.py +++ b/apptools/permissions/permissions_manager.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Bool, HasTraits, Instance # Local imports. diff --git a/apptools/permissions/secure_proxy.py b/apptools/permissions/secure_proxy.py index f1e9cfecb..3d1018921 100644 --- a/apptools/permissions/secure_proxy.py +++ b/apptools/permissions/secure_proxy.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.etsconfig.api import ETSConfig from traitsui.api import Handler diff --git a/apptools/persistence/file_path.py b/apptools/persistence/file_path.py index 702e2b888..71932b2d4 100644 --- a/apptools/persistence/file_path.py +++ b/apptools/persistence/file_path.py @@ -7,7 +7,6 @@ # License: BSD Style. # Standard library imports. -from __future__ import absolute_import import os from os.path import abspath, normpath, dirname, commonprefix, join diff --git a/apptools/persistence/project_loader.py b/apptools/persistence/project_loader.py index e0bd5f69c..9e4f3caf0 100644 --- a/apptools/persistence/project_loader.py +++ b/apptools/persistence/project_loader.py @@ -1,6 +1,5 @@ # Standard library imports -from __future__ import absolute_import import sys import pickle import logging diff --git a/apptools/persistence/spickle.py b/apptools/persistence/spickle.py index 4b86024b7..6d4b759a6 100644 --- a/apptools/persistence/spickle.py +++ b/apptools/persistence/spickle.py @@ -15,7 +15,6 @@ # Copyright (c) 2006-2015, Prabhu Ramachandran # License: BSD Style. -from __future__ import absolute_import import sys if sys.version_info[0] > 2: raise ImportError("This module does not work with Python 3.x") diff --git a/apptools/persistence/state_pickler.py b/apptools/persistence/state_pickler.py index 36a78fa81..077f68c45 100644 --- a/apptools/persistence/state_pickler.py +++ b/apptools/persistence/state_pickler.py @@ -98,7 +98,6 @@ # License: BSD Style. # Standard library imports. -from __future__ import absolute_import import base64 import sys import types diff --git a/apptools/persistence/tests/test_file_path.py b/apptools/persistence/tests/test_file_path.py index 3ef63f7cc..3c15bcfff 100644 --- a/apptools/persistence/tests/test_file_path.py +++ b/apptools/persistence/tests/test_file_path.py @@ -6,7 +6,6 @@ # License: BSD Style. # Standard library imports. -from __future__ import absolute_import import unittest import os import sys diff --git a/apptools/persistence/tests/test_spickle.py b/apptools/persistence/tests/test_spickle.py index 02620c503..20cfd3daf 100644 --- a/apptools/persistence/tests/test_spickle.py +++ b/apptools/persistence/tests/test_spickle.py @@ -6,7 +6,6 @@ # License: BSD Style. -from __future__ import absolute_import import unittest import numpy from pickle import dumps diff --git a/apptools/persistence/tests/test_state_pickler.py b/apptools/persistence/tests/test_state_pickler.py index 1b55309d2..84066db74 100644 --- a/apptools/persistence/tests/test_state_pickler.py +++ b/apptools/persistence/tests/test_state_pickler.py @@ -5,7 +5,6 @@ # Copyright (c) 2005-2015, Enthought, Inc. # License: BSD Style. -from __future__ import absolute_import import base64 import unittest import math diff --git a/apptools/persistence/tests/test_version_registry.py b/apptools/persistence/tests/test_version_registry.py index 2d413512e..3656e062b 100644 --- a/apptools/persistence/tests/test_version_registry.py +++ b/apptools/persistence/tests/test_version_registry.py @@ -6,7 +6,6 @@ # License: BSD Style. # Standard library imports. -from __future__ import absolute_import import sys from imp import reload import unittest diff --git a/apptools/persistence/version_registry.py b/apptools/persistence/version_registry.py index 72505244d..ce7e6e7ed 100644 --- a/apptools/persistence/version_registry.py +++ b/apptools/persistence/version_registry.py @@ -6,7 +6,6 @@ # License: BSD Style. # Standard library imports. -from __future__ import absolute_import import sys import inspect import logging diff --git a/apptools/persistence/versioned_unpickler.py b/apptools/persistence/versioned_unpickler.py index 62d9b3522..05de7ef50 100644 --- a/apptools/persistence/versioned_unpickler.py +++ b/apptools/persistence/versioned_unpickler.py @@ -1,5 +1,4 @@ # Standard library imports -from __future__ import absolute_import from pickle import * import sys, new import logging diff --git a/apptools/preferences/i_preferences.py b/apptools/preferences/i_preferences.py index 4886528a3..4b7596744 100644 --- a/apptools/preferences/i_preferences.py +++ b/apptools/preferences/i_preferences.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Instance, Interface, Str diff --git a/apptools/preferences/preference_binding.py b/apptools/preferences/preference_binding.py index 1dab2fc56..5fe93c907 100644 --- a/apptools/preferences/preference_binding.py +++ b/apptools/preferences/preference_binding.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, HasTraits, Instance, Str, Undefined from traits.api import Unicode diff --git a/apptools/preferences/preferences.py b/apptools/preferences/preferences.py index 4f46ea147..7e511ca6f 100644 --- a/apptools/preferences/preferences.py +++ b/apptools/preferences/preferences.py @@ -1,7 +1,6 @@ """ The default implementation of a node in a preferences hierarchy. """ # Standard library imports. -from __future__ import absolute_import from __future__ import print_function import logging, threading diff --git a/apptools/preferences/preferences_helper.py b/apptools/preferences/preferences_helper.py index cfe7e17af..60602b9f5 100644 --- a/apptools/preferences/preferences_helper.py +++ b/apptools/preferences/preferences_helper.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/preferences/scoped_preferences.py b/apptools/preferences/scoped_preferences.py index b786467d2..74659a11b 100644 --- a/apptools/preferences/scoped_preferences.py +++ b/apptools/preferences/scoped_preferences.py @@ -3,7 +3,6 @@ from __future__ import print_function # Standard library imports. -from __future__ import absolute_import from os.path import join # Enthought library imports. diff --git a/apptools/preferences/tests/preference_binding_test_case.py b/apptools/preferences/tests/preference_binding_test_case.py index f9c68a419..8c9f682c5 100644 --- a/apptools/preferences/tests/preference_binding_test_case.py +++ b/apptools/preferences/tests/preference_binding_test_case.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import os, tempfile, unittest from os.path import join diff --git a/apptools/preferences/tests/preferences_helper_test_case.py b/apptools/preferences/tests/preferences_helper_test_case.py index 661b86017..ba35278b1 100644 --- a/apptools/preferences/tests/preferences_helper_test_case.py +++ b/apptools/preferences/tests/preferences_helper_test_case.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import time import unittest diff --git a/apptools/preferences/tests/preferences_test_case.py b/apptools/preferences/tests/preferences_test_case.py index fb4483135..e2d34899f 100644 --- a/apptools/preferences/tests/preferences_test_case.py +++ b/apptools/preferences/tests/preferences_test_case.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import os, tempfile, unittest from os.path import join diff --git a/apptools/preferences/tests/py_config_file.py b/apptools/preferences/tests/py_config_file.py index d46c1b575..2ce946daa 100644 --- a/apptools/preferences/tests/py_config_file.py +++ b/apptools/preferences/tests/py_config_file.py @@ -1,6 +1,5 @@ """ A Python based configuration file with hierarchical sections. """ from __future__ import print_function -from __future__ import absolute_import import six diff --git a/apptools/preferences/tests/py_config_file_test_case.py b/apptools/preferences/tests/py_config_file_test_case.py index 314a1076e..00770d71a 100644 --- a/apptools/preferences/tests/py_config_file_test_case.py +++ b/apptools/preferences/tests/py_config_file_test_case.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import os, tempfile, unittest from os.path import join diff --git a/apptools/preferences/tests/scoped_preferences_test_case.py b/apptools/preferences/tests/scoped_preferences_test_case.py index 1f8f8c7bc..c54c0db87 100644 --- a/apptools/preferences/tests/scoped_preferences_test_case.py +++ b/apptools/preferences/tests/scoped_preferences_test_case.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import os, tempfile, unittest from os.path import join diff --git a/apptools/preferences/ui/api.py b/apptools/preferences/ui/api.py index 478673811..8eccdc052 100644 --- a/apptools/preferences/ui/api.py +++ b/apptools/preferences/ui/api.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from .i_preferences_page import IPreferencesPage from .preferences_manager import PreferencesManager diff --git a/apptools/preferences/ui/i_preferences_page.py b/apptools/preferences/ui/i_preferences_page.py index f661cf10b..ff38c7bfb 100644 --- a/apptools/preferences/ui/i_preferences_page.py +++ b/apptools/preferences/ui/i_preferences_page.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Interface, Str diff --git a/apptools/preferences/ui/preferences_manager.py b/apptools/preferences/ui/preferences_manager.py index 5d86ef012..67f023f37 100644 --- a/apptools/preferences/ui/preferences_manager.py +++ b/apptools/preferences/ui/preferences_manager.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance, List, Property, \ Any, Bool, Dict from traitsui.api import Handler, HSplit, Item, TreeEditor diff --git a/apptools/preferences/ui/preferences_node.py b/apptools/preferences/ui/preferences_node.py index 2a72b1696..3b00def00 100644 --- a/apptools/preferences/ui/preferences_node.py +++ b/apptools/preferences/ui/preferences_node.py @@ -15,7 +15,6 @@ # Enthought library imports. -from __future__ import absolute_import from __future__ import print_function from traits.api import Delegate, Instance, Str diff --git a/apptools/preferences/ui/preferences_page.py b/apptools/preferences/ui/preferences_page.py index 7ac3c9e81..fa410db53 100644 --- a/apptools/preferences/ui/preferences_page.py +++ b/apptools/preferences/ui/preferences_page.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from apptools.preferences.api import PreferencesHelper from traits.api import Any, Dict, Str, provides diff --git a/apptools/preferences/ui/tree_item.py b/apptools/preferences/ui/tree_item.py index de0067c2a..7e163386d 100644 --- a/apptools/preferences/ui/tree_item.py +++ b/apptools/preferences/ui/tree_item.py @@ -33,7 +33,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Bool, HasTraits, Instance, List, Property diff --git a/apptools/preferences/ui/widget_editor.py b/apptools/preferences/ui/widget_editor.py index 1c0161808..187cfed13 100644 --- a/apptools/preferences/ui/widget_editor.py +++ b/apptools/preferences/ui/widget_editor.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.etsconfig.api import ETSConfig from traits.api import Any from traitsui.api import EditorFactory diff --git a/apptools/scripting/recorder.py b/apptools/scripting/recorder.py index cbf1e91d9..15ca34d8f 100644 --- a/apptools/scripting/recorder.py +++ b/apptools/scripting/recorder.py @@ -9,7 +9,6 @@ # Copyright (c) 2008-2015, Enthought, Inc. # License: BSD Style. -from __future__ import absolute_import import warnings import sys import six diff --git a/apptools/scripting/recorder_with_ui.py b/apptools/scripting/recorder_with_ui.py index eef0cff66..ad752e427 100644 --- a/apptools/scripting/recorder_with_ui.py +++ b/apptools/scripting/recorder_with_ui.py @@ -5,7 +5,6 @@ # Copyright (c) 2008, Prabhu Ramachandran. # License: BSD Style. -from __future__ import absolute_import from traits.api import Code, Button, Int, on_trait_change, Any from traitsui.api import (View, Item, Group, HGroup, CodeEditor, spring, Handler) diff --git a/apptools/scripting/tests/test_recorder.py b/apptools/scripting/tests/test_recorder.py index 3e2ed7bb8..c3ec460f6 100644 --- a/apptools/scripting/tests/test_recorder.py +++ b/apptools/scripting/tests/test_recorder.py @@ -5,7 +5,6 @@ # Copyright (c) 2008-2015, Enthought, Inc. # License: BSD Style. -from __future__ import absolute_import import unittest from traits.api import (HasTraits, Float, Instance, diff --git a/apptools/selection/i_selection.py b/apptools/selection/i_selection.py index 3f7b5aa70..4831234a6 100644 --- a/apptools/selection/i_selection.py +++ b/apptools/selection/i_selection.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from traits.api import Interface, List, Str diff --git a/apptools/selection/i_selection_provider.py b/apptools/selection/i_selection_provider.py index 9740a998c..cd98b9889 100644 --- a/apptools/selection/i_selection_provider.py +++ b/apptools/selection/i_selection_provider.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from traits.api import Event, Interface, Str diff --git a/apptools/selection/list_selection.py b/apptools/selection/list_selection.py index 940a3ebed..9dabe1a47 100644 --- a/apptools/selection/list_selection.py +++ b/apptools/selection/list_selection.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from traits.api import HasTraits, List, provides, Str from apptools.selection.i_selection import IListSelection diff --git a/apptools/selection/selection_service.py b/apptools/selection/selection_service.py index de8cce5f9..94c55fd77 100644 --- a/apptools/selection/selection_service.py +++ b/apptools/selection/selection_service.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from traits.api import Dict, HasTraits from apptools.selection.errors import ( diff --git a/apptools/selection/tests/test_list_selection.py b/apptools/selection/tests/test_list_selection.py index 07db179bd..901b2ed3c 100644 --- a/apptools/selection/tests/test_list_selection.py +++ b/apptools/selection/tests/test_list_selection.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import numpy from traits.testing.unittest_tools import unittest diff --git a/apptools/selection/tests/test_selection_service.py b/apptools/selection/tests/test_selection_service.py index 74fa1c8aa..4aacf829d 100644 --- a/apptools/selection/tests/test_selection_service.py +++ b/apptools/selection/tests/test_selection_service.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import from traits.api import Any, Event, HasTraits, List, provides, Str from traits.testing.unittest_tools import unittest diff --git a/apptools/sweet_pickle/__init__.py b/apptools/sweet_pickle/__init__.py index 26e83de57..f7bb7b1f1 100644 --- a/apptools/sweet_pickle/__init__.py +++ b/apptools/sweet_pickle/__init__.py @@ -106,7 +106,6 @@ ############################################################################## # Expose our custom pickler as the standard Unpickler -from __future__ import absolute_import from .versioned_unpickler import VersionedUnpickler as Unpickler # Use our custom unpickler to load from files diff --git a/apptools/sweet_pickle/global_registry.py b/apptools/sweet_pickle/global_registry.py index c034d2c8d..37f69e0a5 100644 --- a/apptools/sweet_pickle/global_registry.py +++ b/apptools/sweet_pickle/global_registry.py @@ -38,7 +38,6 @@ class instances into the project. framework manages the repository. """ -from __future__ import absolute_import try: import six.moves._thread as _thread except ImportError: diff --git a/apptools/sweet_pickle/placeholder.py b/apptools/sweet_pickle/placeholder.py index ba599209e..90c8bb639 100644 --- a/apptools/sweet_pickle/placeholder.py +++ b/apptools/sweet_pickle/placeholder.py @@ -12,7 +12,6 @@ """ # Enthought library imports -from __future__ import absolute_import from traits.api import HasTraits diff --git a/apptools/sweet_pickle/tests/class_mapping_test_case.py b/apptools/sweet_pickle/tests/class_mapping_test_case.py index 3909566de..14b26a6fc 100644 --- a/apptools/sweet_pickle/tests/class_mapping_test_case.py +++ b/apptools/sweet_pickle/tests/class_mapping_test_case.py @@ -12,7 +12,6 @@ """ # Standard library imports. -from __future__ import absolute_import import unittest # Enthought library imports diff --git a/apptools/sweet_pickle/tests/global_registry_test_case.py b/apptools/sweet_pickle/tests/global_registry_test_case.py index e2f6c45e7..4cdefac8e 100644 --- a/apptools/sweet_pickle/tests/global_registry_test_case.py +++ b/apptools/sweet_pickle/tests/global_registry_test_case.py @@ -11,7 +11,6 @@ """ # Standard library imports. -from __future__ import absolute_import import unittest # Enthought library imports diff --git a/apptools/sweet_pickle/tests/state_function_classes.py b/apptools/sweet_pickle/tests/state_function_classes.py index a09774934..073b4962a 100644 --- a/apptools/sweet_pickle/tests/state_function_classes.py +++ b/apptools/sweet_pickle/tests/state_function_classes.py @@ -8,7 +8,6 @@ #----------------------------------------------------------------------------- # Standard library imports -from __future__ import absolute_import import logging # Enthought library imports diff --git a/apptools/sweet_pickle/tests/state_function_test_case.py b/apptools/sweet_pickle/tests/state_function_test_case.py index 54f891c3a..223188b82 100644 --- a/apptools/sweet_pickle/tests/state_function_test_case.py +++ b/apptools/sweet_pickle/tests/state_function_test_case.py @@ -12,7 +12,6 @@ """ # Standard library imports. -from __future__ import absolute_import import unittest import logging diff --git a/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py b/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py index e7a3bc1ff..6ab694126 100644 --- a/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py +++ b/apptools/sweet_pickle/tests/two_stage_unpickler_test_case.py @@ -8,7 +8,6 @@ #----------------------------------------------------------------------------- # Test cases. -from __future__ import absolute_import from __future__ import print_function import random import pickle diff --git a/apptools/sweet_pickle/tests/updater_test_case.py b/apptools/sweet_pickle/tests/updater_test_case.py index 1b5ab8765..195f84a44 100644 --- a/apptools/sweet_pickle/tests/updater_test_case.py +++ b/apptools/sweet_pickle/tests/updater_test_case.py @@ -11,7 +11,6 @@ """ # Standard library imports. -from __future__ import absolute_import import unittest import logging diff --git a/apptools/sweet_pickle/updater.py b/apptools/sweet_pickle/updater.py index 6c0c2256c..32207205a 100644 --- a/apptools/sweet_pickle/updater.py +++ b/apptools/sweet_pickle/updater.py @@ -12,7 +12,6 @@ """ # Standard library imports -from __future__ import absolute_import import logging # Enthought library imports diff --git a/apptools/sweet_pickle/versioned_unpickler.py b/apptools/sweet_pickle/versioned_unpickler.py index 6cec6d8bd..8fb29366b 100644 --- a/apptools/sweet_pickle/versioned_unpickler.py +++ b/apptools/sweet_pickle/versioned_unpickler.py @@ -17,7 +17,6 @@ """ # Standard library imports. -from __future__ import absolute_import import sys import logging from os import path diff --git a/apptools/template/impl/any_context_data_name_item.py b/apptools/template/impl/any_context_data_name_item.py index 77119dbd5..4fac1de2f 100644 --- a/apptools/template/impl/any_context_data_name_item.py +++ b/apptools/template/impl/any_context_data_name_item.py @@ -23,7 +23,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Property, provides, on_trait_change diff --git a/apptools/template/impl/any_data_name_item.py b/apptools/template/impl/any_data_name_item.py index 3e2248f38..058c50698 100644 --- a/apptools/template/impl/any_data_name_item.py +++ b/apptools/template/impl/any_data_name_item.py @@ -21,7 +21,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Property, provides diff --git a/apptools/template/impl/context_data_name_item.py b/apptools/template/impl/context_data_name_item.py index cf533ccf7..0e4c52b7e 100644 --- a/apptools/template/impl/context_data_name_item.py +++ b/apptools/template/impl/context_data_name_item.py @@ -21,7 +21,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from apptools.template.template_traits \ import TStr diff --git a/apptools/template/impl/i_context_adapter.py b/apptools/template/impl/i_context_adapter.py index 5d27ee2a0..21514b16e 100644 --- a/apptools/template/impl/i_context_adapter.py +++ b/apptools/template/impl/i_context_adapter.py @@ -20,7 +20,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Adapter, Str, List, adapts diff --git a/apptools/template/impl/template_data_context.py b/apptools/template/impl/template_data_context.py index 2ba484e0c..4fd1cf714 100644 --- a/apptools/template/impl/template_data_context.py +++ b/apptools/template/impl/template_data_context.py @@ -23,7 +23,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api\ import HasPrivateTraits, Dict, Str, Any, Property, provides, \ cached_property diff --git a/apptools/template/impl/template_data_source.py b/apptools/template/impl/template_data_source.py index 4922e7f75..eb6ec8460 100644 --- a/apptools/template/impl/template_data_source.py +++ b/apptools/template/impl/template_data_source.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import provides diff --git a/apptools/template/impl/value_data_name_item.py b/apptools/template/impl/value_data_name_item.py index 9fe6bca3d..7456c1c49 100644 --- a/apptools/template/impl/value_data_name_item.py +++ b/apptools/template/impl/value_data_name_item.py @@ -23,7 +23,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Bool diff --git a/apptools/template/impl/value_nd_data_name_item.py b/apptools/template/impl/value_nd_data_name_item.py index a0ef1a3f3..bfd5d619f 100644 --- a/apptools/template/impl/value_nd_data_name_item.py +++ b/apptools/template/impl/value_nd_data_name_item.py @@ -23,7 +23,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from numpy \ import array diff --git a/apptools/template/imutable_template.py b/apptools/template/imutable_template.py index 9a7c54686..60a9d3237 100644 --- a/apptools/template/imutable_template.py +++ b/apptools/template/imutable_template.py @@ -17,7 +17,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Event diff --git a/apptools/template/itemplate.py b/apptools/template/itemplate.py index 17011f617..4f4de7956 100644 --- a/apptools/template/itemplate.py +++ b/apptools/template/itemplate.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Interface diff --git a/apptools/template/itemplate_choice.py b/apptools/template/itemplate_choice.py index 78582c18c..06f08eb4d 100644 --- a/apptools/template/itemplate_choice.py +++ b/apptools/template/itemplate_choice.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Interface, Str diff --git a/apptools/template/itemplate_data_context.py b/apptools/template/itemplate_data_context.py index 434d4ef18..edd13f02d 100644 --- a/apptools/template/itemplate_data_context.py +++ b/apptools/template/itemplate_data_context.py @@ -21,7 +21,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api\ import Interface, List, Str diff --git a/apptools/template/itemplate_data_name_item.py b/apptools/template/itemplate_data_name_item.py index 4a9aecd62..c58ad9db8 100644 --- a/apptools/template/itemplate_data_name_item.py +++ b/apptools/template/itemplate_data_name_item.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Interface, Instance, List diff --git a/apptools/template/itemplate_data_source.py b/apptools/template/itemplate_data_source.py index 3c7f523a2..b4f7b59be 100644 --- a/apptools/template/itemplate_data_source.py +++ b/apptools/template/itemplate_data_source.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Interface diff --git a/apptools/template/mutable_template.py b/apptools/template/mutable_template.py index 75f8334ba..4ddc40752 100644 --- a/apptools/template/mutable_template.py +++ b/apptools/template/mutable_template.py @@ -17,7 +17,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Event, provides diff --git a/apptools/template/template_choice.py b/apptools/template/template_choice.py index 567712833..a02addc1b 100644 --- a/apptools/template/template_choice.py +++ b/apptools/template/template_choice.py @@ -15,7 +15,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Str, provides diff --git a/apptools/template/template_data_name.py b/apptools/template/template_data_name.py index b736237fe..1d686153e 100644 --- a/apptools/template/template_data_name.py +++ b/apptools/template/template_data_name.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Bool, Property, Undefined, \ on_trait_change, cached_property diff --git a/apptools/template/template_data_names.py b/apptools/template/template_data_names.py index 55fe8612f..1f000b1dd 100644 --- a/apptools/template/template_data_names.py +++ b/apptools/template/template_data_names.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Instance, Int, List, Property, Delegate, \ cached_property diff --git a/apptools/template/template_impl.py b/apptools/template/template_impl.py index 659c46a24..5913652aa 100644 --- a/apptools/template/template_impl.py +++ b/apptools/template/template_impl.py @@ -19,7 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Undefined, provides diff --git a/apptools/template/template_traits.py b/apptools/template/template_traits.py index 2bca7dcc9..b277a7a12 100644 --- a/apptools/template/template_traits.py +++ b/apptools/template/template_traits.py @@ -17,7 +17,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Instance, Int, Float, Str, List, Bool, Range, TraitType, Undefined diff --git a/apptools/template/test/enable_editor.py b/apptools/template/test/enable_editor.py index 8f5e23307..06f872afa 100644 --- a/apptools/template/test/enable_editor.py +++ b/apptools/template/test/enable_editor.py @@ -17,7 +17,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import import wx from traitsui.wx.editor \ diff --git a/apptools/template/test/scatter_plot.py b/apptools/template/test/scatter_plot.py index 08e275dd4..d0ea06b5b 100644 --- a/apptools/template/test/scatter_plot.py +++ b/apptools/template/test/scatter_plot.py @@ -18,7 +18,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import HasPrivateTraits, Undefined diff --git a/apptools/template/test/scatter_plot_2.py b/apptools/template/test/scatter_plot_2.py index b0a5612ef..91a769c81 100644 --- a/apptools/template/test/scatter_plot_2.py +++ b/apptools/template/test/scatter_plot_2.py @@ -20,7 +20,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Undefined diff --git a/apptools/template/test/scatter_plot_nm.py b/apptools/template/test/scatter_plot_nm.py index b428c34a6..bd808fda0 100644 --- a/apptools/template/test/scatter_plot_nm.py +++ b/apptools/template/test/scatter_plot_nm.py @@ -20,7 +20,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api \ import Undefined diff --git a/apptools/template/test/template_view.py b/apptools/template/test/template_view.py index 23f460b28..3f7ddf77f 100644 --- a/apptools/template/test/template_view.py +++ b/apptools/template/test/template_view.py @@ -17,7 +17,6 @@ # Imports: #------------------------------------------------------------------------------- -from __future__ import absolute_import import sys from os.path \ diff --git a/apptools/type_manager/abstract_adapter_factory.py b/apptools/type_manager/abstract_adapter_factory.py index aab0f54d7..eb72aa175 100644 --- a/apptools/type_manager/abstract_adapter_factory.py +++ b/apptools/type_manager/abstract_adapter_factory.py @@ -1,7 +1,6 @@ """ Abstract base class for all adapter factories. """ # Standard library imports. -from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/type_manager/abstract_factory.py b/apptools/type_manager/abstract_factory.py index 3905fdebc..c78b2b2a9 100644 --- a/apptools/type_manager/abstract_factory.py +++ b/apptools/type_manager/abstract_factory.py @@ -1,7 +1,6 @@ """ Abstract base class for all object factories. """ # Standard library imports. -from __future__ import absolute_import import logging # Enthought library imports. diff --git a/apptools/type_manager/abstract_type_system.py b/apptools/type_manager/abstract_type_system.py index b95fcb065..7833d0f2f 100644 --- a/apptools/type_manager/abstract_type_system.py +++ b/apptools/type_manager/abstract_type_system.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits diff --git a/apptools/type_manager/adaptable.py b/apptools/type_manager/adaptable.py index 05086a376..6a996b45d 100644 --- a/apptools/type_manager/adaptable.py +++ b/apptools/type_manager/adaptable.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance # Local imports. diff --git a/apptools/type_manager/adapter.py b/apptools/type_manager/adapter.py index 7f8e4b708..c2c311691 100644 --- a/apptools/type_manager/adapter.py +++ b/apptools/type_manager/adapter.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, HasTraits diff --git a/apptools/type_manager/adapter_factory.py b/apptools/type_manager/adapter_factory.py index 9fe891f33..8d2188ba7 100644 --- a/apptools/type_manager/adapter_factory.py +++ b/apptools/type_manager/adapter_factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any # Local imports. diff --git a/apptools/type_manager/adapter_manager.py b/apptools/type_manager/adapter_manager.py index 514953cd5..74d4d26af 100644 --- a/apptools/type_manager/adapter_manager.py +++ b/apptools/type_manager/adapter_manager.py @@ -1,6 +1,5 @@ """ A manager for adapter factories. """ -from __future__ import absolute_import from __future__ import print_function import six diff --git a/apptools/type_manager/factory.py b/apptools/type_manager/factory.py index 4e585dfbf..ae70191ee 100644 --- a/apptools/type_manager/factory.py +++ b/apptools/type_manager/factory.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any # Local imports. diff --git a/apptools/type_manager/python_type_system.py b/apptools/type_manager/python_type_system.py index 7e82f6091..6cd14e5d2 100644 --- a/apptools/type_manager/python_type_system.py +++ b/apptools/type_manager/python_type_system.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import inspect # Local imports. diff --git a/apptools/type_manager/tests/type_manager_test_case.py b/apptools/type_manager/tests/type_manager_test_case.py index bd30904ae..941e8cc5f 100644 --- a/apptools/type_manager/tests/type_manager_test_case.py +++ b/apptools/type_manager/tests/type_manager_test_case.py @@ -2,7 +2,6 @@ # Standard library imports. -from __future__ import absolute_import import unittest # Enthought library imports. diff --git a/apptools/type_manager/type_manager.py b/apptools/type_manager/type_manager.py index 92d9fe3dc..eff74eea7 100644 --- a/apptools/type_manager/type_manager.py +++ b/apptools/type_manager/type_manager.py @@ -2,7 +2,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import HasTraits, Instance, Property, Str # Local imports. diff --git a/apptools/type_manager/util.py b/apptools/type_manager/util.py index 9042dd173..6454efb52 100644 --- a/apptools/type_manager/util.py +++ b/apptools/type_manager/util.py @@ -7,7 +7,6 @@ # Standard library imports. -from __future__ import absolute_import from inspect import getclasstree diff --git a/apptools/type_registry/tests/dummies.py b/apptools/type_registry/tests/dummies.py index 18c0484a4..ecd3ecce7 100644 --- a/apptools/type_registry/tests/dummies.py +++ b/apptools/type_registry/tests/dummies.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import abc import six diff --git a/apptools/type_registry/tests/test_lazy_registry.py b/apptools/type_registry/tests/test_lazy_registry.py index f370bead0..527cc3512 100644 --- a/apptools/type_registry/tests/test_lazy_registry.py +++ b/apptools/type_registry/tests/test_lazy_registry.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import unittest from ..type_registry import LazyRegistry diff --git a/apptools/type_registry/tests/test_type_registry.py b/apptools/type_registry/tests/test_type_registry.py index c79fa8933..724b7212f 100644 --- a/apptools/type_registry/tests/test_type_registry.py +++ b/apptools/type_registry/tests/test_type_registry.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import unittest from ..type_registry import TypeRegistry diff --git a/apptools/type_registry/type_registry.py b/apptools/type_registry/type_registry.py index b41a47a45..45c1c8671 100644 --- a/apptools/type_registry/type_registry.py +++ b/apptools/type_registry/type_registry.py @@ -1,4 +1,3 @@ -from __future__ import absolute_import import six def get_mro(obj_class): """ Get a reasonable method resolution order of a class and its diff --git a/apptools/undo/abstract_command.py b/apptools/undo/abstract_command.py index 4deb01c52..90818a7e3 100644 --- a/apptools/undo/abstract_command.py +++ b/apptools/undo/abstract_command.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Enthought library imports. from traits.api import Any, HasTraits, Unicode, provides diff --git a/apptools/undo/action/abstract_command_stack_action.py b/apptools/undo/action/abstract_command_stack_action.py index 2b6a32431..f9fccacea 100644 --- a/apptools/undo/action/abstract_command_stack_action.py +++ b/apptools/undo/action/abstract_command_stack_action.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Enthought library imports. from pyface.action.api import Action from traits.api import Instance diff --git a/apptools/undo/action/api.py b/apptools/undo/action/api.py index e56d0e17f..b9d0c7d6b 100644 --- a/apptools/undo/action/api.py +++ b/apptools/undo/action/api.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - from .command_action import CommandAction from .redo_action import RedoAction from .undo_action import UndoAction diff --git a/apptools/undo/action/command_action.py b/apptools/undo/action/command_action.py index c572a0d4a..82be27eaa 100644 --- a/apptools/undo/action/command_action.py +++ b/apptools/undo/action/command_action.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Enthought library imports. from pyface.action.api import Action from traits.api import Any, Callable, Instance diff --git a/apptools/undo/action/redo_action.py b/apptools/undo/action/redo_action.py index 0e4b31369..1d9aa8074 100644 --- a/apptools/undo/action/redo_action.py +++ b/apptools/undo/action/redo_action.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Local imports. from .abstract_command_stack_action import AbstractCommandStackAction diff --git a/apptools/undo/action/undo_action.py b/apptools/undo/action/undo_action.py index f3dd15b89..c95463a92 100644 --- a/apptools/undo/action/undo_action.py +++ b/apptools/undo/action/undo_action.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Local imports. from .abstract_command_stack_action import AbstractCommandStackAction diff --git a/apptools/undo/api.py b/apptools/undo/api.py index 54dee78d3..d110cee2e 100644 --- a/apptools/undo/api.py +++ b/apptools/undo/api.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - from .abstract_command import AbstractCommand from .command_stack import CommandStack from .i_command import ICommand diff --git a/apptools/undo/command_stack.py b/apptools/undo/command_stack.py index 367c1150f..6e6270c14 100644 --- a/apptools/undo/command_stack.py +++ b/apptools/undo/command_stack.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Enthought library imports. from traits.api import Bool, HasTraits, Instance, Int, List, Property, \ Unicode, provides diff --git a/apptools/undo/i_command.py b/apptools/undo/i_command.py index 7e7616910..7adb7ac5b 100644 --- a/apptools/undo/i_command.py +++ b/apptools/undo/i_command.py @@ -14,7 +14,6 @@ # Enthought library imports. -from __future__ import absolute_import from traits.api import Any, Interface, Unicode diff --git a/apptools/undo/i_command_stack.py b/apptools/undo/i_command_stack.py index 143e8b60a..9fb6c7310 100644 --- a/apptools/undo/i_command_stack.py +++ b/apptools/undo/i_command_stack.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Enthought library imports. from traits.api import Bool, Instance, Interface, Unicode diff --git a/apptools/undo/i_undo_manager.py b/apptools/undo/i_undo_manager.py index 591dfca75..27636a980 100644 --- a/apptools/undo/i_undo_manager.py +++ b/apptools/undo/i_undo_manager.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Enthought library imports. from traits.api import Bool, Event, Instance, Int, Interface, Unicode diff --git a/apptools/undo/tests/test_command_stack.py b/apptools/undo/tests/test_command_stack.py index 43e12a8a2..3af5a9302 100644 --- a/apptools/undo/tests/test_command_stack.py +++ b/apptools/undo/tests/test_command_stack.py @@ -12,7 +12,6 @@ # # ----------------------------------------------------------------------------- -from __future__ import absolute_import from traits.testing.unittest_tools import unittest from contextlib import contextmanager from nose.tools import assert_equal diff --git a/apptools/undo/tests/testing_commands.py b/apptools/undo/tests/testing_commands.py index 05a87abf6..bfa7a8468 100644 --- a/apptools/undo/tests/testing_commands.py +++ b/apptools/undo/tests/testing_commands.py @@ -12,7 +12,6 @@ # # ----------------------------------------------------------------------------- -from __future__ import absolute_import from traits.api import Int from apptools.undo.api import AbstractCommand diff --git a/apptools/undo/undo_manager.py b/apptools/undo/undo_manager.py index 7ca9aed7d..fb09d10c8 100644 --- a/apptools/undo/undo_manager.py +++ b/apptools/undo/undo_manager.py @@ -12,8 +12,6 @@ # Description: #------------------------------------------------------------------------------ -from __future__ import absolute_import - # Enthought library imports. from traits.api import Bool, Event, HasTraits, Instance, Int, Property, \ Unicode, provides From 872e04e5b5bd8e42adc8c5b942c05f4412de4ebb Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 13 May 2019 14:40:54 +0530 Subject: [PATCH 05/12] CLN : Mostly move around imports - and remove a debugging statement - and remove an unnecessary use of six.text_type instead of unicode - and remove an overzealous correction made by modernize - and replace usage of sys python version with six --- apptools/appscripting/script_manager.py | 4 +++- apptools/io/h5/file.py | 2 +- apptools/io/h5/tests/test_dict_node.py | 4 ++-- apptools/io/h5/tests/test_file.py | 3 +-- apptools/io/h5/tests/test_table_node.py | 2 +- apptools/logger/agent/quality_agent_mailer.py | 4 +++- apptools/lru_cache/tests/test_lru_cache.py | 6 ++---- apptools/naming/pyfs_context.py | 9 +++++++-- apptools/permissions/default/persistent.py | 4 +++- apptools/persistence/state_pickler.py | 8 +++----- apptools/preferences/preference_binding.py | 4 +++- apptools/preferences/preferences.py | 7 ++++--- apptools/preferences/scoped_preferences.py | 2 +- apptools/scripting/recorder.py | 7 +++---- apptools/selection/tests/test_list_selection.py | 5 ++--- apptools/selection/tests/test_selection_service.py | 3 ++- apptools/sweet_pickle/tests/state_function_test_case.py | 4 +++- apptools/template/impl/any_context_data_name_item.py | 3 +-- apptools/template/template_data_name.py | 3 ++- apptools/template/template_data_names.py | 3 ++- apptools/template/test/scatter_plot_nm.py | 3 ++- apptools/type_registry/tests/dummies.py | 1 + apptools/undo/tests/test_command_stack.py | 6 ++++-- 23 files changed, 56 insertions(+), 41 deletions(-) diff --git a/apptools/appscripting/script_manager.py b/apptools/appscripting/script_manager.py index 4a4584375..ea7a7b54d 100644 --- a/apptools/appscripting/script_manager.py +++ b/apptools/appscripting/script_manager.py @@ -18,6 +18,9 @@ import types import weakref +# Third-party library imports +import six + # Enthought library imports. from traits.api import Any, Bool, Callable, Dict, Event, HasTraits, \ implements, Instance, Int, List, Property, Str, Unicode @@ -28,7 +31,6 @@ from .i_script_manager import IScriptManager from .lazy_namespace import add_to_namespace, FactoryWrapper, LazyNamespace from .scriptable_type import make_object_scriptable -import six @provides(IScriptManager) diff --git a/apptools/io/h5/file.py b/apptools/io/h5/file.py index e3c99536c..4ba4d21f1 100644 --- a/apptools/io/h5/file.py +++ b/apptools/io/h5/file.py @@ -3,10 +3,10 @@ import numpy as np import tables +import six from .dict_node import H5DictNode from .table_node import H5TableNode -import six def get_atom(dtype): diff --git a/apptools/io/h5/tests/test_dict_node.py b/apptools/io/h5/tests/test_dict_node.py index a6fb37e30..3f474de8a 100644 --- a/apptools/io/h5/tests/test_dict_node.py +++ b/apptools/io/h5/tests/test_dict_node.py @@ -1,10 +1,10 @@ import numpy as np from numpy.testing import raises, assert_allclose +import six +from six.moves import zip from ..dict_node import H5DictNode from .utils import open_h5file, temp_h5_file, temp_file -import six -from six.moves import zip NODE = '/dict_node' diff --git a/apptools/io/h5/tests/test_file.py b/apptools/io/h5/tests/test_file.py index a13835ae9..b5ee5bba8 100644 --- a/apptools/io/h5/tests/test_file.py +++ b/apptools/io/h5/tests/test_file.py @@ -3,14 +3,13 @@ import numpy as np from numpy import testing +from six.moves import map, zip import tables from ..file import H5File from ..dict_node import H5DictNode from ..table_node import H5TableNode from .utils import open_h5file, temp_h5_file -from six.moves import map -from six.moves import zip H5_TEST_FILE = '_temp_test_filt.h5' diff --git a/apptools/io/h5/tests/test_table_node.py b/apptools/io/h5/tests/test_table_node.py index fbb731ffd..245faf394 100644 --- a/apptools/io/h5/tests/test_table_node.py +++ b/apptools/io/h5/tests/test_table_node.py @@ -1,10 +1,10 @@ import numpy as np from numpy.testing import assert_allclose from pandas import DataFrame +from six.moves import zip from ..table_node import H5TableNode from .utils import temp_h5_file -from six.moves import zip NODE = '/table_node' diff --git a/apptools/logger/agent/quality_agent_mailer.py b/apptools/logger/agent/quality_agent_mailer.py index 6f1b2cde8..3bd4c9677 100644 --- a/apptools/logger/agent/quality_agent_mailer.py +++ b/apptools/logger/agent/quality_agent_mailer.py @@ -16,9 +16,11 @@ import logging import os +# Third-party library imports. +import six + # Enthought library imports. from traits.util.home_directory import get_home_directory -import six # Setup a logger for this module. diff --git a/apptools/lru_cache/tests/test_lru_cache.py b/apptools/lru_cache/tests/test_lru_cache.py index 001a838fc..73fe86a7a 100644 --- a/apptools/lru_cache/tests/test_lru_cache.py +++ b/apptools/lru_cache/tests/test_lru_cache.py @@ -1,13 +1,12 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- -from __future__ import division, print_function +from __future__ import division from nose.tools import assert_equal +from six.moves import map, range from ..lru_cache import LRUCache -from six.moves import map -from six.moves import range def test_cache_callback(): @@ -143,7 +142,6 @@ def test_updated_event(): c.on_trait_change(lambda x: events.append(x), 'updated') c[0] = 0 - print(list(c.keys())) assert_equal(sorted(events), [[0]]) c[1] = 1 diff --git a/apptools/naming/pyfs_context.py b/apptools/naming/pyfs_context.py index 2a28ceaa8..aad1b6a22 100644 --- a/apptools/naming/pyfs_context.py +++ b/apptools/naming/pyfs_context.py @@ -15,9 +15,14 @@ # Standard library imports. -import six.moves.cPickle, glob, logging, os +import glob +import logging +import os from os.path import join, splitext +# Third-party library imports. +import six.moves.cPickle as pickle + # Enthought library imports. from apptools.io.api import File from traits.api import Any, Dict, Instance, Property, Str @@ -509,7 +514,7 @@ def _save_attributes(self): path = join(self.path, self.ATTRIBUTES_FILE) f = open(path, 'wb') - six.moves.cPickle.dump(self._attributes, f, 1) + pickle.dump(self._attributes, f, 1) f.close() return diff --git a/apptools/permissions/default/persistent.py b/apptools/permissions/default/persistent.py index b453a0680..543adc5ce 100644 --- a/apptools/permissions/default/persistent.py +++ b/apptools/permissions/default/persistent.py @@ -14,10 +14,12 @@ # Standard library imports. -import six.moves.cPickle as pickle import errno import os +# Third-party imports. +import six.moves.cPickle as pickle + # Enthought library imports. from traits.etsconfig.api import ETSConfig diff --git a/apptools/persistence/state_pickler.py b/apptools/persistence/state_pickler.py index 077f68c45..74ca17241 100644 --- a/apptools/persistence/state_pickler.py +++ b/apptools/persistence/state_pickler.py @@ -110,9 +110,7 @@ # Local imports. from . import version_registry from .file_path import FilePath -import six -from six.moves import range -from six.moves import zip +from six.moves import range, zip PY_VER = sys.version_info[0] NumpyArrayType = type(numpy.array([])) @@ -273,7 +271,7 @@ def __init__(self): } if PY_VER == 2: type_map[long] = self._do_basic_type - type_map[six.text_type] = self._do_basic_type + type_map[unicode] = self._do_basic_type self.type_map = type_map def dump(self, value, file): @@ -443,7 +441,7 @@ def _do_list(self, value): def _do_dict(self, value): idx = self._register(value) vals = [self._do(x) for x in value.values()] - data = dict(list(zip(list(value.keys()), vals))) + data = dict(zip(value.keys(), vals)) return dict(type='dict', id=idx, data=data) def _do_numeric(self, value): diff --git a/apptools/preferences/preference_binding.py b/apptools/preferences/preference_binding.py index 5fe93c907..e9dc29142 100644 --- a/apptools/preferences/preference_binding.py +++ b/apptools/preferences/preference_binding.py @@ -5,10 +5,12 @@ from traits.api import Any, HasTraits, Instance, Str, Undefined from traits.api import Unicode +# Third-party librart imports. +import six + # Local imports. from .i_preferences import IPreferences from .package_globals import get_default_preferences -import six class PreferenceBinding(HasTraits): diff --git a/apptools/preferences/preferences.py b/apptools/preferences/preferences.py index 7e511ca6f..b8f572a6b 100644 --- a/apptools/preferences/preferences.py +++ b/apptools/preferences/preferences.py @@ -4,14 +4,15 @@ from __future__ import print_function import logging, threading +# Third-party library imports. +import six + # Enthought library imports. from traits.api import Any, Callable, Dict, HasTraits, Instance, List from traits.api import Property, Str, Undefined, provides # Local imports. from .i_preferences import IPreferences -import six - # Logging. logger = logging.getLogger(__name__) @@ -575,7 +576,7 @@ def dump(self, indent=''): if indent == '': print() - print((indent, 'Node(%s)' % self.name, self._preferences)) + print(indent, 'Node(%s)' % self.name, self._preferences) indent += ' ' for child in self._children.values(): diff --git a/apptools/preferences/scoped_preferences.py b/apptools/preferences/scoped_preferences.py index 74659a11b..6094e6c68 100644 --- a/apptools/preferences/scoped_preferences.py +++ b/apptools/preferences/scoped_preferences.py @@ -200,7 +200,7 @@ def keys(self, path=''): keys = set() for node in nodes: - keys.update(list(node.node(path).keys())) + keys.update(node.node(path).keys()) return list(keys) diff --git a/apptools/scripting/recorder.py b/apptools/scripting/recorder.py index 15ca34d8f..51b82a5d8 100644 --- a/apptools/scripting/recorder.py +++ b/apptools/scripting/recorder.py @@ -10,9 +10,8 @@ # License: BSD Style. import warnings -import sys + import six -PY_VER = sys.version_info[0] import six.moves.builtins from traits.api import (HasTraits, List, Str, Dict, Bool, @@ -374,7 +373,7 @@ def save(self, file): """Save the recorded lines to the given file. It does not close the file. """ - if PY_VER == 3: + if six.PY3: file.write(self.get_code()) else: file.write(six.text_type(self.get_code(), encoding='utf-8')) @@ -692,7 +691,7 @@ def _return_as_string(self, object): """Return a string given a returned object from a function. """ result = '' - long_type = int if PY_VER == 2 else int + long_type = long if six.PY2 else int ignore = (float, complex, bool, int, long_type, str) if object is not None and type(object) not in ignore: # If object is not know, register it. diff --git a/apptools/selection/tests/test_list_selection.py b/apptools/selection/tests/test_list_selection.py index 901b2ed3c..7c874e9c5 100644 --- a/apptools/selection/tests/test_list_selection.py +++ b/apptools/selection/tests/test_list_selection.py @@ -3,7 +3,6 @@ from traits.testing.unittest_tools import unittest from apptools.selection.api import ListSelection -from six.moves import range class TestListSelection(unittest.TestCase): @@ -27,7 +26,7 @@ def test_list_selection_of_sequence_items(self): self.assertEqual(list_selection.indices, [2, 1]) def test_list_selection_of_numpy_array_items(self): - data = numpy.array(list(range(10))) + data = numpy.arange(10) all_items = [data, data + 10, data + 30] selected = [all_items[0], all_items[2]] @@ -38,7 +37,7 @@ def test_list_selection_of_numpy_array_items(self): self.assertEqual(list_selection.indices, [0, 2]) def test_list_selection_with_invalid_selected_items(self): - data = numpy.array(list(range(10))) + data = numpy.arange(10) all_items = [data, data + 10, data + 30] selected = [data-10, ] diff --git a/apptools/selection/tests/test_selection_service.py b/apptools/selection/tests/test_selection_service.py index 4aacf829d..c63b0f28c 100644 --- a/apptools/selection/tests/test_selection_service.py +++ b/apptools/selection/tests/test_selection_service.py @@ -1,10 +1,11 @@ +from six.moves import range + from traits.api import Any, Event, HasTraits, List, provides, Str from traits.testing.unittest_tools import unittest from apptools.selection.api import ( IDConflictError, ISelection, ISelectionProvider, ListenerNotConnectedError, ListSelection, ProviderNotRegisteredError, SelectionService) -from six.moves import range @provides(ISelection) diff --git a/apptools/sweet_pickle/tests/state_function_test_case.py b/apptools/sweet_pickle/tests/state_function_test_case.py index 223188b82..627973e3c 100644 --- a/apptools/sweet_pickle/tests/state_function_test_case.py +++ b/apptools/sweet_pickle/tests/state_function_test_case.py @@ -15,11 +15,13 @@ import unittest import logging +# Third-party library imports. +from six.moves import range + # Enthought library imports import apptools.sweet_pickle as sweet_pickle from apptools.sweet_pickle.global_registry import _clear_global_registry from traits.api import Bool, Float, HasTraits, Int, Str -from six.moves import range logger = logging.getLogger(__name__) diff --git a/apptools/template/impl/any_context_data_name_item.py b/apptools/template/impl/any_context_data_name_item.py index 4fac1de2f..c03132671 100644 --- a/apptools/template/impl/any_context_data_name_item.py +++ b/apptools/template/impl/any_context_data_name_item.py @@ -37,7 +37,6 @@ from .template_data_context \ import TemplateDataContext -from six.moves import filter #------------------------------------------------------------------------------- # 'AnyContextDataNameItem' class: @@ -123,7 +122,7 @@ def inputs_changed ( self ): filter = self.filter gdc = input_context.get_data_context for name in input_context.data_contexts: - if list(filter( name, gdc( name ) )): + if filter( name, gdc( name ) ): contexts[ name ] = context # If the result set is not empty, create an output context for it: diff --git a/apptools/template/template_data_name.py b/apptools/template/template_data_name.py index 1d686153e..fba54088e 100644 --- a/apptools/template/template_data_name.py +++ b/apptools/template/template_data_name.py @@ -19,6 +19,8 @@ # Imports: #------------------------------------------------------------------------------- +from six.moves import range + from traits.api \ import HasPrivateTraits, Instance, Bool, Property, Undefined, \ on_trait_change, cached_property @@ -34,7 +36,6 @@ from .template_traits \ import TList, TStr, TBool -from six.moves import range #------------------------------------------------------------------------------- # 'TemplateDataName' interface: diff --git a/apptools/template/template_data_names.py b/apptools/template/template_data_names.py index 1f000b1dd..b91e09c05 100644 --- a/apptools/template/template_data_names.py +++ b/apptools/template/template_data_names.py @@ -19,6 +19,8 @@ # Imports: #------------------------------------------------------------------------------- +from six.moves import range + from traits.api \ import HasPrivateTraits, Instance, Int, List, Property, Delegate, \ cached_property @@ -37,7 +39,6 @@ from .template_choice \ import TemplateChoice -from six.moves import range #------------------------------------------------------------------------------- # Table editor support for editing a list of TemplateDataName objects: diff --git a/apptools/template/test/scatter_plot_nm.py b/apptools/template/test/scatter_plot_nm.py index bd808fda0..e6a3da502 100644 --- a/apptools/template/test/scatter_plot_nm.py +++ b/apptools/template/test/scatter_plot_nm.py @@ -20,6 +20,8 @@ # Imports: #------------------------------------------------------------------------------- +from six.moves import range + from traits.api \ import Undefined @@ -49,7 +51,6 @@ from .scatter_plot \ import ScatterPlot -from six.moves import range #------------------------------------------------------------------------------- # Trait definitions: diff --git a/apptools/type_registry/tests/dummies.py b/apptools/type_registry/tests/dummies.py index ecd3ecce7..a64cee6a2 100644 --- a/apptools/type_registry/tests/dummies.py +++ b/apptools/type_registry/tests/dummies.py @@ -1,4 +1,5 @@ import abc + import six diff --git a/apptools/undo/tests/test_command_stack.py b/apptools/undo/tests/test_command_stack.py index 3af5a9302..976c6ee2b 100644 --- a/apptools/undo/tests/test_command_stack.py +++ b/apptools/undo/tests/test_command_stack.py @@ -12,13 +12,15 @@ # # ----------------------------------------------------------------------------- -from traits.testing.unittest_tools import unittest from contextlib import contextmanager + from nose.tools import assert_equal +from six.moves import range +from traits.testing.unittest_tools import unittest +from traits.testing.unittest_tools import unittest from apptools.undo.api import CommandStack, UndoManager from apptools.undo.tests.testing_commands import SimpleCommand, UnnamedCommand -from six.moves import range class TestCommandStack(unittest.TestCase): From e2f69414f4266779a1be3fcb5e3b17826dcfc2c6 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 13 May 2019 15:26:15 +0530 Subject: [PATCH 06/12] CLN : Remove unnecessary six.moves.map/range/zip - and remove unnecessarily choosing between Int/Long trait types between Python 2 and Python 3 - and fix an error where the import was renamed in a module but not all usages were updated - remove a few unnecessary six.iteritems calls and replace them with dict.items. Except for in onecase where we were dealing with H5 files, in which case, it stays iteritems --- apptools/io/h5/file.py | 3 +-- apptools/io/h5/table_node.py | 1 - apptools/io/h5/tests/test_dict_node.py | 1 - apptools/io/h5/tests/test_file.py | 1 - apptools/io/h5/tests/test_table_node.py | 1 - apptools/logger/agent/quality_agent_mailer.py | 5 +---- apptools/lru_cache/tests/test_lru_cache.py | 1 - apptools/naming/pyfs_context.py | 2 +- apptools/persistence/state_pickler.py | 1 - apptools/persistence/tests/test_state_pickler.py | 8 +------- apptools/selection/list_selection.py | 1 - apptools/selection/tests/test_selection_service.py | 2 -- apptools/sweet_pickle/tests/state_function_test_case.py | 3 --- apptools/template/template_data_name.py | 2 -- apptools/template/template_data_names.py | 2 -- apptools/template/test/scatter_plot_nm.py | 2 -- apptools/undo/tests/test_command_stack.py | 2 -- 17 files changed, 4 insertions(+), 34 deletions(-) diff --git a/apptools/io/h5/file.py b/apptools/io/h5/file.py index 4ba4d21f1..7dce5408d 100644 --- a/apptools/io/h5/file.py +++ b/apptools/io/h5/file.py @@ -3,7 +3,6 @@ import numpy as np import tables -import six from .dict_node import H5DictNode from .table_node import H5TableNode @@ -432,7 +431,7 @@ def subgroup_names(self): def iter_groups(self): """ Iterate over `H5Group` nodes that are children of this group. """ - return (_wrap_node(g) for g in six.itervalues(self._h5_group._v_groups)) + return (_wrap_node(g) for g in self._h5_group._v_groups.itervalues()) @h5_group_wrapper(H5File.create_group) def create_group(self, group_subpath, delete_existing=False, **kwargs): diff --git a/apptools/io/h5/table_node.py b/apptools/io/h5/table_node.py index 5bdb02442..bf293563d 100644 --- a/apptools/io/h5/table_node.py +++ b/apptools/io/h5/table_node.py @@ -2,7 +2,6 @@ from pandas import DataFrame from tables.table import Table as PyTablesTable import six -from six.moves import zip class _TableRowAccessor(object): diff --git a/apptools/io/h5/tests/test_dict_node.py b/apptools/io/h5/tests/test_dict_node.py index 3f474de8a..4a84c1a91 100644 --- a/apptools/io/h5/tests/test_dict_node.py +++ b/apptools/io/h5/tests/test_dict_node.py @@ -1,7 +1,6 @@ import numpy as np from numpy.testing import raises, assert_allclose import six -from six.moves import zip from ..dict_node import H5DictNode from .utils import open_h5file, temp_h5_file, temp_file diff --git a/apptools/io/h5/tests/test_file.py b/apptools/io/h5/tests/test_file.py index b5ee5bba8..2abed60bc 100644 --- a/apptools/io/h5/tests/test_file.py +++ b/apptools/io/h5/tests/test_file.py @@ -3,7 +3,6 @@ import numpy as np from numpy import testing -from six.moves import map, zip import tables from ..file import H5File diff --git a/apptools/io/h5/tests/test_table_node.py b/apptools/io/h5/tests/test_table_node.py index 245faf394..844807966 100644 --- a/apptools/io/h5/tests/test_table_node.py +++ b/apptools/io/h5/tests/test_table_node.py @@ -1,7 +1,6 @@ import numpy as np from numpy.testing import assert_allclose from pandas import DataFrame -from six.moves import zip from ..table_node import H5TableNode from .utils import temp_h5_file diff --git a/apptools/logger/agent/quality_agent_mailer.py b/apptools/logger/agent/quality_agent_mailer.py index 3bd4c9677..1525b49f8 100644 --- a/apptools/logger/agent/quality_agent_mailer.py +++ b/apptools/logger/agent/quality_agent_mailer.py @@ -16,9 +16,6 @@ import logging import os -# Third-party library imports. -import six - # Enthought library imports. from traits.util.home_directory import get_home_directory @@ -91,7 +88,7 @@ def create_email_message(fromaddr, toaddrs, ccaddrs, subject, priority, """ try: entries = [] - for key, value in six.iteritems(os.environ): + for key, value in os.environ.items(): entries.append('%30s : %s\n' % (key, value)) ctype = 'application/octet-stream' diff --git a/apptools/lru_cache/tests/test_lru_cache.py b/apptools/lru_cache/tests/test_lru_cache.py index 73fe86a7a..a97df15bb 100644 --- a/apptools/lru_cache/tests/test_lru_cache.py +++ b/apptools/lru_cache/tests/test_lru_cache.py @@ -4,7 +4,6 @@ from __future__ import division from nose.tools import assert_equal -from six.moves import map, range from ..lru_cache import LRUCache diff --git a/apptools/naming/pyfs_context.py b/apptools/naming/pyfs_context.py index aad1b6a22..14cf4f7a1 100644 --- a/apptools/naming/pyfs_context.py +++ b/apptools/naming/pyfs_context.py @@ -558,7 +558,7 @@ def __attributes_default(self): attributes_file = File(join(self.path, self.ATTRIBUTES_FILE)) if attributes_file.is_file: f = open(attributes_file.path, 'rb') - attributes = six.moves.cPickle.load(f) + attributes = pickle.load(f) f.close() else: diff --git a/apptools/persistence/state_pickler.py b/apptools/persistence/state_pickler.py index 74ca17241..fb82746f4 100644 --- a/apptools/persistence/state_pickler.py +++ b/apptools/persistence/state_pickler.py @@ -110,7 +110,6 @@ # Local imports. from . import version_registry from .file_path import FilePath -from six.moves import range, zip PY_VER = sys.version_info[0] NumpyArrayType = type(numpy.array([])) diff --git a/apptools/persistence/tests/test_state_pickler.py b/apptools/persistence/tests/test_state_pickler.py index 84066db74..70bf42573 100644 --- a/apptools/persistence/tests/test_state_pickler.py +++ b/apptools/persistence/tests/test_state_pickler.py @@ -12,16 +12,10 @@ import tempfile import numpy -import six from traits.api import Bool, Int, Long, Array, Float, Complex, Any, \ Str, Unicode, Instance, Tuple, List, Dict, HasTraits -if six.PY2: - long_trait_type = Long -else: - long_trait_type = Int - try: from tvtk.api import tvtk except ImportError: @@ -69,7 +63,7 @@ def __init__(self): class TestTraits(HasTraits): b = Bool(False) i = Int(7) - l = long_trait_type(12345678901234567890) + l = Long(12345678901234567890) f = Float(math.pi) c = Complex(complex(1.01234, 2.3)) n = Any diff --git a/apptools/selection/list_selection.py b/apptools/selection/list_selection.py index 9dabe1a47..bb93013b3 100644 --- a/apptools/selection/list_selection.py +++ b/apptools/selection/list_selection.py @@ -1,7 +1,6 @@ from traits.api import HasTraits, List, provides, Str from apptools.selection.i_selection import IListSelection -from six.moves import range @provides(IListSelection) diff --git a/apptools/selection/tests/test_selection_service.py b/apptools/selection/tests/test_selection_service.py index c63b0f28c..7196fca49 100644 --- a/apptools/selection/tests/test_selection_service.py +++ b/apptools/selection/tests/test_selection_service.py @@ -1,5 +1,3 @@ -from six.moves import range - from traits.api import Any, Event, HasTraits, List, provides, Str from traits.testing.unittest_tools import unittest diff --git a/apptools/sweet_pickle/tests/state_function_test_case.py b/apptools/sweet_pickle/tests/state_function_test_case.py index 627973e3c..4ca6009b6 100644 --- a/apptools/sweet_pickle/tests/state_function_test_case.py +++ b/apptools/sweet_pickle/tests/state_function_test_case.py @@ -15,9 +15,6 @@ import unittest import logging -# Third-party library imports. -from six.moves import range - # Enthought library imports import apptools.sweet_pickle as sweet_pickle from apptools.sweet_pickle.global_registry import _clear_global_registry diff --git a/apptools/template/template_data_name.py b/apptools/template/template_data_name.py index fba54088e..8e2b7d076 100644 --- a/apptools/template/template_data_name.py +++ b/apptools/template/template_data_name.py @@ -19,8 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from six.moves import range - from traits.api \ import HasPrivateTraits, Instance, Bool, Property, Undefined, \ on_trait_change, cached_property diff --git a/apptools/template/template_data_names.py b/apptools/template/template_data_names.py index b91e09c05..336a4565d 100644 --- a/apptools/template/template_data_names.py +++ b/apptools/template/template_data_names.py @@ -19,8 +19,6 @@ # Imports: #------------------------------------------------------------------------------- -from six.moves import range - from traits.api \ import HasPrivateTraits, Instance, Int, List, Property, Delegate, \ cached_property diff --git a/apptools/template/test/scatter_plot_nm.py b/apptools/template/test/scatter_plot_nm.py index e6a3da502..699608ce0 100644 --- a/apptools/template/test/scatter_plot_nm.py +++ b/apptools/template/test/scatter_plot_nm.py @@ -20,8 +20,6 @@ # Imports: #------------------------------------------------------------------------------- -from six.moves import range - from traits.api \ import Undefined diff --git a/apptools/undo/tests/test_command_stack.py b/apptools/undo/tests/test_command_stack.py index 976c6ee2b..c10b8fd9d 100644 --- a/apptools/undo/tests/test_command_stack.py +++ b/apptools/undo/tests/test_command_stack.py @@ -15,9 +15,7 @@ from contextlib import contextmanager from nose.tools import assert_equal -from six.moves import range -from traits.testing.unittest_tools import unittest from traits.testing.unittest_tools import unittest from apptools.undo.api import CommandStack, UndoManager from apptools.undo.tests.testing_commands import SimpleCommand, UnnamedCommand From bd552b24a9b3a96610cdf83af56f5615d2bad0db Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 13 May 2019 21:58:25 +0530 Subject: [PATCH 07/12] CLN : Remove use of six.iteritems and replace it with just calls to dict.items instead and rename a few absolute imports to be full instead of implicit modified: apptools/appscripting/script_manager.py modified: apptools/io/__init__.py modified: apptools/naming/__init__.py modified: apptools/naming/adapter/__init__.py modified: apptools/naming/trait_defs/__init__.py modified: apptools/scripting/recorder.py modified: apptools/type_manager/__init__.py --- apptools/appscripting/script_manager.py | 11 ++++------- apptools/io/__init__.py | 2 +- apptools/naming/__init__.py | 2 +- apptools/naming/adapter/__init__.py | 2 +- apptools/naming/trait_defs/__init__.py | 2 +- apptools/scripting/recorder.py | 2 +- apptools/type_manager/__init__.py | 2 +- 7 files changed, 10 insertions(+), 13 deletions(-) diff --git a/apptools/appscripting/script_manager.py b/apptools/appscripting/script_manager.py index ea7a7b54d..d25260485 100644 --- a/apptools/appscripting/script_manager.py +++ b/apptools/appscripting/script_manager.py @@ -18,9 +18,6 @@ import types import weakref -# Third-party library imports -import six - # Enthought library imports. from traits.api import Any, Bool, Callable, Dict, Event, HasTraits, \ implements, Instance, Int, List, Property, Str, Unicode @@ -408,7 +405,7 @@ def run(self, script): # Initialise the namespace with all explicitly bound objects. nspace = LazyNamespace() - for name, bo in six.iteritems(self._namespace): + for name, bo in self._namespace.items(): if bo.explicitly_bound: add_to_namespace(bo.obj, name, nspace) @@ -513,7 +510,7 @@ def new_object(self, obj, scripted_type, args=None, kwargs=None, name=None, # Doing this now avoids problems with mutable arguments. so.args = [self._scriptable_object_as_string(a) for a in args] - for n, value in six.iteritems(kwargs): + for n, value in kwargs.items(): so.kwargs[n] = self._scriptable_object_as_string(value) so.explicitly_bound = False @@ -543,7 +540,7 @@ def args_as_string_list(args, kwargs, so_needed=None): s = ScriptManager.arg_as_string(arg, so_needed) all_args.append(s) - for name, value in six.iteritems(kwargs): + for name, value in kwargs.items(): s = ScriptManager.arg_as_string(value, so_needed) all_args.append('%s=%s' % (name, s)) @@ -592,7 +589,7 @@ def _new_method(self, func, args, kwargs): nargs = nargs[1:] nkwargs = {} - for name, value in six.iteritems(kwargs): + for name, value in kwargs.items(): nkwargs[name] = self._object_as_string(value) return _ScriptMethod(name=func.__name__, so=so, args=nargs, diff --git a/apptools/io/__init__.py b/apptools/io/__init__.py index 56a49c16c..b16cbb9dd 100644 --- a/apptools/io/__init__.py +++ b/apptools/io/__init__.py @@ -14,4 +14,4 @@ """ Provides an abstraction for files and folders in a file system. Part of the AppTools project of the Enthought Tool Suite. """ -from .api import * +from apptools.io.api import * diff --git a/apptools/naming/__init__.py b/apptools/naming/__init__.py index f6a35febc..b24666f51 100644 --- a/apptools/naming/__init__.py +++ b/apptools/naming/__init__.py @@ -15,4 +15,4 @@ preferences. Part of the AppTools project of the Enthought Tool Suite. """ -from .api import * +from apptools.naming.api import * diff --git a/apptools/naming/adapter/__init__.py b/apptools/naming/adapter/__init__.py index 0a0e47b0b..cc14aac8d 100644 --- a/apptools/naming/adapter/__init__.py +++ b/apptools/naming/adapter/__init__.py @@ -1 +1 @@ -from .api import * +from apptools.naming.adapter.api import * diff --git a/apptools/naming/trait_defs/__init__.py b/apptools/naming/trait_defs/__init__.py index 7edb26e50..a3b96dd45 100644 --- a/apptools/naming/trait_defs/__init__.py +++ b/apptools/naming/trait_defs/__init__.py @@ -14,4 +14,4 @@ # Imports: #------------------------------------------------------------------------------ -from .api import * +from apptools.naming.trait_defs.api import * diff --git a/apptools/scripting/recorder.py b/apptools/scripting/recorder.py index 51b82a5d8..1ad613272 100644 --- a/apptools/scripting/recorder.py +++ b/apptools/scripting/recorder.py @@ -649,7 +649,7 @@ def _function_as_string(self, func, args, kw): # Convert the keyword args. kwl = ['%s=%s'%(key, self._object_as_string(value)) - for key, value in six.iteritems(kw)] + for key, value in kw.items()] argl.extend(kwl) # Make a string representation of the args, kw. diff --git a/apptools/type_manager/__init__.py b/apptools/type_manager/__init__.py index 71c9ca829..7d6b32092 100644 --- a/apptools/type_manager/__init__.py +++ b/apptools/type_manager/__init__.py @@ -6,4 +6,4 @@ hooks for methods and functions. Part of the AppTools project of the Enthought Tool Suite. """ -from .api import * +from apptools.type_manager.api import * From c2de922667c0b766dae137fe46dac1335f417fc1 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Mon, 13 May 2019 22:03:13 +0530 Subject: [PATCH 08/12] DEV : Use warnings instead of printing warnings modified: apptools/type_manager/adapter_manager.py --- apptools/type_manager/adapter_manager.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/apptools/type_manager/adapter_manager.py b/apptools/type_manager/adapter_manager.py index 74d4d26af..2de9c3252 100644 --- a/apptools/type_manager/adapter_manager.py +++ b/apptools/type_manager/adapter_manager.py @@ -1,6 +1,9 @@ """ A manager for adapter factories. """ -from __future__ import print_function +# Standard library imports +import warnings + +# Third-party imports import six # Enthought library imports. @@ -181,7 +184,10 @@ def register_adapters(self, factory, adaptee_class): """ - print('DEPRECATED: use "register_type_adapters" instead.') + warnings.warn( + 'Use "register_type_adapters" instead.', + DeprecationWarning + ) self.register_type_adapters(factory, adaptee_class) @@ -190,7 +196,10 @@ def register_adapters(self, factory, adaptee_class): def unregister_adapters(self, factory): """ Unregisters an adapter factory. """ - print('DEPRECATED: use "unregister_type_adapters" instead.') + warnings.warn( + 'use "unregister_type_adapters" instead.', + DeprecationWarning + ) self.unregister_type_adapters(factory) From edb472cc744a6dbe1eaa40e6ddedbcc80cd4db73 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Sat, 18 May 2019 14:58:05 +0530 Subject: [PATCH 09/12] CLN : Address comments in PR - rewrite statement into a list comprehension instead of being wrapping calls to map and zip with list multiple times - return list/iterable on python 2/3 respectively, instead of returning list on both 2/3. modified: apptools/io/h5/dict_node.py modified: apptools/io/h5/tests/test_file.py --- apptools/io/h5/dict_node.py | 2 +- apptools/io/h5/tests/test_file.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apptools/io/h5/dict_node.py b/apptools/io/h5/dict_node.py index 302de7e11..aa82f4f05 100644 --- a/apptools/io/h5/dict_node.py +++ b/apptools/io/h5/dict_node.py @@ -69,7 +69,7 @@ def __contains__(self, key): return key in self.data def keys(self): - return list(self.data.keys()) + return self.data.keys() #-------------------------------------------------------------------------- # Public interface diff --git a/apptools/io/h5/tests/test_file.py b/apptools/io/h5/tests/test_file.py index 2abed60bc..f4cf24f11 100644 --- a/apptools/io/h5/tests/test_file.py +++ b/apptools/io/h5/tests/test_file.py @@ -514,7 +514,7 @@ def test_attribute_iteration_methods(): assert all(isinstance(x, tuple) for x in items) # unfold the pairs - keys, vals = list(map(list, list(zip(*items)))) + keys, vals = [list(item) for item in zip(*items)] assert keys == list(attrs.keys()) assert vals == list(attrs.values()) From 77523ea1f925747039b66bd7da6c16b88578bc70 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Wed, 29 May 2019 14:25:32 +0530 Subject: [PATCH 10/12] CLN : Updated based on PR review - remove unnecessary use of list - move imports around to maintain consistency modified: apptools/io/h5/table_node.py modified: apptools/io/h5/tests/test_file.py modified: apptools/lru_cache/tests/test_lru_cache.py modified: apptools/naming/trait_defs/naming_traits.py modified: apptools/naming/ui/context_node_type.py modified: apptools/preferences/preferences.py modified: apptools/preferences/tests/preferences_test_case.py modified: apptools/preferences/ui/preferences_node.py modified: apptools/scripting/recorder.py modified: apptools/sweet_pickle/tests/updater_test_case.py --- apptools/io/h5/table_node.py | 2 +- apptools/io/h5/tests/test_file.py | 2 +- apptools/lru_cache/tests/test_lru_cache.py | 6 +++--- apptools/naming/trait_defs/naming_traits.py | 3 ++- apptools/naming/ui/context_node_type.py | 2 +- apptools/preferences/preferences.py | 3 ++- .../preferences/tests/preferences_test_case.py | 18 ++++++------------ apptools/preferences/ui/preferences_node.py | 2 +- apptools/scripting/recorder.py | 2 +- .../sweet_pickle/tests/updater_test_case.py | 5 +++-- 10 files changed, 21 insertions(+), 24 deletions(-) diff --git a/apptools/io/h5/table_node.py b/apptools/io/h5/table_node.py index bf293563d..546f68839 100644 --- a/apptools/io/h5/table_node.py +++ b/apptools/io/h5/table_node.py @@ -1,7 +1,7 @@ import numpy as np from pandas import DataFrame -from tables.table import Table as PyTablesTable import six +from tables.table import Table as PyTablesTable class _TableRowAccessor(object): diff --git a/apptools/io/h5/tests/test_file.py b/apptools/io/h5/tests/test_file.py index f4cf24f11..36fbfa730 100644 --- a/apptools/io/h5/tests/test_file.py +++ b/apptools/io/h5/tests/test_file.py @@ -514,7 +514,7 @@ def test_attribute_iteration_methods(): assert all(isinstance(x, tuple) for x in items) # unfold the pairs - keys, vals = [list(item) for item in zip(*items)] + keys, vals = zip(*items) assert keys == list(attrs.keys()) assert vals == list(attrs.values()) diff --git a/apptools/lru_cache/tests/test_lru_cache.py b/apptools/lru_cache/tests/test_lru_cache.py index a97df15bb..7c95ccc7e 100644 --- a/apptools/lru_cache/tests/test_lru_cache.py +++ b/apptools/lru_cache/tests/test_lru_cache.py @@ -73,7 +73,7 @@ def test_cache_resize(): def test_cache_items(): c = LRUCache(2) - assert_equal([], list(c.items())) + assert_equal([], c.items()) c[0] = str(0) c[1] = str(1) @@ -105,7 +105,7 @@ def test_cache_idempotency(): def test_cache_keys_values(): c = LRUCache(2) - assert_equal([], list(c.items())) + assert_equal([], c.items()) c[0] = str(0) c[1] = str(1) @@ -113,7 +113,7 @@ def test_cache_keys_values(): expected = [1, 2] assert_equal(expected, sorted(c.keys())) - assert_equal(list(map(str, expected)), sorted(c.values())) + assert_equal([str(val) for val in expected], sorted(c.values())) def test_cache_clear(): diff --git a/apptools/naming/trait_defs/naming_traits.py b/apptools/naming/trait_defs/naming_traits.py index cd2a76edc..01719560f 100644 --- a/apptools/naming/trait_defs/naming_traits.py +++ b/apptools/naming/trait_defs/naming_traits.py @@ -16,6 +16,8 @@ import sys +import six + from traits.api \ import Trait, TraitHandler, TraitFactory @@ -27,7 +29,6 @@ from apptools.naming.api \ import Binding -import six #------------------------------------------------------------------------------- diff --git a/apptools/naming/ui/context_node_type.py b/apptools/naming/ui/context_node_type.py index 1b53d5a5d..447e7684b 100644 --- a/apptools/naming/ui/context_node_type.py +++ b/apptools/naming/ui/context_node_type.py @@ -13,9 +13,9 @@ #------------------------------------------------------------------------------ """ The node type for contexts in a naming system. """ +from __future__ import print_function # Enthought library imports. -from __future__ import print_function from apptools.naming.api import Context from pyface.tree.api import NodeType diff --git a/apptools/preferences/preferences.py b/apptools/preferences/preferences.py index b8f572a6b..e197f88dd 100644 --- a/apptools/preferences/preferences.py +++ b/apptools/preferences/preferences.py @@ -1,7 +1,8 @@ """ The default implementation of a node in a preferences hierarchy. """ -# Standard library imports. from __future__ import print_function + +# Standard library imports. import logging, threading # Third-party library imports. diff --git a/apptools/preferences/tests/preferences_test_case.py b/apptools/preferences/tests/preferences_test_case.py index e2d34899f..75a228aaa 100644 --- a/apptools/preferences/tests/preferences_test_case.py +++ b/apptools/preferences/tests/preferences_test_case.py @@ -171,8 +171,7 @@ def test_keys(self): p.set('b', '2') p.set('c', '3') - keys = list(p.keys()) - keys.sort() + keys = sorted(p.keys()) self.assertEqual(['a', 'b', 'c'], keys) @@ -181,8 +180,7 @@ def test_keys(self): p.set('acme.b', '2') p.set('acme.c', '3') - keys = p.keys('acme') - keys.sort() + keys = sorted(p.keys('acme')) self.assertEqual(['a', 'b', 'c'], keys) @@ -191,8 +189,7 @@ def test_keys(self): p.set('acme.ui.b', '2') p.set('acme.ui.c', '3') - keys = p.keys('acme.ui') - keys.sort() + keys = sorted(p.keys('acme.ui')) self.assertEqual(['a', 'b', 'c'], keys) @@ -263,8 +260,7 @@ def test_node_names(self): p.node('b') p.node('c') - names = p.node_names() - names.sort() + names = sorted(p.node_names()) self.assertEqual(['a', 'b', 'c'], names) @@ -273,8 +269,7 @@ def test_node_names(self): p.node('acme.b') p.node('acme.c') - names = p.node_names('acme') - names.sort() + names = sorted(p.node_names('acme')) self.assertEqual(['a', 'b', 'c'], names) @@ -283,8 +278,7 @@ def test_node_names(self): p.node('acme.ui.b') p.node('acme.ui.c') - names = p.node_names('acme.ui') - names.sort() + names = sorted(p.node_names('acme.ui')) self.assertEqual(['a', 'b', 'c'], names) diff --git a/apptools/preferences/ui/preferences_node.py b/apptools/preferences/ui/preferences_node.py index 3b00def00..dd38f02a6 100644 --- a/apptools/preferences/ui/preferences_node.py +++ b/apptools/preferences/ui/preferences_node.py @@ -13,9 +13,9 @@ #------------------------------------------------------------------------------ """ Abstract base class for a node in a preferences dialog. """ +from __future__ import print_function # Enthought library imports. -from __future__ import print_function from traits.api import Delegate, Instance, Str # Local imports. diff --git a/apptools/scripting/recorder.py b/apptools/scripting/recorder.py index 1ad613272..d2f4c20da 100644 --- a/apptools/scripting/recorder.py +++ b/apptools/scripting/recorder.py @@ -223,7 +223,7 @@ def register(self, object, parent=None, trait_name_on_parent='', sub_recordables = list(object.traits(record=True).keys()) # Find all the trait names we must ignore. - ignore.extend(list(object.traits(record=False).keys())) + ignore.extend(object.traits(record=False).keys()) # The traits to listen for. tnames = [t for t in object.trait_names() if not t.startswith('_') and not t.endswith('_') \ diff --git a/apptools/sweet_pickle/tests/updater_test_case.py b/apptools/sweet_pickle/tests/updater_test_case.py index 195f84a44..22c469179 100644 --- a/apptools/sweet_pickle/tests/updater_test_case.py +++ b/apptools/sweet_pickle/tests/updater_test_case.py @@ -238,8 +238,9 @@ def fn2(): self.assertEqual(2, len(self.registry.state_functions)) self.assertEqual(2, len(self.registry.version_attribute_map)) self.assertEqual(1, len(self.registry._state_function_classes)) - self._validate_class_map_contents(list(updater.class_map.items()) + \ - list(updater2.class_map.items())) + self._validate_class_map_contents( + list(updater.class_map.items()) + list(updater2.class_map.items()) + ) counts = {('foo', 'Foo'): 3} self._validate_state_function_contents( [ (('foo', 'Foo', 1), [fn1, fn2]), (('foo', 'Foo', 2), [fn2]) ], From ec5f4ed028a4aa9123641ece756afa2d4e770d60 Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Wed, 29 May 2019 14:43:27 +0530 Subject: [PATCH 11/12] CLN : More minor cleanup - moving imports around and adding spaces between imports and functions/classes - remove unnecessary uses of list modified: apptools/help/help_plugin/action/load_url_action.py modified: apptools/help/help_plugin/help_code.py modified: apptools/help/help_plugin/help_doc.py modified: apptools/preferences/preferences.py modified: apptools/preferences/tests/py_config_file.py modified: apptools/template/impl/template_data_context.py modified: apptools/type_registry/type_registry.py --- apptools/help/help_plugin/action/load_url_action.py | 3 ++- apptools/help/help_plugin/help_code.py | 3 ++- apptools/help/help_plugin/help_doc.py | 3 ++- apptools/preferences/preferences.py | 1 + apptools/preferences/tests/py_config_file.py | 1 + apptools/template/impl/template_data_context.py | 6 ++---- apptools/type_registry/type_registry.py | 2 ++ 7 files changed, 12 insertions(+), 7 deletions(-) diff --git a/apptools/help/help_plugin/action/load_url_action.py b/apptools/help/help_plugin/action/load_url_action.py index e83577c5c..bdc4b11ab 100644 --- a/apptools/help/help_plugin/action/load_url_action.py +++ b/apptools/help/help_plugin/action/load_url_action.py @@ -10,12 +10,13 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -# Enthought library imports. +# Local imports. from .doc_action import DocAction # This module's parent package. PARENT = '.'.join(__name__.split('.')[:-2]) + class LoadURLAction(DocAction): """ Workbench Action for displaying a url in a web browser. """ diff --git a/apptools/help/help_plugin/help_code.py b/apptools/help/help_plugin/help_code.py index 69d9e87f7..613c76f1c 100644 --- a/apptools/help/help_plugin/help_code.py +++ b/apptools/help/help_plugin/help_code.py @@ -12,11 +12,12 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from apptools.preferences.api import PreferencesHelper from traits.api import File, Str, provides +from apptools.preferences.api import PreferencesHelper from .i_help_code import IHelpCode + @provides(IHelpCode) class HelpCode(PreferencesHelper): """ The implementation for help codes. diff --git a/apptools/help/help_plugin/help_doc.py b/apptools/help/help_plugin/help_doc.py index 53e5e611b..fd0a7d3f9 100644 --- a/apptools/help/help_plugin/help_doc.py +++ b/apptools/help/help_plugin/help_doc.py @@ -10,11 +10,12 @@ # is also available online at http://www.enthought.com/licenses/BSD.txt # Thanks for using Enthought open source! -from apptools.preferences.api import PreferencesHelper from traits.api import Either, File, Str, provides, Bool +from apptools.preferences.api import PreferencesHelper from .i_help_doc import IHelpDoc + @provides(IHelpDoc) class HelpDoc(PreferencesHelper): """ The implementation for help docs. diff --git a/apptools/preferences/preferences.py b/apptools/preferences/preferences.py index e197f88dd..18f00a84e 100644 --- a/apptools/preferences/preferences.py +++ b/apptools/preferences/preferences.py @@ -15,6 +15,7 @@ # Local imports. from .i_preferences import IPreferences + # Logging. logger = logging.getLogger(__name__) diff --git a/apptools/preferences/tests/py_config_file.py b/apptools/preferences/tests/py_config_file.py index 2ce946daa..02ecc10cf 100644 --- a/apptools/preferences/tests/py_config_file.py +++ b/apptools/preferences/tests/py_config_file.py @@ -1,5 +1,6 @@ """ A Python based configuration file with hierarchical sections. """ from __future__ import print_function + import six diff --git a/apptools/template/impl/template_data_context.py b/apptools/template/impl/template_data_context.py index 4fd1cf714..4d4fc2e2c 100644 --- a/apptools/template/impl/template_data_context.py +++ b/apptools/template/impl/template_data_context.py @@ -69,14 +69,12 @@ class TemplateDataContext ( HasPrivateTraits ): @cached_property def _get_data_context_values ( self ): - values = list(self.values.keys()) - values.sort() + values = sorted(self.values.keys()) return values @cached_property def _get_data_contexts ( self ): - contexts = list(self.contexts.keys()) - contexts.sort() + contexts = sorted(self.contexts.keys()) return contexts #-- 'ITemplateDataContext' Interface Implementation ------------------------ diff --git a/apptools/type_registry/type_registry.py b/apptools/type_registry/type_registry.py index 45c1c8671..789c939d4 100644 --- a/apptools/type_registry/type_registry.py +++ b/apptools/type_registry/type_registry.py @@ -1,4 +1,6 @@ import six + + def get_mro(obj_class): """ Get a reasonable method resolution order of a class and its superclasses for both old-style and new-style classes. From dce4f243e07ffe24192c1d2d0ec7c57b39ec85ce Mon Sep 17 00:00:00 2001 From: Poruri Sai Rahul Date: Wed, 29 May 2019 14:46:45 +0530 Subject: [PATCH 12/12] FIX : Revert earlier change Re-add a list call which actually is needed as the output is a tuple instead of a list modified: apptools/io/h5/tests/test_file.py --- apptools/io/h5/tests/test_file.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apptools/io/h5/tests/test_file.py b/apptools/io/h5/tests/test_file.py index 36fbfa730..f4cf24f11 100644 --- a/apptools/io/h5/tests/test_file.py +++ b/apptools/io/h5/tests/test_file.py @@ -514,7 +514,7 @@ def test_attribute_iteration_methods(): assert all(isinstance(x, tuple) for x in items) # unfold the pairs - keys, vals = zip(*items) + keys, vals = [list(item) for item in zip(*items)] assert keys == list(attrs.keys()) assert vals == list(attrs.values())