From fc024461c8f3f8969d1d701e0fbf8de8f573eec3 Mon Sep 17 00:00:00 2001 From: emidev98 Date: Thu, 9 Nov 2023 18:47:59 +0200 Subject: [PATCH 1/5] feat: allow sending denoms with URL encoding --- x/tokenfactory/keeper/grpc_query.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/x/tokenfactory/keeper/grpc_query.go b/x/tokenfactory/keeper/grpc_query.go index 255d0a749ee..84b562c5926 100644 --- a/x/tokenfactory/keeper/grpc_query.go +++ b/x/tokenfactory/keeper/grpc_query.go @@ -4,7 +4,7 @@ import ( "context" sdk "github.com/cosmos/cosmos-sdk/types" - + "net/url" "github.com/osmosis-labs/osmosis/v20/x/tokenfactory/types" ) @@ -19,7 +19,10 @@ func (k Keeper) Params(ctx context.Context, req *types.QueryParamsRequest) (*typ func (k Keeper) DenomAuthorityMetadata(ctx context.Context, req *types.QueryDenomAuthorityMetadataRequest) (*types.QueryDenomAuthorityMetadataResponse, error) { sdkCtx := sdk.UnwrapSDKContext(ctx) - + decodedDenom, err := url.QueryUnescape(req.Denom) + if err == nil { + req.Denom = decodedDenom + } authorityMetadata, err := k.GetAuthorityMetadata(sdkCtx, req.GetDenom()) if err != nil { return nil, err From 89bda4acf991bf1c8bab36ffd96530a39b8d537f Mon Sep 17 00:00:00 2001 From: emidev98 Date: Thu, 9 Nov 2023 18:59:34 +0200 Subject: [PATCH 2/5] chore: changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1c139d8604a..9e28abe7594 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -71,6 +71,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Features +* [#6847](https://github.com/osmosis-labs/osmosis/pull/6847) feat: allow sending denoms with URL encoding * [#6468](https://github.com/osmosis-labs/osmosis/pull/6468) feat: remove osmo multihop discount * [#6420](https://github.com/osmosis-labs/osmosis/pull/6420) feat[CL]: Creates a governance set whitelist of addresses that can bypass the normal pool creation restrictions on concentrated liquidity pools * [#6623](https://github.com/osmosis-labs/osmosis/pull/6420) feat: transfer cl positions to new owner From 6b8bfa9656c8536bad7c25be24eba43d5eabaf9c Mon Sep 17 00:00:00 2001 From: emidev98 Date: Mon, 13 Nov 2023 16:43:55 +0200 Subject: [PATCH 3/5] feat: encode url tests --- x/tokenfactory/client/cli/query_test.go | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/x/tokenfactory/client/cli/query_test.go b/x/tokenfactory/client/cli/query_test.go index 974fa86e8c7..bbb5bf1e0cd 100644 --- a/x/tokenfactory/client/cli/query_test.go +++ b/x/tokenfactory/client/cli/query_test.go @@ -44,6 +44,12 @@ func (s *QueryTestSuite) TestQueriesNeverAlterState() { &types.QueryDenomAuthorityMetadataRequest{Denom: "tokenfactory"}, &types.QueryDenomAuthorityMetadataResponse{}, }, + { + "Query denom with encoded values", + "/osmosis.tokenfactory.v1beta1.Query/DenomAuthorityMetadata", + &types.QueryDenomAuthorityMetadataRequest{Denom: "factory%2Fosmo1zs0txy03pv5crj2rvty8wemd3zhrka2ne8u05n%2Fdenom"}, + &types.QueryDenomAuthorityMetadataResponse{}, + }, { "Query denoms by creator", "/osmosis.tokenfactory.v1beta1.Query/DenomsFromCreator", From 115ff3944093698f813693395c8516f554a6431f Mon Sep 17 00:00:00 2001 From: emidev98 Date: Thu, 30 Nov 2023 07:57:23 +0200 Subject: [PATCH 4/5] feat: changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9e28abe7594..ec708e4e7dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -54,6 +54,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Misc Improvements +* [#6847](https://github.com/osmosis-labs/osmosis/pull/6847) feat: allow sending denoms with URL encoding * [#6788](https://github.com/osmosis-labs/osmosis/pull/6788) Improve error message when CL LP fails due to slippage bound hit. ### API Breaks @@ -71,7 +72,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Features -* [#6847](https://github.com/osmosis-labs/osmosis/pull/6847) feat: allow sending denoms with URL encoding * [#6468](https://github.com/osmosis-labs/osmosis/pull/6468) feat: remove osmo multihop discount * [#6420](https://github.com/osmosis-labs/osmosis/pull/6420) feat[CL]: Creates a governance set whitelist of addresses that can bypass the normal pool creation restrictions on concentrated liquidity pools * [#6623](https://github.com/osmosis-labs/osmosis/pull/6420) feat: transfer cl positions to new owner From a88b036e6abc86bfb691a193af4243f97f078216 Mon Sep 17 00:00:00 2001 From: emidev98 Date: Thu, 30 Nov 2023 07:59:31 +0200 Subject: [PATCH 5/5] feat: add unescape to before send hooks --- x/tokenfactory/keeper/grpc_query.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/x/tokenfactory/keeper/grpc_query.go b/x/tokenfactory/keeper/grpc_query.go index 0c5098a298a..24d62ffc3a8 100644 --- a/x/tokenfactory/keeper/grpc_query.go +++ b/x/tokenfactory/keeper/grpc_query.go @@ -41,6 +41,10 @@ func (k Keeper) DenomsFromCreator(ctx context.Context, req *types.QueryDenomsFro func (k Keeper) BeforeSendHookAddress(ctx context.Context, req *types.QueryBeforeSendHookAddressRequest) (*types.QueryBeforeSendHookAddressResponse, error) { sdkCtx := sdk.UnwrapSDKContext(ctx) + decodedDenom, err := url.QueryUnescape(req.Denom) + if err == nil { + req.Denom = decodedDenom + } cosmwasmAddress := k.GetBeforeSendHook(sdkCtx, req.GetDenom())