You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This tool never accesses the file data, and I'm not sure that an ExpressionTool is even allowed to go around opening files from JavaScript, so there's no reason the file should need to be downloaded beforehand. I think in vanilla cwltool this would apply when the location(s) are HTTP(S) URLs, but in Toil we pass around File and Directory objects with a variety of URL schemes in location. Also, an ExpressionTool might or might not be allowed to just build a {class: 'File'} itself. So it makes sense for File objects to come out of a tool that don't correspond to things that are on disk.
But, at the end of a tool, the executor wants to run relocateOutputs, and that in turn seems to demand that the files be on disk unless the scheme is the magic _: one for files to be created:
I want to be able to run a tool like this, and let it output a
File
without having to have the data on the local disk:This tool never accesses the file data, and I'm not sure that an
ExpressionTool
is even allowed to go around opening files from JavaScript, so there's no reason the file should need to be downloaded beforehand. I think in vanillacwltool
this would apply when thelocation
(s) are HTTP(S) URLs, but in Toil we pass aroundFile
andDirectory
objects with a variety of URL schemes inlocation
. Also, an ExpressionTool might or might not be allowed to just build a{class: 'File'}
itself. So it makes sense forFile
objects to come out of a tool that don't correspond to things that are on disk.But, at the end of a tool, the executor wants to run
relocateOutputs
, and that in turn seems to demand that the files be on disk unless the scheme is the magic_:
one for files to be created:cwltool/cwltool/process.py
Lines 397 to 398 in 898fddf
It looks like it does this for checksumming, but checksumming might not be turned on, and the checksum might already be set.
Is there a way to get a hook in here so that Toil can let
File
objects through expression tools without downloading them?The text was updated successfully, but these errors were encountered: