Recreated bug with lineObjects being corrupted due to not accounting for $ref line numbers #8
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 is a PR that recreates the issue with a test
See the discussion of the original issue in vacuum.
TLDR: The doctor uses a data structure that maps line numbers to YAML objects, however the line numbers do not account for $ref, in particular, $ref to other YAML files. This causes multiple YAML objects to be mapped to the same line number, but the code only records the first object to come in from the concurrent processing of objects.
This results in non-deterministic results of the $path in the vacuum report and causes issues for people using that $path in ignore files.
I'm happy to help fix this but would need guidance on the best approach as I think it's not straight forward.