Skip to content

Instantly share code, notes, and snippets.

@levicook
Last active April 16, 2021 18:39
Show Gist options
  • Save levicook/d27749a8c59aaf1f158dc22d06ade194 to your computer and use it in GitHub Desktop.
Save levicook/d27749a8c59aaf1f158dc22d06ade194 to your computer and use it in GitHub Desktop.
panics w/in types
types/config.go:81: panic("Config is sealed")
types/kv/kv.go:21: panic("invalid comparison result")
types/address.go:94: panic(err)
types/address.go:97: panic(err)
types/address.go:100: panic(err)
types/address.go:599:// Returns an empty sting if the byte slice is 0-length. It panics if the bech32 conversion
types/address.go:604: panic(err)
types/address.go:658: panic(err)
types/bech32/legacybech32/pk.go:33:// Deprecated: MustMarshalPubKey calls MarshalPubKey and panics on error.
types/bech32/legacybech32/pk.go:37: panic(err)
types/module/configurator.go:32: // will panic. If the ConsensusVersion bump does not introduce any store
types/module/module.go:312: panic("validator InitGenesis updates already set by a previous module")
types/module/module.go:461: panic("validator EndBlock updates already set by a previous module")
types/decimal.go:15:// NOTE: never use new(Dec) or else we will panic unmarshalling into the
types/decimal.go:68: panic(fmt.Sprintf("too much precision, maximum %v, provided %v", Precision, prec))
types/decimal.go:78: panic(fmt.Sprintf("too much precision, maximum %v, provided %v", Precision, prec))
types/decimal.go:187:// Decimal from string, panic on error
types/decimal.go:191: panic(err)
types/decimal.go:223: panic("Int overflow")
types/decimal.go:233: panic("Int overflow")
types/decimal.go:244: panic("Int overflow")
types/decimal.go:255: panic("Int overflow")
types/decimal.go:265: panic("Int overflow")
types/decimal.go:275: panic("Int overflow")
types/decimal.go:290: panic("Int overflow")
types/decimal.go:305: panic("Int overflow")
types/decimal.go:320: panic("Int overflow")
types/decimal.go:418: panic(err)
types/decimal.go:550: panic("Int64() out of bound")
types/decimal.go:574: panic("Int64() out of bound")
types/decimal.go:625: panic("dec must be within bounds")
types/simulation/rand_util.go:167: panic("multiSource Seed should not be called")
types/simulation/types.go:84: panic(fmt.Sprintf("Expecting %T to implement sdk.ServiceMsg", msg))
types/simulation/types.go:102: panic(err)
types/simulation/types.go:108:// MustMarshal Marshals the operation msg, panic on error
types/simulation/types.go:112: panic(err)
types/simulation/types.go:151: panic(err)
types/events.go:220: panic(i)
types/service_msg.go:56: panic(fmt.Errorf("cannot convert ServiceMsg request to sdk.Msg, got %T", msgRequest))
types/tx/signing/signature.go:58: panic(fmt.Errorf("unexpected case %+v", data))
types/tx/signing/signature.go:85: panic(fmt.Errorf("unexpected case %+v", descData))
types/tx/types.go:33: panic("Any cached value is nil. Transaction messages must be correctly packed Any values.")
types/tx/types.go:126: panic(err)
types/tx/types.go:146: panic(err)
types/tx/types.go:159: panic(err)
types/context.go:261:// attached with WrapSDKContext. It panics if a Context was not properly
types/utils.go:42:// MustSortJSON is like SortJSON but panic if an error occurs, e.g., if
types/utils.go:47: panic(err)
types/address/store_key.go:25:// MustLengthPrefix is LengthPrefix with panic on error.
types/address/store_key.go:29: panic(err)
types/msgservice/msg_service.go:29: // We panic here because there is no other alternative and the app cannot be initialized correctly
types/msgservice/msg_service.go:32: panic(fmt.Errorf("can't register request type %T for service method %s", i, fqMethod))
types/errors/stacktrace.go:48: // manual error creation, or runtime for caught panics
types/errors/stacktrace.go:54: // runtime are added on panics
types/errors/handle.go:5:// AssertNil panics on error
types/errors/handle.go:10: panic(fmt.Errorf("logic error - this should never happen. %w", err))
types/errors/abci.go:154:var errPanicWithMsg = Wrapf(ErrPanic, "panic message redacted to hide potentially sensitive system info")
types/errors/errors.go:144: // ErrPanic is only set when we recover from a panic, so we know to
types/errors/errors.go:146: ErrPanic = Register(UndefinedCodespace, 111222, "panic")
types/errors/errors.go:154:// twice. Attempt to reuse an error code results in panic.
types/errors/errors.go:160: panic(fmt.Sprintf("error with code %d is already registered: %q", code, e.desc))
types/errors/errors.go:360:// Recover captures a panic and stop its propagation. If panic happens it is
types/int.go:107: panic("NewIntFromBigInt() out of bound")
types/int.go:130: panic("NewIntWithDecimal() decimal is negative")
types/int.go:138: panic("NewIntWithDecimal() out of bound")
types/int.go:158: panic("Int64() out of bound")
types/int.go:163:// IsInt64 returns true if Int64() not panics
types/int.go:172: panic("Uint64() out of bounds")
types/int.go:177:// IsUint64 returns true if Uint64() not panics
types/int.go:233: panic("Int overflow")
types/int.go:248: panic("Int overflow")
types/int.go:262: panic("Int overflow")
types/int.go:267: panic("Int overflow")
types/int.go:281: panic("Division by zero")
types/int.go:294: panic("division-by-zero")
types/coin.go:14:// NewCoin returns a new coin with a denomination and amount. It will panic if
types/coin.go:23: panic(err)
types/coin.go:29:// NewInt64Coin returns a new coin with a denomination and amount. It will panic
types/coin.go:68: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, other.Denom))
types/coin.go:78: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, other.Denom))
types/coin.go:87: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, other.Denom))
types/coin.go:94:// it panics.
types/coin.go:97: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, coinB.Denom))
types/coin.go:104:// then it panics.
types/coin.go:107: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, coinB.Denom))
types/coin.go:112: panic("negative coin amount")
types/coin.go:139:// zero coins and sorting the coin set. A panic will occur if the coin set is not valid.
types/coin.go:143: panic(fmt.Errorf("invalid coin set %s: %w", newCoins, err))
types/coin.go:334: panic("negative coin amount")
types/coin.go:639: panic(err)
types/uint.go:25: panic(fmt.Errorf("overflow: %s", err))
types/uint.go:41: panic(err)
types/uint.go:58: panic("Uint64() out of bound")
types/uint.go:107: panic("division-by-zero")
types/uint.go:118:// Decr will panic if the Uint is zero.
types/dec_coin.go:29: panic(fmt.Sprintf("negative decimal coin amount: %v\n", amount))
types/dec_coin.go:41: panic(err)
types/dec_coin.go:51:// panic if the amount is negative or denom is invalid.
types/dec_coin.go:65: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, other.Denom))
types/dec_coin.go:75: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, other.Denom))
types/dec_coin.go:84: panic(fmt.Sprintf("invalid coin denominations; %s, %s", coin.Denom, other.Denom))
types/dec_coin.go:93: panic(fmt.Sprintf("coin denom different: %v %v\n", coin.Denom, coinB.Denom))
types/dec_coin.go:101: panic(fmt.Sprintf("coin denom different: %v %v\n", coin.Denom, coinB.Denom))
types/dec_coin.go:105: panic("negative decimal coin amount")
types/dec_coin.go:162:// zero coins and sorting the coin set. A panic will occur if the coin set is not valid.
types/dec_coin.go:166: panic(fmt.Errorf("invalid coin set %s: %w", newDecCoins, err))
types/dec_coin.go:306: panic("negative coin amount")
types/dec_coin.go:376:// panics if d is zero.
types/dec_coin.go:396:// QuoDec divides all the decimal coins by a decimal. It panics if d is zero.
types/dec_coin.go:401: panic("invalid zero decimal")
types/dec_coin.go:420:// panics if d is zero.
types/dec_coin.go:425: panic("invalid zero decimal")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment