Closed happy5214 closed 4 days ago
Let me know if the additional warnings for missing HEDVersion
fields are a problem.
This is now reliably timing out tests at 10s. Looking at it, I would guess that there's an efficiency problem with the use of issues.push
. https://github.com/bids-standard/bids-validator/pull/2162 removed some uses to avoid call stack limits.
This is now reliably timing out tests at 10s. Looking at it, I would guess that there's an efficiency problem with the use of
issues.push
. #2162 removed some uses to avoid call stack limits.
I didn't really add any new uses of push
other than catch
handlers (which shouldn't be executing that much anyway). I also eliminated a function call. I tried a flatMap
, which didn't help. Any other ideas?
Nope. @mguaypaq Any advice? Or @rwblair?
Would it be possible to run the tests with profiling enabled? Even better would be having both "before this PR" and "after this PR" profiles, to see any significant changes. Without something like this, it's really hard to diagnose performance issues.
It does not look trivial, but we can look into it. If there's an example somewhere of someone setting up profiling for jest tests, that would be a helpful model.
The timeouts are because the tests are not structured properly. Any time a testcase assertion fails, the isdone
callback is never called, which leads to the timeout (as Jest never figures out the block is finished). Just fix the assertions in bids.spec.js
and you're good to go.
Attention: Patch coverage is 95.23810%
with 1 line
in your changes missing coverage. Please review.
Project coverage is 87.43%. Comparing base (
f40d4de
) to head (a656a9c
). Report is 10 commits behind head on master.
Files with missing lines | Patch % | Lines |
---|---|---|
bids-validator/validators/hed.js | 95.23% | 1 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Okay, so it looks like datasets without HED in are now expected to raise HED warnings?
I rewrote the branch so that it no longer raises warnings for missing HEDVersion
fields except when there's HED data. In doing so, I also (accidentally) clobbered the isdone
changes (which really should be implemented instead by making the anonymous function an async
).
Thanks!
This PR fixes the reporting of
IssueError
objects thrown from hed-validator by converting them into properIssue
objects. It also cleans up several errors in the HED tests that should have been failing. This should help with the eventual merging of #2167.Fixes #2170