Why doesn't __Ownable2Step_init do initialization for __Context_init/__Ownable_init?

Currently if a contract inherits from Ownable2StepUpgradeable, it needs to manually call __Context_init/__Ownable_init, why doesn't __Ownable2Step_init call these two functions automatically so that the complexity can be "sealed"?

I mean why are these
function empty instead of calling __Context_init/__Ownable_init automatically so that user only needs to call __Ownable2Step_init?

no spam please .....

Manually call the initialization functions __Context_init() and __Ownable_init() in the constructor or initializer of your contract, to ensure proper setup.

  • Alternatively, if possible, design your contract to automatically call those functions during deployment or initialization to avoid manual intervention.

If you provide the specific code you're working with, I can give more detailed guidance.

looks like this forum is flooded by spammers and bots?

@zhiqiangxu You can checkout additional context and the reasoning here:

Show screenshot of problematic code.