Skip to content

Commit

Permalink
feat: remove UpdateParams in x/foundation (#93)
Browse files Browse the repository at this point in the history
* feat: remove `UpdateParams` in x/foundation

Signed-off-by: zemyblue <zemyblue@gmail.com>

* chore: update finschia version to v2.0.0-rc2

Signed-off-by: zemyblue <zemyblue@gmail.com>

* chore: update config of script for finschia v2.0.0

Signed-off-by: zemyblue <zemyblue@gmail.com>

* chore: update changelog

Signed-off-by: zemyblue <zemyblue@gmail.com>

* chore: change the script environment from `lbm` to `finschia` or `fnsad`

Signed-off-by: zemyblue <zemyblue@gmail.com>

* chore: apply the feedback. - remove removed `Params` of foundation.

Signed-off-by: zemyblue <zemyblue@gmail.com>

---------

Signed-off-by: zemyblue <zemyblue@gmail.com>
  • Loading branch information
zemyblue committed Jun 1, 2023
1 parent 8dfd5d4 commit 175cb19
Show file tree
Hide file tree
Showing 19 changed files with 60 additions and 182 deletions.
10 changes: 5 additions & 5 deletions .pnp.cjs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

This file was deleted.

Git LFS file not shown
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

### Changed

- [\#93](https://github.com/Finschia/finschia-js/pull/93) remove UpdateParams in x/foundation

### Deprecated

### Removed
Expand Down
6 changes: 3 additions & 3 deletions packages/finschia/package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@finschia/finschia",
"version": "0.8.0",
"description": "Utilities for FINSCHIA v1.0.0",
"version": "0.9.0-rc1",
"description": "Utilities for FINSCHIA v2.0.0",
"contributors": [
"zemyblue <zemyblue@users.noreply.github.com>",
"loin3 <55660267+loin3@users.noreply.github.com>",
Expand Down Expand Up @@ -45,7 +45,7 @@
"@cosmjs/stargate": "^0.30.1",
"@cosmjs/tendermint-rpc": "^0.30.1",
"@cosmjs/utils": "^0.30.1",
"@finschia/finschia-proto": "^1.0.0",
"@finschia/finschia-proto": "^2.0.0-rc1",
"cosmjs-types": "^0.7.1",
"long": "^4.0.0",
"pako": "^2.0.2",
Expand Down
2 changes: 0 additions & 2 deletions packages/finschia/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,6 @@ export {
isMsgSubmitProposalEncodeObject,
isMsgUpdateDecisionPolicyEncodeObject,
isMsgUpdateMembersEncodeObject,
isMsgUpdateParamsEncodeObject,
isMsgVoteEncodeObject,
isMsgWithdrawFromTreasuryEncodeObject,
isMsgWithdrawProposalEncodeObject,
Expand All @@ -85,7 +84,6 @@ export {
MsgSubmitProposalEncodeObject,
MsgUpdateDecisionPolicyEncodeObject,
MsgUpdateMembersEncodeObject,
MsgUpdateParamsEncodeObject,
MsgVoteEncodeObject,
MsgWithdrawFromTreasuryEncodeObject,
MsgWithdrawProposalEncodeObject,
Expand Down
99 changes: 13 additions & 86 deletions packages/finschia/src/modules/foundation/aminomessages.spec.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ import { Decimal } from "@cosmjs/math";
import { DirectSecp256k1HdWallet, Registry } from "@cosmjs/proto-signing";
import { AminoTypes, assertIsDeliverTxSuccess, coins, logs } from "@cosmjs/stargate";
import { sleep } from "@cosmjs/utils";
import { Any } from "cosmjs-types/google/protobuf/any";
import { Duration } from "cosmjs-types/google/protobuf/duration";
import { ReceiveFromTreasuryAuthorization } from "@finschia/finschia-proto/lbm/foundation/v1/authz";
import {
PercentageDecisionPolicy,
Expand All @@ -20,14 +18,14 @@ import {
MsgRevoke,
MsgUpdateDecisionPolicy,
MsgUpdateMembers,
MsgUpdateParams,
MsgVote,
MsgWithdrawFromTreasury,
MsgWithdrawProposal,
} from "@finschia/finschia-proto/lbm/foundation/v1/tx";
import { CreateValidatorAuthorization } from "@finschia/finschia-proto/lbm/stakingplus/v1/authz";
import { Any } from "cosmjs-types/google/protobuf/any";
import { Duration } from "cosmjs-types/google/protobuf/duration";
import Long from "long";
import { MsgUpdateParamsEncodeObject } from "src";

import { makeLinkPath } from "../../paths";
import { SigningFinschiaClient } from "../../signingfinschiaclient";
Expand All @@ -49,7 +47,6 @@ import {
AminoMsgSubmitProposal,
AminoMsgUpdateDecisionPolicy,
AminoMsgUpdateMembers,
AminoMsgUpdateParams,
AminoMsgVote,
AminoMsgWithdrawFromTreasury,
AminoMsgWithdrawProposal,
Expand All @@ -66,6 +63,7 @@ import {
MsgLeaveFoundationEncodeObject,
MsgUpdateMembersEncodeObject,
MsgVoteEncodeObject,
MsgWithdrawFromTreasuryEncodeObject,
MsgWithdrawProposalEncodeObject,
} from "./messages";
import {
Expand Down Expand Up @@ -98,18 +96,22 @@ describe("Amino sign", () => {
defaultSigningClientOptions,
);

const msgUpdateParams: MsgUpdateParamsEncodeObject = {
typeUrl: "/lbm.foundation.v1.MsgUpdateParams",
const msgWithdrawFromTreasury: MsgWithdrawFromTreasuryEncodeObject = {
typeUrl: "/lbm.foundation.v1.MsgWithdrawFromTreasury",
value: {
authority: authorityAddress,
params: {
foundationTax: Decimal.fromUserInput("0.1", 18).atomics,
},
to: authorityAddress,
amount: [
{
denom: "cony",
amount: "100000000000000",
},
],
},
};
const msg = createMsgSubmitProposal(
[faucet.address0],
[msgUpdateParams],
[msgWithdrawFromTreasury],
"test",
Exec.EXEC_UNSPECIFIED,
);
Expand Down Expand Up @@ -207,33 +209,6 @@ describe("Amino sign", () => {
assertIsDeliverTxSuccess(result);
});

it("MsgUpdateParams", async () => {
pendingWithoutSimapp();
const wallet = await Secp256k1HdWallet.fromMnemonic(faucet.mnemonic, {
hdPaths: [makeLinkPath(0)],
prefix: simapp.prefix,
});
const signingFinschiaClient = await SigningFinschiaClient.connectWithSigner(
simapp.tendermintUrl,
wallet,
defaultSigningClientOptions,
);

const msgUpdateParams: MsgUpdateParamsEncodeObject = {
typeUrl: "/lbm.foundation.v1.MsgUpdateParams",
value: {
authority: authorityAddress,
params: {
foundationTax: Decimal.fromUserInput("0.1", 18).atomics,
},
},
};

const msg = createMsgSubmitProposal([faucet.address0], [msgUpdateParams], "test", Exec.EXEC_UNSPECIFIED);
const result = await signingFinschiaClient.signAndBroadcast(faucet.address0, [msg], defaultFee);
assertIsDeliverTxSuccess(result);
});

it("MsgFundTreasury", async () => {
pendingWithoutSimapp();
const [client, tmClient] = await makeClientWithFoundation(simapp.tendermintUrl);
Expand Down Expand Up @@ -470,30 +445,6 @@ describe("AminoTypes", () => {
expect(aminoMsg).toEqual(expected);
});

it("MsgUpdateParams", () => {
const msg: MsgUpdateParams = {
authority: faucet.address0,
params: {
foundationTax: "0",
},
};
const aminoTypes = new AminoTypes(createFoundationAminoConverters());
const aminoMsg = aminoTypes.toAmino({
typeUrl: "/lbm.foundation.v1.MsgUpdateParams",
value: msg,
});
const expected: AminoMsgUpdateParams = {
type: "lbm-sdk/MsgUpdateParams",
value: {
authority: faucet.address0,
params: {
foundation_tax: "0.000000000000000000",
},
},
};
expect(aminoMsg).toEqual(expected);
});

it("MsgFundTreasury", () => {
const msg: MsgFundTreasury = {
from: faucet.address0,
Expand Down Expand Up @@ -824,30 +775,6 @@ describe("AminoTypes", () => {
expect(msg).toEqual(expected);
});

it("MsgUpdateParams", () => {
const aminoMsg: AminoMsgUpdateParams = {
type: "lbm-sdk/MsgUpdateParams",
value: {
authority: faucet.address0,
params: {
foundation_tax: "0",
},
},
};
const aminoTypes = new AminoTypes(createFoundationAminoConverters());
const msg = aminoTypes.fromAmino(aminoMsg);
const expectedValue: MsgUpdateParams = {
authority: faucet.address0,
params: {
foundationTax: "0",
},
};
expect(msg).toEqual({
typeUrl: "/lbm.foundation.v1.MsgUpdateParams",
value: expectedValue,
});
});

it("MsgFundTreasury", () => {
const aminoMsg: AminoMsgFundTreasury = {
type: "lbm-sdk/MsgFundTreasury",
Expand Down
46 changes: 1 addition & 45 deletions packages/finschia/src/modules/foundation/aminomessages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ import { AminoMsg, Coin } from "@cosmjs/amino";
import { EncodeObject } from "@cosmjs/proto-signing";
import { AminoConverter, AminoConverters, AminoTypes } from "@cosmjs/stargate";
import { assertDefinedAndNotNull } from "@cosmjs/utils";
import { Any } from "cosmjs-types/google/protobuf/any";
import { ReceiveFromTreasuryAuthorization } from "@finschia/finschia-proto/lbm/foundation/v1/authz";
import {
PercentageDecisionPolicy,
Expand All @@ -21,12 +20,12 @@ import {
MsgSubmitProposal,
MsgUpdateDecisionPolicy,
MsgUpdateMembers,
MsgUpdateParams,
MsgVote,
MsgWithdrawFromTreasury,
MsgWithdrawProposal,
} from "@finschia/finschia-proto/lbm/foundation/v1/tx";
import { CreateValidatorAuthorization } from "@finschia/finschia-proto/lbm/stakingplus/v1/authz";
import { Any } from "cosmjs-types/google/protobuf/any";
import Long from "long";

import { createDefaultRegistry, createDefaultTypesWithoutFoundation } from "../../types";
Expand All @@ -37,10 +36,6 @@ import {
protoDurationToJson,
} from "../../utils";

interface Params {
foundation_tax: string;
}

interface DecisionPolicyWindows {
voting_period: string;
min_execution_period: string;
Expand All @@ -51,24 +46,6 @@ interface MemberRequest {
metadata?: string;
}

export interface AminoMsgUpdateParams extends AminoMsg {
readonly type: "lbm-sdk/MsgUpdateParams";
readonly value: {
/** authority is the address of the privileged account. */
readonly authority: string;
/**
* params defines the x/foundation parameters to update.
*
* NOTE: All parameters must be supplied.
*/
readonly params?: Params;
};
}

export function isAminoMsgUpdateParams(msg: AminoMsg): msg is AminoMsgUpdateParams {
return msg.type === "lbm-sdk/MsgUpdateParams";
}

export interface AminoMsgFundTreasury extends AminoMsg {
readonly type: "lbm-sdk/MsgFundTreasury";
readonly value: {
Expand Down Expand Up @@ -284,27 +261,6 @@ export function isAminoReceiveFromTreasuryAuthorization(

export function createFoundationAminoConvertersWithoutSubmitProposal(): AminoConverters {
return {
"/lbm.foundation.v1.MsgUpdateParams": {
aminoType: "lbm-sdk/MsgUpdateParams",
toAmino: ({ authority, params }: MsgUpdateParams): AminoMsgUpdateParams["value"] => {
assertDefinedAndNotNull(params);
return {
authority: authority,
params: {
foundation_tax: protoDecimalToJson(params.foundationTax),
},
};
},
fromAmino: ({ authority, params }: AminoMsgUpdateParams["value"]): MsgUpdateParams => {
assertDefinedAndNotNull(params);
return {
authority: authority,
params: {
foundationTax: jsonDecimalToProto(params.foundation_tax),
},
};
},
},
"/lbm.foundation.v1.MsgFundTreasury": {
aminoType: "lbm-sdk/MsgFundTreasury",
toAmino: ({ from, amount }: MsgFundTreasury): AminoMsgFundTreasury["value"] => {
Expand Down
15 changes: 2 additions & 13 deletions packages/finschia/src/modules/foundation/messages.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
import { Decimal } from "@cosmjs/math";
import { EncodeObject, GeneratedType, Registry } from "@cosmjs/proto-signing";
import { Coin } from "cosmjs-types/cosmos/base/v1beta1/coin";
import { Duration } from "cosmjs-types/google/protobuf/duration";
import { ReceiveFromTreasuryAuthorization } from "@finschia/finschia-proto/lbm/foundation/v1/authz";
import {
DecisionPolicyWindows,
Expand All @@ -20,16 +18,16 @@ import {
MsgSubmitProposal,
MsgUpdateDecisionPolicy,
MsgUpdateMembers,
MsgUpdateParams,
MsgVote,
MsgWithdrawFromTreasury,
MsgWithdrawProposal,
} from "@finschia/finschia-proto/lbm/foundation/v1/tx";
import { Coin } from "cosmjs-types/cosmos/base/v1beta1/coin";
import { Duration } from "cosmjs-types/google/protobuf/duration";

import { longify } from "../../utils";

export const foundationTypes: ReadonlyArray<[string, GeneratedType]> = [
["/lbm.foundation.v1.MsgUpdateParams", MsgUpdateParams],
["/lbm.foundation.v1.MsgFundTreasury", MsgFundTreasury],
["/lbm.foundation.v1.MsgWithdrawFromTreasury", MsgWithdrawFromTreasury],
["/lbm.foundation.v1.MsgUpdateMembers", MsgUpdateMembers],
Expand All @@ -47,15 +45,6 @@ export const foundationTypes: ReadonlyArray<[string, GeneratedType]> = [
["/lbm.foundation.v1.PercentageDecisionPolicy", PercentageDecisionPolicy],
];

export interface MsgUpdateParamsEncodeObject extends EncodeObject {
readonly typeUrl: "/lbm.foundation.v1.MsgUpdateParams";
readonly value: Partial<MsgUpdateParams>;
}

export function isMsgUpdateParamsEncodeObject(object: EncodeObject): object is MsgUpdateParamsEncodeObject {
return (object as MsgUpdateParamsEncodeObject).typeUrl === "/lbm.foundation.v1.MsgUpdateParams";
}

export interface MsgFundTreasuryEncodeObject extends EncodeObject {
readonly typeUrl: "/lbm.foundation.v1.MsgFundTreasury";
readonly value: Partial<MsgFundTreasury>;
Expand Down
2 changes: 0 additions & 2 deletions packages/finschia/src/modules/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,6 @@ export {
isMsgSubmitProposalEncodeObject,
isMsgUpdateDecisionPolicyEncodeObject,
isMsgUpdateMembersEncodeObject,
isMsgUpdateParamsEncodeObject,
isMsgVoteEncodeObject,
isMsgWithdrawFromTreasuryEncodeObject,
isMsgWithdrawProposalEncodeObject,
Expand All @@ -82,7 +81,6 @@ export {
MsgSubmitProposalEncodeObject,
MsgUpdateDecisionPolicyEncodeObject,
MsgUpdateMembersEncodeObject,
MsgUpdateParamsEncodeObject,
MsgVoteEncodeObject,
MsgWithdrawFromTreasuryEncodeObject,
MsgWithdrawProposalEncodeObject,
Expand Down
Loading

0 comments on commit 175cb19

Please sign in to comment.