Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[18.01] fix for cases where panel elements have to_dict with different signature #5615

Merged
merged 3 commits into from Mar 1, 2018

Conversation

Projects
None yet
1 participant
@martenson
Copy link
Member

martenson commented Feb 27, 2018

we want to only cache Tools anyways, so this fixes other possible bug
where section/label etc would have same id as a Tool

The to_dict bug caused the following exception on Main, because it has a ToolSectionLabel element. No other env this was tested on had it.

TypeError: to_dict() takes exactly 1 argument (3 given)
  File "galaxy/web/framework/middleware/sentry.py", line 43, in __call__
    iterable = self.application(environ, start_response)
  File "/cvmfs/main.galaxyproject.org/venv/lib/python2.7/site-packages/paste/recursive.py", line 85, in __call__
    return self.application(environ, start_response)
  File "galaxy/web/framework/middleware/statsd.py", line 35, in __call__
    req = self.application(environ, start_response)
  File "/cvmfs/main.galaxyproject.org/venv/lib/python2.7/site-packages/paste/httpexceptions.py", line 640, in __call__
    return self.application(environ, start_response)
  File "galaxy/web/framework/base.py", line 136, in __call__
    return self.handle_request(environ, start_response)
  File "galaxy/web/framework/base.py", line 215, in handle_request
    body = method(trans, **kwargs)
  File "galaxy/webapps/galaxy/controllers/root.py", line 110, in index
    config.update(self._get_extended_config(trans))
  File "galaxy/webapps/galaxy/controllers/root.py", line 58, in _get_extended_config
    'toolbox_in_panel'              : app.toolbox.to_dict(trans),
  File "galaxy/tools/toolbox/base.py", line 956, in to_dict
    rval.append(self._get_tool_to_dict(trans, elt))
  File "galaxy/tools/toolbox/base.py", line 938, in _get_tool_to_dict
    to_dict = tool.to_dict(trans, link_details=True)
@martenson

This comment has been minimized.

Copy link
Member Author

martenson commented Feb 27, 2018

switching to WIP, more complexity found

@martenson martenson force-pushed the martenson:distinct-elts branch from 296c176 to 892a246 Feb 27, 2018

@martenson

This comment has been minimized.

Copy link
Member Author

martenson commented Feb 27, 2018

This has to wait on #5616

martenson added some commits Feb 27, 2018

fix for cases where panel elements have to_dict with different signature
we want to only cache Tools anyways, so this fixes other possible bug
where section/label etc would have same id as a Tool

change the detection of Tool object

to avoid circular import errors
Also use cache for dictifying sections, we should
gain more speed from that.

@martenson martenson force-pushed the martenson:distinct-elts branch from 892a246 to b96fd2c Mar 1, 2018

@martenson martenson added status/review and removed status/WIP labels Mar 1, 2018

@martenson

This comment has been minimized.

Copy link
Member Author

martenson commented Mar 1, 2018

this is ready for review now

@martenson

This comment has been minimized.

Copy link
Member Author

martenson commented Mar 1, 2018

given this has just been reviewed today here #5600 I will just merge

@martenson martenson merged commit 41910f8 into galaxyproject:release_18.01 Mar 1, 2018

6 checks passed

api test Build finished. 351 tests run, 5 skipped, 0 failed.
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
framework test Build finished. 171 tests run, 0 skipped, 0 failed.
Details
integration test Build finished. 79 tests run, 4 skipped, 0 failed.
Details
selenium test Build finished. 118 tests run, 3 skipped, 0 failed.
Details
toolshed test Build finished. 577 tests run, 0 skipped, 0 failed.
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.