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/8.3.0rc3 #2390

Open
wants to merge 69 commits into
base: master
Choose a base branch
from
Open

Release/8.3.0rc3 #2390

wants to merge 69 commits into from

Commits on Oct 16, 2024

  1. Expands the type registry to include all the available options (#2353)

    Expands the type registry to include all the available options
    thewhaleking authored Oct 16, 2024
    Configuration menu
    Copy the full SHA
    d421b16 View commit details
    Browse the repository at this point in the history
  2. Add commit-reveal subprocess and related utilities

    Introducing a new subprocess for the commit-reveal mechanism alongside necessary utility functions. Also added end-to-end tests to ensure proper functionality of the new subprocess feature.
    opendansor committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    88f9177 View commit details
    Browse the repository at this point in the history
  3. Refactor log file paths to constants

    Replace hardcoded log file paths with constants for stdout and stderr log files. This improves code readability and maintainability by centralizing the log file paths. Removed redundant code that reads and prints the log files.
    opendansor committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    3046fa9 View commit details
    Browse the repository at this point in the history
  4. Refactor weight setting with commit-reveal logic.

    This commit introduces a check for whether commit-reveal is enabled before setting weights. If enabled, weights will be committed with a generated salt; otherwise, weights are set directly. Additionally, this commit adjusts the sleep interval for the subprocess and removes an unnecessary comment.
    opendansor committed Oct 16, 2024
    Configuration menu
    Copy the full SHA
    d325288 View commit details
    Browse the repository at this point in the history
  5. add Subtensor.register, Subtensor.difficulty and related staff wi…

    …th tests (#2352)
    
    * add `bittensor.core.subtensor.Subtensor.register`, `bittensor.core.subtensor.Subtensor.difficulty` and related staff with tests
    
    * remove commented code
    
    * update `_terminate_workers_and_wait_for_exit` by review
    roman-opentensor authored Oct 16, 2024
    Configuration menu
    Copy the full SHA
    6b0fb3f View commit details
    Browse the repository at this point in the history
  6. added to Subtensor: burned_register, get_subnet_burn_cost, `recyc…

    …le` and related extrinsics (#2359)
    
    * added to Subtensor: `burned_register`, `get_subnet_burn_cost`, `recycle` and related extrinsics
    
    * formatter
    
    * Update bittensor/core/extrinsics/registration.py
    
    Co-authored-by: Benjamin Himes <[email protected]>
    
    ---------
    
    Co-authored-by: Benjamin Himes <[email protected]>
    roman-opentensor and thewhaleking authored Oct 16, 2024
    Configuration menu
    Copy the full SHA
    720894a View commit details
    Browse the repository at this point in the history

Commits on Oct 17, 2024

  1. Tests passing, happy path is done.

    Added an option for starting the commit reveal subprocess during the Subtensor initialization. Enhanced subprocess management and logging details to capture wallet and commit information more clearly. Streamlined error handling in set_weights module.
    opendansor committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    0ca94f1 View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2024

  1. Add commit-reveal subprocess and weight handling improvements

    Enhanced the commit-reveal mechanism by adding a subprocess with sleep interval control, class-based handling in commit_reveal.py, and improved reveal checking. Adjusted tests and utils accordingly to ensure functionality and performance consistency.
    opendansor committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    616e0d1 View commit details
    Browse the repository at this point in the history
  2. Add blocks_until_next_epoch method

    Introduce a method to calculate the number of blocks remaining until the next epoch for a specific subnet. This addition aids in network governance and operational planning by providing essential timing information within the Bittensor blockchain.
    opendansor committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    2e3d79f View commit details
    Browse the repository at this point in the history
  3. Add version_key parameter and detailed docstrings

    Added the version_key parameter to function signatures across multiple files for better version tracking. Updated docstrings for enhanced clarity and consistency, improving code readability and maintainability.
    opendansor committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    ef0e90b View commit details
    Browse the repository at this point in the history
  4. Poem "Risen from the Past". Act 3. (#2363)

    * add `get_delegate_by_hotkey`, update `DelegateInfo` in chain data
    
    * add `root_register_extrinsic`, `set_root_weights_extrinsic` and related stuff
    
    * add `Subtensor.get_all_subnets_info` method and related stuff
    
    * add `Subtensor.get_delegate_take` method and tests
    
    * ruff
    
    * remove unused import
    roman-opentensor authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    a2ae849 View commit details
    Browse the repository at this point in the history
  5. Add batch weight reveal functionality

    Introduced batch processing for weight reveal operations in the Bittensor network. This includes a new method `batch_reveal_weights` and necessary changes to accommodate batch transactions, ensuring efficiency and scalability. Additionally, the commit/reveal intervals were replaced with periods for more precise control.
    opendansor committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    6c36639 View commit details
    Browse the repository at this point in the history

Commits on Oct 21, 2024

  1. Add chain hash consistency check and refactor commit reveal

    Introduce a function to verify local reveal list consistency with the Subtensor chain every 100 iterations. Refactor `check_reveal` and `reveal_candidates` to improve clarity and extract logic for retrieving all commits. Update docstrings and handle logs for better readability and debugging.
    opendansor committed Oct 21, 2024
    Configuration menu
    Copy the full SHA
    96f0af3 View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2024

  1. Change subprocess initialization flag and refactor socket handling.

    Subprocess initialization is now disabled by default. Reorganized socket server code with ThreadPoolExecutor and improved error handling. Removed redundant return type annotations and added docstrings.
    opendansor committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    baa42bf View commit details
    Browse the repository at this point in the history
  2. Ruff

    opendansor committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    86b07f2 View commit details
    Browse the repository at this point in the history
  3. Merge conflict.

    opendansor committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    8217c6e View commit details
    Browse the repository at this point in the history
  4. Rename and refactor subprocess utilities and related tests

    Renamed subprocess utility scripts from `/scripts` to `/bittensor/utils`. Updated import paths and refactored handling of subprocess logging by adding dynamic PID log management. Adjusted tests accordingly to reflect these changes.
    opendansor committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    ca653c3 View commit details
    Browse the repository at this point in the history
  5. prepare for emmit on set weights

    Rearranged calls to 'convert_weights_and_uids_for_emit' to align with the logic flow across test_reveal_weights.py and set_weights.py. This ensures 'convert_weights_and_uids_for_emit' is invoked only in commit-reveal scenarios, enhancing code clarity and maintaining intended functionality.
    opendansor committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    65b7e89 View commit details
    Browse the repository at this point in the history
  6. remove convert to emmit

    opendansor committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    dd9c20d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    ba82e55 View commit details
    Browse the repository at this point in the history
  8. Refactor weight conversion logic in set_weights.

    Moved weight conversion and normalization steps into the beginning of the `set_weights` function, ensuring consistency between weight submission and commit operations. This update affects both the `set_weights` logic and its corresponding end-to-end tests.
    opendansor committed Oct 22, 2024
    Configuration menu
    Copy the full SHA
    fb0c769 View commit details
    Browse the repository at this point in the history

Commits on Oct 23, 2024

  1. Add test for commit-reveal batch weights over limit

    Introduces a test to validate the commit-reveal mechanism for weights when the number of commits exceeds the limit. The test sets up a subnet, registers a neuron, and verifies behavior when attempting more than the allowed number of weight commits.
    opendansor committed Oct 23, 2024
    Configuration menu
    Copy the full SHA
    0ea65c1 View commit details
    Browse the repository at this point in the history

Commits on Oct 24, 2024

  1. Enable commit reveal subprocess control and expiry handling

    Added logic to conditionally start the commit reveal subprocess based on existing commits and introduced an expire block to manage commit object lifecycle. Updated tests and utilities to reflect these changes, ensuring proper subprocess and database handling.
    opendansor committed Oct 24, 2024
    Configuration menu
    Copy the full SHA
    bb60aa5 View commit details
    Browse the repository at this point in the history

Commits on Oct 25, 2024

  1. Add max_retries parameter and improve commit log details

    Added 'max_retries' parameter to set_weights to handle retries. Updated commit log in commit_reveal to include commit_block. Also removed unnecessary part of the check_reveal function docstring for clarity.
    opendansor committed Oct 25, 2024
    Configuration menu
    Copy the full SHA
    686b2cc View commit details
    Browse the repository at this point in the history
  2. Change weight commit behavior and add debug prints

    Set `wait_for_inclusion` to `True` for weight commits, ensuring inclusion before proceeding. Added debug prints for commit hashes and blocks in the `subtensor` and `commit_reveal` modules to assist with troubleshooting and monitoring.
    opendansor committed Oct 25, 2024
    Configuration menu
    Copy the full SHA
    77d097f View commit details
    Browse the repository at this point in the history

Commits on Oct 29, 2024

  1. Refactor subprocess to only delete old commits + update response from…

    … subtensor + add revealed flag
    
    This commit adjusts the commit weights process by ensuring the commit_reveal subprocess starts appropriately, checking for its readiness, and syncing commit data. It also simplifies the test cases and enhances the subprocess logging mechanism.
    opendansor committed Oct 29, 2024
    Configuration menu
    Copy the full SHA
    727ea44 View commit details
    Browse the repository at this point in the history
  2. Refactor commit reveal logic and clean up logging

    Refactor the commit reveal process to only include candidates with a reveal block less than or equal to the current block. Also, remove unnecessary logging of received requests to improve code readability and reduce noise.
    opendansor committed Oct 29, 2024
    Configuration menu
    Copy the full SHA
    e4abb6f View commit details
    Browse the repository at this point in the history

Commits on Oct 30, 2024

  1. Reduce max_retries and refactor substrate calls. Fix local and chain …

    …alignment with commits
    
    Reduced the max_retries parameter to 1 in multiple methods to expedite failure recognition. Refactored inline substrate call compositions to use a more functional approach by passing the composed extrinsic directly into the retry wrapper, streamlining the code and improving readability.
    opendansor committed Oct 30, 2024
    Configuration menu
    Copy the full SHA
    1da70d8 View commit details
    Browse the repository at this point in the history

Commits on Oct 31, 2024

  1. Refactor commit reveal periods to interval in codebase, add combinati…

    …on check to subprocess.
    
    Updated references from 'commit_reveal_periods' to 'commit_reveal_weights_interval' across multiple files for consistency. Also casted float values explicitly for consistency in data types.
    opendansor committed Oct 31, 2024
    Configuration menu
    Copy the full SHA
    96c4584 View commit details
    Browse the repository at this point in the history
  2. Fix typo in database commit operation

    Corrected a typo from `conn.committed()` to `conn.commit()` in `subprocess_utils.py` to ensure proper database commit operations. Added a newline at the end of the file for consistency.
    opendansor committed Oct 31, 2024
    Configuration menu
    Copy the full SHA
    3c30f19 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    95d5139 View commit details
    Browse the repository at this point in the history
  4. Ruff

    opendansor committed Oct 31, 2024
    Configuration menu
    Copy the full SHA
    8f20eab View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c0c454d View commit details
    Browse the repository at this point in the history
  6. Ruff

    opendansor committed Oct 31, 2024
    Configuration menu
    Copy the full SHA
    af1c0f6 View commit details
    Browse the repository at this point in the history

Commits on Nov 1, 2024

  1. Configuration menu
    Copy the full SHA
    116e200 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    70246e0 View commit details
    Browse the repository at this point in the history
  3. Refactor subprocess initialization condition.

    Update the conditional statement for subprocess initialization in `subtensor.py` for clarity. Adjust the unit tests in `test_set_weights.py` to patch `get_subnet_hyperparameters` method to return an object with `commit_reveal_weights_enabled` set to `False`.
    opendansor committed Nov 1, 2024
    Configuration menu
    Copy the full SHA
    26c988f View commit details
    Browse the repository at this point in the history
  4. Lint

    opendansor committed Nov 1, 2024
    Configuration menu
    Copy the full SHA
    4182475 View commit details
    Browse the repository at this point in the history
  5. Refactor subprocess initialization and update network defaults.

    Change the network parameter to self.chain_endpoint in subprocess initialization for better encapsulation. Clarify the commit_reveal_weights_interval docstring and update the default network address in argument parsing.
    opendansor committed Nov 1, 2024
    Configuration menu
    Copy the full SHA
    50309bc View commit details
    Browse the repository at this point in the history

Commits on Nov 4, 2024

  1. Refactor logging and subprocess management

    Remove redundant `read_commit_reveal_logs` function. Enhance `is_table_empty` to handle table existence check. Add error handling and logging improvements for subprocess management.
    opendansor committed Nov 4, 2024
    Configuration menu
    Copy the full SHA
    87a2ab2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5aa979c View commit details
    Browse the repository at this point in the history
  3. Replace rich.console to btlogging.loggin (#2377)

    * replace `rich.console` to `btlogging.logging`
    
    * update requirements
    
    * use whole path import
    
    * fix some logging
    
    * fix registration.py
    
    * ruff
    
    * del prometheus.py
    
    * fix review comments
    roman-opentensor authored Nov 4, 2024
    Configuration menu
    Copy the full SHA
    ffbc2d3 View commit details
    Browse the repository at this point in the history
  4. SDK (AsyncSubtensor) Part 1 (#2374)

    * create the copy of `bittensor/core/subtensor.py` with async suffix.
    
    * add async_substrate_interface.py
    
    * update `bittensor.utils.format_error_message` to be compatible with async_subtensor
    
    * update `bittensor.core.chain_data`
    
    * update `bittensor.core.async_subtensor.py` from btcli
    
    * add DelegatesDetails for async_subtensor
    
    * add validate_chain_endpoint for async_subtensor
    
    * update async_substrate_interface.py by Optional where acceptable and doesn't brake logic
    
    * improve settings for async_subtensor.py
    
    * fix format errors
    
    * fix annotations
    
    * add  async_subtensor.py with adaptation to SDK (all methods checked and work well)
    
    * update settings.py to be compatible with async_extrinsics
    
    * add async_transfer extrinsic
    
    * add async_registration extrinsic
    
    * add async_root extrinsics
    
    * ruff
    
    * Update bittensor/core/extrinsics/async_transfer.py
    
    Co-authored-by: Benjamin Himes <[email protected]>
    
    * fix comments review
    
    * avoid non-direct import within inner code (fix circular import)
    
    * del unused code
    
    * del prometheus.py
    
    * solving conflict
    
    * ruff
    
    ---------
    
    Co-authored-by: Benjamin Himes <[email protected]>
    roman-opentensor and thewhaleking authored Nov 4, 2024
    Configuration menu
    Copy the full SHA
    835dfdb View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f72a66b View commit details
    Browse the repository at this point in the history

Commits on Nov 5, 2024

  1. Configuration menu
    Copy the full SHA
    6fae77f View commit details
    Browse the repository at this point in the history
  2. commit_weights.py

    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    33eda2d View commit details
    Browse the repository at this point in the history
  3. set_weights.py

    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    9dd4a0f View commit details
    Browse the repository at this point in the history
  4. remove all prompts

    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    f7f36c4 View commit details
    Browse the repository at this point in the history
  5. SDK (AsyncSubtensor) Part 2 (#2380)

    * create the copy of `bittensor/core/subtensor.py` with async suffix.
    
    * add async_substrate_interface.py
    
    * update `bittensor.utils.format_error_message` to be compatible with async_subtensor
    
    * update `bittensor.core.chain_data`
    
    * update `bittensor.core.async_subtensor.py` from btcli
    
    * add DelegatesDetails for async_subtensor
    
    * add validate_chain_endpoint for async_subtensor
    
    * update async_substrate_interface.py by Optional where acceptable and doesn't brake logic
    
    * improve settings for async_subtensor.py
    
    * fix format errors
    
    * fix annotations
    
    * add  async_subtensor.py with adaptation to SDK (all methods checked and work well)
    
    * update settings.py to be compatible with async_extrinsics
    
    * add async_transfer extrinsic
    
    * add async_registration extrinsic
    
    * add async_root extrinsics
    
    * ruff
    
    * Update bittensor/core/extrinsics/async_transfer.py
    
    Co-authored-by: Benjamin Himes <[email protected]>
    
    * fix comments review
    
    * avoid non-direct import within inner code (fix circular import)
    
    * del unused code
    
    * update AsyncSubtensor (add methods, fix tests)
    
    * Update bittensor/core/async_subtensor.py
    
    Co-authored-by: Paweł Polewicz <[email protected]>
    
    * fix await properties and remove double format_error_message call
    
    * fix review comments
    
    * improve docstrings
    
    * fix
    
    ---------
    
    Co-authored-by: Benjamin Himes <[email protected]>
    Co-authored-by: Paweł Polewicz <[email protected]>
    3 people authored Nov 5, 2024
    Configuration menu
    Copy the full SHA
    d424cd1 View commit details
    Browse the repository at this point in the history
  6. Merge remote-tracking branch 'origin/staging' into feat/roman/remove-…

    …prompt-from-sdk
    
    # Conflicts:
    #	bittensor/core/async_subtensor.py
    #	bittensor/core/extrinsics/async_root.py
    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    492a0d0 View commit details
    Browse the repository at this point in the history
  7. last check

    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    fa9f581 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    81a9cdd View commit details
    Browse the repository at this point in the history
  9. ruff

    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    20c8ba2 View commit details
    Browse the repository at this point in the history
  10. Refactor commit and reveal logic, remove prompts

    Refactored the commit and reveal weight functions to simplify code, eliminate retry loops, and remove user prompts. The subprocess handling has been improved for better subprocess control, and utility functions have been moved to a new module.
    opendansor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    636ec26 View commit details
    Browse the repository at this point in the history
  11. Merge conficts

    opendansor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    cb8b314 View commit details
    Browse the repository at this point in the history
  12. Refactor commit and reveal logic, remove prompts

    Refactored the commit and reveal weight functions to simplify code, eliminate retry loops, and remove user prompts. The subprocess handling has been improved for better subprocess control, and utility functions have been moved to a new module.
    opendansor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    9705134 View commit details
    Browse the repository at this point in the history
  13. Lint

    opendansor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    77087df View commit details
    Browse the repository at this point in the history
  14. Remove rich prompt

    opendansor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    666ec7e View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    43a01a7 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    91e7043 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    858f732 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    e50b59b View commit details
    Browse the repository at this point in the history
  19. Merge pull request #2382 from opentensor/feat/roman/remove-prompt-fro…

    …m-sdk
    
    Avoid using `prompt` in SDK
    ibraheem-opentensor authored Nov 5, 2024
    Configuration menu
    Copy the full SHA
    3e1e179 View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    78c94fe View commit details
    Browse the repository at this point in the history
  21. Merge remote-tracking branch 'origin/staging' into feat/opendansor/cr2

    # Conflicts:
    #	bittensor/core/extrinsics/commit_weights.py
    #	bittensor/core/extrinsics/set_weights.py
    #	bittensor/core/subtensor.py
    #	tests/e2e_tests/test_commit_weights.py
    #	tests/unit_tests/test_subtensor.py
    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    dd00498 View commit details
    Browse the repository at this point in the history
  22. merge staging

    roman-opentensor committed Nov 5, 2024
    Configuration menu
    Copy the full SHA
    7d23094 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    e1a6a36 View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    8eb20cb View commit details
    Browse the repository at this point in the history
  25. Configuration menu
    Copy the full SHA
    26dce82 View commit details
    Browse the repository at this point in the history