Commit Graph
67 Commits
Author SHA1 Message Date
mvdbeek d2597738cb Make to_cwl compatible with pulsar 2025-05-12 10:54:56 +02:00
John Chilton 219796f049 Implement paired_or_unpaired collections, list wizards. 2025-05-09 17:39:38 -04:00
John Chilton 518fa136d9 [WIP] Implement records - heterogenous dataset collections.
Existing dataset colleciton types are meant to be homogenous - all datasets of the same time. This introduces CWL-style record dataset collections.
2025-05-09 16:38:19 -04:00
Ahmed Hamid Awan d7fa1d19ce Merge pull request #19054 from jmchilton/tool_markdown
Implement tool markdown reports.
2025-05-06 20:49:30 +05:00
John Chilton 9b0fb38a76 More workflow mapping test cases. 2025-05-03 10:21:17 -04:00
John Chilton f9e1022360 Test case for bug where workflow collection mapping interprets collection at wrong rank. 2025-05-03 10:21:17 -04:00
John Chilton 1f95f421c9 Tool markdown reports. 2025-05-02 11:25:21 -04:00
mvdbeek 8622dfa237 Merge branch 'release_24.2' into dev 2025-03-14 09:32:27 +01:00
mvdbeek 858593a8ba Fix transfer of $_TOOL_DIRECTORY subdirectories
Goes together with https://github.com/galaxyproject/pulsar/pull/385
2025-03-13 16:19:10 +01:00
mvdbeek eb1709fcbb Merge branch 'release_24.2' into dev 2025-03-08 11:20:03 +01:00
Marius van den Beek 54de00e2cf Merge pull request #19694 from mvdbeek/bwa_index_directory_datatype
[24.2] Add bwa_mem2_index directory datatype, framework enhancements for testing directories
2025-03-08 11:14:52 +01:00
mvdbeek ab2f7c3b57 Merge branch 'release_24.2' into dev 2025-02-28 12:34:02 +01:00
mvdbeek 07a4a7c058 Fix directory uploads, use `__FETCH_DATA__` api
for tool tests, which were still using upload1.
2025-02-25 18:10:10 +01:00
John Chilton 387ce7dd37 Add failing test case for #19678 2025-02-25 11:39:58 -05:00
mvdbeek 6512b4c366 Add bwa_mem2_index datatype 2025-02-19 17:26:09 +01:00
John Davis 5cf48dc995 Merge remote-tracking branch 'upstream/release_24.2' into dev 2025-02-14 17:05:07 -05:00
mvdbeek 871a6901be Test sanitization 2025-02-11 14:36:20 +01:00
M Bernt 967db5bba9 Merge branch 'dev' into topic/data-table-filter 2024-10-22 13:23:49 +02:00
mvdbeek b02f46b1f4 Implement filter null database operation tool 2024-10-02 20:02:01 +02:00
John Chilton 675c9670e2 Models for YAML test format. 2024-09-24 12:47:07 -04:00
John Chilton 67b4a69c1b Merge pull request #18722 from jmchilton/markdown_help_2
Improvements to help terms & tool help.
2024-09-03 12:41:05 -04:00
John Chilton 7b294fcaaa Implement tool upgrade assistant script.
Inspect a tool's XML file and provide advice on upgrading to new tool versions. It is implemented as a library in tool_util for integration with Planemo in the future but I've added a script here to run it on the command-line directly. It can also output in JSON for integration with external tools such as the galaxy language server.
2024-08-24 11:22:43 -04:00
John Chilton 701c6f552d Improvements to help terms & tool help.
- Allow tools to declare markdown help.
- Allow tools to reference help terms from their Markdown tools.
- Auto generate help terms for each datatype from values in datatypes_conf.xml
- Add permenant links for each help term - both the auto generated ones and the YAML specified
ones.
- Add some initial help terms for collection operations.
- Use new help term for "map over" from tool form.
2024-08-23 11:03:13 -04:00
John Chilton 5359f8ba74 Input parameter schema. 2024-07-15 09:46:13 -04:00
Nicola Soranzo 08d42ea24f Merge branch 'release_24.0' into release_24.1 2024-06-19 13:14:15 +01:00
mvdbeek dd171fe34d Add test tool for default ext handling in discovered collections 2024-06-13 12:53:28 +02:00
mvdbeek b8e2bfc9c7 Merge branch 'release_24.0' into release_24.1 2024-06-11 13:42:48 +02:00
mvdbeek 8bc3f2151a Add tool that produces all types of outputs 2024-06-08 16:27:49 +02:00
John Chilton 46e83e178d Implement a cross product collection operation tools.
These are available in a list(n) x list (m) -> list(nxm) version (a cross product that produces two flat lists) and a list(n) x list(m) -> list(n):list(m) version (a cross product that produces two nested lists).

After two lists have been run through one of these two tools - the result is two new lists that can be passed into another tool to perform all-against-all operations using Galaxy's normal collection mapping semantics.

The choice of which to use will depend on how you want to continue to process the all-against-all results after the next step in an analysis. My sense is the flat version is "easier" to think about and pick through manually and the nested version perserves more structure if additional collection operation tools will be used to filter or aggregate the results.

Some considerations:

Apply Rules?

I do not believe the Apply Rules tool semanatics would allow these operations but certainly the Apply Rules tool could be used to convert the result of the flat version to the nested version or vice versa - so no metadata is really lost per se between the two versions. I think it is still worth including both versions though - they both have utility (both for instance are baked into CWL's workflow semantics - https://docs.sevenbridges.com/docs/about-parallelizing-tool-executions#nested-cross-product) and avoiding requiring complex Apply Rules programs for simple workflows is probably ideal.

One Tool vs Two?

Marius and I agree that few simpler tools for these kinds of operations are better. The tool help can be more focused and avoiding the conditional and conditional outputs make the static analysis done for instance by the workflow editor simpler.
2024-04-15 12:00:30 -04:00
mvdbeek 6f2a04321d Merge branch 'release_24.0' into dev 2024-04-04 18:55:04 +02:00
mvdbeek 969e995a9b Add test tool w/ dynamic select in conditional
Include this in a workflow, and notice that the run form breaks
if the history contains a dataset that trips up the dynamic parameter.
2024-04-02 19:10:20 +02:00
Marius van den Beek e2b67da82c Merge pull request #17581 from kostrykin/files_assertions_images
Add content assertion XML tags for test output verification using images
2024-03-13 13:08:55 +01:00
mvdbeek 184d880b11 Merge branch 'release_24.0' into dev 2024-03-05 17:05:06 +01:00
Marius van den Beek eeb2d04c78 Merge pull request #16885 from bernt-matthias/topic/dynamic-multiple
Add test and doc showing how dynamic selects are used
2024-03-05 16:25:14 +01:00
Marius van den Beek b7c14c6559 Merge pull request #17294 from lldelisle/filter_paused
[24.0] Add ``__KEEP_SUCCESS_DATASETS__``
2024-03-05 16:18:20 +01:00
Leonid Kostrykin 9a15904e44 Add has_image_metadata test assertion 2024-03-04 17:28:18 +00:00
Nicola Soranzo 3f0f789b82 Merge pull request #17556 from kostrykin/files_diff_images
Add `image_diff` comparison method for test output verification using images
2024-03-04 17:04:44 +00:00
Leonid Kostrykin 3bb63ee5fa Add functional test for image_diff 2024-02-27 19:22:33 +01:00
John Davis 4cc9a7a938 Merge pull request #16662 from lldelisle/synchronize_collections
Add harmonize collections tool (or whatever other name)
2024-02-26 15:06:17 -05:00
M Bernt f6d9ca95c9 Merge branch 'dev' into topic/data-table-filter 2024-02-16 15:32:12 +01:00
mvdbeek 67ab6a0ff0 Basic support for getting select options from URLs
Updating regular tool data tables for frequently changing data is a
little tricky, and it was requested that we allow loading options
dynamically from a URL. The eventual goals of this work is to enable
exploring resources with great APIs (NCBI datasets is a good exmaple)
from within Galaxy tools.

This doesn't do any of that yet ... it's just a simple URL one can
query with a GET request, and the data there must be in the format
["name", "value", True|False].

Following steps:
  - [x] allow templating (Cheetah ? JS?)
  - [x] allow post-processing to extract name-value pairs
    - jq-like syntax ?
    - [x] JS expression ?
  - add pagination (requires work on vue-multiselect)
  - add request caching

Some potential issues:
  - Slow server responses: use async library and cancel request after N
    seconds ?
  - Large respons ... stream response and cancel after configurable max
    response size ?
2024-02-12 15:47:59 +01:00
Lucille Delisle 5ba85f3f9f add the tool to the sample_tool_conf.xml 2024-01-25 16:21:22 +01:00
mvdbeek 686ec6fac4 Merge branch 'release_23.1' into dev 2023-11-21 09:36:51 +01:00
John Chilton edcc043b61 Make testing tool panel views a little easier. 2023-11-15 11:04:28 -05:00
John Chilton ea0fe8053b Merge pull request #14955 from jmchilton/default_uris_2
Implement default locations for data and collection parameters.
2023-11-06 10:05:00 -05:00
Nicola Soranzo 1e86672f83 Allow non-optional integer/float params without `value` attribute
Previously a tool with such an input would fail to load.

Add test tool.
2023-11-02 17:19:43 +00:00
John Chilton dce53769bd Implement default locations for data and collection parameters.
Works for both files and collections. Workflow defaults override tool defaults.

TODO:

- Unit test case to ensure this only works for non-default, non-multi data parameters.
- Implement XSD once syntax is finalized.
2023-11-01 11:52:44 -04:00
Matthias Bernt ad89822c12 add test showing how dynamic selects are used 2023-10-19 15:43:17 +02:00
guerler bf02dc9948 Drop library_data input type 2023-10-17 10:29:26 +03:00
Lucille Delisle 6fda698c6e rename synchronize to harmonize thanks @jmchilton 2023-09-07 17:56:44 +02:00