Skip to content

Conversation

SomberNight
Copy link
Member

  • remove "from addresses" dependency from wallet logic
  • change partial txn format
    • partial txns now include a header consisting of 5 fixed magic bytes and 1 byte version number
  • we only parse scriptSig/witness of partial txns; no more guessing of input addresses
  • in the Qt GUI, transaction dialog, only is_mine input addresses are shown
  • removed "is_mine restriction" from wallet.spent_outpoints
    • as a result, the local transaction feature becomes more powerful: any txn that drops from the mempool will become local. this resolves Unconfirmed transactions disappearing #3595
    • wallet.spent_outpoints is now persisted in the wallet file; there is a corresponding v17 version upgrade. wallet files are expected to become ~10% larger on disk

@ecdsa ecdsa added this to the 3.2.0 milestone Jun 4, 2018
@SomberNight SomberNight force-pushed the remove_from_addresses_from_wallet2 branch from 605917c to a0ba5a7 Compare June 11, 2018 16:00
# give v to txi that spends me
next_tx = self.spent_outpoints[tx_hash].get(n)
if next_tx is not None:
dd = self.txi.get(next_tx, {})

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

get -> setdefault

electrum-user-account added a commit to electrum-user-account/electrum that referenced this pull request Jan 31, 2020
The serialized transaction format was changed here spesmilo#4405

The change occurred in Electrum 3.2.0.

(
  before: https://github.com/spesmilo/electrum/blob/624fa4769d9f02fa71696b3d69030ae114ccf573/lib/transaction.py#L891
  after: https://github.com/spesmilo/electrum/blob/0119ab9ee1c4b07255442c7c91a7119ca989b64c/lib/transaction.py#L1013
)

I ran into this myself, here: spesmilo#5924

Personally I believe that users should be notified of breaking changes.  Users should not have to make educated guesses, ask online, or be python programmers in order to be able to tell whats going on / why doesn't it work.

If you don't like this verbiage (for example, if you think that the user should be instructed to always use the exact same electrum version when importing / exporting)  

Then an alternative verbiage would be appropriate, such as "Always use the exact same Electrum version to import any exported transactions."

If that doesn't fit there the label can be moved. Or it could be  `'Electrum ' + current_electrum_version + ' required to import.'` Or Something. Point is that there should be some indication of this fact of life to the user.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Unconfirmed transactions disappearing
3 participants