masa-finance / masa-bittensor

Masa Bittensor Subnet - Decentralized, Fair AI
https://masa.ai
MIT License
14 stars 11 forks source link

Use Nox to improve DX by adding session based commands #103

Closed juanmanso closed 4 months ago

juanmanso commented 4 months ago

Goal + Plan

What is Nox?

Click to expand

Why? Pros and Cons

Pros Cons (comparison against Makefile and Docker)
Fancy way of Makefile We already have Makefile setup and it's generally used across Subnets
Lets us test and support multiple python versions and envs We could have docker instances instead and use them for more than a couple of commands
Bespoke tool to leverage the python env Less flexible than Makefile and Docker
A step forward into highly tested and covered code Could convert into a bottleneck when multiple devs work at the same time and CI blocks everyone on every push
Encourages fail-fast philosophy (used along pre-commit for example) Intermediate commits get harder to make if not planned ahead

Proposal for the spike

  • Setup Nox
    • Dependency
    • Noxfile
  • Create a black formatting command
  • Create a build command to assert build (compilation of miners/validators) is not broken
  • [Nice-To-Have] Create a dev or setup command that spins up a new (or existing) bittensor ananconda env ready to use with latest changes.

Next steps

  • Add poetry ?????
juanmanso commented 4 months ago

Assigned myself to lead the discussion and left it in progress to start discussing with the @masa-finance/subnet team about it

juanmanso commented 4 months ago

Moved to In Review to flag it so it pops up on devs attention when looking at the board

juanmanso commented 4 months ago

Moved back to In Progress since no review is required as of now. Gonna update the card with the new action items and acceptance criteria discussed on this Slack Thread

juanmanso commented 4 months ago

DEMO VIDS

Please review @masa-finance/subnet

juanmanso commented 4 months ago

Closing this since work is being continued on these new tasks:

Image