OpenZeppelin/openzeppelin-contracts

Better code reuse tools

maraoz opened this issue · 5 comments

Current Solidity code reuse is based on copy-pasting or downloading existing code from other repositories. Mature ecosystems have good code repository management systems such as NodeJS’ npm or Ruby’s gems.
An interesting variation in Ethereum is the possibility of reusing code already deployed to the blockchain. Let's build tools that allow to easily link your contracts to deployed libraries.

Let's build tools that allow to easily link your contracts to deployed libraries.

do you mean to provide a list of public library deployed ?

@fonzarely more like an index, and easier tools to link contracts in development to those.

For now Zeppelin is using raw npm, and Truffle Beta's integration with npm, which is not ideal. Moving into the future, we should build better tools, but for now we're OK.

from what i understood @maraoz , you propose an npm equivalent, a library of public contracts available in the blockchain, that it?
or, npm plays bad with Solidity code?
maybe give some details/examples on snags you hit?

npm is good enough for now. Eventually, we'll want better ways to link contracts to already deployed code sitting in the blockchain. Not required for now though IMO, never hit a big need for it

Any thought about using the in-development https://github.com/ethpm/epm-spec ?