Skip to content

NumberFormatException when compiling TREZOR proto definitions #655

Description

@ligi
⋊> ~/g/3/t/protob on master ⨯ java -jar /home/ligi/Downloads/wire-compiler-2.3.0-RC1-jar-with-dependencies.jar --proto_path=. --java_out=. messages.proto
Writing com.satoshilabs.trezor.protobuf.Initialize to .
Writing com.satoshilabs.trezor.protobuf.ClearSession to .
Writing com.satoshilabs.trezor.protobuf.ApplySettings to .
Writing com.satoshilabs.trezor.protobuf.GetFeatures to .
Writing com.satoshilabs.trezor.protobuf.ChangePin to .
Writing com.satoshilabs.trezor.protobuf.MessageType to .
Writing com.satoshilabs.trezor.protobuf.Ping to .
Writing com.satoshilabs.trezor.protobuf.Features to .
Writing com.satoshilabs.trezor.protobuf.Success to .
Writing com.satoshilabs.trezor.protobuf.Failure to .
Writing com.satoshilabs.trezor.protobuf.ButtonRequest to .
Writing com.satoshilabs.trezor.protobuf.ButtonAck to .
Writing com.satoshilabs.trezor.protobuf.PinMatrixRequest to .
Writing com.satoshilabs.trezor.protobuf.Cancel to .
Writing com.satoshilabs.trezor.protobuf.PinMatrixAck to .
Writing com.satoshilabs.trezor.protobuf.PassphraseAck to .
Writing com.satoshilabs.trezor.protobuf.Entropy to .
Writing com.satoshilabs.trezor.protobuf.GetEntropy to .
Writing com.satoshilabs.trezor.protobuf.PassphraseRequest to .
Writing com.satoshilabs.trezor.protobuf.GetPublicKey to .
Writing com.satoshilabs.trezor.protobuf.PublicKey to .
Writing com.satoshilabs.trezor.protobuf.EthereumGetAddress to .
Writing com.satoshilabs.trezor.protobuf.GetAddress to .
Writing com.satoshilabs.trezor.protobuf.WipeDevice to .
Writing com.satoshilabs.trezor.protobuf.EthereumAddress to .
Writing com.satoshilabs.trezor.protobuf.Address to .
Writing com.satoshilabs.trezor.protobuf.BackupDevice to .
Writing com.satoshilabs.trezor.protobuf.LoadDevice to .
Writing com.satoshilabs.trezor.protobuf.EntropyAck to .
Writing com.satoshilabs.trezor.protobuf.EntropyRequest to .
Writing com.satoshilabs.trezor.protobuf.ResetDevice to .
Writing com.satoshilabs.trezor.protobuf.WordRequest to .
Writing com.satoshilabs.trezor.protobuf.WordAck to .
Writing com.satoshilabs.trezor.protobuf.SignMessage to .
Writing com.satoshilabs.trezor.protobuf.RecoveryDevice to .
Writing com.satoshilabs.trezor.protobuf.MessageSignature to .
Writing com.satoshilabs.trezor.protobuf.EncryptedMessage to .
Writing com.satoshilabs.trezor.protobuf.VerifyMessage to .
Writing com.satoshilabs.trezor.protobuf.EncryptMessage to .
Writing com.satoshilabs.trezor.protobuf.DecryptMessage to .
Writing com.satoshilabs.trezor.protobuf.DecryptedMessage to .
Writing com.satoshilabs.trezor.protobuf.CipheredKeyValue to .
Writing com.satoshilabs.trezor.protobuf.TxSize to .
Writing com.satoshilabs.trezor.protobuf.CipherKeyValue to .
Writing com.satoshilabs.trezor.protobuf.TxRequest to .
Writing com.satoshilabs.trezor.protobuf.SignTx to .
Writing com.satoshilabs.trezor.protobuf.SimpleSignTx to .
Writing com.satoshilabs.trezor.protobuf.EstimateTxSize to .
Writing com.satoshilabs.trezor.protobuf.EthereumTxAck to .
Writing com.satoshilabs.trezor.protobuf.EthereumSignTx to .
Writing com.satoshilabs.trezor.protobuf.TxAck to .
Writing com.satoshilabs.trezor.protobuf.EthereumTxRequest to .
Writing com.satoshilabs.trezor.protobuf.SignedIdentity to .
Writing com.satoshilabs.trezor.protobuf.SignIdentity to .
Writing com.satoshilabs.trezor.protobuf.FirmwareErase to .
Writing com.satoshilabs.trezor.protobuf.GetECDHSessionKey to .
Writing com.satoshilabs.trezor.protobuf.SetU2FCounter to .
Writing com.satoshilabs.trezor.protobuf.FirmwareRequest to .
Writing com.satoshilabs.trezor.protobuf.ECDHSessionKey to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkDecision to .
Writing com.satoshilabs.trezor.protobuf.FirmwareUpload to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkGetState to .
Writing com.satoshilabs.trezor.protobuf.SelfTest to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkMemoryRead to .
Writing com.satoshilabs.trezor.protobuf.FailureType to .
Writing com.satoshilabs.trezor.protobuf.OutputScriptType to .
Writing com.satoshilabs.trezor.protobuf.InputScriptType to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkState to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkFlashErase to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkStop to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkMemoryWrite to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkLog to .
Writing com.satoshilabs.trezor.protobuf.DebugLinkMemory to .
Writing com.satoshilabs.trezor.protobuf.PinMatrixRequestType to .
Writing com.satoshilabs.trezor.protobuf.RecoveryDeviceType to .
Writing com.satoshilabs.trezor.protobuf.ButtonRequestType to .
Writing com.satoshilabs.trezor.protobuf.RequestType to .
Exception in thread "main" Writing com.satoshilabs.trezor.protobuf.MultisigRedeemScriptType to .
java.io.IOException: java.lang.NumberFormatException
	at com.squareup.wire.WireCompiler.compile(WireCompiler.java:261)
	at com.squareup.wire.WireCompiler.main(WireCompiler.java:132)
Caused by: java.util.concurrent.ExecutionException: java.lang.NumberFormatException
	at java.util.concurrent.FutureTask.report(FutureTask.java:122)
	at java.util.concurrent.FutureTask.get(FutureTask.java:192)
	at com.squareup.wire.WireCompiler.compile(WireCompiler.java:258)
	... 1 more
Caused by: java.lang.NumberFormatException
	at java.math.BigDecimal.<init>(BigDecimal.java:494)
	at java.math.BigDecimal.<init>(BigDecimal.java:383)
	at java.math.BigDecimal.<init>(BigDecimal.java:806)
	at com.squareup.wire.java.JavaGenerator.fieldInitializer(JavaGenerator.java:1504)
	at com.squareup.wire.java.JavaGenerator.defaultValue(JavaGenerator.java:1466)
	at com.squareup.wire.java.JavaGenerator.defaultField(JavaGenerator.java:1018)
	at com.squareup.wire.java.JavaGenerator.generateMessage(JavaGenerator.java:544)
	at com.squareup.wire.java.JavaGenerator.generateType(JavaGenerator.java:358)
	at com.squareup.wire.WireCompiler$JavaFileWriter.call(WireCompiler.java:284)
	at com.squareup.wire.WireCompiler$JavaFileWriter.call(WireCompiler.java:267)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:748)
Writing com.satoshilabs.trezor.protobuf.HDNodePathType to .
Writing com.satoshilabs.trezor.protobuf.HDNodeType to .
Writing com.satoshilabs.trezor.protobuf.WordRequestType to .
Writing com.satoshilabs.trezor.protobuf.TxOutputType to .
Writing com.satoshilabs.trezor.protobuf.TxOutputBinType to .
Writing com.satoshilabs.trezor.protobuf.TransactionType to .
Writing com.satoshilabs.trezor.protobuf.TxRequestSerializedType to .
Writing com.satoshilabs.trezor.protobuf.TxRequestDetailsType to .
Writing com.satoshilabs.trezor.protobuf.IdentityType to .

Happens for these definitions: https://github.com/trezor/trezor-common/tree/master/protob
Some context: trezor/trezor-android#29

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions