diff options
| author | John Anderson <sontek@gmail.com> | 2014-12-14 20:27:26 -0800 |
|---|---|---|
| committer | John Anderson <sontek@gmail.com> | 2014-12-14 20:27:26 -0800 |
| commit | e2274e5d1aa8e125c26a2e8d168a64e1b9e68db2 (patch) | |
| tree | 17dd1644ccde26efb4e77633cd1c6970571025e8 | |
| parent | 1dfd12a21edba88f19d3f9af3ba6d127a461512d (diff) | |
| download | pyramid-e2274e5d1aa8e125c26a2e8d168a64e1b9e68db2.tar.gz pyramid-e2274e5d1aa8e125c26a2e8d168a64e1b9e68db2.tar.bz2 pyramid-e2274e5d1aa8e125c26a2e8d168a64e1b9e68db2.zip | |
Fix py26 support
| -rw-r--r-- | pyramid/scripts/proutes.py | 14 | ||||
| -rw-r--r-- | tox.ini | 2 |
2 files changed, 11 insertions, 5 deletions
diff --git a/pyramid/scripts/proutes.py b/pyramid/scripts/proutes.py index b9a33f5bc..d68f35cef 100644 --- a/pyramid/scripts/proutes.py +++ b/pyramid/scripts/proutes.py @@ -13,7 +13,6 @@ from pyramid.interfaces import ( from pyramid.scripts.common import parse_vars from pyramid.static import static_view from zope.interface import Interface -from collections import OrderedDict PAD = 3 @@ -117,14 +116,15 @@ def get_route_data(route, registry): ) route_request_methods = None - view_request_methods = OrderedDict() + view_request_methods_order = [] + view_request_methods = {} view_callable = None route_intr = registry.introspector.get( 'routes', route.name ) - if (request_iface is None) or (route.factory is not None): + if request_iface is None: return [ (route.name, _get_pattern(route), UNKNOWN_KEY, ANY_KEY) ] @@ -136,10 +136,12 @@ def get_route_data(route, registry): default=None ) view_module = _get_view_module(view_callable) + # Introspectables can be turned off, so there could be a chance # that we have no `route_intr` but we do have a route + callable if route_intr is None: view_request_methods[view_module] = [] + view_request_methods_order.append(view_module) else: route_request_methods = route_intr['request_methods'] @@ -155,6 +157,7 @@ def get_route_data(route, registry): if view_module not in view_request_methods: view_request_methods[view_module] = [] + view_request_methods_order.append(view_module) if isinstance(request_method, string_types): request_method = (request_method,) @@ -163,13 +166,16 @@ def get_route_data(route, registry): else: if view_module not in view_request_methods: view_request_methods[view_module] = [] + view_request_methods_order.append(view_module) else: view_request_methods[view_module] = [] + view_request_methods_order.append(view_module) final_routes = [] - for view_module, methods in view_request_methods.items(): + for view_module in view_request_methods_order: + methods = view_request_methods[view_module] request_methods = _get_request_methods( route_request_methods, methods @@ -9,7 +9,7 @@ commands = [testenv:cover] basepython = - python2.6 + python2.7 commands = python setup.py dev python setup.py nosetests --with-xunit --with-xcoverage |
