Changelog updates, CLI cleanup

int
This commit is contained in:
rigelrozanski 2018-05-17 11:12:28 -04:00
parent 3bf3643176
commit a74d9c2db6
4 changed files with 37 additions and 28 deletions

View File

@ -4,15 +4,21 @@
BREAKING CHANGES
* Queries against the store must be prefixed with the path "/store"
* RecentValidator store now take pubkey instead of address, is sorted like Tendermint by pk's address
* `gaiacli query candidate` takes and argument instead of using the `--address-candidate` flag
* Staking refactor
* [stake] candidate -> validator throughout (details in refactor comment)
* [stake] delegate-bond -> delegation throughout
* [stake] `gaiacli query validator` takes and argument instead of using the `--address-candidate` flag
* [stake] introduce `gaiacli query delegations`
* [stake] staking refactor
* ValidatorsBonded store now take sorted pubKey-address instead of validator owner-address,
is sorted like Tendermint by pk's address
* store names more understandable
* removed temporary ToKick store
* removed temporary ToKick store, just needs a local map!
* removed distinction between candidates and validators
* everything is now a validator
* only validators with a status == bonded are actively validating/receiving rewards
* Introduction of Unbonding fields, lowlevel logic throughout (not fully implemented with queue)
* Introduction of PoolShares type within validators,
replaces three rational fields (BondedShares, UnbondingShares, UnbondedShares
FEATURES
@ -22,13 +28,15 @@ FEATURES
* Transactions which run out of gas stop execution and revert state changes
* A "simulate" query has been added to determine how much gas a transaction will need
* Modules can include their own gas costs for execution of particular message types
* Seperation of fee distribution to a new module
* Creation of a validator/delegation generics in `/types`
* [stake] Seperation of fee distribution to a new module
* [stake] Creation of a validator/delegation generics in `/types`
* [stake] Helper Description of the store in x/stake/store.md
BUG FIXES
* Auto-sequencing now works correctly
* staking delegator shares exchange rate now relative to equivalent-bonded-tokens the validator has instead of bonded tokens
* [stake] staking delegator shares exchange rate now relative to equivalent-bonded-tokens the validator has instead of bonded tokens
^ this is important for unbonded validators in the power store!
## 0.17.0 (May 15, 2018)
@ -36,6 +44,7 @@ BUG FIXES
BREAKING CHANGES
* [stake] MarshalJSON -> MarshalBinary
* Queries against the store must be prefixed with the path "/store"
FEATURES

View File

@ -29,13 +29,13 @@ var (
)
func init() {
fsPk.String(FlagPubKey, "", "Go-Amino encoded hex PubKey of the validator-validator. For Ed25519 the go-amino prepend hex is 1624de6220")
fsPk.String(FlagPubKey, "", "Go-Amino encoded hex PubKey of the validator. For Ed25519 the go-amino prepend hex is 1624de6220")
fsAmount.String(FlagAmount, "1steak", "Amount of coins to bond")
fsShares.String(FlagShares, "", "Amount of shares to unbond, either in decimal or keyword MAX (ex. 1.23456789, 99, MAX)")
fsDescription.String(FlagMoniker, "", "validator-validator name")
fsDescription.String(FlagMoniker, "", "validator name")
fsDescription.String(FlagIdentity, "", "optional keybase signature")
fsDescription.String(FlagWebsite, "", "optional website")
fsDescription.String(FlagDetails, "", "optional details")
fsValidator.String(FlagAddressValidator, "", "hex address of the validator/validator")
fsValidator.String(FlagAddressValidator, "", "hex address of the validator")
fsDelegator.String(FlagAddressDelegator, "", "hex address of the delegator")
}

View File

@ -18,8 +18,8 @@ import (
// get the command to query a validator
func GetCmdQueryValidator(storeName string, cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "validator [validator-addr]",
Short: "Query a validator-validator account",
Use: "validator [owner-addr]",
Short: "Query a validator",
Args: cobra.ExactArgs(1),
RunE: func(cmd *cobra.Command, args []string) error {
@ -55,8 +55,8 @@ func GetCmdQueryValidator(storeName string, cdc *wire.Codec) *cobra.Command {
// get the command to query a validator
func GetCmdQueryValidators(storeName string, cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "candidates",
Short: "Query for all validator-validator accounts",
Use: "validators",
Short: "Query for all validators",
RunE: func(cmd *cobra.Command, args []string) error {
key := stake.ValidatorsKey
@ -90,8 +90,8 @@ func GetCmdQueryValidators(storeName string, cdc *wire.Codec) *cobra.Command {
// get the command to query a single delegation bond
func GetCmdQueryDelegation(storeName string, cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "delegation-bond",
Short: "Query a delegations bond based on address and validator pubkey",
Use: "delegation",
Short: "Query a delegations bond based on address and validator address",
RunE: func(cmd *cobra.Command, args []string) error {
addr, err := sdk.GetAddress(viper.GetString(FlagAddressValidator))
@ -134,11 +134,12 @@ func GetCmdQueryDelegation(storeName string, cdc *wire.Codec) *cobra.Command {
// get the command to query all the candidates bonded to a delegation
func GetCmdQueryDelegations(storeName string, cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "delegation-candidates",
Short: "Query all delegations bonds based on delegation-address",
Use: "delegations [delegator-addr]",
Short: "Query all delegations made from one delegator",
Args: cobra.ExactArgs(1),
RunE: func(cmd *cobra.Command, args []string) error {
delegatorAddr, err := sdk.GetAddress(viper.GetString(FlagAddressDelegator))
delegatorAddr, err := sdk.GetAddress(args[0])
if err != nil {
return err
}
@ -167,6 +168,5 @@ func GetCmdQueryDelegations(storeName string, cdc *wire.Codec) *cobra.Command {
// TODO output with proofs / machine parseable etc.
},
}
cmd.Flags().AddFlagSet(fsDelegator)
return cmd
}

View File

@ -19,8 +19,8 @@ import (
// create declare candidacy command
func GetCmdDeclareCandidacy(cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "declare-candidacy",
Short: "create new validator-validator account and delegate some coins to it",
Use: "create-validator",
Short: "create new validator initialized with a self-delegation to it",
RunE: func(cmd *cobra.Command, args []string) error {
ctx := context.NewCoreContextFromViper().WithDecoder(authcmd.GetAccountDecoder(cdc))
@ -47,7 +47,7 @@ func GetCmdDeclareCandidacy(cdc *wire.Codec) *cobra.Command {
}
if viper.GetString(FlagMoniker) == "" {
return fmt.Errorf("please enter a moniker for the validator-validator using --moniker")
return fmt.Errorf("please enter a moniker for the validator using --moniker")
}
description := stake.Description{
Moniker: viper.GetString(FlagMoniker),
@ -78,8 +78,8 @@ func GetCmdDeclareCandidacy(cdc *wire.Codec) *cobra.Command {
// create edit candidacy command
func GetCmdEditCandidacy(cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "edit-candidacy",
Short: "edit and existing validator-validator account",
Use: "edit-validator",
Short: "edit and existing validator account",
RunE: func(cmd *cobra.Command, args []string) error {
validatorAddr, err := sdk.GetAddress(viper.GetString(FlagAddressValidator))
@ -116,7 +116,7 @@ func GetCmdEditCandidacy(cdc *wire.Codec) *cobra.Command {
func GetCmdDelegate(cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "delegate",
Short: "delegate coins to an existing validator/validator",
Short: "delegate coins to an existing validator",
RunE: func(cmd *cobra.Command, args []string) error {
amount, err := sdk.ParseCoin(viper.GetString(FlagAmount))
if err != nil {
@ -154,7 +154,7 @@ func GetCmdDelegate(cdc *wire.Codec) *cobra.Command {
func GetCmdUnbond(cdc *wire.Codec) *cobra.Command {
cmd := &cobra.Command{
Use: "unbond",
Short: "unbond coins from a validator/validator",
Short: "unbond shares from a validator",
RunE: func(cmd *cobra.Command, args []string) error {
// check the shares before broadcasting