* add tests for validating `Pubkey` and `Hash`
* add pubkey signature parser
* add parsers for straightforward validators
* add parser for token amounts
* add parser for derivation and seeds
* resolve warnings from deprecations in clap-v3-utils
* remove some deprecated functions from `solana_keygen`
* refactor signer related input parsers into a submodule
* fix deprecation notice for utl
* refactor parsers in `input_validators` to `input_parsers`
* cargo fmt
* Apply suggestions from code review
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
* Update clap-v3-utils/src/input_parsers/mod.rs
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
* mionr fixes to build
* add deprecation notice for old `input_parsers::signer` functions
* update `UiTokenAmount` to `Amount`
* refactor to-be-deprecated functions back to `input_parsers/mod.rs
* fmt
---------
Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
* allow pedantic invalid cast lint
* allow lint with false-positive triggered by `test-case` crate
* nightly `fmt` correction
* adapt to rust layout changes
* remove dubious test
* Use transmute instead of pointer cast and de/ref when check_aligned is false.
* Renames clippy::integer_arithmetic to clippy::arithmetic_side_effects.
* bump rust nightly to 2023-08-25
* Upgrades Rust to 1.72.0
---------
Co-authored-by: Trent Nelson <trent@solana.com>
* remove unnecessary hashes around raw string literals
* remove unncessary literal `unwrap()`s
* remove panicking `unwrap()`
* remove unnecessary `unwrap()`
* use `[]` instead of `vec![]` where applicable
* remove (more) unnecessary explicit `into_iter()` calls
* remove redundant pattern matching
* don't cast to same type and constness
* do not `cfg(any(...` a single item
* remove needless pass by `&mut`
* prefer `or_default()` to `or_insert_with(T::default())`
* `filter_map()` better written as `filter()`
* incorrect `PartialOrd` impl on `Ord` type
* replace "slow zero-filled `Vec` initializations"
* remove redundant local bindings
* add required lifetime to associated constant
* move mnemonic clap logic from keygen to clap-v3-utils
* move derivation path clap logic from keygen to clap-v3-utils
* move keygen clap logic from keygen to clap-v3-utils
* resolve error from rebase
* resolve conflict from rebase
* reorganize derivation_path and mnemonic as modules inside keygen
* refactor argument parsing and processing for testing
* add tests for command verify
* add tests for command pubkey
* add tests for command new
* add tests for command grind
* clippy
* be explicit about types
* use `try_get_matches` and tempfile
* clippy
* call `Error::exit` on error from `try_get_matches`
* introduce workspace.package
* introduce workspace.dependencies
* read version from root cargo.toml
* pass check when version = { workspace = true }
* don't bump version when version = { workspace = true }
* including workspace Cargo.toml when bump version
* programs/sbf use workspace inheritance
* fix increasing cargo version ignore program/sbf/Cargo.toml
* introduce workspace.package
* introduce workspace.dependencies
* read version from root cargo.toml
* pass check when version = { workspace = true }
* don't bump version when version = { workspace = true }
* including workspace Cargo.toml when bump version
* programs/sbf use workspace inheritance
* fix increasing cargo version ignore program/sbf/Cargo.toml
* keygen: add --use-derivation-path for new & grind
* keygen: add prompt:// uri scheme to new and grind
* fmt
* migrate to clap-v3-utils
* Revert "migrate to clap-v3-utils"
This reverts commit 77f33262ce6c4e95ac1cc62cca32749516f7f357.
* Revert "fmt"
This reverts commit 038cd4ce9628c57dec1f5a4716e2c5baacbe57b3.
* Revert "keygen: add prompt:// uri scheme to new and grind"
This reverts commit 029ea61409a1a16ba2c45483ade2c01f84f25fac.
* - remove `use` from arg
- fix issue from first commit with default value for derivation path
- refactor arg definition and acquiring
* Fix spelling
* Add validator for SignerSources
* Add helper to generate Keypair from supporting SignerSources
* Add bip32 support to solana-keygen recover
* Make SignerSourceKind const strs, use for Debug impl and URI schemes
* Rename ask to prompt
* Default to Solana bip44 base if no derivation-path
* Add SignerSource legacy field, support legacy ASK
* Update docs
* Fix docs: validator current doesn't support uri SignerSources
* Implement mnemonic support for solana-keygen grind (solana-labs#9325)
* Updated to include feedback from review.
* Renaming as per review feedback
* Fixed an incorrectly transcribed underscore
* Properly re-use string constants.