Closed
Description
🧐 Motivation
Currently Ownable force you to set the initial owner to be the msg sender. This brings a dependence on the account that deploy the contract, which is often not the same as the expected owner of the contract. For security it is often better to ensure the account making deployment do not have any responsibility.
it also brings issue when you need to deploy the contract through a factory where the factory become the defacto owner of the contract.
While contracts using Ownable
could call transferOwnership
this would trigger another event.
It would be better if Ownable constructor had a owner
parameter so contract using Ownable can decide whose address is going to be the initial owner