Currently, Import Linter expects a single contract file per graph build: each .ini/.toml file defines top level configuration which will determine how the graph is built, which the contracts then run on.
It would be helpful to decouple this so that contracts can be split across multiple files without needing the overhead of rebuild the graph each time. For larger codebases this would help with code ownership of sets of contracts.
Possible API:
lint-imports --config=main.ini,extra_one.ini,extra_two.toml
Or:
lint-imports --config=main.ini --extra-config=extra_one.ini --extra-config=extra_two.toml
Might also be worth supporting globs e.g.
lint-imports --config=main.ini --extra-configs=path/*.ini
(Or at least designing the API so that it could support that in future.)
Currently, Import Linter expects a single contract file per graph build: each .ini/.toml file defines top level configuration which will determine how the graph is built, which the contracts then run on.
It would be helpful to decouple this so that contracts can be split across multiple files without needing the overhead of rebuild the graph each time. For larger codebases this would help with code ownership of sets of contracts.
Possible API:
Or:
Might also be worth supporting globs e.g.
(Or at least designing the API so that it could support that in future.)