tronprotocol / java-tron

Java implementation of the Tron whitepaper
GNU Lesser General Public License v3.0
3.74k stars 1.41k forks source link

Does the TRON Network currently have plans to follow up on the Ethereum EL Cancun Upgrade? #5777

Open lily309 opened 8 months ago

lily309 commented 8 months ago

We see that the Ethereum EL Cancun Upgrade has been activated on the mainnet and this upgrade contains several improvements. As an EVM-compatible blockchain, does the TRON Network have any plans to consider following suit in the near future?

Below is a detailed list of the upgrade features and the instructions that have been added or modified, does TRON need to support all or just some of these features?

We also see that deploying contracts on TRON requires the use of the TRON-specific Solidity compiler. Are there any plans to upgrade the support for the Solidity compiler?

Looking forward to your answers. Thank you!

ferdinand026 commented 8 months ago

Due to TRON’s unique mechanism, for example the stake system, it needs special TVM instructions, so deploying such smart contract which related with TRON’s unique features on TRON requires to use the TRON solidiy compiler, but not Etherum solidity sompiler. But for smart cotract which have nothing related with TRON’s unique features, we can use either of them.

lily309 commented 8 months ago

@ferdinand026

Thank you for your answer.

First of all, are there any compatible upgrades planned?

Second, the Ethereum Solidity compiler has been updated to v0.8.25 and the default EVM version is set to cancun, which means that the bytecode of some contracts compiled with the default configuration of the Ethereum Solidity compiler can no longer run on TRON, as the operations for memory copies in it will use the MCOPY instruction in place of the former MLOAD/MSTORE.

Once again, thank you sincerely for your answer.

yanghang8612 commented 7 months ago

@lily309

The TRON community is already moving forward with compatibility plans. Details will be released to the TIPs repository in the near future, so stay tuned.

If you have any questions, please move to the TIPs repository to discuss. Thank you.

tomatoishealthy commented 7 months ago

The TRON community is already moving forward with compatibility plans. Details will be released to the TIPs repository in the near future, so stay tuned.

As far as I know, EIP-4844 is to optimize the gas fee for Rollups, TRON currently does not have too many rollup projects, nor does it have a high gas fee, so maybe this EIP is not a high priority.

But considering the compatibility, does TVM need to be compatible with EIP-7516, e.g. return 0. Same question for EIP-4788.

I understand that the remaining three EIPs will definitely be compatible.

yanghang8612 commented 7 months ago

@tomatoishealthy

Yes, for the instructions in EIP-4844 as well as EIP-7516, we tend to implement them simply, returning only 0 or the default value. For EIP-4788, we tend not to implement them since there are no new instructions or pre-compiled contracts.

Federico2014 commented 6 months ago

@tomatoishealthy

Yes, for the instructions in EIP-4844 as well as EIP-7516, we tend to implement them simply, returning only 0 or the default value. For EIP-4788, we tend not to implement them since there are no new instructions or pre-compiled contracts.

There have already deployed TRON zkEVM testnet, we may need to reconsider whether TRON should support EIP-4844 or not.

tomatoishealthy commented 6 months ago

There have already deployed TRON zkEVM testnet, we may need to reconsider whether TRON should support EIP-4844 or not.

But apart from this project, there are currently no more rollups and gas fee issues. Maybe we can discuss this in the AlldevsMeetings