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
Maybe if we add a property named packages or npmPackages instead of providers, then that would be clear that the package name is required in order for this to work.
We could just add it to the ImportsResolver and release a new plugin version. This would add it to the path remappings as well as the allowed paths.
The only objection I have is that the Consensys permissioning contracts do not implement any standard, so that would mean adding to the default packages a non-EIP library, opening the door to many other user packages.
I think we should stick to a clear demarcation criteria on what should be added as a plugin default provider, and for now EIP implementations are the only reason I think a package should be added.
Activity
xaviarias commentedon Sep 6, 2021
Hi @antonydenyer ! Ok which provider would you want? We can add it for the next release.
For now the only extension mechanism is specifying your own
package.json
file and add path remappings.Or, would you have another suggestion on how to add providers dynamically?
Thanks
antonydenyer commentedon Sep 6, 2021
👋
It's basically to get around having to do the following in my build gradle
Ideally, I'd like to be able to just add
@consensys-software
to the list of providers something like:perhaps?
xaviarias commentedon Sep 6, 2021
The issue with that is
@consensys-software
is not the NPM package, but@consensys-software/permissioning-smart-contracts
.Maybe if we add a property named
packages
ornpmPackages
instead ofproviders
, then that would be clear that the package name is required in order for this to work.What do you think @antonydenyer ?
xaviarias commentedon Sep 6, 2021
In any case, we can already add this package to the defaults.
antonydenyer commentedon Sep 6, 2021
Ahh yes:
is what we want.
I think it's probably worth explaining what we are trying to achieve.
We want the following import to work as it does with truffle.
import "@consensys-software/permissioning-smart-contracts/contracts/NodeRules.sol";
In an ideal world having the defaults would be enough.
So maybe doing something to match the import with
package.json
and resolve it to node_modules?xaviarias commentedon Sep 7, 2021
We could just add it to the
ImportsResolver
and release a new plugin version. This would add it to the path remappings as well as the allowed paths.The only objection I have is that the Consensys permissioning contracts do not implement any standard, so that would mean adding to the default packages a non-EIP library, opening the door to many other user packages.
I think we should stick to a clear demarcation criteria on what should be added as a plugin default provider, and for now EIP implementations are the only reason I think a package should be added.
jclagache commentedon Feb 25, 2023
Workaround to use the @uniswap/v3-core package instead of the out of date @uniswap/lib :
package.json :
build.gradle :
You can then import Uniswap contracts, libraries and interfaces :