Merge pull request #6857 from SomberNight/202012_walletdb_v33
wallet_db: impl convert_version_33: put 'height' field into invoices
This commit is contained in:
@@ -118,7 +118,7 @@ class OnchainInvoice(Invoice):
|
||||
outputs = attr.ib(kw_only=True, converter=_decode_outputs) # type: List[PartialTxOutput]
|
||||
bip70 = attr.ib(type=str, kw_only=True) # type: Optional[str]
|
||||
requestor = attr.ib(type=str, kw_only=True) # type: Optional[str]
|
||||
height = attr.ib(type=int, default=0, kw_only=True, validator=attr.validators.instance_of(int))
|
||||
height = attr.ib(type=int, kw_only=True, validator=attr.validators.instance_of(int))
|
||||
|
||||
def get_address(self) -> str:
|
||||
"""returns the first address, to be displayed in GUI"""
|
||||
|
||||
@@ -52,7 +52,7 @@ if TYPE_CHECKING:
|
||||
|
||||
OLD_SEED_VERSION = 4 # electrum versions < 2.0
|
||||
NEW_SEED_VERSION = 11 # electrum versions >= 2.0
|
||||
FINAL_SEED_VERSION = 32 # electrum >= 2.7 will set this to prevent
|
||||
FINAL_SEED_VERSION = 33 # electrum >= 2.7 will set this to prevent
|
||||
# old versions from overwriting new format
|
||||
|
||||
|
||||
@@ -180,6 +180,7 @@ class WalletDB(JsonDB):
|
||||
self._convert_version_30()
|
||||
self._convert_version_31()
|
||||
self._convert_version_32()
|
||||
self._convert_version_33()
|
||||
self.put('seed_version', FINAL_SEED_VERSION) # just to be sure
|
||||
|
||||
self._after_upgrade_tasks()
|
||||
@@ -695,6 +696,20 @@ class WalletDB(JsonDB):
|
||||
self.data['invoices'] = invoices_new
|
||||
self.data['seed_version'] = 32
|
||||
|
||||
def _convert_version_33(self):
|
||||
if not self._is_upgrade_method_needed(32, 32):
|
||||
return
|
||||
|
||||
from .invoices import PR_TYPE_ONCHAIN
|
||||
requests = self.data.get('payment_requests', {})
|
||||
invoices = self.data.get('invoices', {})
|
||||
for d in [invoices, requests]:
|
||||
for key, item in list(d.items()):
|
||||
if item['type'] == PR_TYPE_ONCHAIN:
|
||||
item['height'] = item.get('height') or 0
|
||||
|
||||
self.data['seed_version'] = 33
|
||||
|
||||
def _convert_imported(self):
|
||||
if not self._is_upgrade_method_needed(0, 13):
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user