Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
191 commits
Select commit Hold shift + click to select a range
be9f253
add `migration.md`
Aug 27, 2025
dd285af
add `migration.md`
Aug 27, 2025
56a7bda
Merge pull request #3030 from opentensor/feat/roman/initial
basfroman Aug 27, 2025
49547ed
add `test_axon_async`
Aug 27, 2025
2ad1613
improve `tests/e2e_tests/test_commit_reveal.py`
Aug 27, 2025
546ccf4
add async version of `tests/e2e_tests/utils/chain_interactions.py` fu…
Aug 27, 2025
f19e6ba
add `raise_error=True` to `_do_commit_weights`. `subtensor.commit_wei…
Aug 28, 2025
c856df7
add async tests in `tests/e2e_tests/test_commit_weights.py`
Aug 28, 2025
8aedf60
improve `tests/e2e_tests/test_commitment.py`
Aug 28, 2025
e75fa81
update `SubtensorApi`
Aug 28, 2025
b85d6f8
add async functions to `chain_interactions.py`
Aug 28, 2025
97ad3d8
add async tests to `tests/e2e_tests/test_delegate.py`
Aug 28, 2025
ec3da56
add async tests to `tests/e2e_tests/test_dendrite.py`
Aug 28, 2025
c6d0db2
Update `SubtensorApi`
Aug 28, 2025
e6e83d8
add async e2e tests in `tests/e2e_tests/test_hotkeys.py`
Aug 28, 2025
fdbaeb0
Merge branch 'staging' into test/roman/add-async-e2e-tests
Aug 29, 2025
7be45bd
Merge branch 'staging' into test/roman/add-async-e2e-tests
Aug 29, 2025
4031a22
improve `SubtensorApi`
Aug 29, 2025
991a01a
`legacy_methods=False` for all tests
Aug 29, 2025
f99c372
apply related changes to test utils
Aug 29, 2025
12d6540
apply related changes to `chain_interactions.py`
Aug 29, 2025
6a0a5ab
apply SubtensorApi changes to updated tess
Aug 29, 2025
3caaf29
oops
Aug 29, 2025
eb4800d
async test for `tests/e2e_tests/test_incentive.py`
Aug 29, 2025
b84cd2c
ruff
Aug 29, 2025
09ff34f
async e2e test for `tests/e2e_tests/test_incentive.py`
Aug 29, 2025
1082f6d
improve `chain_interactions.py`
Aug 29, 2025
e012d7b
async test for `tests/e2e_tests/test_liquid_alpha.py`
Aug 29, 2025
5c6a4bd
ruff
Aug 29, 2025
5bb4d52
logging
Aug 29, 2025
adc3065
async test for `tests/e2e_tests/test_liquidity.py`
Aug 29, 2025
f0e509d
async test for `tests/e2e_tests/test_metagraph.py`
Aug 29, 2025
c4bbca1
async test for `tests/e2e_tests/test_neuron_certificate.py`
Aug 29, 2025
0d356fc
async test for `tests/e2e_tests/test_reveal_commitments.py`
Aug 29, 2025
0959525
async test for `tests/e2e_tests/test_root_set_weights.py`
Aug 29, 2025
ac6fa82
async test for `tests/e2e_tests/test_set_subnet_identity_extrinsic.py`
Aug 29, 2025
411ec3a
async test for `tests/e2e_tests/test_set_weights.py`
Aug 29, 2025
5e5deaa
async test for `tests/e2e_tests/test_stake_fee.py`
Aug 29, 2025
887bd78
logging
Aug 29, 2025
9331b99
improve SubtensorApi
Aug 29, 2025
87ea711
async tests for `tests/e2e_tests/test_staking.py`
Aug 29, 2025
dba02e4
async tests for `tests/e2e_tests/test_subnets.py`
Aug 29, 2025
b58c58b
async tests for `tests/e2e_tests/test_subtensor_functions.py`
Aug 30, 2025
1c5988b
async tests for `tests/e2e_tests/test_transfer.py`
Aug 30, 2025
06b77c6
update `commit_weights_extrinsic` extrinsic and subtensor call with `…
Aug 30, 2025
bbd9d49
fix unit tests
Aug 30, 2025
39d8db9
remove testing py3.9 since GH actions matrix has a limit as 256 items
Aug 30, 2025
2f459c8
split job for a few ones with different python versions
Aug 30, 2025
2c1b812
try to add reusable workflow
Aug 30, 2025
c45d05c
indent fix
Aug 30, 2025
72847c5
remove secrets from reusable workflow
Aug 30, 2025
1de47ec
done back
Aug 30, 2025
7ab9c2f
names
Aug 30, 2025
4eb9a9b
names
Aug 30, 2025
43ee5d9
names
Aug 30, 2025
8da1331
names again
Aug 30, 2025
5e7d144
convert `async_subtensor` fixture to real async fixture
Aug 30, 2025
96f2968
testing update for main and reusable workflows
Aug 30, 2025
a4ff770
secret
Aug 30, 2025
fb1a4a7
run-e2e-3-9
Aug 30, 2025
575fa0d
run-e2e-3-9
Aug 30, 2025
ec8f4ab
remove needs from pull-docker-image (save time)
Aug 30, 2025
f8c7690
try
Aug 30, 2025
1e3082c
try
Aug 30, 2025
3df041e
matrix.label
Aug 30, 2025
976ebf7
multy matrix
Aug 30, 2025
602a176
multy matrix py
Aug 30, 2025
32a9109
avoid uv loop issue with python 3.9
Aug 30, 2025
3049701
remove commented code from workflow, rollback uv run
Aug 30, 2025
d3e1e01
try to handle loop issue
Aug 30, 2025
a1d15fc
pytest.ini update
Aug 30, 2025
55425f9
pytest.ini update + integration
Aug 30, 2025
3525eb8
pytest.ini
Aug 30, 2025
9f2e9d1
set raise_error=True for `reveal_weights`
Aug 30, 2025
91ca87c
unit test + pytest.ini
Aug 30, 2025
edf96e5
`functools.partial` + `asyncio.gather` breaks the loop for py3.9-11. …
Aug 30, 2025
879df0e
add powerful runner for child workflow
Aug 30, 2025
d9d1067
use both runners
Aug 30, 2025
c9172c3
nope
Aug 30, 2025
834e197
`asyncio.gather` causes ASI to return a `RuntimeError` when calling a…
Sep 2, 2025
41088c2
update tests
Sep 2, 2025
8e66f56
while we support python 3.9 then `asyncio.gather` will break group re…
Sep 2, 2025
3585428
remove py3.9 support
Sep 2, 2025
ea37fb5
bring back gather logic
Sep 2, 2025
88281e6
quotes
Sep 2, 2025
db473d4
Merge pull request #3039 from opentensor/test/roman/add-async-e2e-tests
basfroman Sep 2, 2025
77d6907
`._do_commit_reveal_v3` is included in the main code `.commit_reveal_…
Sep 2, 2025
89484f2
update tests
Sep 2, 2025
f6cb210
removed deprecated tests, fix another
Sep 2, 2025
3220e85
update migration.md
Sep 2, 2025
3e9361b
`._do_commit_weights` logic is included in the main code `.commit_wei…
Sep 2, 2025
8ef661b
add `get_function_name` function
Sep 2, 2025
ff4b3f7
`._do_reveal_weights` logic is included in the main code `.reveal_wei…
Sep 2, 2025
de56649
add test coverage for `bittensor.core.extrinsics.commit_weights` module
Sep 2, 2025
63fe175
`._do_set_weights` logic is included in the main code `.set_weights_e…
Sep 3, 2025
b398a3d
fix texts
Sep 3, 2025
1482fb8
fix `version_as_int` argument
Sep 3, 2025
a5ebb1b
fix `version_as_int` argument in tests
Sep 3, 2025
b61e2a5
`set_weights_extrinsic` moved to `bittensor/core/extrinsics/commit_we…
Sep 3, 2025
98b18f9
`set_weights_extrinsic` moved to `bittensor/core/extrinsics/commit_we…
Sep 3, 2025
52fab39
temporarily leave the success message `Successfully Set Weights and F…
Sep 3, 2025
b5ba201
indent fix
Sep 3, 2025
43b7f01
`_do_burned_register` logic is included in the main code `.burned_reg…
Sep 3, 2025
2ffe83b
order
Sep 3, 2025
a3a5680
`_do_pow_register` logic is included in the main code `.register_extr…
Sep 3, 2025
60fbc2e
`._do_set_root_weights` logic is included in the main code `.set_root…
Sep 3, 2025
06e1ad6
`._do_transfer` logic is included in the main code `.transfer_extrins…
Sep 3, 2025
883bb37
tests for `bittensor/core/extrinsics/transfer.py`
Sep 3, 2025
9b425da
fix `destination` parameter in tests
Sep 3, 2025
c4dbcc3
obsolete extrinsic `set_root_weights_extrinsic` removed. Also related…
Sep 3, 2025
d66e53e
Merge pull request #3042 from opentensor/feat/roman/extrinsics-part-1
basfroman Sep 3, 2025
871ac9e
`set_children_extrinsic` and `root_set_pending_childkey_cooldown_extr…
Sep 3, 2025
3547a93
`.commit_reveal_extrinsic` and `subtensor.set_weights` + tests
Sep 3, 2025
049810b
`wait_for_inclusion = True` and `wait_for_finalization = True` for `s…
Sep 3, 2025
07105bc
test
Sep 3, 2025
0ef19bf
`.add_liquidity_extrinsic` and `subtensor.add_liquidity`
Sep 3, 2025
f695bdf
`.modify_liquidity_extrinsic` and `subtensor.modify_liquidity` + `.re…
Sep 3, 2025
6993732
`.transfer_stake_extrinsic` and `subtensor.transfer_stake`
Sep 4, 2025
7005ada
`.swap_stake_extrinsic` and `subtensor.swap_stake`
Sep 4, 2025
e49d89d
`.move_stake_extrinsic` and `subtensor.move_stake` + renamed parameters
Sep 4, 2025
e546c49
`.burned_register_extrinsic` and `subtensor.burned_register`
Sep 4, 2025
bdbd1ba
fix `test_move_stake_*` e2e tests
Sep 4, 2025
97a677a
docstring refactoring
Sep 4, 2025
31cce62
`.register_subnet_extrinsic` and `subtensor.register_subnet`
Sep 4, 2025
22e0c0a
fix registration subnets in e2e tests
Sep 4, 2025
8b0ae89
fix registration subnets in e2e tests
Sep 4, 2025
f792c4e
`.register_extrinsic` and `subtensor.register`
Sep 4, 2025
de1607b
fix tests related with async register
Sep 4, 2025
3789e64
`.set_subnet_identity_extrinsic` and `subtensor.set_subnet_identity`
Sep 4, 2025
db123b6
update `subtensor.subnets.burned_register` call
Sep 4, 2025
db71ccd
oops, period=None
Sep 4, 2025
c6043fe
oops again - need to take a rest 😴
Sep 4, 2025
dcfd789
`.root_register_extrinsic`, `subtensor.burned_register` and `subtenso…
Sep 4, 2025
1596818
`.serve_extrinsic`, `.serve_axon_extrinsic` and `subtensor.serve_axon`
Sep 4, 2025
2083d88
change default values
Sep 4, 2025
3c04659
`.publish_metadata`, `subtensor.set_commitment` and `subtenor.set_rev…
Sep 4, 2025
a6f6aa0
`.add_stake_extrinsic`, `subtensor.add_stake` + `.add_stake_multiple_…
Sep 4, 2025
1cc391b
`.start_call_extrinsic`, `subtensor.start_call`
Sep 4, 2025
3820147
fix `test_dendrite`
Sep 4, 2025
162e30d
`.increase_take_extrinsic`, `.decrease_take_extrinsic` and `subtenor.…
Sep 4, 2025
ffb285a
Merge branch 'staging' into SDKv10
Sep 4, 2025
af272fa
Merge branch 'SDKv10' into feat/roman/extrinsics-part-2
Sep 4, 2025
6f17d02
no flaky behavior for `tests/e2e_tests/test_dendrite.py`
Sep 4, 2025
7626866
`.transfer_extrinsic` and `subtensor.transfer`
Sep 4, 2025
232a12c
`.unstake_extrinsic` and `subtensor.unstake` + changes + tests
Sep 4, 2025
3bc569e
`.unstake_all_extrinsic` and `subtensor.unstake_all` + tests
Sep 4, 2025
80d21a2
`.unstake_multiple_extrinsic` and `subtensor.unstake_multiple` + tests
Sep 4, 2025
1528bbc
`.unstake_multiple_extrinsic` and `subtensor.unstake_multiple` + tests
Sep 4, 2025
f1eb2d1
`.reveal_weights_extrinsic` and `subtensor.reveal_weights`
Sep 4, 2025
12c22b0
update migration.md
Sep 4, 2025
4098506
`.set_weights_extrinsic` and `subtensor.set_weights`
Sep 4, 2025
f3d6633
parameter `safe_staking: bool` renamed to `safe_unstaking: bool` for …
Sep 4, 2025
2a925bc
in `.unstake_extrinsic` and `subtensor.unstake` parameter `safe_staki…
Sep 4, 2025
f37c1ca
update migration.md
Sep 4, 2025
779717c
`test_dendrite*` no flaky
Sep 5, 2025
9c33939
Merge branch 'feat/roman/extrinsics-part-2' into feat/roman/extrinsic…
Sep 5, 2025
b8c8982
Merge pull request #3046 from opentensor/feat/roman/extrinsics-part-3
basfroman Sep 5, 2025
e22bf9b
test_dendrite
Sep 5, 2025
1c7678d
Changes in `.add_stake_extrinsic` and `subtensor.add_stake`: see migr…
Sep 5, 2025
e00cbdb
Changes in `.add_stake_multiple_extrinsic` and `subtensor.add_stake_m…
Sep 5, 2025
37f49e6
limit `max-parallel` to 16 * 4 (py versions in reusable workflow)
Sep 5, 2025
2afa67d
`amount: Optional[Balance] = None` in `move_stake_extrinsic` bbc of l…
Sep 5, 2025
70db449
improved `unstake_multiple_extrinsic` logic
Sep 5, 2025
2ff65ae
Merge branch 'staging' into SDKv10
Sep 5, 2025
150bb5f
Merge branch 'SDKv10' into feat/roman/extrinsics-part-2
Sep 5, 2025
d01b2a9
updated migration.md
Sep 5, 2025
f632786
Merge pull request #3045 from opentensor/feat/roman/extrinsics-part-2
basfroman Sep 5, 2025
169d7a0
improve `find-tests`
Sep 5, 2025
6b2614f
improve workflow for e2e tests
Sep 5, 2025
f326642
env.PY_VERSION + us setup
Sep 5, 2025
907aa2e
env.PY_VERSION + us setup
Sep 5, 2025
888c5ce
update
Sep 5, 2025
9c55c25
prepare-deps
Sep 5, 2025
b470c13
find-tests
Sep 5, 2025
8935c8c
uv run pytest
Sep 5, 2025
9a3a848
Install uv
Sep 5, 2025
5cd3b50
prepare-deps and find-tests in parallel
Sep 5, 2025
7968ef0
links
Sep 5, 2025
6d768bf
e2e-test <- prepare-deps
Sep 5, 2025
c67c222
e2e-test <- (prepare-deps, supported-versions)
Sep 5, 2025
523ace5
try more power
Sep 5, 2025
e3e5a55
try ignor GH cache warnings + back 32 parallel
Sep 5, 2025
16a085c
max-parallel: 16
Sep 5, 2025
a18d15e
Flake8 and Mypy - linters check
Sep 5, 2025
3716371
update mypy and unit tests workflows + use GH vars
Sep 5, 2025
5a3f942
Using shared cache and vars.SDK_SUPPORTED_PYTHON_VERSIONS to pass pyt…
Sep 5, 2025
3898f17
try 8 * 4 max-parallel
Sep 5, 2025
e11a7e0
16 * 4 max-parallel back
Sep 5, 2025
f7bc0e7
Merge pull request #3047 from opentensor/feat/roman/faster-workflow
basfroman Sep 5, 2025
a416725
Merge branch 'staging' into SDKv10
Sep 5, 2025
c17913d
WIP: runtime browser
Sep 7, 2025
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
80 changes: 80 additions & 0 deletions .github/workflows/_run-e2e-single.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
name: Run Single E2E Test with multiple Python versions

on:
workflow_call:
inputs:
nodeid:
required: true
type: string
image-name:
required: true
type: string

jobs:
run-e2e:
name: "${{ matrix.python-version }}"
runs-on: ubuntu-latest
timeout-minutes: 45

strategy:
fail-fast: false
matrix:
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}

steps:
- name: Check-out repository
uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: false

- name: Cache uv and venv
uses: actions/cache@v4
with:
path: |
~/.cache/uv
.venv
key: uv-${{ runner.os }}-py${{ matrix.python-version }}-${{ hashFiles('pyproject.toml') }}
restore-keys: uv-${{ runner.os }}-py${{ matrix.python-version }}-

- name: Install dependencies
run: uv sync --extra dev --dev

- name: Download Cached Docker Image
uses: actions/download-artifact@v4
with:
name: subtensor-localnet

- name: Load Docker Image
run: docker load -i subtensor-localnet.tar

- name: Run test with retry
env:
PY_VERSION: ${{ matrix.python-version }}
LOCALNET_IMAGE_NAME: ${{ inputs.image-name }}
run: |
for i in 1 2 3; do
echo "::group::🔁 Test attempt $i"
if uv run pytest "${{ inputs.nodeid }}" -s; then
echo "✅ Tests passed on attempt $i"
echo "::endgroup::"
exit 0
else
echo "❌ Tests failed on attempt $i"
echo "::endgroup::"
if [ "$i" -lt 3 ]; then
echo "Retrying..."
sleep 5
fi
fi

done
echo "Tests failed after 3 attempts"
exit 1
2 changes: 1 addition & 1 deletion .github/workflows/compatibility.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ jobs:

strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}

steps:
- uses: actions/checkout@v4
Expand Down
100 changes: 34 additions & 66 deletions .github/workflows/e2e-subtensor-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,6 @@ on:
required: false
default: ""

env:
CARGO_TERM_COLOR: always
VERBOSE: ${{ github.event.inputs.verbose }}

# job to run tests in parallel
jobs:
# Looking for e2e tests
Expand All @@ -36,20 +32,34 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
python-version: '3.10'

- name: Install deps for collection
run: |
python -m pip install --upgrade pip
pip install -e ".[dev]"
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: false
cache-dependency-glob: '**/pyproject.toml'
ignore-nothing-to-cache: true

- name: Cache uv and venv
uses: actions/cache@v4
with:
path: |
~/.cache/uv
.venv
key: uv-${{ runner.os }}-py3.10-${{ hashFiles('pyproject.toml') }}
restore-keys: uv-${{ runner.os }}-py3.10-

- name: Install dependencies (faster if cache hit)
run: uv sync --extra dev --dev

- name: Find test files
id: get-tests
shell: bash
run: |
set -euo pipefail
test_matrix=$(
pytest -q --collect-only tests/e2e_tests \
uv run pytest -q --collect-only tests/e2e_tests \
| sed -n '/^e2e_tests\//p' \
| sed 's|^|tests/|' \
| jq -R -s -c '
Expand All @@ -63,7 +73,6 @@ jobs:

# Pull docker image
pull-docker-image:
needs: find-tests
runs-on: ubuntu-latest
outputs:
image-name: ${{ steps.set-image.outputs.image }}
Expand Down Expand Up @@ -127,65 +136,24 @@ jobs:
with:
name: subtensor-localnet
path: subtensor-localnet.tar
compression-level: 0

# Job to run tests in parallel
run-fast-blocks-e2e-test:
name: "${{ matrix.test.label }} / Py ${{ matrix.python-version }}"
# Since GH Actions matrix has a limit of 256 jobs, we need to split the tests into multiple jobs with different
# Python versions. To reduce DRY we use reusable workflow.

e2e-test:
name: ${{ matrix.label }}
needs:
- find-tests
- pull-docker-image
runs-on: ubuntu-latest
timeout-minutes: 45
strategy:
fail-fast: false # Allow other matrix jobs to run even if this job fails
max-parallel: 64 # Set the maximum number of parallel jobs (same as we have cores in ubuntu-latest runner)
fail-fast: false
max-parallel: 16
matrix:
os:
- ubuntu-latest
test: ${{ fromJson(needs.find-tests.outputs.test-files) }}
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
steps:
- name: Check-out repository
uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install uv
uses: astral-sh/setup-uv@v4

- name: install dependencies
run: uv sync --extra dev --dev

- name: Download Cached Docker Image
uses: actions/download-artifact@v4
with:
name: subtensor-localnet

- name: Load Docker Image
run: docker load -i subtensor-localnet.tar

- name: Run tests with retry
env:
LOCALNET_IMAGE_NAME: ${{ needs.pull-docker-image.outputs.image-name }}
run: |
for i in 1 2 3; do
echo "::group::🔁 Test attempt $i"
if uv run pytest "${{ matrix.test.nodeid }}" -s; then
echo "✅ Tests passed on attempt $i"
echo "::endgroup::"
exit 0
else
echo "❌ Tests failed on attempt $i"
echo "::endgroup::"
if [ "$i" -lt 3 ]; then
echo "Retrying..."
sleep 5
fi
fi
done

echo "Tests failed after 3 attempts"
exit 1
include: ${{ fromJson(needs.find-tests.outputs.test-files) }}
uses: ./.github/workflows/_run-e2e-single.yaml
with:
nodeid: ${{ matrix.nodeid }}
image-name: ${{ needs.pull-docker-image.outputs.image-name }}
secrets: inherit
45 changes: 19 additions & 26 deletions .github/workflows/flake8-and-mypy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ jobs:
fail-fast: false
max-parallel: 5
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}

steps:
- name: Checkout repository
Expand All @@ -26,32 +26,25 @@ jobs:
with:
python-version: ${{ matrix.python-version }}

- name: Cache venv
id: cache
- name: Install uv
uses: astral-sh/setup-uv@v4
with:
enable-cache: false

- name: Cache uv and .venv
uses: actions/cache@v4
with:
path: venv
key: |
v3-${{ runner.os }}-${{ runner.arch }}-${{ matrix.python-version }}-${{ hashFiles('pyproject.toml') }}
restore-keys: |
v3-${{ runner.os }}-${{ runner.arch }}-${{ matrix.python-version }}-

- name: Install deps (flake8 + mypy + project.dev)
if: ${{ steps.cache.outputs.cache-hit != 'true' }}
run: |
python -m venv venv
source venv/bin/activate
python -m pip install --upgrade pip
# needed for Python 3.9 compatibility
python -m pip install uv>=0.8.8
python -m uv sync --extra dev --active
path: |
~/.cache/uv
.venv
key: uv-${{ runner.os }}-${{ runner.arch }}-py${{ matrix.python-version }}-${{ hashFiles('pyproject.toml') }}
restore-keys: uv-${{ runner.os }}-${{ runner.arch }}-py${{ matrix.python-version }}-

- name: Sync dev deps
run: uv sync --extra dev --dev

- name: Flake8
run: |
source venv/bin/activate
python -m flake8 bittensor/ --count

- name: mypy
run: |
source venv/bin/activate
python -m mypy --ignore-missing-imports bittensor/
run: uv run flake8 bittensor/ --count

- name: Mypy
run: uv run mypy --ignore-missing-imports bittensor/
5 changes: 1 addition & 4 deletions .github/workflows/monitor_requirements_size_master.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,8 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}
outputs:
py39: ${{ steps.set-output.outputs.py39 }}
py310: ${{ steps.set-output.outputs.py310 }}
py311: ${{ steps.set-output.outputs.py311 }}
py312: ${{ steps.set-output.outputs.py312 }}
Expand All @@ -47,7 +46,6 @@ jobs:
VERSION=${{ matrix.python-version }}
echo "Detected size: $SIZE MB for Python $VERSION"
case "$VERSION" in
3.9) echo "py39=$SIZE" >> $GITHUB_OUTPUT ;;
3.10) echo "py310=$SIZE" >> $GITHUB_OUTPUT ;;
3.11) echo "py311=$SIZE" >> $GITHUB_OUTPUT ;;
3.12) echo "py312=$SIZE" >> $GITHUB_OUTPUT ;;
Expand All @@ -64,7 +62,6 @@ jobs:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const sizes = {
"3.9": "${{ needs.measure-venv.outputs.py39 || 'N/A' }}",
"3.10": "${{ needs.measure-venv.outputs.py310 || 'N/A' }}",
"3.11": "${{ needs.measure-venv.outputs.py311 || 'N/A' }}",
"3.12": "${{ needs.measure-venv.outputs.py312 || 'N/A' }}",
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/nightly-e2e-tests-subtensor-main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ jobs:
os:
- ubuntu-latest
test-file: ${{ fromJson(needs.find-tests.outputs.test-files) }}
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}
steps:
- name: Check-out repository
uses: actions/checkout@v4
Expand Down Expand Up @@ -191,7 +191,7 @@ jobs:
os:
- ubuntu-latest
test-file: ${{ fromJson(needs.find-tests.outputs.test-files) }}
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}
steps:
- name: Check-out repository
uses: actions/checkout@v4
Expand Down Expand Up @@ -266,7 +266,7 @@ jobs:
os:
- ubuntu-latest
test-file: ${{ fromJson(needs.find-tests.outputs.test-files) }}
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}

steps:
- name: Check-out repository
Expand Down Expand Up @@ -342,7 +342,7 @@ jobs:
os:
- ubuntu-latest
test-file: ${{ fromJson(needs.find-tests.outputs.test-files) }}
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
python-version: ${{ fromJson(vars.SDK_SUPPORTED_PYTHON_VERSIONS) }}

steps:
- name: Check-out repository
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: '3.10'
python-version: '3.11'

- name: Install dependencies
run: |
Expand Down
Loading
Loading