From 79cde8df47f11ee37dc059186709ec2e4c8d561d Mon Sep 17 00:00:00 2001 From: andy Date: Mon, 3 Oct 2011 20:53:40 +0200 Subject: [PATCH 1/3] have preferrence list of plugins instead of just trying "null" and "pil" --- scikits/image/io/__init__.py | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/scikits/image/io/__init__.py b/scikits/image/io/__init__.py index 4badbbd6..b6511b07 100644 --- a/scikits/image/io/__init__.py +++ b/scikits/image/io/__init__.py @@ -8,13 +8,12 @@ from _plugins import use as use_plugin from _plugins import available as plugins from _plugins import info as plugin_info -# Add this plugin so that we can read images by default -use_plugin('null') +available_plugins = plugins() -try: - use_plugin('pil') -except ImportError: - pass +for preferred_plugin in ['pil', 'matplotlib', 'gtk', 'freeimage', 'qt', 'null']: + if preferred_plugin in available_plugins: + use_plugin(preferred_plugin) + break from sift import * from collection import * From 7448ba2529a39fc4546f9f4b844fcacd523d6883 Mon Sep 17 00:00:00 2001 From: andy Date: Mon, 3 Oct 2011 20:54:04 +0200 Subject: [PATCH 2/3] null_plugin gets imread as promised in __ini__.py of plugins --- scikits/image/io/_plugins/null_plugin.ini | 2 +- scikits/image/io/_plugins/null_plugin.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/scikits/image/io/_plugins/null_plugin.ini b/scikits/image/io/_plugins/null_plugin.ini index 1584882c..ddc45f33 100644 --- a/scikits/image/io/_plugins/null_plugin.ini +++ b/scikits/image/io/_plugins/null_plugin.ini @@ -1,3 +1,3 @@ [null] description = Default plugin that does nothing -provides = imshow, _app_show +provides = imshow, imread, _app_show diff --git a/scikits/image/io/_plugins/null_plugin.py b/scikits/image/io/_plugins/null_plugin.py index 1645a3b3..6ca5bbfd 100644 --- a/scikits/image/io/_plugins/null_plugin.py +++ b/scikits/image/io/_plugins/null_plugin.py @@ -1,4 +1,4 @@ -__all__ = ['imshow', '_app_show'] +__all__ = ['imshow', 'imread', '_app_show'] import warnings @@ -12,4 +12,7 @@ for a list of available plugins.''' def imshow(*args, **kwargs): warnings.warn(RuntimeWarning(message)) +def imread(*args, **kwargs): + warnings.warn(RuntimeWarning(message)) + _app_show = imshow From fc612a830e84041b2e53577ed0387a79fa8f6157 Mon Sep 17 00:00:00 2001 From: andy Date: Mon, 3 Oct 2011 20:55:35 +0200 Subject: [PATCH 3/3] pep8 --- scikits/image/io/__init__.py | 6 ++++-- scikits/image/io/_plugins/null_plugin.py | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/scikits/image/io/__init__.py b/scikits/image/io/__init__.py index b6511b07..697ebf6d 100644 --- a/scikits/image/io/__init__.py +++ b/scikits/image/io/__init__.py @@ -10,7 +10,8 @@ from _plugins import info as plugin_info available_plugins = plugins() -for preferred_plugin in ['pil', 'matplotlib', 'gtk', 'freeimage', 'qt', 'null']: +for preferred_plugin in ['pil', + 'matplotlib', 'gtk', 'freeimage', 'qt', 'null']: if preferred_plugin in available_plugins: use_plugin(preferred_plugin) break @@ -20,6 +21,7 @@ from collection import * from io import * + def _update_doc(doc): """Add a list of plugins to the module docstring, formatted as a ReStructuredText table. @@ -37,7 +39,7 @@ def _update_doc(doc): info.insert(0, ('=' * col_1_len, {'description': '=' * col_2_len})) info.insert(1, ('Plugin', {'description': 'Description'})) info.insert(2, ('-' * col_1_len, {'description': '-' * col_2_len})) - info.append( ('=' * col_1_len, {'description': '=' * col_2_len})) + info.append(('=' * col_1_len, {'description': '=' * col_2_len})) for (name, meta_data) in info: wrapped_descr = wrap(meta_data.get('description', ''), diff --git a/scikits/image/io/_plugins/null_plugin.py b/scikits/image/io/_plugins/null_plugin.py index 6ca5bbfd..e0237437 100644 --- a/scikits/image/io/_plugins/null_plugin.py +++ b/scikits/image/io/_plugins/null_plugin.py @@ -9,9 +9,11 @@ scikits.image.io.plugins() for a list of available plugins.''' + def imshow(*args, **kwargs): warnings.warn(RuntimeWarning(message)) + def imread(*args, **kwargs): warnings.warn(RuntimeWarning(message))