remove imports to lbry.wallet.server
This commit is contained in:
parent
f8bb89c8cd
commit
45799bf330
5 changed files with 64 additions and 9 deletions
|
@ -53,8 +53,7 @@ from lbry.extras.daemon.security import ensure_request_allowed
|
||||||
from lbry.file_analysis import VideoFileAnalyzer
|
from lbry.file_analysis import VideoFileAnalyzer
|
||||||
from lbry.schema.claim import Claim
|
from lbry.schema.claim import Claim
|
||||||
from lbry.schema.url import URL, normalize_name
|
from lbry.schema.url import URL, normalize_name
|
||||||
from lbry.wallet.server.db.elasticsearch.constants import RANGE_FIELDS, REPLACEMENTS
|
|
||||||
MY_RANGE_FIELDS = RANGE_FIELDS - {"limit_claims_per_channel"}
|
|
||||||
|
|
||||||
if typing.TYPE_CHECKING:
|
if typing.TYPE_CHECKING:
|
||||||
from lbry.blob.blob_manager import BlobManager
|
from lbry.blob.blob_manager import BlobManager
|
||||||
|
@ -67,6 +66,29 @@ if typing.TYPE_CHECKING:
|
||||||
|
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
RANGE_FIELDS = {
|
||||||
|
'height', 'creation_height', 'activation_height', 'expiration_height',
|
||||||
|
'timestamp', 'creation_timestamp', 'duration', 'release_time', 'fee_amount',
|
||||||
|
'tx_position', 'repost_count', 'limit_claims_per_channel',
|
||||||
|
'amount', 'effective_amount', 'support_amount',
|
||||||
|
'trending_score', 'censor_type', 'tx_num'
|
||||||
|
}
|
||||||
|
MY_RANGE_FIELDS = RANGE_FIELDS - {"limit_claims_per_channel"}
|
||||||
|
REPLACEMENTS = {
|
||||||
|
'claim_name': 'normalized_name',
|
||||||
|
'name': 'normalized_name',
|
||||||
|
'txid': 'tx_id',
|
||||||
|
'nout': 'tx_nout',
|
||||||
|
'trending_group': 'trending_score',
|
||||||
|
'trending_mixed': 'trending_score',
|
||||||
|
'trending_global': 'trending_score',
|
||||||
|
'trending_local': 'trending_score',
|
||||||
|
'reposted': 'repost_count',
|
||||||
|
'stream_types': 'stream_type',
|
||||||
|
'media_types': 'media_type',
|
||||||
|
'valid_channel_signature': 'is_signature_valid'
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
def is_transactional_function(name):
|
def is_transactional_function(name):
|
||||||
for action in ('create', 'update', 'abandon', 'send', 'fund'):
|
for action in ('create', 'update', 'abandon', 'send', 'fund'):
|
||||||
|
|
|
@ -1,13 +1,11 @@
|
||||||
import base64
|
import base64
|
||||||
from typing import List, TYPE_CHECKING, Union, Optional
|
from typing import List, Union, Optional, NamedTuple
|
||||||
from binascii import hexlify
|
from binascii import hexlify
|
||||||
from itertools import chain
|
from itertools import chain
|
||||||
|
|
||||||
from lbry.error import ResolveCensoredError
|
from lbry.error import ResolveCensoredError
|
||||||
from lbry.schema.types.v2.result_pb2 import Outputs as OutputsMessage
|
from lbry.schema.types.v2.result_pb2 import Outputs as OutputsMessage
|
||||||
from lbry.schema.types.v2.result_pb2 import Error as ErrorMessage
|
from lbry.schema.types.v2.result_pb2 import Error as ErrorMessage
|
||||||
if TYPE_CHECKING:
|
|
||||||
from lbry.wallet.server.db.common import ResolveResult
|
|
||||||
|
|
||||||
INVALID = ErrorMessage.Code.Name(ErrorMessage.INVALID)
|
INVALID = ErrorMessage.Code.Name(ErrorMessage.INVALID)
|
||||||
NOT_FOUND = ErrorMessage.Code.Name(ErrorMessage.NOT_FOUND)
|
NOT_FOUND = ErrorMessage.Code.Name(ErrorMessage.NOT_FOUND)
|
||||||
|
@ -58,6 +56,32 @@ class Censor:
|
||||||
outputs.blocked_total += len(count)
|
outputs.blocked_total += len(count)
|
||||||
|
|
||||||
|
|
||||||
|
class ResolveResult(NamedTuple): # a named tuple returned by the database containing all the resolve fields
|
||||||
|
name: str
|
||||||
|
normalized_name: str
|
||||||
|
claim_hash: bytes
|
||||||
|
tx_num: int
|
||||||
|
position: int
|
||||||
|
tx_hash: bytes
|
||||||
|
height: int
|
||||||
|
amount: int
|
||||||
|
short_url: str
|
||||||
|
is_controlling: bool
|
||||||
|
canonical_url: str
|
||||||
|
creation_height: int
|
||||||
|
activation_height: int
|
||||||
|
expiration_height: int
|
||||||
|
effective_amount: int
|
||||||
|
support_amount: int
|
||||||
|
reposted: int
|
||||||
|
last_takeover_height: Optional[int]
|
||||||
|
claims_in_channel: Optional[int]
|
||||||
|
channel_hash: Optional[bytes]
|
||||||
|
reposted_claim_hash: Optional[bytes]
|
||||||
|
signature_valid: Optional[bool]
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class Outputs:
|
class Outputs:
|
||||||
|
|
||||||
__slots__ = 'txos', 'extra_txos', 'txs', 'offset', 'total', 'blocked', 'blocked_total'
|
__slots__ = 'txos', 'extra_txos', 'txs', 'offset', 'total', 'blocked', 'blocked_total'
|
||||||
|
@ -202,7 +226,7 @@ class Outputs:
|
||||||
return page.SerializeToString()
|
return page.SerializeToString()
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def encode_txo(cls, txo_message, resolve_result: Union['ResolveResult', Exception]):
|
def encode_txo(cls, txo_message, resolve_result: Union[ResolveResult, Exception]):
|
||||||
if isinstance(resolve_result, Exception):
|
if isinstance(resolve_result, Exception):
|
||||||
txo_message.error.text = resolve_result.args[0]
|
txo_message.error.text = resolve_result.args[0]
|
||||||
if isinstance(resolve_result, ValueError):
|
if isinstance(resolve_result, ValueError):
|
||||||
|
|
|
@ -50,7 +50,7 @@ class NetworkTests(IntegrationTestCase):
|
||||||
self.conductor.spv_node.server.env.description = 'Fastest server in the west.'
|
self.conductor.spv_node.server.env.description = 'Fastest server in the west.'
|
||||||
self.conductor.spv_node.server.env.daily_fee = '42'
|
self.conductor.spv_node.server.env.daily_fee = '42'
|
||||||
|
|
||||||
from lbry.wallet.server.session import LBRYElectrumX
|
from scribe.server.session import LBRYElectrumX
|
||||||
LBRYElectrumX.set_server_features(self.conductor.spv_node.server.env)
|
LBRYElectrumX.set_server_features(self.conductor.spv_node.server.env)
|
||||||
|
|
||||||
# await self.ledger.network.on_connected.first
|
# await self.ledger.network.on_connected.first
|
||||||
|
|
|
@ -5,7 +5,7 @@ import lbry.wallet
|
||||||
from lbry.error import ServerPaymentFeeAboveMaxAllowedError
|
from lbry.error import ServerPaymentFeeAboveMaxAllowedError
|
||||||
from lbry.wallet.network import ClientSession
|
from lbry.wallet.network import ClientSession
|
||||||
from lbry.wallet.rpc import RPCError
|
from lbry.wallet.rpc import RPCError
|
||||||
from lbry.wallet.server.session import LBRYElectrumX
|
from scribe.server.session import LBRYElectrumX
|
||||||
from lbry.testcase import IntegrationTestCase, CommandTestCase
|
from lbry.testcase import IntegrationTestCase, CommandTestCase
|
||||||
from lbry.wallet.orchstr8.node import SPVNode
|
from lbry.wallet.orchstr8.node import SPVNode
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,6 @@ from lbry.error import InsufficientFundsError
|
||||||
from lbry.extras.daemon.daemon import DEFAULT_PAGE_SIZE
|
from lbry.extras.daemon.daemon import DEFAULT_PAGE_SIZE
|
||||||
from lbry.testcase import CommandTestCase
|
from lbry.testcase import CommandTestCase
|
||||||
from lbry.wallet.orchstr8.node import SPVNode
|
from lbry.wallet.orchstr8.node import SPVNode
|
||||||
from lbry.wallet.server.db.common import STREAM_TYPES
|
|
||||||
from lbry.wallet.transaction import Transaction, Output
|
from lbry.wallet.transaction import Transaction, Output
|
||||||
from lbry.wallet.util import satoshis_to_coins as lbc
|
from lbry.wallet.util import satoshis_to_coins as lbc
|
||||||
from lbry.crypto.hash import sha256
|
from lbry.crypto.hash import sha256
|
||||||
|
@ -20,6 +19,16 @@ from lbry.crypto.hash import sha256
|
||||||
log = logging.getLogger(__name__)
|
log = logging.getLogger(__name__)
|
||||||
|
|
||||||
|
|
||||||
|
STREAM_TYPES = {
|
||||||
|
'video': 1,
|
||||||
|
'audio': 2,
|
||||||
|
'image': 3,
|
||||||
|
'document': 4,
|
||||||
|
'binary': 5,
|
||||||
|
'model': 6,
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
def verify(channel, data, signature, channel_hash=None):
|
def verify(channel, data, signature, channel_hash=None):
|
||||||
pieces = [
|
pieces = [
|
||||||
signature['signing_ts'].encode(),
|
signature['signing_ts'].encode(),
|
||||||
|
|
Loading…
Add table
Reference in a new issue