[galaxyproject/galaxy] 84b572: Extend tool API to allow cross product mapping ove...
Branch: refs/heads/dev Home: https://github.com/galaxyproject/galaxy Commit: 84b5726ca99bb681b6883bd42093c3a58e036d24 https://github.com/galaxyproject/galaxy/commit/84b5726ca99bb681b6883bd42093c... Author: John Chilton <jmchilton@gmail.com> Date: 2015-09-18 (Fri, 18 Sep 2015) Changed paths: M lib/galaxy/dataset_collections/matching.py M lib/galaxy/dataset_collections/structure.py M lib/galaxy/dataset_collections/type_description.py M lib/galaxy/tools/parameters/meta.py M test/api/test_tools.py Log Message: ----------- Extend tool API to allow cross product mapping over collections. By default if single data parameters are mapped over by collections, the collections are matched up (e.g. for two collections the items are paired off and two collections of dimension (N) will result in running N jobs and producing an (N) dimensional output for each define output). In the parameter meta value wrapper (where batch mode can be set with the ``batch`` flag), the linked flag is now respected for collection operations. If ``linked`` is ``False``, then the cross product of the inputs will be used to map over the tool. In the above simplest case, this would cause an NxN (``list:list``) collection to be created for each tool output. This operation was previously available for individual datasets, but when supplied a collection it would not create an implicit collection pulling together all the relevant datasets with the correct structure - it would just run the jobs and leave the datasets uncollected. Now a collection with the correct structure and identifiers is created. Limitations: ----------------- This does not enable tool form support but the API for collections matches that for doing cross product operations over sets of individual datasets, so once support is added to the tool form for that collection support should be trivial. Testing: ----------------- The following test case has been extended to now ensure that an implicit collection is created and that it has the right dimensionality/structure and contents. ./run_tests.sh -with_framework_test_tools -api test/api/test_tools.py:ToolsTestCase.test_map_over_two_collections_unlinked Commit: a2a4ce43ec3f7571be12e08a801ea9f21d41f992 https://github.com/galaxyproject/galaxy/commit/a2a4ce43ec3f7571be12e08a801ea... Author: Dannon Baker <dannon.baker@gmail.com> Date: 2015-10-06 (Tue, 06 Oct 2015) Changed paths: M lib/galaxy/dataset_collections/matching.py M lib/galaxy/dataset_collections/structure.py M lib/galaxy/dataset_collections/type_description.py M lib/galaxy/tools/parameters/meta.py M test/api/test_tools.py Log Message: ----------- Merge pull request #743 from jmchilton/cross_product_collection_mapping Extend tool API to allow cross product mapping over collections. Compare: https://github.com/galaxyproject/galaxy/compare/d309535f6871...a2a4ce43ec3f
participants (1)
-
GitHub