bittensor-cli 9.1.2__py3-none-any.whl → 9.1.4__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -43,7 +43,6 @@ async def unstake(
43
43
  allow_partial_stake: bool,
44
44
  ):
45
45
  """Unstake from hotkey(s)."""
46
- unstake_all_from_hk = False
47
46
  with console.status(
48
47
  f"Retrieving subnet data & identities from {subtensor.network}...",
49
48
  spinner="earth",
@@ -145,7 +144,7 @@ async def unstake(
145
144
  staking_address_name, staking_address_ss58, netuid = hotkey
146
145
  netuids_to_process = [netuid]
147
146
  else:
148
- staking_address_name, staking_address_ss58 = hotkey
147
+ staking_address_name, staking_address_ss58, _ = hotkey
149
148
  netuids_to_process = netuids
150
149
 
151
150
  initial_amount = amount
@@ -179,7 +178,6 @@ async def unstake(
179
178
  if staking_address_name
180
179
  else staking_address_ss58,
181
180
  staking_address_ss58,
182
- interactive,
183
181
  )
184
182
  if amount_to_unstake_as_balance is None:
185
183
  skip_remaining_subnets = True
@@ -189,8 +187,10 @@ async def unstake(
189
187
  amount_to_unstake_as_balance.set_unit(netuid)
190
188
  if amount_to_unstake_as_balance > current_stake_balance:
191
189
  err_console.print(
192
- f"[red]Not enough stake to remove[/red]:\n Stake balance: [dark_orange]{current_stake_balance}[/dark_orange]"
193
- f" < Unstaking amount: [dark_orange]{amount_to_unstake_as_balance}[/dark_orange] on netuid: {netuid}"
190
+ f"[red]Not enough stake to remove[/red]:\n"
191
+ f" Stake balance: [dark_orange]{current_stake_balance}[/dark_orange]"
192
+ f" < Unstaking amount: [dark_orange]{amount_to_unstake_as_balance}[/dark_orange]"
193
+ f" on netuid: {netuid}"
194
194
  )
195
195
  continue # Skip to the next subnet - useful when single amount is specified for all subnets
196
196
 
@@ -292,7 +292,6 @@ async def unstake(
292
292
  subtensor=subtensor,
293
293
  netuid=op["netuid"],
294
294
  amount=op["amount_to_unstake"],
295
- current_stake=op["current_stake_balance"],
296
295
  hotkey_ss58=op["hotkey_ss58"],
297
296
  price_limit=op["price_with_tolerance"],
298
297
  allow_partial_stake=allow_partial_stake,
@@ -320,12 +319,13 @@ async def unstake_all(
320
319
  hotkey_ss58_address: str,
321
320
  unstake_all_alpha: bool = False,
322
321
  all_hotkeys: bool = False,
323
- include_hotkeys: list[str] = [],
324
- exclude_hotkeys: list[str] = [],
322
+ include_hotkeys: Optional[list[str]] = None,
323
+ exclude_hotkeys: Optional[list[str]] = None,
325
324
  prompt: bool = True,
326
325
  ) -> bool:
327
326
  """Unstakes all stakes from all hotkeys in all subnets."""
328
-
327
+ include_hotkeys = include_hotkeys or []
328
+ exclude_hotkeys = exclude_hotkeys or []
329
329
  with console.status(
330
330
  f"Retrieving stake information & identities from {subtensor.network}...",
331
331
  spinner="earth",
@@ -356,12 +356,12 @@ async def unstake_all(
356
356
  old_identities=old_identities,
357
357
  )
358
358
  elif not hotkey_ss58_address:
359
- hotkeys = [(wallet.hotkey_str, wallet.hotkey.ss58_address)]
359
+ hotkeys = [(wallet.hotkey_str, wallet.hotkey.ss58_address, None)]
360
360
  else:
361
- hotkeys = [(None, hotkey_ss58_address)]
361
+ hotkeys = [(None, hotkey_ss58_address, None)]
362
362
 
363
- hotkey_names = {ss58: name for name, ss58 in hotkeys if name is not None}
364
- hotkey_ss58s = [ss58 for _, ss58 in hotkeys]
363
+ hotkey_names = {ss58: name for name, ss58, _ in hotkeys if name is not None}
364
+ hotkey_ss58s = [item[1] for item in hotkeys]
365
365
  stake_info = [
366
366
  stake for stake in stake_info if stake.hotkey_ss58 in hotkey_ss58s
367
367
  ]
@@ -567,7 +567,6 @@ async def _safe_unstake_extrinsic(
567
567
  subtensor: "SubtensorInterface",
568
568
  netuid: int,
569
569
  amount: Balance,
570
- current_stake: Balance,
571
570
  hotkey_ss58: str,
572
571
  price_limit: Balance,
573
572
  allow_partial_stake: bool,
@@ -578,7 +577,6 @@ async def _safe_unstake_extrinsic(
578
577
  Args:
579
578
  netuid: The subnet ID
580
579
  amount: Amount to unstake
581
- current_stake: Current stake balance
582
580
  hotkey_ss58: Hotkey SS58 address
583
581
  price_limit: Maximum acceptable price
584
582
  wallet: Wallet instance
@@ -724,6 +722,7 @@ async def _unstake_all_extrinsic(
724
722
  current_balance = await subtensor.get_balance(
725
723
  wallet.coldkeypub.ss58_address, block_hash=block_hash
726
724
  )
725
+ previous_root_stake = None
727
726
 
728
727
  call_function = "unstake_all_alpha" if unstake_all_alpha else "unstake_all"
729
728
  call = await subtensor.substrate.compose_call(
@@ -768,6 +767,7 @@ async def _unstake_all_extrinsic(
768
767
  new_balance = await subtensor.get_balance(
769
768
  wallet.coldkeypub.ss58_address, block_hash=block_hash
770
769
  )
770
+ new_root_stake = None
771
771
 
772
772
  success_message = (
773
773
  ":white_heavy_check_mark: [green]Finalized: Successfully unstaked all stakes[/green]"
@@ -781,7 +781,9 @@ async def _unstake_all_extrinsic(
781
781
 
782
782
  if unstake_all_alpha:
783
783
  console.print(
784
- f"Root Stake for {hotkey_name}:\n [blue]{previous_root_stake}[/blue] :arrow_right: [{COLOR_PALETTE['STAKE']['STAKE_AMOUNT']}]{new_root_stake}"
784
+ f"Root Stake for {hotkey_name}:\n "
785
+ f"[blue]{previous_root_stake}[/blue] :arrow_right: "
786
+ f"[{COLOR_PALETTE['STAKE']['STAKE_AMOUNT']}]{new_root_stake}"
785
787
  )
786
788
 
787
789
  except Exception as e:
@@ -793,7 +795,7 @@ def _calculate_slippage(subnet_info, amount: Balance) -> tuple[Balance, str, flo
793
795
  """Calculate slippage and received amount for unstaking operation.
794
796
 
795
797
  Args:
796
- dynamic_info: Subnet information containing price data
798
+ subnet_info: Subnet information containing price data
797
799
  amount: Amount being unstaked
798
800
 
799
801
  Returns:
@@ -821,7 +823,7 @@ async def _unstake_selection(
821
823
  old_identities,
822
824
  stake_infos,
823
825
  netuid: Optional[int] = None,
824
- ):
826
+ ) -> tuple[list[tuple[str, str, int]], bool]:
825
827
  if not stake_infos:
826
828
  print_error("You have no stakes to unstake.")
827
829
  raise ValueError
@@ -899,7 +901,9 @@ async def _unstake_selection(
899
901
 
900
902
  # Display hotkey's staked netuids with amount.
901
903
  table = Table(
902
- title=f"\n[{COLOR_PALETTE['GENERAL']['HEADER']}]Stakes for hotkey \n[{COLOR_PALETTE['GENERAL']['SUBHEADING']}]{selected_hotkey_name}\n{selected_hotkey_ss58}\n",
904
+ title=f"\n[{COLOR_PALETTE['GENERAL']['HEADER']}]Stakes for hotkey \n"
905
+ f"[{COLOR_PALETTE['GENERAL']['SUBHEADING']}]{selected_hotkey_name}\n"
906
+ f"{selected_hotkey_ss58}\n",
903
907
  show_footer=True,
904
908
  show_edge=False,
905
909
  header_style="bold white",
@@ -925,19 +929,20 @@ async def _unstake_selection(
925
929
  console.print("\n", table, "\n")
926
930
 
927
931
  # Ask which netuids to unstake from for the selected hotkey.
928
- unstake_all = False
932
+ unstake_all_ = False
929
933
  if netuid is not None:
930
934
  selected_netuids = [netuid]
931
935
  else:
932
936
  while True:
933
937
  netuid_input = Prompt.ask(
934
- "\nEnter the netuids of the [blue]subnets to unstake[/blue] from (comma-separated), or '[blue]all[/blue]' to unstake from all",
938
+ "\nEnter the netuids of the [blue]subnets to unstake[/blue] from (comma-separated), or "
939
+ "'[blue]all[/blue]' to unstake from all",
935
940
  default="all",
936
941
  )
937
942
 
938
943
  if netuid_input.lower() == "all":
939
944
  selected_netuids = list(netuid_stakes.keys())
940
- unstake_all = True
945
+ unstake_all_ = True
941
946
  break
942
947
  else:
943
948
  try:
@@ -960,7 +965,7 @@ async def _unstake_selection(
960
965
  hotkeys_to_unstake_from.append(
961
966
  (selected_hotkey_name, selected_hotkey_ss58, netuid_)
962
967
  )
963
- return hotkeys_to_unstake_from, unstake_all
968
+ return hotkeys_to_unstake_from, unstake_all_
964
969
 
965
970
 
966
971
  def _ask_unstake_amount(
@@ -968,7 +973,6 @@ def _ask_unstake_amount(
968
973
  netuid: int,
969
974
  staking_address_name: str,
970
975
  staking_address_ss58: str,
971
- interactive: bool,
972
976
  ) -> Optional[Balance]:
973
977
  """Prompt the user to decide the amount to unstake.
974
978
 
@@ -977,7 +981,6 @@ def _ask_unstake_amount(
977
981
  netuid: The subnet ID
978
982
  staking_address_name: Display name of the staking address
979
983
  staking_address_ss58: SS58 address of the staking address
980
- interactive: Whether in interactive mode (affects default choice)
981
984
 
982
985
  Returns:
983
986
  Balance amount to unstake, or None if user chooses to quit
@@ -1055,7 +1058,7 @@ def _get_hotkeys_to_unstake(
1055
1058
  stake_infos: list,
1056
1059
  identities: dict,
1057
1060
  old_identities: dict,
1058
- ) -> list[tuple[Optional[str], str]]:
1061
+ ) -> list[tuple[Optional[str], str, None]]:
1059
1062
  """Get list of hotkeys to unstake from based on input parameters.
1060
1063
 
1061
1064
  Args:
@@ -1066,26 +1069,28 @@ def _get_hotkeys_to_unstake(
1066
1069
  exclude_hotkeys: List of hotkey names to exclude
1067
1070
 
1068
1071
  Returns:
1069
- List of tuples containing (hotkey_name, hotkey_ss58) pairs to unstake from
1072
+ List of tuples containing (hotkey_name, hotkey_ss58, None) pairs to unstake from. The final None is important
1073
+ for compatibility with the `_unstake_selection` function.
1070
1074
  """
1071
1075
  if hotkey_ss58_address:
1072
1076
  print_verbose(f"Unstaking from ss58 ({hotkey_ss58_address})")
1073
- return [(None, hotkey_ss58_address)]
1077
+ return [(None, hotkey_ss58_address, None)]
1074
1078
 
1075
1079
  if all_hotkeys:
1076
1080
  print_verbose("Unstaking from all hotkeys")
1077
1081
  all_hotkeys_ = get_hotkey_wallets_for_wallet(wallet=wallet)
1078
1082
  wallet_hotkeys = [
1079
- (wallet.hotkey_str, wallet.hotkey.ss58_address)
1083
+ (wallet.hotkey_str, wallet.hotkey.ss58_address, None)
1080
1084
  for wallet in all_hotkeys_
1081
1085
  if wallet.hotkey_str not in exclude_hotkeys
1082
1086
  ]
1083
1087
 
1084
- wallet_hotkey_addresses = {addr for _, addr in wallet_hotkeys}
1088
+ wallet_hotkey_addresses = {hk[1] for hk in wallet_hotkeys}
1085
1089
  chain_hotkeys = [
1086
1090
  (
1087
1091
  get_hotkey_identity(stake_info.hotkey_ss58, identities, old_identities),
1088
1092
  stake_info.hotkey_ss58,
1093
+ None,
1089
1094
  )
1090
1095
  for stake_info in stake_infos
1091
1096
  if (
@@ -1100,14 +1105,14 @@ def _get_hotkeys_to_unstake(
1100
1105
  result = []
1101
1106
  for hotkey_identifier in include_hotkeys:
1102
1107
  if is_valid_ss58_address(hotkey_identifier):
1103
- result.append((None, hotkey_identifier))
1108
+ result.append((None, hotkey_identifier, None))
1104
1109
  else:
1105
1110
  wallet_ = Wallet(
1106
1111
  name=wallet.name,
1107
1112
  path=wallet.path,
1108
1113
  hotkey=hotkey_identifier,
1109
1114
  )
1110
- result.append((wallet_.hotkey_str, wallet_.hotkey.ss58_address))
1115
+ result.append((wallet_.hotkey_str, wallet_.hotkey.ss58_address, None))
1111
1116
  return result
1112
1117
 
1113
1118
  # Only cli.config.wallet.hotkey is specified
@@ -1115,7 +1120,7 @@ def _get_hotkeys_to_unstake(
1115
1120
  f"Unstaking from wallet: ({wallet.name}) from hotkey: ({wallet.hotkey_str})"
1116
1121
  )
1117
1122
  assert wallet.hotkey is not None
1118
- return [(wallet.hotkey_str, wallet.hotkey.ss58_address)]
1123
+ return [(wallet.hotkey_str, wallet.hotkey.ss58_address, None)]
1119
1124
 
1120
1125
 
1121
1126
  def _create_unstake_table(
@@ -111,6 +111,12 @@ async def register_subnetwork_extrinsic(
111
111
  ):
112
112
  return False
113
113
 
114
+ call_params = {
115
+ "hotkey": wallet.hotkey.ss58_address,
116
+ "mechid": 1,
117
+ }
118
+ call_function = "register_network"
119
+
114
120
  has_identity = any(subnet_identity.values())
115
121
  if has_identity:
116
122
  identity_data = {
@@ -136,6 +142,8 @@ async def register_subnetwork_extrinsic(
136
142
  if subnet_identity.get("additional")
137
143
  else b"",
138
144
  }
145
+ call_params["identity"] = identity_data
146
+ call_function = "register_network_with_identity"
139
147
  for field, value in identity_data.items():
140
148
  max_size = 64 # bytes
141
149
  if len(value) > max_size:
@@ -149,15 +157,6 @@ async def register_subnetwork_extrinsic(
149
157
  return False
150
158
 
151
159
  with console.status(":satellite: Registering subnet...", spinner="earth"):
152
- call_params = {
153
- "hotkey": wallet.hotkey.ss58_address,
154
- "mechid": 1,
155
- }
156
- call_function = "register_network"
157
- if has_identity:
158
- call_params["identity"] = identity_data
159
- call_function = "register_network_with_identity"
160
-
161
160
  substrate = subtensor.substrate
162
161
  # create extrinsic call
163
162
  call = await substrate.compose_call(
@@ -1341,12 +1340,12 @@ async def burn_cost(subtensor: "SubtensorInterface") -> Optional[Balance]:
1341
1340
  f":satellite:Retrieving lock cost from {subtensor.network}...",
1342
1341
  spinner="aesthetic",
1343
1342
  ):
1344
- burn_cost = await subtensor.burn_cost()
1345
- if burn_cost:
1343
+ current_burn_cost = await subtensor.burn_cost()
1344
+ if current_burn_cost:
1346
1345
  console.print(
1347
- f"Subnet burn cost: [{COLOR_PALETTE['STAKE']['STAKE_AMOUNT']}]{burn_cost}"
1346
+ f"Subnet burn cost: [{COLOR_PALETTE['STAKE']['STAKE_AMOUNT']}]{current_burn_cost}"
1348
1347
  )
1349
- return burn_cost
1348
+ return current_burn_cost
1350
1349
  else:
1351
1350
  err_console.print(
1352
1351
  "Subnet burn cost: [red]Failed to get subnet burn cost[/red]"
@@ -1417,6 +1416,7 @@ async def pow_register(
1417
1416
  use_cuda,
1418
1417
  dev_id,
1419
1418
  threads_per_block,
1419
+ prompt: bool,
1420
1420
  ):
1421
1421
  """Register neuron."""
1422
1422
 
@@ -1424,7 +1424,7 @@ async def pow_register(
1424
1424
  subtensor,
1425
1425
  wallet=wallet,
1426
1426
  netuid=netuid,
1427
- prompt=True,
1427
+ prompt=prompt,
1428
1428
  tpb=threads_per_block,
1429
1429
  update_interval=update_interval,
1430
1430
  num_processes=processors,
@@ -155,7 +155,6 @@ async def set_hyperparameter_extrinsic(
155
155
  `False` if the extrinsic fails to enter the block within the timeout.
156
156
  :param wait_for_finalization: If set, waits for the extrinsic to be finalized on the chain before returning `True`,
157
157
  or returns `False` if the extrinsic fails to be finalized within the timeout.
158
- :param prompt: If `True`, the call waits for confirmation from the user before proceeding.
159
158
 
160
159
  :return: success: `True` if extrinsic was finalized or included in the block. If we did not wait for
161
160
  finalization/inclusion, the response is `True`.
@@ -178,6 +177,7 @@ async def set_hyperparameter_extrinsic(
178
177
  arbitrary_extrinsic = False
179
178
 
180
179
  extrinsic, sudo_ = HYPERPARAMS.get(parameter, ("", False))
180
+ call_params = {"netuid": netuid}
181
181
  if not extrinsic:
182
182
  arbitrary_extrinsic, call_params = search_metadata(
183
183
  parameter, value, netuid, subtensor.substrate.metadata
@@ -207,7 +207,6 @@ async def set_hyperparameter_extrinsic(
207
207
  extrinsic_params = await substrate.get_metadata_call_function(
208
208
  "AdminUtils", extrinsic
209
209
  )
210
- call_params = {"netuid": netuid}
211
210
 
212
211
  # if input value is a list, iterate through the list and assign values
213
212
  if isinstance(value, list):
@@ -124,17 +124,18 @@ async def regen_hotkey(
124
124
  json_str = f.read()
125
125
 
126
126
  try:
127
- new_hotkey = wallet.regenerate_hotkey(
127
+ new_hotkey_ = wallet.regenerate_hotkey(
128
128
  mnemonic=mnemonic,
129
129
  seed=seed,
130
130
  json=(json_str, json_password) if all([json_str, json_password]) else None,
131
131
  use_password=use_password,
132
132
  overwrite=overwrite,
133
133
  )
134
- if isinstance(new_hotkey, Wallet):
134
+ if isinstance(new_hotkey_, Wallet):
135
135
  console.print(
136
136
  "\n✅ [dark_sea_green]Regenerated hotkey successfully!\n",
137
- f"[dark_sea_green]Wallet name: ({new_hotkey.name}), path: ({new_hotkey.path}), hotkey ss58: ({new_hotkey.hotkey.ss58_address})",
137
+ f"[dark_sea_green]Wallet name: "
138
+ f"({new_hotkey_.name}), path: ({new_hotkey_.path}), hotkey ss58: ({new_hotkey_.hotkey.ss58_address})",
138
139
  )
139
140
  except ValueError:
140
141
  print_error("Mnemonic phrase is invalid")
bittensor_cli/version.py CHANGED
@@ -15,5 +15,6 @@ def version_as_int(version):
15
15
  __new_signature_version__ = 360
16
16
  return __version_as_int__
17
17
 
18
- __version__ = "9.1.2"
18
+
19
+ __version__ = "9.1.4"
19
20
  __version_as_int__ = version_as_int(__version__)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: bittensor-cli
3
- Version: 9.1.2
3
+ Version: 9.1.4
4
4
  Summary: Bittensor CLI
5
5
  Author: bittensor.com
6
6
  Project-URL: homepage, https://github.com/opentensor/btcli
@@ -9,7 +9,7 @@ Requires-Python: <3.13,>=3.9
9
9
  Description-Content-Type: text/markdown
10
10
  Requires-Dist: wheel
11
11
  Requires-Dist: async-property==0.2.2
12
- Requires-Dist: async-substrate-interface>=1.0.5
12
+ Requires-Dist: async-substrate-interface>=1.0.7
13
13
  Requires-Dist: aiohttp~=3.10.2
14
14
  Requires-Dist: backoff~=2.2.1
15
15
  Requires-Dist: GitPython>=3.0.0
@@ -0,0 +1,35 @@
1
+ bittensor_cli/__init__.py,sha256=Lpv4NkbAQgwrfqFOnTMuR_S-fqGdaWCSLhxnFnGTHM0,1232
2
+ bittensor_cli/cli.py,sha256=HbU3AOCiAmicOLA9U-7q92NC9Cmf0p_8qjlabSscaWc,197905
3
+ bittensor_cli/doc_generation_helper.py,sha256=GexqjEIKulWg84hpNBEchJ840oOgOi7DWpt447nsdNI,91
4
+ bittensor_cli/version.py,sha256=laVzyT8eo7SMikK5aTb16S3zsLEpmIzwpNLCcb_IU1w,623
5
+ bittensor_cli/src/__init__.py,sha256=gSRsPtIDWe5FM93ItTjLDp3ZRwS6szo44sOYyMyFlso,27679
6
+ bittensor_cli/src/bittensor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
+ bittensor_cli/src/bittensor/balances.py,sha256=q5KkxF8wmUguWAFddEKstfDKTxPe5ISHpT6br8x32rc,11148
8
+ bittensor_cli/src/bittensor/chain_data.py,sha256=IPgimCD3US5xZqoIBvH4jQza4LDbfUIpFfl_Orgok1Q,41637
9
+ bittensor_cli/src/bittensor/minigraph.py,sha256=BIzmSVLfBYiRAeGD_i1LAC8Cw7zxp38a91SIFEPMqYc,10479
10
+ bittensor_cli/src/bittensor/networking.py,sha256=pZLMs8YXpZzDMLXWMBb_Bj6TVkm_q9khyY-lnbwVMuE,462
11
+ bittensor_cli/src/bittensor/subtensor_interface.py,sha256=mhpqRHcuQe7Wzur603fJ8KLhRNVJIvW0gxy7Jsiv4Rg,54582
12
+ bittensor_cli/src/bittensor/utils.py,sha256=6oJmqiW-ECEobs0z37Eyzu__MfvEU0DyAD_j3FCfzmI,47530
13
+ bittensor_cli/src/bittensor/extrinsics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
+ bittensor_cli/src/bittensor/extrinsics/registration.py,sha256=3mJZ3hw_wZEa-8I0R8WVuKjMQi4Y9EV5FjTCvbY37Iw,63780
15
+ bittensor_cli/src/bittensor/extrinsics/root.py,sha256=N9Fg4VaveRRP1ZN4EZjIWCe04FpTNBKWFqx8USKp9uQ,19062
16
+ bittensor_cli/src/bittensor/extrinsics/transfer.py,sha256=FyrRo3yk-065toN4f-1Xes23CE5tqP5KU0dBJkKofUc,8476
17
+ bittensor_cli/src/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
+ bittensor_cli/src/commands/sudo.py,sha256=bSS9nIWeCYf4nqqBYuoTkVDDA2Fm2Di3UG5xlUMJ6yM,31372
19
+ bittensor_cli/src/commands/view.py,sha256=2MdhWWbY9rwGqDilzs8r2ioa0l2GzrYxe8pKkavEVWs,109517
20
+ bittensor_cli/src/commands/wallets.py,sha256=AGV8JFCvRE_OOJv6NozxmyO4Cvf4y5HYXVfI_1kl70M,50736
21
+ bittensor_cli/src/commands/weights.py,sha256=uI7aACKD90JOtYt61VdKL76z7Fe_wh4WtdwMXL6ydD4,16269
22
+ bittensor_cli/src/commands/stake/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
+ bittensor_cli/src/commands/stake/add.py,sha256=A1pXJl6Dtl_3CWXySOQhEpGOGeinXhKiSJkskuZ13_c,24622
24
+ bittensor_cli/src/commands/stake/children_hotkeys.py,sha256=Eg0Rq_R2DYBsjEBqqNHElJchQ6MlZePkW_oWlifXfSY,29782
25
+ bittensor_cli/src/commands/stake/list.py,sha256=G7YLP68sq-qmWKPuIy2s6cMYK7XTz0oaMDK4JWR7aBE,28577
26
+ bittensor_cli/src/commands/stake/move.py,sha256=G2jhp-i-shUIMC6hyh2hGzLeCBj1tQ41Y7-b8806vu4,34480
27
+ bittensor_cli/src/commands/stake/remove.py,sha256=SlGHLU1yBaabaimb74wADO5LSUfDAbWt3hcm4xEFtO0,47115
28
+ bittensor_cli/src/commands/subnets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
+ bittensor_cli/src/commands/subnets/price.py,sha256=TWcRXUFeS_Q-pfyv0YIluAL8SE7d2gzTODK-9M2J5pw,29878
30
+ bittensor_cli/src/commands/subnets/subnets.py,sha256=d41oWtxOfr4a2QxW3v_P2weELtUOr1vRx4Vi0HzN87s,83935
31
+ bittensor_cli-9.1.4.dist-info/METADATA,sha256=Dy0kwDN8xFRqB8Ndw74NYopMMNC17XronTGbOwIi53Y,6145
32
+ bittensor_cli-9.1.4.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
33
+ bittensor_cli-9.1.4.dist-info/entry_points.txt,sha256=hBTLGLbVxmAKy69XSKaUZvjTCmyEzDGZKq4S8UOto8I,49
34
+ bittensor_cli-9.1.4.dist-info/top_level.txt,sha256=DvgvXpmTtI_Q1BbDZMlK90LFcGFCreN1daViEPV2iFw,14
35
+ bittensor_cli-9.1.4.dist-info/RECORD,,
@@ -1,35 +0,0 @@
1
- bittensor_cli/__init__.py,sha256=Lpv4NkbAQgwrfqFOnTMuR_S-fqGdaWCSLhxnFnGTHM0,1232
2
- bittensor_cli/cli.py,sha256=b74SuigzFMoGItVfdkpWoIOktTBLx1ALc-oHb7nprvs,198453
3
- bittensor_cli/doc_generation_helper.py,sha256=GexqjEIKulWg84hpNBEchJ840oOgOi7DWpt447nsdNI,91
4
- bittensor_cli/version.py,sha256=3RfWXsWszr62jh5wKR5mVQE7z-U3vsAuhEbQzn3kiUg,622
5
- bittensor_cli/src/__init__.py,sha256=9JLmK4Z-auboWXX74sMkJiFSvcjw3jcRUUw5lRRABy8,26553
6
- bittensor_cli/src/bittensor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- bittensor_cli/src/bittensor/balances.py,sha256=q5KkxF8wmUguWAFddEKstfDKTxPe5ISHpT6br8x32rc,11148
8
- bittensor_cli/src/bittensor/chain_data.py,sha256=hG61nRpp_4A1NkmEQcbmL89Z1UqL1IF1F9om896Pp-g,41616
9
- bittensor_cli/src/bittensor/minigraph.py,sha256=BIzmSVLfBYiRAeGD_i1LAC8Cw7zxp38a91SIFEPMqYc,10479
10
- bittensor_cli/src/bittensor/networking.py,sha256=pZLMs8YXpZzDMLXWMBb_Bj6TVkm_q9khyY-lnbwVMuE,462
11
- bittensor_cli/src/bittensor/subtensor_interface.py,sha256=tOhQEkjO03J7YJNYdUOmmH333SR5wNybmgYNZ7aoygk,54507
12
- bittensor_cli/src/bittensor/utils.py,sha256=z3KsDpOVgL1O16aXYJWDspaK1UFgei-eXxX2biZZ98s,47539
13
- bittensor_cli/src/bittensor/extrinsics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
14
- bittensor_cli/src/bittensor/extrinsics/registration.py,sha256=3mJZ3hw_wZEa-8I0R8WVuKjMQi4Y9EV5FjTCvbY37Iw,63780
15
- bittensor_cli/src/bittensor/extrinsics/root.py,sha256=N9Fg4VaveRRP1ZN4EZjIWCe04FpTNBKWFqx8USKp9uQ,19062
16
- bittensor_cli/src/bittensor/extrinsics/transfer.py,sha256=FyrRo3yk-065toN4f-1Xes23CE5tqP5KU0dBJkKofUc,8476
17
- bittensor_cli/src/commands/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
- bittensor_cli/src/commands/sudo.py,sha256=GICsjDYvaoJpq5zAUHb3gIcXvD0t1VNOkz8hghz_AUs,31475
19
- bittensor_cli/src/commands/view.py,sha256=2MdhWWbY9rwGqDilzs8r2ioa0l2GzrYxe8pKkavEVWs,109517
20
- bittensor_cli/src/commands/wallets.py,sha256=DuG3LQx75NRsi-f0-8Y-FriOSqj57nViNf1xryHHFV0,50711
21
- bittensor_cli/src/commands/weights.py,sha256=uI7aACKD90JOtYt61VdKL76z7Fe_wh4WtdwMXL6ydD4,16269
22
- bittensor_cli/src/commands/stake/__init__.py,sha256=uxomMv_QrYt5Qn3_X5UWFFh45ISjB0JmDmCFxVyX8nQ,6495
23
- bittensor_cli/src/commands/stake/add.py,sha256=aVdBEdrfJ5-IK9MpQ00lYQylw_e6BgimCsxMFJZe75E,24911
24
- bittensor_cli/src/commands/stake/children_hotkeys.py,sha256=STUeMc9PdzJPx_nfFzPLBUkSc4Wf9b40PJZZZEAKHfI,29630
25
- bittensor_cli/src/commands/stake/list.py,sha256=TfoFrXsYRTQeTiDd6pHu-f6rZ2ev0VK9fMybQ295X7Q,28600
26
- bittensor_cli/src/commands/stake/move.py,sha256=RSFtMgpBlK82U9CtCcijeZWBOABABnaPzyIgC2ug_Tc,34635
27
- bittensor_cli/src/commands/stake/remove.py,sha256=iEVV79RmhA2mCL2UGydc98pcCNTO6dpP7gJeq6OfbG0,46884
28
- bittensor_cli/src/commands/subnets/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
- bittensor_cli/src/commands/subnets/price.py,sha256=TWcRXUFeS_Q-pfyv0YIluAL8SE7d2gzTODK-9M2J5pw,29878
30
- bittensor_cli/src/commands/subnets/subnets.py,sha256=vEhCB756458KstHDSS1nEahympyGWNEmjujUhZ-6NSg,83936
31
- bittensor_cli-9.1.2.dist-info/METADATA,sha256=KLPzzTfK7BqqmOPUKfAt5PVljkSkm8aNMursZA5ysqQ,6145
32
- bittensor_cli-9.1.2.dist-info/WHEEL,sha256=tZoeGjtWxWRfdplE7E3d45VPlLNQnvbKiYnx7gwAy8A,92
33
- bittensor_cli-9.1.2.dist-info/entry_points.txt,sha256=hBTLGLbVxmAKy69XSKaUZvjTCmyEzDGZKq4S8UOto8I,49
34
- bittensor_cli-9.1.2.dist-info/top_level.txt,sha256=DvgvXpmTtI_Q1BbDZMlK90LFcGFCreN1daViEPV2iFw,14
35
- bittensor_cli-9.1.2.dist-info/RECORD,,