Andrew Kozlik
9e5d5bd5f9
feat: Add support for experimental field flag in protobuf.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
b636e959f5
chore(python): Support TXORIGINPUT and TXORIGOUTPUT in trezorlib.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
ad6a0bc2a2
chore(common): Add new request types TXORIGINPUT and TXORIGOUTPUT.
2020-10-23 15:07:15 +02:00
Andrew Kozlik
443e0c101e
chore(common): Add orig_hash and orig_index fields to TxInput and TxOutput.
2020-10-23 15:07:15 +02:00
Martin Milata
0376670404
feat(common): expose 'unstable' option in generated code
2020-10-16 13:53:31 +02:00
Martin Milata
3b138b4f98
feat(python): add experimental_features setting
2020-10-16 13:53:31 +02:00
Martin Milata
314cd260eb
feat(common): add experimental_features setting
2020-10-16 13:53:31 +02:00
Pavol Rusnak
4fdb62c2e2
chore(python): replace pipenv with poetry
2020-10-07 16:21:00 +02:00
Martin Milata
b2c4bbdaa2
feat(common): add auto_lock_delay and display_rotation to Features
2020-10-02 11:06:16 +02:00
matejcik
e4785d47e0
style: apply black 20.8b1
2020-09-29 11:30:40 +02:00
matejcik
6dda240f5c
test(python): add flake8-requirements
2020-09-29 11:30:40 +02:00
matejcik
feb24e4282
ci(python): disable Python 3.5 in CI for now (see #810 )
2020-09-23 16:00:10 +02:00
matejcik
0eed360037
chore: make tx type names shorter
...
as suggested by @andrewkozlik:
TxAckInputType -> TxInput
TxAckOutputType -> TxOutput
TxAckPrevTxType -> PrevTx
TxAckPrevInputType -> PrevInput
TxAckPrevOutputType -> PrevOutput
2020-09-23 16:00:10 +02:00
matejcik
01b66a5858
fix(python): always fill TransactionType.lock_time
2020-09-23 16:00:10 +02:00
matejcik
9ee7eee1eb
chore!(python): bump trezorlib version because of breaking API change
2020-09-23 16:00:10 +02:00
matejcik
08d896f2f9
chore(tests): update to kwargs usage and new btc.sign_tx API
2020-09-23 16:00:10 +02:00
matejcik
b41021a5fb
chore(python): fix kwargs usage
2020-09-23 16:00:10 +02:00
matejcik
5ddf1dfafb
feat!(python): modify btc.sign_tx api to accept kwargs
...
Because we can't pass SignTx anymore because it has required fields and
the caller is not supposed to fill out those.
Instead you can send arbitrary kwargs that match signtx fields.
BREAKING CHANGE: argument `details: SignTx` is no longer accepted.
2020-09-23 16:00:10 +02:00
matejcik
ef4022fbf5
auto: regenerate protobuf classes
2020-09-23 16:00:10 +02:00
matejcik
90ee5f3d38
feat!: implement protobuf required fields and default values
...
BREAKING CHANGE: this makes arguments to protobuf constructors
keyword-only, and arguments corresponding to required fields are now
mandatory
2020-09-23 16:00:10 +02:00
Martin Milata
76a1760764
python: support SafetyChecks.PromptTemporarily
2020-09-18 09:02:40 +02:00
Martin Milata
7d37b2c90f
common: add PromptTemporarily to SafetyChecks enum
2020-09-18 09:02:40 +02:00
Martin Milata
9f066e877d
common: add SafetyCheckLevel to Features
2020-09-18 09:02:40 +02:00
Martin Milata
975f9b335e
build-docker: fix fingerprint calculation for model T production builds ( #1261 )
2020-09-15 11:28:18 +02:00
mcudev
c63c727df0
[python] build_tx tool: fix amount inaccuracy by parsing with Decimal
2020-09-14 10:07:24 +02:00
Andrew Kozlik
5d745d5d04
common/protob: Add commitment_data to TxInputType.
2020-09-08 19:36:10 +02:00
matejcik
ffe3b5487d
python: ignore failures of EndSession call, so that end_session() does not raise
2020-08-28 15:37:06 +02:00
matejcik
e0583dd5cb
all: use a specific error code for "invalid session"
2020-08-28 15:37:06 +02:00
matejcik
e96a9e8d39
python/trezorctl: make use of EndSession
2020-08-28 15:37:06 +02:00
matejcik
4f92d2b14d
python: call EndSession when requested
2020-08-28 15:37:06 +02:00
matejcik
4200692930
python: release 0.12.2
2020-08-27 15:24:32 +02:00
matejcik
17736e8fba
python/trezorctl: fix output of 'btc get-address' help text
2020-08-27 15:19:53 +02:00
matejcik
d19f00b26c
python/trezorctl: fix minor bugs in 'set homescreen'
2020-08-27 13:44:20 +02:00
matejcik
993d3b6e3f
python: update changelog
2020-08-25 13:17:21 +02:00
matejcik
fb1deb6156
python/trezorctl: improve 'set homescreen' command
2020-08-25 13:17:21 +02:00
matejcik
a14634c389
python: make PIL optional in the toif module, add size check
2020-08-25 13:17:08 +02:00
matejcik
eddaeb1280
python: add Pillow as an optional requirement ( fixes #1224 )
2020-08-25 13:13:32 +02:00
matejcik
032a65e1cf
python: export toif as public module
2020-08-25 11:30:33 +02:00
Martin Milata
43b7ccefc7
python/trezorctl: remove --skip-vendor-header from firmware-update
2020-08-25 11:16:04 +02:00
Martin Milata
29861e076b
python: fix cli --file handling
...
It seems that Click doesn't do the right thing when argument and hidden
option with the same name exist, which was introduced in commit
2678e64a99
.
2020-08-25 11:07:34 +02:00
Ferdinando M. Ametrano
b3d483dd6b
python: silenced unused variables ( #1202 )
2020-08-24 10:56:18 +02:00
Martin Milata
1fc6c80b5d
build-docker.sh: print fw fingerprints after build ( #1209 )
2020-08-21 14:09:21 +02:00
Martin Milata
6319fcfe4a
python: fix trezorctl lisk sign-message address parsing
2020-08-18 13:45:49 +02:00
Andrew Kozlik
9da715e025
python: Fix UnboundLocalError in trezorctl btc get-address.
2020-08-12 17:43:51 +02:00
Pavol Rusnak
5536fbb98a
python: use stdlib blake2s on python 3.6+
...
commit 6d407c84d7
did not replace everything
2020-08-10 23:35:38 +02:00
matejcik
4029fc1e1c
python: remove superfluous .keep file
2020-08-05 16:45:56 +02:00
matejcik
5cd867fa92
python: update dist target
2020-08-05 16:45:56 +02:00
matejcik
35c3af87dd
python: rename unsafe_prompts to safety_checks
2020-08-05 16:45:56 +02:00
matejcik
769ccf52c6
python: fix behavior of client.ping() when device is locked
2020-08-05 16:45:56 +02:00
matejcik
3dd3d96957
python: update changelog
2020-08-05 16:45:56 +02:00
matejcik
efcaf7bda6
python/btc: improve missing signature detection
2020-08-05 16:45:56 +02:00
matejcik
037bef3a38
python: fix logging of protobuf repeated enums
2020-08-05 16:45:56 +02:00
matejcik
c244503e1f
python/trezorctl: add aliases for firmware-update
2020-08-05 16:45:56 +02:00
matejcik
d5fe57012d
python: bump version before release
2020-08-05 16:45:56 +02:00
matejcik
2678e64a99
python/trezorctl: improve file-based arguments
2020-08-05 16:45:56 +02:00
matejcik
e585d35f34
python: clarify session and feature management API
...
init_device() should be used to initialize a session. Reuses existing
session if available.
end_session() explicitly closes any existing session and requests a new
one
lock() enables soft-lock
clear_session() is the equivalent of lock() + end_session()
A new function ensure_unlocked() can be used to open a session and
prompt for PIN and passphrase before further operations.
2020-08-05 16:45:56 +02:00
matejcik
95f33a77c7
python/trezorctl: support multisig addresses in get-address
2020-08-05 16:45:56 +02:00
Andrew Kozlik
62d66a713c
python: Add cancel_authorization() to trezorlib.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
5c1f197602
common/protob: Add CancelAuthorization message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
85cf79169c
python: Support preauthorized operations in trezorlib.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
84c1324290
python: Add authorize_coinjoin() to trezorlib.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
2c30dd62fc
common: Add DoPreauthorized message.
2020-08-04 17:32:44 +02:00
Andrew Kozlik
bbab13f6e7
common/protob: Add AuthorizeCoinJoin message.
2020-08-04 17:32:44 +02:00
gabrielkerekes
a5d3b63912
Refactor trezorlib transaction key checking
2020-07-30 17:17:03 +02:00
gabrielkerekes
f2ee450410
Include metadata in transaction signing
2020-07-30 17:17:03 +02:00
gabrielkerekes
c29d297a77
Set default values to client functions parameters
2020-07-30 17:17:03 +02:00
gabrielkerekes
93b9f35678
Update trezorlib
...
Add certificates, withdrawals and metadata hash
2020-07-30 17:17:03 +02:00
gabrielkerekes
e92baf5b02
Update protobuf
2020-07-30 17:17:03 +02:00
gabrielkerekes
b5f3511c1c
Add support for script addresses in tx outputs
2020-07-30 14:43:32 +02:00
matejcik
741fca0156
tests: watch_layout must be explicit ( fixes #1142 )
2020-07-29 11:50:47 +02:00
Pavol Rusnak
cec87bba50
core: remove mono bold font variant (not used anywhere)
2020-07-27 23:22:34 +02:00
Gabriel Kerekeš
d2c1624602
Cardano shelley update 2/3 ( #1112 )
2020-07-27 13:11:23 +02:00
gabrielkerekes
e1615e60ec
Update Cardano to support Shelley era 1/3
...
Update protobuf
- Previous transactions don't need to be sent anymore, because fee is
included in the transaction now. Thus transactions_count can be
removed from CardanoSignTx message and the CardanoTxAck and
CardanoTxRequest messages can be removed altogether.
- CardanoTxInputType.type is unused so remove it
Add NULL (None type) serialisation to CBOR
- Transaction metada must either have a valid structure or CBOR NULL
must be used (if metadata is empty) - it can't be simply left out.
Add protocol_magics file
- Just to have a nicer way of representing protocol magics
Update transaction signing
- Previous transactions no longer need to be requested
- Output building is simplified, since fee doesn't need to be calculated
- Remove transaction class since it is no longer needed (only functions
remained)
- Reorder functions so it reads top to bottom
Add protocol magic to byron address on testnet
- This has always been a part of the spec, but it hasn't been
implemented before, because it wasn't really needed.
Update trezorlib
Update tests
- Transaction messages are no longer required
- Expected values are different since tx format changed
- Common values in test cases have been extracted
Remove unused file
- Progress was used when receiving previous transactions
Add CRC check to output address validation
2020-07-27 13:04:49 +02:00
matejcik
fdcb64ac24
all: rename protobuf unsafe_prompts
to safety_checks
2020-07-24 16:37:58 +02:00
matejcik
8f8e793155
core, python: add changelogs
2020-07-24 16:37:58 +02:00
matejcik
1109250dcf
core: add option to allow unsafe prompts
2020-07-24 16:37:58 +02:00
matejcik
c964ff702d
python: disallow setting auto-lock without PIN
2020-07-10 14:05:52 +02:00
matejcik
fb03a174c1
python: remove linkify-changelog reference as it now lives in root
2020-07-08 10:43:40 +02:00
matejcik
a19a9a318a
all: improve changelog formatting
2020-07-08 10:43:40 +02:00
Andrew Kozlik
a973c3bc6e
python: Add get_ownership_id() and get_ownership_proof() to trezorlib.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
533de50588
common/protob: Add GetOwnershipId message.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
6c523d09e0
tests/sign_tx: Don't expect signatures to be returned for external inputs.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
956ea9a94f
common: Add ownership_proof field to TxInputType.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
c723c78529
common/protob: Add GetOwnershipProof message.
2020-07-03 11:17:19 +02:00
Andrew Kozlik
cc655575c8
common: Add witness field to TxInputType.
2020-07-03 11:17:19 +02:00
Tomas Susanka
14a8da9c28
common: remove underscore from 'overwintered' field
...
Due to some Suite/Connect compatibility issues.
2020-07-01 13:56:32 +00:00
Tomas Susanka
ca3dd2bfb9
common: skip deprecated fields during generation; deprecate overwintered field in Zcash
2020-06-30 16:02:21 +02:00
matejcik
312d6ea822
python: fix padding in first chunk ( fixes #1082 )
2020-06-25 11:23:26 +02:00
Tomas Susanka
e534ae3ad7
legacy, core: rename Features.pin_cached to unlocked and unify
2020-06-19 21:26:36 +02:00
matejcik
6f53ca0ac6
core: rework wait_layout()
...
The original wait_layout was unreliable, because there are no guarantees
re order of arrival of the respective events. Still, TT's event handling
is basically deterministic, so as long as the host sent its messages
close enough to each other, the order worked out.
This is no longer the case with the introduction of loop.spawn: TT's
behavior is still deterministic, but now ButtonAck is processed *before*
the corresponding wait_layout, so the waiting side waits forever.
In the new process, the host must first register to receive layout
events, and then receives all of them (so the number of calls to
wait_layout must match the number of layout changes).
DebugLinkWatchLayout message must be version-gated, because of an
unfortunate collection of bugs in previous versions wrt unknown message
handling; and this interests us because upgrade-tests are using
wait_layout feature.
2020-06-04 16:18:46 +02:00
matejcik
5d823ff5ea
core: use ButtonRequestType.PinEntry for PIN entry
2020-06-04 16:18:46 +02:00
matejcik
bbfce4e303
common: introduce ButtonRequestType.PinEntry
2020-06-04 16:18:46 +02:00
matejcik
fc6c99c6f9
tests: disable PIN detection, all PIN uses must be explicit
2020-06-04 16:18:46 +02:00
matejcik
b68cc5abda
python/debuglink: implement use_pin_sequence support for trezor-core
2020-06-04 16:18:46 +02:00
matejcik
62ced317cd
python/debuglink: proto -> messages
2020-06-04 16:18:46 +02:00
matejcik
ee32806bb2
python/debuglink: add debuglink message logging
2020-06-04 16:18:46 +02:00
matejcik
6069173252
python/debuglink: clean out debuglink methods
2020-06-04 16:18:46 +02:00
matejcik
0600d87c8c
common: rename ClearSession to LockDevice, introduce EndSession
2020-06-04 16:18:46 +02:00
matejcik
83d3acb0a6
python: fix dead code in protobuf pretty-printing
2020-05-29 12:27:42 +02:00
Tomas Susanka
9dfc08ca61
core/bitcoin: drop decred_script_version
2020-05-21 19:14:39 +02:00