Fixes for event log and event handling#55
Fixes for event log and event handling#55ynohtna92 wants to merge 5 commits intodigitaldonkey:masterfrom
Conversation
|
Sorry it takes so long. Currently redoing my CI so I hope I can continuer with this soon. |
|
I can see there is a eth_getLogs method (which does not necessarily mean that it is working well..). Can you do a micro-change, so that the new circleci pipeline gets triggered and we get a run with unit tests. |
I found that it was failing on processing the logs after obtaining them because the eth_getLogs was not handled in your original code. |
|
Sorry. Forgot to mention, that you need to pull the master branch to get the new CircleCi config |
The current source does not currently process events containing dynamic bytes properly. These changes add a corrected offset when handling dynamic bytes.
Adds a missing action so the eth_getLogs method is handled correctly. Fixes typo in \Ethereum\Datatype\\ -> \Ethereum\DataType\ so classes are correctly assigned.
Only call the user function when eventHandle is true. Allows for $event to be passed without being used in a call.
micro-change
Rebased. |
|
Jay. It doesn't break anything :D |

These commits fix the following issues:
Ethereum.php does not handle eth_getLogs at all
Fixed by added an OR with the handling of eth_getFilterChanges as they return the same JSON-RPC array.
Event.php does not handle dynamic bytes properly
Fixed by correctly applying offsets for dynamic bytes.
Decoded in accordance with https://docs.soliditylang.org/en/latest/abi-spec.html
SmartContract.php does not allow for processLog to disable event calls
Added bool to allow developers to disable event calls if they want to handle $event differently.