v2.0.0
ibraheem-opentensor
released this
04 Oct 00:55
·
34 commits
to main
since this release
2.0.0 /2024-10-03
What's Changed
Revamped Bittensor Wallet written in Rust from the ground up
- Updates Changelog by @ibraheem-opentensor in 5966932
- Merge conflicts. by @opendansor in a5d0ebd
- Bumps to 2.0.0 by @ibraheem-opentensor in fbc835e
- Bumps to a5 by @ibraheem-opentensor in ff7ab41
- Feat/ci/add release (#38) by @cameron Fairchild in ffc995b
- remove utils by @cameron Fairchild in a4521a4
- Merge pull request #31 from opentensor/rajk/update-README by @roman in 7904b81
- update tests by @roman in 1ba42fc
- Add re-trying to type the password after wallet creation by @roman in 60ec77a
- move
keypair::Keypair.private_key
outside the python scope by @roman in 241fcd0 - use pypi trusted release by @cameron Fairchild in e5d4c49
- chore: ruff by @cameron Fairchild in 0c051db
- Cam/no excepts (#32) by @cameron Fairchild in 6685852
- wallet.hotkey.ss58_address doesn't ask typing pass after waller.unlock_hotkey() by @roman in 591889d
- wallet.coldkey.ss58_address doesn't ask typing pass after waller.unlock_coldkey() by @roman in fde4794
- Fix typos in status messages by @opendansor in 6953184
- delete double import by @roman in a02ec3a
- Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in 1979480
- fix panic error to KeyFileError by @roman in 8388ddb
- remove import by @cameron Fairchild in f186944
- wrap with err by @cameron Fairchild in 246988b
- Refactor error handling in keyfile.rs by @opendansor in b294357
- update config::Config -> add getters by @roman in f03db92
- Add wallet::Wallet.add_args by @roman in 192c447
- try eval bound with import first by @cameron Fairchild in 3f122b1
- Adds extra line after print by @ibraheem-opentensor in 2cbf0cb
- chore: clippy by @cameron Fairchild in 0aa5877
- add prompt and prompt password by @cameron Fairchild in 19dfabf
- Updated readme docs by @watchmaker in 7bf89dd
- Add getters for name and path in Keyfile by @opendansor in 8c31b65
- use pythons stdout (#30) by @cameron Fairchild in 9566fc2
- Add getter methods for wallet name, path, and hotkey by @opendansor in e8eb8ff
- add tests to readme by @roman in 984a43f
- add ScaleCodec to keypair::Keypair.sign and keypair::Keypair.verify by @roman in de21752
- fix create_from_seed (add union str, bytes) processing by @roman in 29fc083
- Merge remote-tracking branch 'origin/rust-fix-test' into rust-fix-test by @roman in b8b23e0
- unused imports by @roman in 1b5c8c3
- add version by @cameron Fairchild in 4863a39
- add back extension-module feature by @cameron Fairchild in 25ae0cb
- move assert into match arm by @cameron Fairchild in b775256
- Refactor keypair decoding and wallet initialization by @opendansor in 228886b
- use new instead of init by @cameron Fairchild in 9cee953
- add *args, **kwargs by @roman in 2659496
- update for wallets properties by @roman in f822741
- Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in f3fd9c4
- use direct import for error types in utils.rs by @roman in e8d1124
- use direct import for error types in wallet.rs by @roman in 19baa56
- use direct import for error types in keypair.rs by @roman in ded234c
- update .gitignore by @roman in 562bf4a
- use direct import for errors types in keyfile.rs by @roman in 665a2b2
- Update version to 2.0.0 by @opendansor in 8ff86e5
- add
rpassword::prompt_password
instead of input for asking password. by @roman in dd3afcc - can't mock functions that are not implemented yet (rust doesn't accept this way). This limits testing from Python. temporarily commenting on mocking tests. by @roman in 2726151
- update types of errors in keypair by @roman in 881790a
- update types of errors in keypair by @roman in e06cf62
- update errors by @roman in 80bb4f3
- update ConfigurationError usage for Keypair::new by @roman in 4f0280a
- add bittensor_wallet.keypair submodule by @roman in ed4d619
- add error into the module by @roman in dfe99b0
- add pyo3 signature to keypair::Keypair methods (functions) by @roman in ff4b65e
- improve keyfile::Keyfile.new logic by @roman in c2d7692
- add errors::ConfigurationError by @roman in 490f980
- fix classic import logic by @roman in 199c748
- add export for wallet::display_mnemonic_msg by @roman in 62b108b
- improve keyfile::Keyfile.str() by @roman in c26397a
- add #[pyclass(subclass)] ability for main classes, add mock subpackage by @roman in 5590e00
- update README (import logic) by @roman in 31eb915
- Fix keypair::Keypair.create_from_encrypted_json by @roman in 1562c5d
- lib.rs -> add classes on the package top level by @roman in 1df5a6f
- README -> add test
create_from_encrypted_json
by @roman in 19bcd43 - README, refactoring by @roman in 25e9e14
- README, refactoring by @roman in 9cb9071
- update python package structure by @roman in 3e54d2b
- add errors::KeyFileError, add its usage in the same way as in python wallet by @roman in 58728b4
- create correct python package structure by @roman in af44b18
- temporarily remove incorrect private key usage in
create_from_encrypted_json
by @roman in a4c433e - keypair::Keypair.create_from_encrypted_json by @roman in 1a36312
- import cleanup by @roman in f2137d5
- deps cleanup by @roman in 82bf3ca
- cls annotations fix by @roman in b3c6e24
- add keypair::Keypair.create_from_encrypted_json by @roman in e590f1f
- fixes by @roman in f964492
- cleanup by @roman in a54324d
- add wallet::Wallet.regenerate_coldkeypub, coldkey_file, coldkeypub_file, set_coldkey, set_coldkeypub, get_coldkeypub, get_coldkey, get_hotkey, regenerate_coldkey by @roman in 90d343c
- fix keypair::Keypair.mnemonic() by @roman in bdd30ba
- Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in b3f00e6
- add wallet::Wallet.regenerate_hotkey, wallet::Wallet.set_hotkey, wallet::Wallet.hotkey_file, update constants wallet path by @roman in 431b7f7
- Add comprehensive tests for keyfile.rs by @opendansor in 99109e8
- Refactor wallet initialization to use config defaults by @roman in 5041c3c
- fix cc compiler problem by @roman in c085bce
- add some empty functions into wallet::Wallet by @roman in 4a3213a
- add empty structure to wallet create, create some of the functions by @roman in 67a1791
- make keypair::Keypair.create_from_uri public by @roman in 9e01b53
- add list of functions into wallet.rs by @roman in cbef1c1
- fix keyfile.rs by @roman in 64fa38f
- update config by @roman in a5c699f
- add wallet::Wallet.create_if_non_existent by @roman in 247573a
- activate GPG key by @roman in 235a0de
- Refactor keyfile encryption error handling by @roman in 51c2c11
- Refactor
decrypt
to handle errors withPyResult
by @opendansor in db1561b - Merge remote-tracking branch 'origin/main-rust' into main-rust by @opendansor in faf282f
- Improve file encryption and decryption error handling by @opendansor in 1090dc1
- add keypair::Keypair.check_and_update_encryption by @roman in b8ea5a3
- add keypair::Keypair.get_keypair by @roman in 7b69e6b
- commented keypair getter by @roman in b9d7b43
- add keyfile::Keyfile.is_encrypted by @roman in 72c384d
- move nacl_decrypt and legacy_decrypt into decrypt_keyfile_data by @roman in 72f79c8
- add keypair::Keypair.set_keypair, fix: keypair::encrypt_keyfile_data, add printing messages by @roman in f96d2fd
- Refactor
set_keypair
to handle encryption and file writing by @opendansor in 026702c - Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in 0509f4f
- add keypair::decrypt_keyfile_data by @roman in 9217363
- Update error handling and getter methods in keyfile.rs by @opendansor in 141b941
- update docstring + add pyo3 signature by @roman in 6a163df
- update docstring by @roman in 80a4dcf
- Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in 827bee1
- add keyfile::encrypt_keyfile_data by @roman in 86a43f7
- Add legacy keyfile encryption function by @opendansor in ebd82b2
- Pins py-bip39-bindings (#25) by @ibraheem-opentensor in 8491a77
- add keyfile::keyfile_data_encryption_method by @roman in a6f84aa
- fix input logic and messages by @roman in c7023bf
- Enable encryption detection functions by @opendansor in 8745397
- Adds changelog (#24) by @ibraheem-opentensor in 7ce313c
- update README.md -> tests by @roman in 2e59bf4
- update README.md -> tests by @roman in 120a456
- remove unused prefixes and pub sign by @roman in 9fc24ac
- formatter by @roman in e3c6eae
- add pyo3 - signature: green build by @roman in bdd1d02
- Refactor keyfile functions to use PyBytes instead of Vec by @opendansor in fc97001
- Deployment script + updates (#23) by @ibraheem-opentensor in aebb643
- update deps in Cargo.toml by @roman in b9d25e1
- add TODOs by @roman in 384345c
- Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in 0550d80
- add Keyfile::is_encrypted by @roman in 766fad9
- Enable keyfile serialization and password validation by @opendansor in 8e8696a
- add Keyfile::_read_keyfile_data_from_file, Keyfile::is_writable by @roman in 0544c31
- add Keyfile::is_readable by @roman in 8a6fbd2
- add Keyfile::exists_on_device update by @roman in 98f45cd
- add Keyfile::_write_keyfile_data_to_file by @roman in 5b738f3
- add Keyfile::_may_overwrite by @roman in 2689b78
- Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in 57bc8be
- add Keyfile::make_dirs by @roman in 86964e4
- Add keyfile-related functions to library by @opendansor in 127f3c6
- add Keyfile::exists_on_device by @roman in 53ae243
- add Keyfile.rs structure by @roman in cf8af98
- add Keyfile.rs structure by @roman in 456d2c2
- cargo files update by @roman in 7eff490
- frm by @roman in bb92e45
- Add comments with keyfile.py usage across the wallet, btcli, sdk by @roman in b6ecbae
- cargo clippy GREEN by @roman in 777039a
- cargo fmt by @roman in 11d5803
- GREEEEN BUILD by @roman in bb89aa4
- update Cargo.toml by @roman in 5d8e837
- add funcs to the pymodule in the lib.rs by @roman in fc8d30f
- update README.md by @roman in 9e4f300
- utils done by @roman in dbe7f66
- update README.md by @roman in 2a0d92d
- keep support crypto_type 1 only (sr25519) by @roman in 0fa29bc
- add utils::get_ss58_format + test by @roman in 520b1d9
- fix utils::is_valid_ss58_address function + test by @roman in d4c91ff
- fix utils::is_valid_ss58_address function by @roman in fe5bd41
- Merge remote-tracking branch 'origin/main-rust' into main-rust by @roman in cb458e6
- add verify function + manual test case by @roman in 67b03f1
- BROKEN: Add SS58 address validation utility by @opendansor in 7075052
- add sign function + manual test case by @roman in a113cb6
- add the checker
If public_key is missing (ss58_address wasn't created), return an error
by @roman in 366da8e - add creation with ss58_address by @roman in b35e4c5
- remove comments from public_key getter by @roman in 644bb04
- update manual test script by @roman in 46dde7d
- add creating from public_key by @roman in 78e1dd8
- fix ci by @roman in ab8b8c3
- update README with a test for Keypair by @roman in 7101925
- add print for test by @roman in 26821a2
- Minimum functionality done by @roman in 2f18751
- add repr and str by @roman in bed0f13
- all fields in Keypair work by @roman in a70ce44
- add getters ss58_address and seed_hex by @roman in 4829eae
- add pair by @roman in 0bfac83
- impl Default for Keypair by @roman in 5e0c146
- empty struct Keypair and getters by @roman in 6ee130a
- convert private_key to bytes by @roman in 0b93c3c
- convert public_key to bytes by @roman in 7ae4ad4
- update structure by @roman in e5174b1
- delete pyproject.toml by @roman in 628291f
- fix Keypair
#pyclass
macros by @roman in 6f9005c - update structure by @roman in 7d8db72
- working by @roman in 14c8275
- update python package folder name by @roman in 07ce2d6
- update structure by @roman in 171fdd1
- wip restructure by @gus in 258e702
- Test signed commit by @gus in 91f2c2c
- Merge pull request #21 from opentensor/fix/roman/cryptography-version-to-43.0.1 by @roman in be61bd9
- bump up cryptography version until 43.0.1 by @roman in 5e3726d
- Apply changes from #2237 (#18) by @benjamin Himes in 83983f9
- Merge pull request #20 from opentensor/feat/roman/bump-up-version by @roman in 89ba61f
- bump up the version by @roman in 527a7aa
- Merge pull request #19 from opentensor/feat/thewhaleking/raise-exception-on-unlock-failure by @benjamin Himes in 8e724c1
- Raises a KeyFileError when one is encountered when unlocking. by @benjamin Himes in fdef4ba
- encrypt using secret box access by @gus in 2faf3a4
- wallet integration with python wip by @gus in 218ccad
- Merge pull request #17 from opentensor/fix/update-mnemonic-command by @ibraheem-opentensor in 5fa01d9
- Updates mnemonic command output by @ibraheem-opentensor in 7789a9a
- clean up by @gus in a3b58d5
- adds coldkey gen by @gus in 88eb46b
- password working - needs cleanup by @gus in 6ce4476
- docs and signing working by @gus in 742fbb4
- testing sign by @gus in 4b668e4
- clean up and todos by @gus in 4987d39
- fmt by @gus in 722c9e9
- feat: wallet & hotkey file write by @gus in 411d7be
- feat: mnemonic & hotkey pair by @gus in 43a4704
- adds tests by @gus in e8a2ac6
- adds documentation by @gus in f903f03
New Contributors
- @camfairchild made their first contribution in #30
- @rajkaramchedu made their first contribution in #31
- @opendansor made their first contribution in 7075052
Full Changelog: https://github.com/opentensor/btwallet/commits/v2.0.0