mirror of https://github.com/nucypher/nucypher.git
Various changes in response to RFCs.
parent
abf485a2b7
commit
57bd9007ce
|
@ -76,7 +76,7 @@ class Character(Learner):
|
||||||
|
|
||||||
def __init__(self,
|
def __init__(self,
|
||||||
domains: Set = None,
|
domains: Set = None,
|
||||||
node_class: object = None,
|
known_node_class: object = None,
|
||||||
is_me: bool = True,
|
is_me: bool = True,
|
||||||
federated_only: bool = False,
|
federated_only: bool = False,
|
||||||
checksum_address: str = NO_BLOCKCHAIN_CONNECTION.bool_value(False),
|
checksum_address: str = NO_BLOCKCHAIN_CONNECTION.bool_value(False),
|
||||||
|
@ -118,17 +118,17 @@ class Character(Learner):
|
||||||
# Operating Mode
|
# Operating Mode
|
||||||
|
|
||||||
if is_me:
|
if is_me:
|
||||||
if not node_class:
|
if not known_node_class:
|
||||||
# Once in a while, in tests or demos, we init a plain Character who doesn't already know about its node class.
|
# Once in a while, in tests or demos, we init a plain Character who doesn't already know about its node class.
|
||||||
from nucypher.characters.lawful import Ursula
|
from nucypher.characters.lawful import Ursula
|
||||||
node_class = Ursula
|
known_node_class = Ursula
|
||||||
# If we're federated only, we assume that all other nodes in our domain are as well.
|
# If we're federated only, we assume that all other nodes in our domain are as well.
|
||||||
node_class.set_federated_mode(federated_only)
|
known_node_class.set_federated_mode(federated_only)
|
||||||
else:
|
else:
|
||||||
# What an awful hack. The last convulsions of #466.
|
# What an awful hack. The last convulsions of #466.
|
||||||
# TODO: Anything else.
|
# TODO: Anything else.
|
||||||
with suppress(AttributeError):
|
with suppress(AttributeError):
|
||||||
federated_only = node_class._federated_only_instances
|
federated_only = known_node_class._federated_only_instances
|
||||||
|
|
||||||
if federated_only:
|
if federated_only:
|
||||||
if registry or provider_uri:
|
if registry or provider_uri:
|
||||||
|
@ -201,7 +201,7 @@ class Character(Learner):
|
||||||
Learner.__init__(self,
|
Learner.__init__(self,
|
||||||
domains=domains,
|
domains=domains,
|
||||||
network_middleware=self.network_middleware,
|
network_middleware=self.network_middleware,
|
||||||
node_class=node_class,
|
node_class=known_node_class,
|
||||||
*args, **kwargs)
|
*args, **kwargs)
|
||||||
|
|
||||||
#
|
#
|
||||||
|
|
|
@ -128,7 +128,7 @@ class Alice(Character, BlockchainPolicyAuthor):
|
||||||
self.n = STRANGER_ALICE
|
self.n = STRANGER_ALICE
|
||||||
|
|
||||||
Character.__init__(self,
|
Character.__init__(self,
|
||||||
node_class=Ursula,
|
known_node_class=Ursula,
|
||||||
is_me=is_me,
|
is_me=is_me,
|
||||||
federated_only=federated_only,
|
federated_only=federated_only,
|
||||||
checksum_address=checksum_address,
|
checksum_address=checksum_address,
|
||||||
|
@ -463,7 +463,7 @@ class Bob(Character):
|
||||||
self.evidence = evidence
|
self.evidence = evidence
|
||||||
|
|
||||||
def __init__(self, controller: bool = True, *args, **kwargs) -> None:
|
def __init__(self, controller: bool = True, *args, **kwargs) -> None:
|
||||||
Character.__init__(self, node_class=Ursula, *args, **kwargs)
|
Character.__init__(self, known_node_class=Ursula, *args, **kwargs)
|
||||||
|
|
||||||
if controller:
|
if controller:
|
||||||
self.controller = self._controller_class(bob=self)
|
self.controller = self._controller_class(bob=self)
|
||||||
|
@ -848,7 +848,7 @@ class Ursula(Teacher, Character, Worker):
|
||||||
abort_on_learning_error=abort_on_learning_error,
|
abort_on_learning_error=abort_on_learning_error,
|
||||||
known_nodes=known_nodes,
|
known_nodes=known_nodes,
|
||||||
domains=domains,
|
domains=domains,
|
||||||
node_class=Ursula,
|
known_node_class=Ursula,
|
||||||
**character_kwargs)
|
**character_kwargs)
|
||||||
|
|
||||||
#
|
#
|
||||||
|
@ -1125,7 +1125,7 @@ class Ursula(Teacher, Character, Worker):
|
||||||
seednode_stake = staking_agent.get_locked_tokens(staker_address=checksum_address)
|
seednode_stake = staking_agent.get_locked_tokens(staker_address=checksum_address)
|
||||||
if seednode_stake < minimum_stake:
|
if seednode_stake < minimum_stake:
|
||||||
raise Learner.NotATeacher(
|
raise Learner.NotATeacher(
|
||||||
f"{checksum_address} is staking less then the specified minimum stake value ({minimum_stake}).")
|
f"{checksum_address} is staking less than the specified minimum stake value ({minimum_stake}).")
|
||||||
|
|
||||||
# OK - everyone get out
|
# OK - everyone get out
|
||||||
temp_node_storage.forget()
|
temp_node_storage.forget()
|
||||||
|
@ -1323,7 +1323,7 @@ class Enrico(Character):
|
||||||
|
|
||||||
# Encrico never uses the blockchain, hence federated_only)
|
# Encrico never uses the blockchain, hence federated_only)
|
||||||
kwargs['federated_only'] = True
|
kwargs['federated_only'] = True
|
||||||
kwargs['node_class'] = Ursula
|
kwargs['known_node_class'] = Ursula
|
||||||
super().__init__(*args, **kwargs)
|
super().__init__(*args, **kwargs)
|
||||||
|
|
||||||
if controller:
|
if controller:
|
||||||
|
|
|
@ -913,7 +913,8 @@ class Learner:
|
||||||
# Do we want both of these to be decided by `eager`?
|
# Do we want both of these to be decided by `eager`?
|
||||||
eager=eager,
|
eager=eager,
|
||||||
grow_node_sprout_into_node=eager)
|
grow_node_sprout_into_node=eager)
|
||||||
remembered.append(node_or_false)
|
if node_or_false is not False:
|
||||||
|
remembered.append(node_or_false)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Report Failure
|
# Report Failure
|
||||||
|
@ -958,11 +959,11 @@ class Learner:
|
||||||
|
|
||||||
|
|
||||||
learning_round_log_message = "Learning round {}. Teacher: {} knew about {} nodes, {} were new."
|
learning_round_log_message = "Learning round {}. Teacher: {} knew about {} nodes, {} were new."
|
||||||
# self.log.info(learning_round_log_message.format(self._learning_round,
|
self.log.info(learning_round_log_message.format(self._learning_round,
|
||||||
# current_teacher,
|
current_teacher,
|
||||||
# len(node_list),
|
len(sprouts),
|
||||||
# len(new_nodes)))
|
len(remembered)))
|
||||||
if any(remembered):
|
if remembered:
|
||||||
self.known_nodes.record_fleet_state()
|
self.known_nodes.record_fleet_state()
|
||||||
return sprouts
|
return sprouts
|
||||||
|
|
||||||
|
@ -1353,7 +1354,7 @@ class Teacher:
|
||||||
def nickname_icon_html(self):
|
def nickname_icon_html(self):
|
||||||
icon_template = """
|
icon_template = """
|
||||||
<div class="nucypher-nickname-icon" style="border-top-color:{first_color}; border-left-color:{first_color}; border-bottom-color:{second_color}; border-right-color:{second_color};">
|
<div class="nucypher-nickname-icon" style="border-top-color:{first_color}; border-left-color:{first_color}; border-bottom-color:{second_color}; border-right-color:{second_color};">
|
||||||
<span class="small">{node_class} v{version}</span>
|
<span class="small">{known_node_class} v{version}</span>
|
||||||
<div class="symbols">
|
<div class="symbols">
|
||||||
<span class="single-symbol" style="color: {first_color}">{first_symbol}︎</span>
|
<span class="single-symbol" style="color: {first_color}">{first_symbol}︎</span>
|
||||||
<span class="single-symbol" style="color: {second_color}">{second_symbol}︎</span>
|
<span class="single-symbol" style="color: {second_color}">{second_symbol}︎</span>
|
||||||
|
|
Loading…
Reference in New Issue