Very good tutorial. Couple of fixes to get it work today after some libraries updates^
Due to actual version of OpenZeppelin v5+ its necessary to use 0.8.20+ version of Solidity. 0.8.23 works OK as of now.
Because of the same OppenZeppelin major version change it's necessary to add Ownable super class initialization: in file lib/solidity-examples/contracts/lzApp/LzApp.sol change constructor to constructor(address _endpoint) Ownable(_msgSender()) {
lzEndpoint = ILayerZeroEndpoint(_endpoint);
}
In the scripts section you have to change MyScript name to DeployMumbai and DeploySepolia.
Good tutorial! It's easy to understand with beginner developer. Hope you keep sharing. Many thanks.
Balamurugan Nagarajan
Does LayerZero (LZ) support cross-chain transfers to non-EVM chains?