Skip to content

[Bug-Candidate]: crytic_compile.platform.exceptions.InvalidCompilation: Unknown file #585

Open
@unionmini

Description

@unionmini

Describe the issue:

I got this error while running slither.

'forge clean' running (wd: /home/joelkrusala/workspace/octant-strategy-foundry-mix)
'forge config --json' running
'forge build --build-info --skip */test/** */script/** --force' running (wd: /home/joelkrusala/workspace/octant-strategy-foundry-mix)
Traceback (most recent call last):
  File "/home/joelkrusala/anaconda3/bin/slither", line 8, in <module>
    sys.exit(main())
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/slither/__main__.py", line 776, in main
    main_impl(all_detector_classes=detectors, all_printer_classes=printers)
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/slither/__main__.py", line 882, in main_impl
    ) = process_all(filename, args, detector_classes, printer_classes)
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/slither/__main__.py", line 96, in process_all
    compilations = compile_all(target, **vars(args))
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/crytic_compile/crytic_compile.py", line 722, in compile_all
    compilations.append(CryticCompile(target, **kwargs))
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/crytic_compile/crytic_compile.py", line 211, in __init__
    self._compile(**kwargs)
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/crytic_compile/crytic_compile.py", line 633, in _compile
    self._platform.compile(self, **kwargs)
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/crytic_compile/platform/foundry.py", line 86, in compile
    hardhat_like_parsing(crytic_compile, self._target, build_directory, self._target)
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/crytic_compile/platform/hardhat.py", line 97, in hardhat_like_parsing
    path = convert_filename(
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/crytic_compile/utils/naming.py", line 169, in convert_filename
    filename = _verify_filename_existence(filename, cwd)
  File "/home/joelkrusala/anaconda3/lib/python3.8/site-packages/crytic_compile/utils/naming.py", line 119, in _verify_filename_existence
    raise InvalidCompilation(f"Unknown file: {filename}")
crytic_compile.platform.exceptions.InvalidCompilation: Unknown file: src/errors.sol

Also CI is failing with this error

Traceback (most recent call last):
  File "/opt/slither/bin/slither", line 8, in <module>
    sys.exit(main())
  File "/opt/slither/lib/python3.9/site-packages/slither/__main__.py", line 776, in main
    main_impl(all_detector_classes=detectors, all_printer_classes=printers)
  File "/opt/slither/lib/python3.9/site-packages/slither/__main__.py", line 882, in main_impl
    ) = process_all(filename, args, detector_classes, printer_classes)
  File "/opt/slither/lib/python3.9/site-packages/slither/__main__.py", line 96, in process_all
    compilations = compile_all(target, **vars(args))
  File "/opt/slither/lib/python3.9/site-packages/crytic_compile/crytic_compile.py", line 722, in compile_all
    compilations.append(CryticCompile(target, **kwargs))
  File "/opt/slither/lib/python3.9/site-packages/crytic_compile/crytic_compile.py", line 211, in __init__
    self._compile(**kwargs)
  File "/opt/slither/lib/python3.9/site-packages/crytic_compile/crytic_compile.py", line 633, in _compile
    self._platform.compile(self, **kwargs)
  File "/opt/slither/lib/python3.9/site-packages/crytic_compile/platform/foundry.py", line 86, in compile
    hardhat_like_parsing(crytic_compile, self._target, build_directory, self._target)
  File "/opt/slither/lib/python3.9/site-packages/crytic_compile/platform/hardhat.py", line 52, in hardhat_like_parsing
    raise InvalidCompilation(txt)
crytic_compile.platform.exceptions.InvalidCompilation: Compilation failed. Can you run build command?
out/build-info is not a directory.

Code example to reproduce the issue:

      - name: Slither analysis
        uses: crytic/[email protected]
        with:
          fail-on: "high"
          slither-config: slither.config.json
          ignore-compile: true

Version:

0.10.4

Relevant log output:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions