diff --git a/.travis.yml b/.travis.yml index 3e2f23635..78362e588 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,7 +29,8 @@ addons: - libudev-dev install: - - pip install ed25519 pyblake2 + - pip3 install scons + - pip3 install ed25519 pyblake2 - pip3 install flake8 - pip3 install pytest - pip3 install ecdsa mnemonic protobuf requests diff --git a/src/trezor/messages/EncryptMessage.py b/src/trezor/messages/EncryptMessage.py index 6ed3d54b6..b0177f5c3 100644 --- a/src/trezor/messages/EncryptMessage.py +++ b/src/trezor/messages/EncryptMessage.py @@ -8,6 +8,6 @@ class EncryptMessage(p.MessageType): 2: ('message', p.BytesType, 0), 3: ('display_only', p.BoolType, 0), 4: ('address_n', p.UVarintType, p.FLAG_REPEATED), - 5: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 5: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' } MESSAGE_WIRE_TYPE = 49 diff --git a/src/trezor/messages/EstimateTxSize.py b/src/trezor/messages/EstimateTxSize.py index 5f24fe901..9a9342b34 100644 --- a/src/trezor/messages/EstimateTxSize.py +++ b/src/trezor/messages/EstimateTxSize.py @@ -6,6 +6,6 @@ class EstimateTxSize(p.MessageType): FIELDS = { 1: ('outputs_count', p.UVarintType, 0), # required 2: ('inputs_count', p.UVarintType, 0), # required - 3: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 3: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' } MESSAGE_WIRE_TYPE = 43 diff --git a/src/trezor/messages/GetAddress.py b/src/trezor/messages/GetAddress.py index 175a33153..ad08d4314 100644 --- a/src/trezor/messages/GetAddress.py +++ b/src/trezor/messages/GetAddress.py @@ -6,7 +6,7 @@ from .MultisigRedeemScriptType import MultisigRedeemScriptType class GetAddress(p.MessageType): FIELDS = { 1: ('address_n', p.UVarintType, p.FLAG_REPEATED), - 2: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 2: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' 3: ('show_display', p.BoolType, 0), 4: ('multisig', MultisigRedeemScriptType, 0), 5: ('script_type', p.UVarintType, 0), # default=0 diff --git a/src/trezor/messages/GetPublicKey.py b/src/trezor/messages/GetPublicKey.py index 0bb964012..b16ac25a3 100644 --- a/src/trezor/messages/GetPublicKey.py +++ b/src/trezor/messages/GetPublicKey.py @@ -7,6 +7,6 @@ class GetPublicKey(p.MessageType): 1: ('address_n', p.UVarintType, p.FLAG_REPEATED), 2: ('ecdsa_curve_name', p.UnicodeType, 0), 3: ('show_display', p.BoolType, 0), - 4: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 4: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' } MESSAGE_WIRE_TYPE = 11 diff --git a/src/trezor/messages/LoadDevice.py b/src/trezor/messages/LoadDevice.py index 5ccbdd201..262488414 100644 --- a/src/trezor/messages/LoadDevice.py +++ b/src/trezor/messages/LoadDevice.py @@ -9,7 +9,7 @@ class LoadDevice(p.MessageType): 2: ('node', HDNodeType, 0), 3: ('pin', p.UnicodeType, 0), 4: ('passphrase_protection', p.BoolType, 0), - 5: ('language', p.UnicodeType, 0), # default=u'english' + 5: ('language', p.UnicodeType, 0), # default='english' 6: ('label', p.UnicodeType, 0), 7: ('skip_checksum', p.BoolType, 0), 8: ('u2f_counter', p.UVarintType, 0), diff --git a/src/trezor/messages/RecoveryDevice.py b/src/trezor/messages/RecoveryDevice.py index b32e5fc30..d6c21aa58 100644 --- a/src/trezor/messages/RecoveryDevice.py +++ b/src/trezor/messages/RecoveryDevice.py @@ -7,7 +7,7 @@ class RecoveryDevice(p.MessageType): 1: ('word_count', p.UVarintType, 0), 2: ('passphrase_protection', p.BoolType, 0), 3: ('pin_protection', p.BoolType, 0), - 4: ('language', p.UnicodeType, 0), # default=u'english' + 4: ('language', p.UnicodeType, 0), # default='english' 5: ('label', p.UnicodeType, 0), 6: ('enforce_wordlist', p.BoolType, 0), 8: ('type', p.UVarintType, 0), diff --git a/src/trezor/messages/ResetDevice.py b/src/trezor/messages/ResetDevice.py index 25afe5cc3..6ea628abd 100644 --- a/src/trezor/messages/ResetDevice.py +++ b/src/trezor/messages/ResetDevice.py @@ -8,7 +8,7 @@ class ResetDevice(p.MessageType): 2: ('strength', p.UVarintType, 0), # default=256 3: ('passphrase_protection', p.BoolType, 0), 4: ('pin_protection', p.BoolType, 0), - 5: ('language', p.UnicodeType, 0), # default=u'english' + 5: ('language', p.UnicodeType, 0), # default='english' 6: ('label', p.UnicodeType, 0), 7: ('u2f_counter', p.UVarintType, 0), 8: ('skip_backup', p.BoolType, 0), diff --git a/src/trezor/messages/SignMessage.py b/src/trezor/messages/SignMessage.py index 7bd83ccc1..9f238882d 100644 --- a/src/trezor/messages/SignMessage.py +++ b/src/trezor/messages/SignMessage.py @@ -6,7 +6,7 @@ class SignMessage(p.MessageType): FIELDS = { 1: ('address_n', p.UVarintType, p.FLAG_REPEATED), 2: ('message', p.BytesType, 0), # required - 3: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 3: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' 4: ('script_type', p.UVarintType, 0), # default=0 } MESSAGE_WIRE_TYPE = 38 diff --git a/src/trezor/messages/SignTx.py b/src/trezor/messages/SignTx.py index 45f2f2aab..431325400 100644 --- a/src/trezor/messages/SignTx.py +++ b/src/trezor/messages/SignTx.py @@ -6,7 +6,7 @@ class SignTx(p.MessageType): FIELDS = { 1: ('outputs_count', p.UVarintType, 0), # required 2: ('inputs_count', p.UVarintType, 0), # required - 3: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 3: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' 4: ('version', p.UVarintType, 0), # default=1 5: ('lock_time', p.UVarintType, 0), # default=0 } diff --git a/src/trezor/messages/SimpleSignTx.py b/src/trezor/messages/SimpleSignTx.py index 920c9f634..7283256d5 100644 --- a/src/trezor/messages/SimpleSignTx.py +++ b/src/trezor/messages/SimpleSignTx.py @@ -10,7 +10,7 @@ class SimpleSignTx(p.MessageType): 1: ('inputs', TxInputType, p.FLAG_REPEATED), 2: ('outputs', TxOutputType, p.FLAG_REPEATED), 3: ('transactions', TransactionType, p.FLAG_REPEATED), - 4: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 4: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' 5: ('version', p.UVarintType, 0), # default=1 6: ('lock_time', p.UVarintType, 0), # default=0 } diff --git a/src/trezor/messages/VerifyMessage.py b/src/trezor/messages/VerifyMessage.py index 9cc4cb1dc..88428aeeb 100644 --- a/src/trezor/messages/VerifyMessage.py +++ b/src/trezor/messages/VerifyMessage.py @@ -7,6 +7,6 @@ class VerifyMessage(p.MessageType): 1: ('address', p.UnicodeType, 0), 2: ('signature', p.BytesType, 0), 3: ('message', p.BytesType, 0), - 4: ('coin_name', p.UnicodeType, 0), # default=u'Bitcoin' + 4: ('coin_name', p.UnicodeType, 0), # default='Bitcoin' } MESSAGE_WIRE_TYPE = 39 diff --git a/tools/binctl b/tools/binctl index 8c1de50d5..05e88819f 100755 --- a/tools/binctl +++ b/tools/binctl @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 from __future__ import print_function diff --git a/tools/build_protobuf b/tools/build_protobuf index c5d8eba7d..0d306270f 100755 --- a/tools/build_protobuf +++ b/tools/build_protobuf @@ -1,7 +1,7 @@ #!/bin/bash CURDIR=$(pwd) mkdir -p $CURDIR/pb2/ -echo > $CURDIR/pb2/__init__.py +touch $CURDIR/pb2/__init__.py mkdir -p ../src/trezor/messages @@ -17,6 +17,10 @@ for i in types messages storage ; do protoc --python_out=$CURDIR/pb2/ -I/usr/include -I. $i.proto done +# hack to make output python 3 compatible +sed -i 's/^import types_pb2/from . import types_pb2/g' $CURDIR/pb2/messages_pb2.py +sed -i 's/^import types_pb2/from . import types_pb2/g' $CURDIR/pb2/storage_pb2.py + for i in types messages storage ; do # Convert google protobuf library to trezor's internal format cd $CURDIR diff --git a/tools/pb2py b/tools/pb2py index c0546829d..bfeb15a4e 100755 --- a/tools/pb2py +++ b/tools/pb2py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # Converts Google's protobuf python definitions of TREZOR wire messages # to plain-python objects as used in TREZOR Core and python-trezor