Add etherscan chain id override. Improve etherscan error handling#19
Add etherscan chain id override. Improve etherscan error handling#19
Conversation
src/ethproto/wrappers.py
Outdated
| return int(resp["result"][0]["blockNumber"]) | ||
| except (KeyError, TypeError): | ||
| warn(f"Failed to parse first block for {address}: {resp}") | ||
| return 0 |
There was a problem hiding this comment.
Antes respondía con -1 cuando no podía obtener el resultado, ahora devuelve 0. Porqué? Creo que sería mejor que devuelva -1 que es claro que no es un bloque válido.
O sino podría tirar excepción. De hecho tira excepción cuando falla el request (.raise_for_status()).
No me gusta lo de capturar los KeyError y TypeError. Qué tipo de error queremos manejar ahí?
There was a problem hiding this comment.
Lo cambié para que levante excepción. Lo de KeyError y TypeError es para capturar todos los tipos de error que puede tener esa línea (si result es una cadena en vez de un array, si result no tiene blockNumber)... es solamente para levantar la respuesta completa en la excepción, porque si no es mucho mas dificil de debuggear cuando algo falla.
No description provided.