¿Cómo trabajo con la última versión de solidity?

Recientemente se agregó una nueva versión de Solidity, y una de las características que agrega son los mensajes en require.

Me gustaría usarlos, pero no estoy seguro de cómo puedo hacerlo. Estoy usando Ganache y trufa, y pruebo mis contratos con Remix.

¿Tengo razón al suponer que Ganache compila y ejecuta el código y, por lo tanto, funciona con una versión específica de Solidity? O funciona con cualquier versión? Si es así, ¿de dónde viene el nuevo código? (Hace todo localmente)

¿Funcionaría simplemente cambiando el pragma o debo esperar un lanzamiento de Ganache que admita la nueva versión?

ganache no hace ninguna compilación, puede verificar la versión de compilación y truffle versionluego puede verificar la versión del compilador como Solidity v0.4.21 (solc-js).
@Kronos Gracias, eso es todo lo que necesitaba, puedes escribir eso como respuesta y lo aceptaré :)

Respuestas (1)

Ganache (testrpc) genera un bloque para cada transacción. Entonces, cada vez que envía transacciones, genera nuevos bloques. (Pero la red principal de ethereum genera nuevos bloques cada 15 segundos, por lo que debe esperar...) Puede verificar el número de bloque generado.

truffle(development)> web3.eth.blockNumber
web3.eth.blockNumber

truffle(development)> web3.eth.blockNumber
0
truffle(development)> web3.personal.unlockAccount("0x41401ae014f926be3d8583723144dc7138a6fb24")
true
truffle(development)> web3.eth.blockNumber
0
truffle(development)> 
truffle(development)> web3.eth.sendTransaction({from:"0x41401ae014f926be3d8583723144dc7138a6fb24",to:"0xfad23e5147ea907b6045efa97c5b208e1e510381",value: web3.toWei(0.1,"ether")})
truffle(development)> web3.eth.blockNumber
1
truffle(development)>

Puede ver que el hass blockNumber aumentó. Para obtener la versión del compilador, use truffle versionentonces verá:

Truffle v4.1.7 (core: 4.1.7)
Solidity v0.4.23 (solc-js)

Cuando truffle no proporciona cambiar la versión del compilador como Remix. Tienes que desinstalar truffle y reinstalar una versión diferente para probar en una versión diferente del compilador. aquí puede descargar una versión diferente de truffle con el compilador de solidez.

No tuve que desinstalar y reinstalar Truffle. Usé npm install -g truffley actualicé tanto trufa como solc.
Sin embargo, no entiendo algunas de sus oraciones, como la primera y " Cuando truffle no proporciona cambiar la versión del compilador como Remix ".
perdone mi falta de comprensión. en Remix puede cambiar fácilmente la versión del compilador usando la interfaz de usuario desplegable, pero truffle no permite hacerlo. Pero como dijiste, actualizar la versión de trufa funciona bien para un uso normal.