Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add the support for multiple compilation units. #823

Merged
merged 9 commits into from
Apr 28, 2021

Conversation

montyly
Copy link
Member

@montyly montyly commented Apr 9, 2021

This PR includes a lot of breaking changes:

  • SlitherCore is split into SlitherCore and SlitherCompilationUnit, as a result several functions from Slither are not direclty accessible
    anymore
  • There is a list of compilation unit in SlitherCore
  • The detectors are run per compilation unit - however slither filters out results if their ID are the same to avoid dupplicate
  • The printers are run per SlitherCore.
  • The non-crytic-compile inputs are removed (json/list of json). This will help us to clean the API in the long run. These were only used in internal tests
  • slither.get_contract_from_name returns now a list (which can be empty)

There are a couple of open questions left. For it's difficult to know what a compilation unit refers too, so for the tool that ask for a contract name (ex: slither-flat), and the contract is shared by multiple compilation unit, it is unclear what to do

montyly added 2 commits April 9, 2021 16:55
lot of breaking changes:
- SlitherCore is split into SlitherCore and SlitherCompilationUnit, as a
result several functions from Slither are not direclty accessible
anymore
- There is a list of compilation unit in SlitherCore
- The detectors are run per compilation unit - however slither filters out
results if their ID are the same to avoid dupplicate
- The printers are run per SlitherCore.
- The non-crytic-compile inputs are removed (json/list of json). This
will help us to clean the API in the long run. These were only used in
internal tests
- slither.get_contract_from_name returns now a list (which can be empty)
@lgtm-com
Copy link

lgtm-com bot commented Apr 9, 2021

This pull request fixes 1 alert when merging 73764ed into cf07c59 - view on LGTM.com

fixed alerts:

  • 1 for Missing call to `__init__` during object initialization

@lgtm-com
Copy link

lgtm-com bot commented Apr 9, 2021

This pull request fixes 1 alert when merging 71e33c6 into cf07c59 - view on LGTM.com

fixed alerts:

  • 1 for Missing call to `__init__` during object initialization

@lgtm-com
Copy link

lgtm-com bot commented Apr 9, 2021

This pull request fixes 1 alert when merging 84f7605 into cf07c59 - view on LGTM.com

fixed alerts:

  • 1 for Missing call to `__init__` during object initialization

@lgtm-com
Copy link

lgtm-com bot commented Apr 19, 2021

This pull request fixes 1 alert when merging 6233f31 into cf07c59 - view on LGTM.com

fixed alerts:

  • 1 for Missing call to `__init__` during object initialization

@lgtm-com
Copy link

lgtm-com bot commented Apr 26, 2021

This pull request fixes 1 alert when merging 9533947 into 4a8cdf7 - view on LGTM.com

fixed alerts:

  • 1 for Missing call to `__init__` during object initialization

@lgtm-com
Copy link

lgtm-com bot commented Apr 27, 2021

This pull request fixes 1 alert when merging ceb7478 into 4a8cdf7 - view on LGTM.com

fixed alerts:

  • 1 for Missing call to `__init__` during object initialization

@lgtm-com
Copy link

lgtm-com bot commented Apr 28, 2021

This pull request fixes 1 alert when merging 3f3855a into 4a8cdf7 - view on LGTM.com

fixed alerts:

  • 1 for Missing call to `__init__` during object initialization

@montyly montyly merged commit 76c5cb2 into dev Apr 28, 2021
@dguido dguido deleted the dev-multiple-compilation-units branch May 10, 2021 16:15
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.

1 participant