Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 7.4.0 #2255

Merged
merged 456 commits into from
Sep 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
456 commits
Select commit Hold shift + click to select a range
5b2e595
CLI revoke multiple
opendansor Jun 27, 2024
36f7466
lint
opendansor Jun 27, 2024
8766851
Imports
opendansor Jun 27, 2024
f11fe3d
lint
opendansor Jun 27, 2024
156ee56
lint
opendansor Jun 27, 2024
2dcd6f9
imports in init
opendansor Jun 27, 2024
d434583
fix e2e ci
opendansor Jun 27, 2024
f9e0bf4
fix e2e ci - update
opendansor Jun 27, 2024
af53e5c
update if statement
opendansor Jun 27, 2024
820946c
update if statement
opendansor Jun 27, 2024
b14510a
Merge branch 'staging' into support_hypens_when_passing_cold_pw
mjurbanski-reef Jun 27, 2024
7747d6b
Merge pull request #2077 from opentensor/chore/opendansor/fix_ci
opendansor Jun 27, 2024
8d74435
Fix Faucet and fastblocks
opendansor Jun 28, 2024
e4e7249
Merge pull request #2083 from opentensor/chore/opendansor/fix_leaky_f…
opendansor Jun 28, 2024
295cd4c
Refactor to follow new pattern
opendansor Jun 29, 2024
e77e688
Merge branch 'staging' into feature/opendansor/child_hotkeys
opendansor Jul 1, 2024
e4db609
U64 for all proportion values
opendansor Jul 1, 2024
79457b3
lint
opendansor Jul 1, 2024
5f6a754
debug
Jul 2, 2024
937f614
Clean up a bit.
opendansor Jul 2, 2024
c34cc8c
Merge pull request #2093 from opentensor/sam/debug_childkey
opendansor Jul 2, 2024
3053276
Clean up a bit.
opendansor Jul 2, 2024
2148dee
u16 to u64
opendansor Jul 3, 2024
2315d8b
un-refactor
opendansor Jul 3, 2024
70655e2
APY + other updates
opendansor Jul 8, 2024
4103cd4
lint
opendansor Jul 8, 2024
98d0768
lint
opendansor Jul 8, 2024
4c3bcbc
Extract Method, and params
opendansor Jul 8, 2024
a3ca5a5
Pr comments
opendansor Jul 10, 2024
9e2a334
feat: enhances dendrite error messages
gus-opentensor Jul 11, 2024
2040e13
add timeout and change pattern
open-junius Jul 11, 2024
4af08f0
Merge pull request #2118 from opentensor/junius/fix-e2e-test-hanging
open-junius Jul 11, 2024
45b93b5
feat: enhances dendrite error messages
gus-opentensor Jul 11, 2024
0c28805
Merge branch 'staging' into feat/gus/enhance-dendrite-error-messaging
gus-opentensor Jul 11, 2024
c8fde9d
Fixes leaked semaphores (#2125)
thewhaleking Jul 12, 2024
afd7a40
chore: add doc string
gus-opentensor Jul 15, 2024
c7f34a1
Merge branch 'staging' into feat/gus/enhance-dendrite-error-messaging
gus-opentensor Jul 15, 2024
05b852f
Merge master into staging
roman-opentensor Jul 15, 2024
8c603ab
Merge pull request #2136 from opentensor/merge/roman/master-into-staging
roman-opentensor Jul 15, 2024
b880dc2
fix: coldkeypub usage instead of coldkey for arbitration_stats
Rapiiidooo Jul 16, 2024
9f99bd4
Merge pull request #2132 from Rapiiidooo/check_coldkey_swap_from_pub
ibraheem-opentensor Jul 16, 2024
e6237ae
test: fix mocksubtensor query previous blocks
timabilov Jul 16, 2024
1433092
Removes extra no_prompts in commands
ibraheem-opentensor Jul 16, 2024
b240892
Adds timeout for e2e tests
ibraheem-opentensor Jul 16, 2024
67daf09
Merge pull request #2140 from opentensor/fix/extra-no-prompts
ibraheem-opentensor Jul 16, 2024
e461753
Merge branch 'staging' into ench/add-e2e-timeout
ibraheem-opentensor Jul 16, 2024
26f2bf7
Merge pull request #2141 from opentensor/ench/add-e2e-timeout
ibraheem-opentensor Jul 16, 2024
8f47502
Merge branch 'staging' into fix-mocksubtensor-query-step
gus-opentensor Jul 16, 2024
17b8bdf
fix: updates test_axon verify body async tests
gus-opentensor Jul 16, 2024
2676ab6
Adds e2e for metagraph command + subtensor.metagraph
ibraheem-opentensor Jul 16, 2024
ac576aa
Merge branch 'staging' into feat/e2e-metagraph-command
ibraheem-opentensor Jul 16, 2024
04a1766
Merge pull request #2142 from opentensor/fix/gus/pytest-asyncio-mark-…
gus-opentensor Jul 17, 2024
6d4ac2e
Merge branch 'staging' into fix-mocksubtensor-query-step
roman-opentensor Jul 17, 2024
b7007af
Merge pull request #2139 from timabilov/fix-mocksubtensor-query-step
gus-opentensor Jul 17, 2024
d08448a
Merge branch 'staging' into feat/gus/enhance-dendrite-error-messaging
gus-opentensor Jul 17, 2024
f3ef6a7
Merge branch 'staging' into feat/e2e-metagraph-command
gus-opentensor Jul 17, 2024
2747490
Merge pull request #2143 from opentensor/feat/e2e-metagraph-command
ibraheem-opentensor Jul 17, 2024
30b96e4
Adds E2E for wallet creations
ibraheem-opentensor Jul 18, 2024
1d9acdc
Merge branch 'staging' into feat/gus/enhance-dendrite-error-messaging
gus-opentensor Jul 18, 2024
2e66eee
Merge pull request #2117 from opentensor/feat/gus/enhance-dendrite-er…
gus-opentensor Jul 18, 2024
7facf24
Added doc strings and temp variable for testing
ibraheem-opentensor Jul 18, 2024
f835a67
Temp: Added capsys before each command
ibraheem-opentensor Jul 18, 2024
87d6e79
Changed pattern to splitting output before matching regex
ibraheem-opentensor Jul 18, 2024
e26e55e
Merge branch 'staging' into tests/abe/e2e-wallet-creation
roman-opentensor Jul 18, 2024
ccbd86b
Merge pull request #2145 from opentensor/tests/abe/e2e-wallet-creation
ibraheem-opentensor Jul 18, 2024
34604be
Adds test for wallet regenerations + fixes input bug for regen hotkey
ibraheem-opentensor Jul 19, 2024
dfbbff9
Bumps setuptools~=70.0.0
ibraheem-opentensor Jul 19, 2024
c645dac
bump pysub to 1.7.9+
camfairchild Jul 22, 2024
14a274d
bump scale-codec to 1.2.10
camfairchild Jul 22, 2024
b50160e
bump scale-codec to 1.2.11
camfairchild Jul 22, 2024
f02c115
Removed monkey-patch of py-scale-codec which hasn't been necessary si…
thewhaleking Jul 22, 2024
6d3c53a
Merge pull request #2156 from opentensor/feat/ledger-integration
camfairchild Jul 22, 2024
967c0cb
ruff
roman-opentensor Jul 22, 2024
069cc87
Merge pull request #2158 from opentensor/fix/roman/ruff-formatter
roman-opentensor Jul 22, 2024
b19d939
Merge branch 'staging' into support_hypens_when_passing_cold_pw
mjurbanski-reef Jul 23, 2024
cc108c3
Merge pull request #1949 from backend-developers-ltd/support_hypens_w…
gus-opentensor Jul 23, 2024
1342b54
Merge branch 'staging' into fix/dependency/setuptools
ibraheem-opentensor Jul 23, 2024
fb754e0
Fixed type annotations and doc strings
ibraheem-opentensor Jul 23, 2024
5f9877a
Adds docstring to test_wallet_regen test
ibraheem-opentensor Jul 23, 2024
d1fbe67
Fix naming convention of swap hotkey test
ibraheem-opentensor Jul 23, 2024
89f6d8e
Merge pull request #2162 from opentensor/fix/abe/fix-swap-naming
ibraheem-opentensor Jul 24, 2024
41cb53a
Merge branch 'staging' into tests/abe/wallet-regeneration
ibraheem-opentensor Jul 24, 2024
dae9532
Merge pull request #2149 from opentensor/tests/abe/wallet-regeneration
ibraheem-opentensor Jul 24, 2024
0dd556d
Merge branch 'staging' into fix/dependency/setuptools
ibraheem-opentensor Jul 24, 2024
5328638
Merge branch 'staging' into update/backmerge-master-staging/7.4
ibraheem-opentensor Jul 25, 2024
67c0c3a
Removes wait_epoch
ibraheem-opentensor Jul 25, 2024
67d5b80
Merge pull request #2156 from opentensor/feat/ledger-integration
camfairchild Jul 22, 2024
9d61251
Merge branch 'staging' into update/backmerge-master-staging/7.4
ibraheem-opentensor Jul 25, 2024
cb6abfb
Merge pull request #2159 from backend-developers-ltd/fix_streaming_sy…
ibraheem-opentensor Jul 25, 2024
5acdd15
Merge pull request #2170 from opentensor/update/backmerge-master-stag…
ibraheem-opentensor Jul 26, 2024
37c9dbc
Merge branch 'staging' into fix/streaming-synapse
ibraheem-opentensor Jul 26, 2024
dd12652
ci: auto assigns cortex to opened PRs
gus-opentensor Jul 26, 2024
8fe1e73
Merge pull request #2184 from opentensor/ci/gus/auto-assign-cortex
gus-opentensor Jul 26, 2024
5353b3f
no op
thewhaleking Jul 26, 2024
9e87454
tests/e2e_tests/utils.py: logging and epoch logic fix
Jul 23, 2024
f38473b
e2e_tests/multistep/test_axon.py: replace magic constant 1 by netuid
Jul 24, 2024
ad46a5e
e2e_tests/multistep/test_dendrite.py: replace magic constant 1 by netuid
Jul 24, 2024
e352389
e2e_tests/multistep/test_emissions.py: replace magic constant 1 by ne…
Jul 24, 2024
4db0205
e2e_tests/multistep/test_incentive.py: replace magic constant 1 by ne…
Jul 24, 2024
b40165e
e2e_tests: improvements
Jul 24, 2024
f0c7f64
replaced bittensor.btlogging.error with bittensor.logging.error as bi…
thewhaleking Jul 27, 2024
0ba7f48
First terminates the worker process before joining.
thewhaleking Jul 27, 2024
9a2495f
Merge branch 'staging' into fix/multiprocessing-pow
thewhaleking Jul 27, 2024
ee61ca6
Fixes mock of correct object.
thewhaleking Jul 28, 2024
e8d1e69
Ruff.
thewhaleking Jul 28, 2024
7895c02
Merge pull request #2168 from coldint/feature/mvds00/fix-for-broken-c…
thewhaleking Jul 28, 2024
f07bcfd
Merge branch 'staging' into fix/multiprocessing-pow
roman-opentensor Jul 29, 2024
a25b879
Fix typo
thewhaleking Jul 29, 2024
afd4c81
ci: update reviews
gus-opentensor Jul 29, 2024
36b9b0c
Merge pull request #2186 from opentensor/fix/multiprocessing-pow
thewhaleking Jul 29, 2024
dfd173e
Merge branch 'staging' into ci/gus/auto-assign-cortex-tweaks
gus-opentensor Jul 29, 2024
20bb968
Merge pull request #2189 from opentensor/ci/gus/auto-assign-cortex-tw…
gus-opentensor Jul 29, 2024
e218e4c
Init commit
ibraheem-opentensor Jul 30, 2024
905c099
2nd commit: enhancing e2e suite
ibraheem-opentensor Jul 30, 2024
49a14d7
Reverts conftest env
ibraheem-opentensor Jul 30, 2024
94db8fd
Clean up
ibraheem-opentensor Jul 30, 2024
0d7e466
Fix ruff
ibraheem-opentensor Jul 30, 2024
827f757
Merge branch 'staging' into fix/streaming-synapse
ibraheem-opentensor Jul 30, 2024
ea6206f
Skips emissions, fixes senate vote assertion, fixes exec call in swap…
ibraheem-opentensor Jul 30, 2024
73ff4f1
Adds check for participation of a neuron
ibraheem-opentensor Jul 31, 2024
a5aec67
Merge branch 'staging' into fix/dependency/setuptools
ibraheem-opentensor Aug 1, 2024
7b0b059
Adds updated type in timeouts dendrite
ibraheem-opentensor Aug 1, 2024
41b60b2
Merge pull request #2196 from opentensor/fix/abe/aiohttp-timeout-type
ibraheem-opentensor Aug 1, 2024
5dbbbb1
Merge branch 'staging' into fix/dependency/setuptools
ibraheem-opentensor Aug 1, 2024
16ab539
Merge pull request #2150 from opentensor/fix/dependency/setuptools
ibraheem-opentensor Aug 1, 2024
49fa1cf
Merge branch 'staging' into fix/nominate-participating-msg
ibraheem-opentensor Aug 1, 2024
26966cd
Bump black from 23.7.0 to 24.3.0 in /requirements
dependabot[bot] Aug 1, 2024
1933c3b
Merge branch 'staging' into dependabot/pip/requirements/black-24.3.0
ibraheem-opentensor Aug 1, 2024
131d1d5
Merge pull request #2197 from opentensor/dependabot/pip/requirements/…
ibraheem-opentensor Aug 2, 2024
d72fb80
btlogging/loggingmachine.py: Fix bw compat API.
Jul 21, 2024
696ece1
btlogging/loggingmachine.py: Improve bw compat API.
Jul 21, 2024
fda1dbd
Add unit test for logging output
Jul 22, 2024
04ff4ac
test: subnet list e2e
gus-opentensor Aug 2, 2024
2fbb780
Merge branch 'staging' into fix/streaming-synapse
thewhaleking Aug 2, 2024
50b11cc
Merge pull request #2155 from coldint/PRs001
thewhaleking Aug 2, 2024
18cc56d
Merge branch 'staging' into fix/nominate-participating-msg
ibraheem-opentensor Aug 2, 2024
99bbdb4
Ensures that each element of _concat_msg is a string
thewhaleking Aug 2, 2024
3a269ea
Merge pull request #2193 from opentensor/fix/nominate-participating-msg
ibraheem-opentensor Aug 2, 2024
9f6a36a
Merge branch 'staging' into test/gus/subnet-list-cmd-e2e
gus-opentensor Aug 5, 2024
dd1f84e
Merge branch 'staging' into fix/thewhaleking/ensure-msg-is-str
thewhaleking Aug 5, 2024
26de88c
merge staging into child_hotkeys
opendansor Aug 5, 2024
38e55a5
updates to use local_chain fixture
gus-opentensor Aug 6, 2024
8e2fe29
fixes test
gus-opentensor Aug 6, 2024
0c4032e
Merge pull request #2198 from opentensor/test/gus/subnet-list-cmd-e2e
gus-opentensor Aug 6, 2024
8d9602e
Merge branch 'staging' into fix/streaming-synapse
ibraheem-opentensor Aug 6, 2024
453cd94
test: adds wallet list command e2e test
gus-opentensor Aug 7, 2024
cbc8105
rm local_chain
gus-opentensor Aug 7, 2024
69c63ef
Merge branch 'staging' into fix/thewhaleking/ensure-msg-is-str
ibraheem-opentensor Aug 7, 2024
5b20f93
Merge pull request #2200 from opentensor/fix/thewhaleking/ensure-msg-…
ibraheem-opentensor Aug 7, 2024
58026f4
Merge branch 'staging' into fix/streaming-synapse
ibraheem-opentensor Aug 7, 2024
bf008bd
update path
gus-opentensor Aug 7, 2024
ad9ce91
Fixes tests depending on explicit line numbers
ibraheem-opentensor Aug 7, 2024
f9677da
Merge pull request #2211 from opentensor/tests/fixes-e2e-after-new-bi…
ibraheem-opentensor Aug 7, 2024
45bc4ea
Merge branch 'staging' into fix/streaming-synapse
ibraheem-opentensor Aug 7, 2024
40d453e
Merge pull request #2183 from opentensor/fix/streaming-synapse
ibraheem-opentensor Aug 7, 2024
aa4d7d5
Merge branch 'staging' into test/gus/list-cmd-e2e
gus-opentensor Aug 7, 2024
23b3847
Merge branch 'staging' into fix/abe/enhancing-e2e-tests
ibraheem-opentensor Aug 7, 2024
bd943fa
Fixes ruff
ibraheem-opentensor Aug 7, 2024
c4904eb
Adds workflow for multiple bittensor version tests
ibraheem-opentensor Aug 7, 2024
671406d
Merge branch 'staging' into feat/tests/multiple-bittensor-versions
ibraheem-opentensor Aug 7, 2024
20ef58f
Merge pull request #2212 from opentensor/feat/tests/multiple-bittenso…
ibraheem-opentensor Aug 7, 2024
2aa8ca3
Init: changes name
ibraheem-opentensor Aug 7, 2024
df81f8e
Changes name
ibraheem-opentensor Aug 7, 2024
85a3cf0
Merge pull request #2213 from opentensor/tests/e2e-workflow-multiple-…
ibraheem-opentensor Aug 7, 2024
c1a5d75
Merge branch 'staging' into fix/abe/enhancing-e2e-tests
ibraheem-opentensor Aug 7, 2024
48ac4b3
Bumps ansible and certifi based on security vulnerabilities
ibraheem-opentensor Aug 7, 2024
b2a91d8
Fixes version number
ibraheem-opentensor Aug 7, 2024
26d20cf
Merge pull request #2192 from opentensor/fix/abe/enhancing-e2e-tests
ibraheem-opentensor Aug 7, 2024
203a654
Merge branch 'staging' into fix/security-vulnerability-ansible-certifi
ibraheem-opentensor Aug 7, 2024
bc66132
Merge pull request #2214 from opentensor/fix/security-vulnerability-a…
ibraheem-opentensor Aug 8, 2024
15861c8
Merge branch 'staging' into test/gus/list-cmd-e2e
gus-opentensor Aug 8, 2024
07d5596
Merge pull request #2207 from opentensor/test/gus/list-cmd-e2e
gus-opentensor Aug 8, 2024
f416bf1
fix Synapse performance regression
mjurbanski-reef Jul 23, 2024
8c6909c
Merge pull request #2161 from backend-developers-ltd/fix_to_headers_s…
gus-opentensor Aug 8, 2024
04bbe9a
Update child hotkeys with new subtensor calls and remove ChildInfo ob…
opendansor Aug 8, 2024
dffb080
ruff
opendansor Aug 9, 2024
c7a95af
Merge branch 'staging' into feature/opendansor/child_hotkeys
opendansor Aug 9, 2024
a18fcd5
update
opendansor Aug 9, 2024
df6564b
update
opendansor Aug 9, 2024
432b503
ruff
opendansor Aug 9, 2024
36c42a0
mypy error
opendansor Aug 9, 2024
98d0af6
Merge pull request #2071 from opentensor/feature/opendansor/child_hot…
opendansor Aug 9, 2024
3d759e9
Improve child hotkeys to not double prompt and display table in appro…
opendansor Aug 13, 2024
c97a777
Merge branch 'staging' into feature/opendansor/improve_child_hotkeys
opendansor Aug 13, 2024
54214e1
lint
opendansor Aug 13, 2024
b29dc57
# Add documentation for retrieve_children and render_table methods
opendansor Aug 13, 2024
028ef8b
Merge pull request #2225 from opentensor/feature/opendansor/improve_c…
opendansor Aug 13, 2024
668209d
Refactor normalization to use floor function and handle excess.
opendansor Aug 13, 2024
20d942c
Merge branch 'staging' into feature/opendansor/improve_child_hotkeys
opendansor Aug 13, 2024
a28963d
Merge pull request #2229 from opentensor/feature/opendansor/improve_c…
opendansor Aug 13, 2024
c58b873
Modifies conftest to properly wait or exit building the chain
ibraheem-opentensor Aug 15, 2024
7737871
Merge pull request #2238 from opentensor/tests/fix-chain-compilation-…
ibraheem-opentensor Aug 16, 2024
f1477d5
feat: return error message instead raising exception
gus-opentensor Aug 16, 2024
91428ed
Update Child Hotkey commands
opendansor Aug 16, 2024
01646a7
Lint
opendansor Aug 16, 2024
558e56b
Add parent hotkey flag
opendansor Aug 16, 2024
782601b
Add table back
opendansor Aug 16, 2024
f9e29b5
Merge pull request #2245 from opentensor/feat/opendansor/chk_refactor
opendansor Aug 16, 2024
cb41c5c
Merge branch 'staging' into feat/gus/update-err-msg-pw
gus-opentensor Aug 17, 2024
6dbc1f1
Merge pull request #2244 from opentensor/feat/gus/update-err-msg-pw
gus-opentensor Aug 17, 2024
d07ee71
Child Hotkey refactor
opendansor Aug 20, 2024
a1be730
Merge branch 'staging' into chore/backmerge-master-7.3.1
ibraheem-opentensor Aug 20, 2024
b3c77c2
Merge pull request #2254 from opentensor/chore/backmerge-master-7.3.1
ibraheem-opentensor Aug 20, 2024
0b28d4b
Bumps to 7.4.0
ibraheem-opentensor Aug 20, 2024
71a62a5
Child Hotkey refactor
opendansor Aug 20, 2024
65d3e2e
Child Hotkey refactor
opendansor Aug 20, 2024
d082563
Child take
opendansor Aug 21, 2024
da75663
Child Hotkey refactor
opendansor Aug 23, 2024
9839740
Child Hotkey refactor
opendansor Aug 23, 2024
897dc5d
Child Hotkey refactor
opendansor Aug 23, 2024
f8531e2
Child Hotkey refactor
opendansor Aug 26, 2024
95a124a
Child Hotkey refactor
opendansor Aug 26, 2024
17035e0
Child Hotkey refactor - fix tests
opendansor Aug 26, 2024
0e0d0d5
Update localnet entrypoint port (#2268)
garrett-opentensor Aug 26, 2024
f735b5e
Child Hotkey refactor - fix tests
opendansor Aug 26, 2024
1911056
Child Hotkey refactor - fix tests
opendansor Aug 26, 2024
204d8f5
Child Hotkey refactor - hotkey or ss58
opendansor Aug 27, 2024
fac95af
Modify table, no prompt, other touch ups
opendansor Aug 27, 2024
0d73eaa
remove HK check
opendansor Aug 27, 2024
2da50a1
Update
opendansor Aug 27, 2024
1184c30
Merge branch 'staging' into feat/opendansor/chk
opendansor Aug 27, 2024
b8a0fd8
minor update
opendansor Aug 27, 2024
e0dfac8
ruff
opendansor Aug 27, 2024
658cbb8
ruff
opendansor Aug 27, 2024
e29f2c3
ruff
opendansor Aug 27, 2024
06e16bb
--all flag, other small changes
opendansor Aug 28, 2024
f643c7b
ruff
opendansor Aug 28, 2024
7903967
add --yes
opendansor Aug 28, 2024
a41ea54
mypy
opendansor Aug 28, 2024
c12a617
ruff
opendansor Aug 28, 2024
4f70ce4
fix network test
opendansor Aug 28, 2024
7ee01fd
final touches
opendansor Aug 28, 2024
cf1d05f
Merge pull request #2251 from opentensor/feat/opendansor/chk
opendansor Aug 28, 2024
c5ddded
Changes entrypoint to 9944
ibraheem-opentensor Aug 28, 2024
c027632
Merge pull request #2272 from opentensor/release/merge-staging-7.4.0
ibraheem-opentensor Aug 28, 2024
534951a
CHK Test
opendansor Aug 29, 2024
bdc8ba7
Merge branch 'staging' into feat/opendansor/chk
opendansor Aug 29, 2024
929538c
Merge pull request #2273 from opentensor/feat/opendansor/chk
opendansor Aug 29, 2024
cb49569
Merge pull request #2274 from opentensor/staging
opendansor Aug 29, 2024
e364e48
Updates changelog for 7.4.0
ibraheem-opentensor Aug 29, 2024
c9b3b83
Child Hot Keys Netuid (#2277)
opendansor Aug 29, 2024
6a060bf
Don't use `astype` for torch.Tensor (#2242)
thewhaleking Aug 30, 2024
bbe9f92
Merge branch 'master' into release/7.4.0
ibraheem-opentensor Sep 4, 2024
55d01a8
Merge pull request #2280 from opentensor/feat/roman/add-subtensor-rec…
roman-opentensor Sep 3, 2024
166481f
Merge pull request #2285 from opentensor/update/release-7.4.0-reconne…
ibraheem-opentensor Sep 4, 2024
1c08a9d
removed exit sys call for ConnectionRefusedError in _get_substrate (#…
garrett-opentensor Sep 6, 2024
fa47b74
Reverts logging enhancement 7.4.0
ibraheem-opentensor Sep 9, 2024
b7252cb
rollback for loggingmachine.py
roman-opentensor Sep 9, 2024
1785615
add logging type to the logging machine class
roman-opentensor Sep 9, 2024
eb10bc8
Merge pull request #2294 from opentensor/fix/revert-logging-7.4
ibraheem-opentensor Sep 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .github/auto_assign.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
addReviewers: true

# A list of team slugs to add as assignees
reviewers:
- opentensor/cortex

numberOfReviewers: 0
15 changes: 15 additions & 0 deletions .github/workflows/auto-assign.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Auto Assign Cortex to Pull Requests

on:
pull_request:
types: [opened, reopened]

jobs:
auto-assign:
runs-on: ubuntu-latest
steps:
- name: Auto-assign Cortex Team
uses: kentaro-m/[email protected]
with:
repo-token: "${{ secrets.GITHUB_TOKEN }}"
configuration-path: .github/auto_assign.yml
1 change: 1 addition & 0 deletions .github/workflows/e2e-subtensor-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@ jobs:
run:
needs: find-tests
runs-on: SubtensorCI
timeout-minutes: 45
strategy:
fail-fast: false # Allow other matrix jobs to run even if this job fails
max-parallel: 8 # Set the maximum number of parallel jobs
Expand Down
78 changes: 78 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,83 @@
# Changelog

## 7.4.0 /2024-08-29

## What's Changed
* [Fix] Allow unstake below network min by @camfairchild in https://github.com/opentensor/bittensor/pull/2016
* Tests/e2e tests staging by @open-junius in https://github.com/opentensor/bittensor/pull/1943
* Chore: Backmerge 7.2 by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2020
* Fix broken tests and Enforce BTCLI usage by @opendansor in https://github.com/opentensor/bittensor/pull/2027
* Add time delay to faucet by @opendansor in https://github.com/opentensor/bittensor/pull/2030
* Skip faucet test by @opendansor in https://github.com/opentensor/bittensor/pull/2031
* Adds normalization for alpha hyperparams by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2035
* Revert info logging in processing response by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2043
* Pin numpy version to 1.26.4 in prod.txt by @rajkaramchedu in https://github.com/opentensor/bittensor/pull/2045
* Test hot key Swap by @opendansor in https://github.com/opentensor/bittensor/pull/2044
* Do not run Circle-CI on drafts by @thewhaleking in https://github.com/opentensor/bittensor/pull/1959
* Enhancement: Detailed nonce information in-case of failures by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2050
* fix bittensor not installing under Python 3.13 by @mjurbanski-reef in https://github.com/opentensor/bittensor/pull/2053
* Enable Faucet Test by @opendansor in https://github.com/opentensor/bittensor/pull/2056
* Add back BT_SUBTENSOR_CHAIN_ENDPOINT env variable by @bradleytf in https://github.com/opentensor/bittensor/pull/2034
* Fix: Logging configs not being set by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2065
* Feature/gus/liquid alpha params by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2012
* Test Emissions E2E by @opendansor in https://github.com/opentensor/bittensor/pull/2036
* Prevent e2e draft by @opendansor in https://github.com/opentensor/bittensor/pull/2072
* Fix e2e to only run when PR is ready for review by @opendansor in https://github.com/opentensor/bittensor/pull/2077
* Fix Faucet and fastblocks interaction by @opendansor in https://github.com/opentensor/bittensor/pull/2083
* Float normalization for child hotkeys by @opendansor in https://github.com/opentensor/bittensor/pull/2093
* Fix e2e test hanging by @open-junius in https://github.com/opentensor/bittensor/pull/2118
* Fixes leaked semaphores by @thewhaleking in https://github.com/opentensor/bittensor/pull/2125
* Backmerge master -> staging by @roman-opentensor in https://github.com/opentensor/bittensor/pull/2136
* fix: coldkeypub usage instead of coldkey for arbitration_stats by @Rapiiidooo in https://github.com/opentensor/bittensor/pull/2132
* Removes extra no_prompts in commands by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2140
* Adds timeout for e2e tests by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2141
* fix: updates test_axon verify body async tests by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2142
* test: fix mocksubtensor query previous blocks by @timabilov in https://github.com/opentensor/bittensor/pull/2139
* Adds E2E for Metagraph command by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2143
* feat: Enhance dendrite error messaging by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2117
* Adds E2E Tests for wallet creation commands by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2145
* [Ledger Integration] [Feature] bump pysub to 1.7.9+ by @camfairchild in https://github.com/opentensor/bittensor/pull/2156
* Ruff complains about an extra line by @roman-opentensor in https://github.com/opentensor/bittensor/pull/2158
* support Wallet names with hyphens when passing password through ENV vars by @mjurbanski-reef in https://github.com/opentensor/bittensor/pull/1949
* Fix naming convention of swap hotkey test by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2162
* Adds E2E test for wallet regenerations + fixes input bug for regen hotkey by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2149
* Backmerge Master -> Staging (7.4) by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2170
* ci: auto assigns cortex to opened PRs by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2184
* CI/E2E test improvements by @mvds00 in https://github.com/opentensor/bittensor/pull/2168
* Fix multiprocessing POW errors and No Torch logging errors by @thewhaleking in https://github.com/opentensor/bittensor/pull/2186
* ci: update reviewers by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2189
* Adds updated type in timeouts dendrite by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2196
* Bumps setuptools ~=70.0.0 by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2150
* Bump black from 23.7.0 to 24.3.0 in /requirements by @dependabot in https://github.com/opentensor/bittensor/pull/2197
* btlogging/loggingmachine.py: Fix bw compat API. by @mvds00 in https://github.com/opentensor/bittensor/pull/2155
* Check for participation before nomination call by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2193
* test: subnet list e2e by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2198
* ensure msg is str in _concat_msg by @thewhaleking in https://github.com/opentensor/bittensor/pull/2200
* Fixes tests depending on explicit line numbers by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2211
* Merge streaming fix to staging by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2183
* Multiple bittensor versions e2e workflow by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2212
* Changes name of workflow file by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2213
* Enhances e2e tests to contain assertions & logging by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2192
* Security fix: Bumps ansible and certifi by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2214
* Wallet List Command e2e test by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2207
* fix Synapse base performance (more than 10x speed up) by @mjurbanski-reef in https://github.com/opentensor/bittensor/pull/2161
* Child Hotkeys by @opendansor in https://github.com/opentensor/bittensor/pull/2071
* Improve child hotkeys QOL by @opendansor in https://github.com/opentensor/bittensor/pull/2225
* Child hotkeys handle excess normalization by @opendansor in https://github.com/opentensor/bittensor/pull/2229
* Fixes chain compilation timeouts by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2238
* Update Child Hotkey commands by @opendansor in https://github.com/opentensor/bittensor/pull/2245
* feat: return error message instead of raising exception by @gus-opentensor in https://github.com/opentensor/bittensor/pull/2244
* Backmerge master to staging (7.3.1) by @ibraheem-opentensor in https://github.com/opentensor/bittensor/pull/2254

## New Contributors
* @bradleytf made their first contribution in https://github.com/opentensor/bittensor/pull/2034
* @Rapiiidooo made their first contribution in https://github.com/opentensor/bittensor/pull/2132
* @timabilov made their first contribution in https://github.com/opentensor/bittensor/pull/2139
* @mvds00 made their first contribution in https://github.com/opentensor/bittensor/pull/2168
* @dependabot made their first contribution in https://github.com/opentensor/bittensor/pull/2197

**Full Changelog**: https://github.com/opentensor/bittensor/compare/v7.3.1...v7.4.0

## 7.3.1 / 2024-08-19

## What's Changed
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
7.3.1
7.4.0
25 changes: 9 additions & 16 deletions bittensor/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@


# Bittensor code and protocol version.
__version__ = "7.3.1"
__version__ = "7.4.0"

_version_split = __version__.split(".")
__version_info__ = tuple(int(part) for part in _version_split)
Expand Down Expand Up @@ -125,7 +125,14 @@ def debug(on: bool = True):
# Needs to use wss://
__bellagene_entrypoint__ = "wss://parachain.opentensor.ai:443"

__local_entrypoint__ = "ws://127.0.0.1:9944"

if (
BT_SUBTENSOR_CHAIN_ENDPOINT := os.getenv("BT_SUBTENSOR_CHAIN_ENDPOINT")
) is not None:
__local_entrypoint__ = BT_SUBTENSOR_CHAIN_ENDPOINT
else:
__local_entrypoint__ = "ws://127.0.0.1:9944"


__tao_symbol__: str = chr(0x03C4)

Expand Down Expand Up @@ -200,19 +207,6 @@ def debug(on: bool = True):
},
},
},
"ValidatorIPRuntimeApi": {
"methods": {
"get_associated_validator_ip_info_for_subnet": {
"params": [
{
"name": "netuid",
"type": "u16",
},
],
"type": "Vec<u8>",
},
},
},
"SubnetInfoRuntimeApi": {
"methods": {
"get_subnet_hyperparams": {
Expand Down Expand Up @@ -318,7 +312,6 @@ def debug(on: bool = True):
strtobool,
strtobool_with_default,
get_explorer_root_url_by_network_from_map,
get_explorer_root_url_by_network_from_map,
get_explorer_url_for_network,
ss58_address_to_bytes,
U16_NORMALIZED_FLOAT,
Expand Down
127 changes: 92 additions & 35 deletions bittensor/axon.py
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,12 @@
import traceback
import typing
import uuid
import warnings
from inspect import signature, Signature, Parameter
from typing import List, Optional, Tuple, Callable, Any, Dict, Awaitable

import uvicorn
from fastapi import FastAPI, APIRouter, Depends
from fastapi import APIRouter, Depends, FastAPI
from fastapi.responses import JSONResponse
from fastapi.routing import serialize_response
from starlette.middleware.base import BaseHTTPMiddleware, RequestResponseEndpoint
Expand All @@ -44,18 +45,19 @@
from substrateinterface import Keypair

import bittensor
from bittensor.utils.axon_utils import allowed_nonce_window_ns, calculate_diff_seconds
from bittensor.constants import V_7_2_0
from bittensor.errors import (
BlacklistedException,
InvalidRequestNameError,
SynapseDendriteNoneException,
SynapseParsingError,
UnknownSynapseError,
NotVerifiedException,
BlacklistedException,
PriorityException,
PostProcessException,
PriorityException,
SynapseDendriteNoneException,
SynapseException,
SynapseParsingError,
UnknownSynapseError,
)
from bittensor.constants import ALLOWED_DELTA, V_7_2_0
from bittensor.threadpool import PriorityThreadPoolExecutor
from bittensor.utils import networking

Expand Down Expand Up @@ -484,17 +486,50 @@ def verify_custom(synapse: MyCustomSynapse):

async def endpoint(*args, **kwargs):
start_time = time.time()
response_synapse = forward_fn(*args, **kwargs)
if isinstance(response_synapse, Awaitable):
response_synapse = await response_synapse
return await self.middleware_cls.synapse_to_response(
synapse=response_synapse, start_time=start_time
)
response = forward_fn(*args, **kwargs)
if isinstance(response, Awaitable):
response = await response
if isinstance(response, bittensor.Synapse):
return await self.middleware_cls.synapse_to_response(
synapse=response, start_time=start_time
)
else:
response_synapse = getattr(response, "synapse", None)
if response_synapse is None:
warnings.warn(
"The response synapse is None. The input synapse will be used as the response synapse. "
"Reliance on forward_fn modifying input synapse as a side-effects is deprecated. "
"Explicitly set `synapse` on response object instead.",
DeprecationWarning,
)
# Replace with `return response` in next major version
response_synapse = args[0]

return await self.middleware_cls.synapse_to_response(
synapse=response_synapse,
start_time=start_time,
response_override=response,
)

return_annotation = forward_sig.return_annotation

if isinstance(return_annotation, type) and issubclass(
return_annotation, bittensor.Synapse
):
if issubclass(
return_annotation,
bittensor.StreamingSynapse,
):
warnings.warn(
"The forward_fn return annotation is a subclass of bittensor.StreamingSynapse. "
"Most likely the correct return annotation would be BTStreamingResponse."
)
else:
return_annotation = JSONResponse

# replace the endpoint signature, but set return annotation to JSONResponse
endpoint.__signature__ = Signature( # type: ignore
parameters=list(forward_sig.parameters.values()),
return_annotation=JSONResponse,
return_annotation=return_annotation,
)

# Add the endpoint to the router, making it available on both GET and POST methods
Expand Down Expand Up @@ -847,6 +882,8 @@ async def default_verify(self, synapse: bittensor.Synapse):
The method checks for increasing nonce values, which is a vital
step in preventing replay attacks. A replay attack involves an adversary reusing or
delaying the transmission of a valid data transmission to deceive the receiver.
The first time a nonce is seen, it is checked for freshness by ensuring it is
within an acceptable delta time range.
Authenticity and Integrity Checks
By verifying that the message's digital signature matches
Expand Down Expand Up @@ -893,33 +930,43 @@ async def default_verify(self, synapse: bittensor.Synapse):
if synapse.dendrite.nonce is None:
raise Exception("Missing Nonce")

# If we don't have a nonce stored, ensure that the nonce falls within
# a reasonable delta.

# Newer nonce structure post v7.2
if (
synapse.dendrite.version is not None
and synapse.dendrite.version >= V_7_2_0
):
# If we don't have a nonce stored, ensure that the nonce falls within
# a reasonable delta.
current_time_ns = time.time_ns()
allowed_window_ns = allowed_nonce_window_ns(
current_time_ns, synapse.timeout
)

if (
self.nonces.get(endpoint_key) is None
and synapse.dendrite.nonce
<= time.time_ns() - ALLOWED_DELTA - (synapse.timeout or 0)
and synapse.dendrite.nonce <= allowed_window_ns
):
raise Exception("Nonce is too old")
diff_seconds, allowed_delta_seconds = calculate_diff_seconds(
current_time_ns, synapse.timeout, synapse.dendrite.nonce
)
raise Exception(
f"Nonce is too old: acceptable delta is {allowed_delta_seconds:.2f} seconds but request was {diff_seconds:.2f} seconds old"
)

# If a nonce is stored, ensure the new nonce
# is greater than the previous nonce
if (
self.nonces.get(endpoint_key) is not None
and synapse.dendrite.nonce <= self.nonces[endpoint_key]
):
raise Exception("Nonce is too old")
raise Exception("Nonce is too old, a newer one was last processed")
# Older nonce structure pre v7.2
else:
if (
endpoint_key in self.nonces.keys()
and self.nonces[endpoint_key] is not None
self.nonces.get(endpoint_key) is not None
and synapse.dendrite.nonce <= self.nonces[endpoint_key]
):
raise Exception("Nonce is too small")
raise Exception("Nonce is too old, a newer one was last processed")

if not keypair.verify(message, synapse.dendrite.signature):
raise Exception(
Expand Down Expand Up @@ -952,7 +999,7 @@ def log_and_handle_error(
exception: Exception,
status_code: typing.Optional[int] = None,
start_time: typing.Optional[float] = None,
):
) -> bittensor.Synapse:
if isinstance(exception, SynapseException):
synapse = exception.synapse or synapse

Expand Down Expand Up @@ -1420,14 +1467,21 @@ async def run(

@classmethod
async def synapse_to_response(
cls, synapse: bittensor.Synapse, start_time: float
) -> JSONResponse:
cls,
synapse: bittensor.Synapse,
start_time: float,
*,
response_override: Optional[Response] = None,
) -> Response:
"""
Converts the Synapse object into a JSON response with HTTP headers.
Args:
synapse (bittensor.Synapse): The Synapse object representing the request.
start_time (float): The timestamp when the request processing started.
synapse: The Synapse object representing the request.
start_time: The timestamp when the request processing started.
response_override:
Instead of serializing the synapse, mutate the provided response object.
This is only really useful for StreamingSynapse responses.
Returns:
Response: The final HTTP response, with updated headers, ready to be sent back to the client.
Expand All @@ -1446,11 +1500,14 @@ async def synapse_to_response(

synapse.axon.process_time = time.time() - start_time

serialized_synapse = await serialize_response(response_content=synapse)
response = JSONResponse(
status_code=synapse.axon.status_code,
content=serialized_synapse,
)
if response_override:
response = response_override
else:
serialized_synapse = await serialize_response(response_content=synapse)
response = JSONResponse(
status_code=synapse.axon.status_code,
content=serialized_synapse,
)

try:
updated_headers = synapse.to_headers()
Expand Down
Loading
Loading