Skip to content

Support multiple dirs in YML source_root parameter#331

Draft
disinvite wants to merge 1 commit intoisledecomp:masterfrom
disinvite:yml-path-tuple
Draft

Support multiple dirs in YML source_root parameter#331
disinvite wants to merge 1 commit intoisledecomp:masterfrom
disinvite:yml-path-tuple

Conversation

@disinvite
Copy link
Collaborator

Fixes #330. The supported formats will now be:

targets:
  ISLE:
    filename: ISLE.EXE
    source-root: isle

or

targets:
  ISLE:
    filename: ISLE.EXE
    source-root:
      - isle
      - another/dir

This field has been and still is required for reccmp. However: we now provide a default empty tuple for source_root. This means that if the array is empty or the source_root key is missing from the YML, this will pass pydantic verification but fail in our code when you try to run with the target. (I added new tests that verify this.)

Draft for now because I want to change the source_root property's internal name to source_dirs, but ran out of time today.

We don't have any tests on Compare.from_target to demonstrate that we walk each directory and dedupe potential nested paths. If it can work via mocks (i.e. without using real binary and PDB files) then I will add the tests.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

No option to target specific source code subdirectories

1 participant