Skip to content

Commit

Permalink
Merge pull request #410 from oasisprotocol/xz/add-eip-1167-sections-t…
Browse files Browse the repository at this point in the history
…o-docs

docs: Add EIP-1167 minimal proxy section
  • Loading branch information
aefhm authored Sep 25, 2024
2 parents 42c1a69 + 9f80464 commit 42d43cb
Showing 1 changed file with 19 additions and 1 deletion.
20 changes: 19 additions & 1 deletion docs/deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,25 @@ Singleton factory:
[Testnet]: https://explorer.oasis.io/testnet/sapphire/address/0x914d7Fec6aaC8cd542e72Bca78B30650d45643d7
[safe-singleton-factory]: https://github.com/safe-global/safe-singleton-factory

### Caution Against Using `eth_getStorageAt`
## Clones

Sapphire supports fixed address non-upgradable [clones][clones] to help
developers replicate contract functionality and reduce contract deployment
costs.

[clones]: https://docs.openzeppelin.com/contracts/5.x/api/proxy#Clones

#### [EIP-1167]: Minimal Proxy

EIP-1167 introduces a way to minimize bytecode and associated contract
deployment costs while copying contract functionality. "Clone" contracts
delegate calls to a target or fixed address which serve as a reference for the
behavior of the "clone." Third-party tools and users can correctly predict
the outcome of contract calls with minimal side effects.

[EIP-1167]: https://eips.ethereum.org/EIPS/eip-1167

## Caution Against Using `eth_getStorageAt`

Direct storage access, such as with `eth_getStorageAt`, is generally
discouraged. It reduces contract flexibility and deviates from common practice
Expand Down

0 comments on commit 42d43cb

Please sign in to comment.