question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Miniwdl does not allow size on an array.

See original GitHub issue

Dear mlin,

I was testing the testathon-2020 test suite with miniwdl. I noticed a bug in tests/stdlib/size/test_size.wdl.

Miniwdl version 0.6.4 crashes with the following messages:

2020-02-17 10:59:17,106 wdl.w:test_size NOTICE miniwdl :: version: "v0.6.4"
2020-02-17 10:59:17,106 wdl.w:test_size NOTICE workflow start :: name: "test_size", source: "tests/stdlib/size/test_size.wdl", line: 3, column: 1, dir: "/home/rhpvorderman/PycharmProjects/Testathon-2020/20200217_105917_test_size"
2020-02-17 10:59:17,107 wdl.w:test_size NOTICE workflow steps :: waiting: 12, outstanding: 0, finished: 0
2020-02-17 10:59:17,116 wdl.w:test_size ERROR workflow test_size (tests/stdlib/size/test_size.wdl Ln 3 Col 1) failed :: error: "NullValue", message: "Null value", node: "output-size_all"
2020-02-17 10:59:17,116 wdl.w:test_size NOTICE aborting workflow
2020-02-17 10:59:17,117 miniwdl-run ERROR workflow test_size (tests/stdlib/size/test_size.wdl Ln 3 Col 1) failed :: dir: "/home/rhpvorderman/PycharmProjects/Testathon-2020/20200217_105917_test_size"
2020-02-17 10:59:17,117 miniwdl-run ERROR (tests/stdlib/size/test_size.wdl Ln 30 Col 32) NullValue, Null value

Line 30 in the wdl file looks like this:

        Float size_all = size([f0, f1, f2])

Hope this helps. If you need any more information feel free to ask.

Best regards, rhpvorderman

Issue Analytics

  • State:open
  • Created 4 years ago
  • Comments:5 (2 by maintainers)

github_iconTop GitHub Comments

1reaction
rhpvordermancommented, Feb 18, 2020

@mlin. Indeed the test case does not crash on size now but on:

2020-02-18 08:34:42,782 wdl.w:test_size NOTICE miniwdl :: version: "v0.6.5"
2020-02-18 08:34:42,782 wdl.w:test_size NOTICE workflow start :: name: "test_size", source: "tests/stdlib/size/test_size.wdl", line: 3, column: 1, dir: "/tmp/pytest_workflow_cwrhn89_/size_test_miniwdl/20200218_083442_test_size"
2020-02-18 08:34:42,783 wdl.w:test_size NOTICE workflow steps :: waiting: 12, outstanding: 0, finished: 0
2020-02-18 08:34:42,789 wdl.w:test_size ERROR workflow test_size (tests/stdlib/size/test_size.wdl Ln 3 Col 1) failed :: error: "EvalError", message: "size(): invalid unit B", node: "decl-sz_u0-00"
2020-02-18 08:34:42,789 wdl.w:test_size NOTICE aborting workflow
2020-02-18 08:34:42,789 miniwdl-run ERROR workflow test_size (tests/stdlib/size/test_size.wdl Ln 3 Col 1) failed :: dir: "/tmp/pytest_workflow_cwrhn89_/size_test_miniwdl/20200218_083442_test_size"
2020-02-18 08:34:42,789 miniwdl-run ERROR (tests/stdlib/size/test_size.wdl Ln 22 Col 23) EvalError, size(): invalid unit B

invalid unit B.

I looked in the spec and it says

Supported units are KiloByte (“K”, “KB”), MegaByte (“M”, “MB”), GigaByte (“G”, “GB”), TeraByte (“T”, “TB”) as well as their binary version “Ki” (“KiB”), “Mi” (“MiB”), “Gi” (“GiB”), “Ti” (“TiB”). Default unit is Bytes (“B”).

So the default unit B is not supported according to the spec 😉. MiniWDL is compliant!

0reactions
mlincommented, Feb 18, 2020

LOL

Read more comments on GitHub >

github_iconTop Results From Across the Web

miniwdl run optimization - Read the Docs
WDL's size() function to measure File size (or total Array[File] size) can also be useful here. Placing the expressions among the inputs allows...
Read more >
miniwdl/test_7runner.py at main · chanzuckerberg ... - GitHub
miniwdl /tests/test_7runner.py ... assertIsNone(expected_exception, str(expected_exception) + " not raised") ... Array[Int] sizes = t.size2.
Read more >
miniwdl Changelog - pyup.io
Allow infix comparison between array and nonempty array constant (541 kinow) ... Not recommended, for security & portability reasons; but can enable ......
Read more >
openwdl/wdl - Gitter
It looks like the miniwdl python package allows you to parse a WDL file and then traverse the AST, but they don't seem...
Read more >
Design considerations for workflow management systems use ...
Likewise, WDL does not permit programmers to define custom functions and has a ... because a process is executed as many times as...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found