mudgen / diamond-1-hardhat

EIP-2535 Diamond reference implementation using Hardhat and Solidity 0.8.*
MIT License
135 stars 84 forks source link

Remove exceed emit #2

Closed afalaleev closed 2 years ago

afalaleev commented 2 years ago

I've prepared this PR to enable the use of Diamond contracts on Neon EVM (https://neon-labs.org) - an Ethereum Virtual Machine on Solana.

The main changes are to remove the generation of an extra event that only duplicates the input parameters without any additional information.

We can solve this problem on the Neon EVM side, but as a result, this will increase the cost of transactions.

We think removing this event would be beneficial to other Ehtereum-like blockchains too, because events are increase the cost of txs

https://github.com/ethereum/go-ethereum/blob/master/params/protocol_params.go

LogDataGas   uint64 = 8     // Per byte in a LOG* operation's data.
LogGas       uint64 = 375   // Per LOG* operation.
LogTopicGas  uint64 = 375   
MemoryGas    uint64 = 3

If you approve this PR, I will send you the same changes to other 2 variants of Diamond contract.

afalaleev commented 2 years ago

Sorry Nick. I re-read your EIP and realized that I was mistaken.

This event is needed and described.

I close the PR.