You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// 2. An imported file has only other import statements without an actual contract/library/interface.
Specifically, because of the Constants.sol file which doesn't have a contract in it.
tl;dr: A heuristic we use is failing.
I realize now that we could use a much more direct way to recognize contracts that need to be deleted from the reconstructed compiler output. We should find all contracts that are reachable through imports from files in the user's own contracts directory, and delete anything else.
The text was updated successfully, but these errors were encountered:
As reported in the forum, using the Truffle plugin with the following contract that uses operator-filter-registry fails:
The error is something like
Error: No node with id 645 of type ContractDefinition
.I traced this issue to this line where the AST for the
DefaultOperatorFilterer
contract is deleted from the reconstructed compiler output.:openzeppelin-upgrades/packages/plugin-truffle/src/utils/validations.ts
Line 150 in fc55c0d
This is roughly due to:
openzeppelin-upgrades/packages/plugin-truffle/src/utils/validations.ts
Line 117 in fc55c0d
Specifically, because of the Constants.sol file which doesn't have a contract in it.
tl;dr: A heuristic we use is failing.
I realize now that we could use a much more direct way to recognize contracts that need to be deleted from the reconstructed compiler output. We should find all contracts that are reachable through imports from files in the user's own contracts directory, and delete anything else.
The text was updated successfully, but these errors were encountered: