Hennadii Stepanov
91a8e9b549
Merge bitcoin-core/gui#807 : refactor: interfaces, make 'createTransaction' less error-prone
...
4c0d4f6f93 refactor: interfaces, make 'createTransaction' less error-prone (furszy)
e2c3ec9bf4 refactor: move CreatedTransactionResult to types.h (furszy)
45372175c3 gui: remove AmountWithFeeExceedsBalance error special case (furszy)
Pull request description:
Bundle all function's outputs inside the `util::Result` returned object.
Removals:
- The input-output 'change_pos' ref arg from `createTransaction`, which has been a source of bugs in the past.
- The 'fee' ref arg from `createTransaction`, which is currently only set when the transaction creation process succeeds.
- The no longer needed `AmountWithFeeExceedsBalance` error (more info about its re-introduction at [bitcoin#25269](https://github.com/bitcoin/bitcoin/pull/25269 ) and [bitcoin#34299](https://github.com/bitcoin/bitcoin/pull/34299 ).
Additionally, this PR moves the `CreatedTransactionResult` struct into its own file. This change is made to avoid further expanding the GUI dependencies on `wallet.h`. Structurally, the GUI should only access the model/interfaces and never the wallet directly.
ACKs for top commit:
stratospher:
ACK 4c0d4f6 .
hebasto:
ACK 4c0d4f6f93 .
Tree-SHA512: 4fc61f08ca2e66e46001defb3a2e852265713e75006c98f0c465bd48afe42e7b0d626d28d578741906fdd26e907d6919f06dc640c55c44efc3dfa766fdbf38a4
2026-02-10 15:33:37 +00:00
..
2026-02-06 18:00:18 -08:00
2026-01-29 19:53:48 +01:00
2026-01-22 12:39:52 +01:00
2026-02-02 19:32:14 +01:00
2026-01-30 11:50:17 +00:00
2026-02-02 17:22:31 +00:00
2026-01-27 13:08:50 +01:00
2026-02-06 18:15:59 -05:00
2026-01-21 15:07:23 +00:00
2026-02-07 23:01:17 +01:00
2026-02-03 11:19:01 +01:00
2026-02-02 17:22:31 +00:00
2026-02-07 23:01:17 +01:00
2026-02-07 23:01:17 +01:00
2026-01-28 17:08:34 +01:00
2026-02-10 15:33:37 +00:00
2026-02-09 13:32:28 +00:00
2026-02-02 17:22:31 +00:00
2026-02-02 15:21:14 +00:00
2026-01-20 15:35:19 +01:00
2026-02-09 15:44:31 +00:00
2026-01-31 10:41:50 +00:00
2026-02-07 23:01:17 +01:00
2026-02-10 15:33:37 +00:00
2026-01-29 14:38:35 +00:00
2026-01-29 14:38:35 +00:00
2026-02-06 08:37:19 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 23:04:12 +01:00
2026-01-20 23:45:29 +01:00
2026-01-14 23:04:12 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-01-21 19:40:25 +05:30
2026-01-12 15:02:14 -05:00
2025-12-19 16:56:02 +00:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-01-19 20:20:13 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 11:38:07 -08:00
2026-01-29 11:51:41 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 23:04:12 +01:00
2026-01-14 23:04:12 +01:00
2026-02-02 17:22:31 +00:00
2025-12-16 22:21:15 +01:00
2026-01-12 17:38:30 -05:00
2026-02-02 15:21:14 +00:00
2026-02-02 17:22:31 +00:00
2026-01-29 14:59:36 -08:00
2025-12-16 22:21:15 +01:00
2026-02-09 13:32:28 +00:00
2026-01-19 12:57:16 +01:00
2025-12-16 22:21:15 +01:00
2026-02-02 17:22:31 +00:00
2026-02-02 18:42:44 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 23:04:12 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 23:03:47 +01:00
2026-01-14 23:04:12 +01:00
2026-02-02 17:22:31 +00:00
2025-12-16 22:21:15 +01:00
2025-12-19 16:56:02 +00:00
2025-12-16 22:21:15 +01:00
2026-01-28 13:43:56 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-02 18:22:31 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-02 17:22:31 +00:00
2026-02-02 17:22:31 +00:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 11:38:07 -08:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-06 17:10:25 -08:00
2026-01-27 15:13:38 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-06 18:00:18 -08:00
2026-01-27 15:13:43 +01:00
2026-01-14 23:04:12 +01:00
2026-01-22 10:35:14 -05:00
2026-01-23 13:25:42 +01:00
2026-01-20 23:59:41 +01:00
2026-01-20 23:59:41 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 19:39:01 +01:00
2026-01-14 19:36:14 +01:00
2025-12-16 22:21:15 +01:00
2026-01-14 23:04:12 +01:00
2025-12-16 17:53:50 +01:00
2025-12-16 17:53:50 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-06 07:56:57 +01:00
2026-01-14 23:03:47 +01:00
2026-02-02 17:22:31 +00:00
2026-01-14 23:04:12 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-09 13:32:28 +00:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-02 17:55:10 +01:00
2026-02-02 17:22:31 +00:00
2025-12-21 10:24:09 +01:00
2026-02-07 23:01:17 +01:00
2026-02-02 17:22:31 +00:00
2026-02-02 17:22:31 +00:00
2025-12-16 22:21:15 +01:00
2026-01-20 15:30:46 +01:00
2025-12-16 22:21:15 +01:00
2026-02-02 17:22:31 +00:00
2026-01-02 16:49:23 -08:00
2026-01-12 17:38:30 -05:00
2026-02-02 17:22:31 +00:00
2026-01-22 21:51:13 -05:00
2025-12-18 22:38:02 +01:00
2025-12-30 12:12:26 -08:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00
2026-02-02 17:22:31 +00:00
2026-02-02 07:57:34 +01:00
2026-02-02 17:22:31 +00:00
2025-12-16 22:21:15 +01:00
2025-12-19 16:56:02 +00:00
2025-12-16 22:21:15 +01:00
2025-12-16 22:21:15 +01:00