Show standard error for failing CWL jobs that capture standard error#5555
Open
adamnovak wants to merge 6 commits into
Open
Show standard error for failing CWL jobs that capture standard error#5555adamnovak wants to merge 6 commits into
adamnovak wants to merge 6 commits into
Conversation
… log files for failing commands
mr-c
requested changes
Jul 17, 2026
| # This section deals with the CWL promise system. | ||
| # | ||
| # This is not to be confused with the Toil promise system, except under | ||
| # fconfusing circumstances. |
Contributor
There was a problem hiding this comment.
Suggested change
| # fconfusing circumstances. | |
| # confusing circumstances. |
| # Processes in general can generate a lot of types of jobs, but CommandLineTools and ExpressionTools are typed as generating a more restricted set of possible types of jobs. | ||
| # We want to be able to wrap them with the same wrapper. | ||
| # | ||
| # ExperssionTool's job() is also able to take a None for output_callbacks, while CommandLineTool's can't. |
Contributor
There was a problem hiding this comment.
Suggested change
| # ExperssionTool's job() is also able to take a None for output_callbacks, while CommandLineTool's can't. | |
| # ExpressionTool's job() is also able to take a None for output_callbacks, while CommandLineTool's can't. |
| # | ||
| # We can't just say the wrapper mixin generates the more permissive type range because then it won't be substitutable for a CommandLineTool, etc. | ||
| # | ||
| # So to type this we have to do a bunch of ugly type stuff, and event hen we need to cast (see https://github.com/python/mypy/issues/17192#issuecomment-4995017670) |
Contributor
There was a problem hiding this comment.
Suggested change
| # So to type this we have to do a bunch of ugly type stuff, and event hen we need to cast (see https://github.com/python/mypy/issues/17192#issuecomment-4995017670) | |
| # So to type this we have to do a bunch of ugly type stuff, and even then we need to cast (see https://github.com/python/mypy/issues/17192#issuecomment-4995017670) |
| stage_listing: bool = False, | ||
| streaming_allowed: bool = True, | ||
| ): | ||
| Ypu also need to tell it the types that the mixed-with Process uses on its |
Contributor
There was a problem hiding this comment.
Suggested change
| Ypu also need to tell it the types that the mixed-with Process uses on its | |
| You also need to tell it the types that the mixed-with Process uses on its |
| Attach the Toil tool to the Toil file store it is running against. | ||
|
|
||
| This is needed in order to allow hooks we add into the cwltool | ||
| tool-running code to talk to the file stroe for things like logging. |
Contributor
There was a problem hiding this comment.
Suggested change
| tool-running code to talk to the file stroe for things like logging. | |
| tool-running code to talk to the file store for things like logging. |
|
|
||
| ##### | ||
| # | ||
| # In this section, we have helper functions for loading and setting uop a |
Contributor
There was a problem hiding this comment.
Suggested change
| # In this section, we have helper functions for loading and setting uop a | |
| # In this section, we have helper functions for loading and setting up a |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This fixes #2994 by logging standard error from CWL tasks to the Toil log, when the tasks fail, even if standard error for the task is being captured to a file.
(When standard error is not captured, we already log it to the Toil log.)
The result looks just like if it wasn't being captured:
We don't do this when the job succeeds, because the user might be capturing the log because it's inconveniently large.
Changelog Entry
To be copied to the draft changelog by merger:
Reviewer Checklist
issues/XXXX-fix-the-thingin the Toil repo, or from an external repo.camelCasethat want to be insnake_case.docs/running/{cliOptions,cwl,wdl}.rstMerger Checklist