Skip to content

Conversation

@RFV
Copy link

@RFV RFV commented May 3, 2017

No description provided.

@frangio
Copy link
Contributor

frangio commented May 3, 2017

Thanks @RFVenter! We have been thinking about refactoring the Shareable contract. I have a couple questions.

Shareable is used in other parts of OpenZeppelin (only MultisigWallet for now) and these changes are breaking those uses. In particular the change in the constructor. I think in practice a Shareable contract always has a set of many owners, even at construction time, which is why they were constructor parameters. What did you consider ugly about them?

Have you thought about using a dynamic array to hold the owners?

@RFV
Copy link
Author

RFV commented May 4, 2017

Hi @frangio. Good job for a very diplomatic response 👍 Please excuse my crude comments (from before).

  • The refactored names should be fine.
  • I believe that Shareable should follow the same example as Ownable. Even Ownable has a builtin function to change the one single owner. Shareable should allow functionality to:
    • add owners
    • remove owners
    • change required amount of owners required for valid tx
  • Adding parameters to a constructor (especially an inherited one) is cumbersome. Why not simply give the creator of the contract sole ownership to be begin with, and then he/she can add owners later.

…st ETH sent to 'old' contracts.

In practice any public Ethereum address is a target to receiving ETH.
Often ETH will find its way to a Contract via send (not via a function call), even though the contract was not meant to receive ETH. For this reason all contracts should have a withdrawEther function, even after a contract is meant to retire. For this reason no contract should really ever selfdestruct, instead always only having the withdrawEther function active and disabling all other functions.
@maraoz
Copy link
Contributor

maraoz commented May 9, 2017

@RFVenter can you please check broken tests?

@frangio
Copy link
Contributor

frangio commented Aug 13, 2017

Closed since Shareable has been removed in #328.

@frangio frangio closed this Aug 13, 2017
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.

3 participants