Skip to content

Commit 1a082c7

Browse files
chore: Remove IBC fees (#2479)
* chore: Remove IBC fees * [autofix.ci] apply automated fixes --------- Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
1 parent 75a130a commit 1a082c7

File tree

11 files changed

+8
-543
lines changed

11 files changed

+8
-543
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ and this project adheres to
8989
primary cosmwasm_std dependency of a contract.
9090
- cosmwasm-vm: Enable partial reference-type support, enabling contracts
9191
compiled with Rust 1.82 or newer to be stored. ([#2473])
92+
- cosmwasm-std: Removed IBC fees ([#2479])
9293

9394
## Fixed
9495

@@ -132,6 +133,7 @@ and this project adheres to
132133
[#2472]: https://github.com/CosmWasm/cosmwasm/pull/2472
133134
[#2473]: https://github.com/CosmWasm/cosmwasm/pull/2473
134135
[#2477]: https://github.com/CosmWasm/cosmwasm/pull/2477
136+
[#2479]: https://github.com/CosmWasm/cosmwasm/pull/2479
135137
[#2480]: https://github.com/CosmWasm/cosmwasm/pull/2480
136138

137139
## [2.2.0] - 2024-12-17

contracts/ibc-reflect/schema/ibc/packet_msg.json

Lines changed: 0 additions & 116 deletions
Original file line numberDiff line numberDiff line change
@@ -423,35 +423,6 @@
423423
},
424424
"additionalProperties": false
425425
},
426-
"IbcFee": {
427-
"type": "object",
428-
"required": [
429-
"ack_fee",
430-
"receive_fee",
431-
"timeout_fee"
432-
],
433-
"properties": {
434-
"ack_fee": {
435-
"type": "array",
436-
"items": {
437-
"$ref": "#/definitions/Coin"
438-
}
439-
},
440-
"receive_fee": {
441-
"type": "array",
442-
"items": {
443-
"$ref": "#/definitions/Coin"
444-
}
445-
},
446-
"timeout_fee": {
447-
"type": "array",
448-
"items": {
449-
"$ref": "#/definitions/Coin"
450-
}
451-
}
452-
},
453-
"additionalProperties": false
454-
},
455426
"IbcMsg": {
456427
"description": "These are messages in the IBC lifecycle. Only usable by IBC-enabled contracts (contracts that directly speak the IBC protocol via 6 entry points)",
457428
"oneOf": [
@@ -603,93 +574,6 @@
603574
}
604575
},
605576
"additionalProperties": false
606-
},
607-
{
608-
"description": "Incentivizes the next IBC packet sent after this message with a fee. Note that this does not necessarily have to be a packet sent by this contract. The fees are taken from the contract's balance immediately and locked until the packet is handled.\n\n# Example\n\nMost commonly, you will attach this message to a response right before sending a packet using [`IbcMsg::SendPacket`] or [`IbcMsg::Transfer`].\n\n```rust # use cosmwasm_std::{IbcMsg, IbcEndpoint, IbcFee, IbcTimeout, Coin, coins, CosmosMsg, Response, Timestamp};\n\nlet incentivize = IbcMsg::PayPacketFee { port_id: \"transfer\".to_string(), channel_id: \"source-channel\".to_string(), fee: IbcFee { receive_fee: coins(100, \"token\"), ack_fee: coins(201, \"token\"), timeout_fee: coins(200, \"token\"), }, relayers: vec![], }; let transfer = IbcMsg::Transfer { channel_id: \"source-channel\".to_string(), to_address: \"receiver\".to_string(), amount: Coin::new(100u32, \"token\"), timeout: IbcTimeout::with_timestamp(Timestamp::from_nanos(0)), memo: None, };\n\n# #[cfg(feature = \"stargate\")] let _: Response = Response::new() .add_message(CosmosMsg::Ibc(incentivize)) .add_message(CosmosMsg::Ibc(transfer)); ```",
609-
"type": "object",
610-
"required": [
611-
"pay_packet_fee"
612-
],
613-
"properties": {
614-
"pay_packet_fee": {
615-
"type": "object",
616-
"required": [
617-
"channel_id",
618-
"fee",
619-
"port_id",
620-
"relayers"
621-
],
622-
"properties": {
623-
"channel_id": {
624-
"description": "The channel id on the chain where the packet is sent from (this chain).",
625-
"type": "string"
626-
},
627-
"fee": {
628-
"$ref": "#/definitions/IbcFee"
629-
},
630-
"port_id": {
631-
"description": "The port id on the chain where the packet is sent from (this chain).",
632-
"type": "string"
633-
},
634-
"relayers": {
635-
"description": "Allowlist of relayer addresses that can receive the fee. An empty list means that any relayer can receive the fee.\n\nThis is currently not implemented and *must* be empty.",
636-
"type": "array",
637-
"items": {
638-
"type": "string"
639-
}
640-
}
641-
},
642-
"additionalProperties": false
643-
}
644-
},
645-
"additionalProperties": false
646-
},
647-
{
648-
"description": "Incentivizes the existing IBC packet with the given port, channel and sequence with a fee. Note that this does not necessarily have to be a packet sent by this contract. The fees are taken from the contract's balance immediately and locked until the packet is handled. They are added to the existing fees on the packet.",
649-
"type": "object",
650-
"required": [
651-
"pay_packet_fee_async"
652-
],
653-
"properties": {
654-
"pay_packet_fee_async": {
655-
"type": "object",
656-
"required": [
657-
"channel_id",
658-
"fee",
659-
"port_id",
660-
"relayers",
661-
"sequence"
662-
],
663-
"properties": {
664-
"channel_id": {
665-
"description": "The channel id on the chain where the packet is sent from (this chain).",
666-
"type": "string"
667-
},
668-
"fee": {
669-
"$ref": "#/definitions/IbcFee"
670-
},
671-
"port_id": {
672-
"description": "The port id on the chain where the packet is sent from (this chain).",
673-
"type": "string"
674-
},
675-
"relayers": {
676-
"description": "Allowlist of relayer addresses that can receive the fee. An empty list means that any relayer can receive the fee.\n\nThis is currently not implemented and *must* be empty.",
677-
"type": "array",
678-
"items": {
679-
"type": "string"
680-
}
681-
},
682-
"sequence": {
683-
"description": "The sequence number of the packet that should be incentivized.",
684-
"type": "integer",
685-
"format": "uint64",
686-
"minimum": 0.0
687-
}
688-
},
689-
"additionalProperties": false
690-
}
691-
},
692-
"additionalProperties": false
693577
}
694578
]
695579
},

contracts/reflect/schema/raw/execute.json

Lines changed: 0 additions & 116 deletions
Original file line numberDiff line numberDiff line change
@@ -488,35 +488,6 @@
488488
},
489489
"additionalProperties": false
490490
},
491-
"IbcFee": {
492-
"type": "object",
493-
"required": [
494-
"ack_fee",
495-
"receive_fee",
496-
"timeout_fee"
497-
],
498-
"properties": {
499-
"ack_fee": {
500-
"type": "array",
501-
"items": {
502-
"$ref": "#/definitions/Coin"
503-
}
504-
},
505-
"receive_fee": {
506-
"type": "array",
507-
"items": {
508-
"$ref": "#/definitions/Coin"
509-
}
510-
},
511-
"timeout_fee": {
512-
"type": "array",
513-
"items": {
514-
"$ref": "#/definitions/Coin"
515-
}
516-
}
517-
},
518-
"additionalProperties": false
519-
},
520491
"IbcMsg": {
521492
"description": "These are messages in the IBC lifecycle. Only usable by IBC-enabled contracts (contracts that directly speak the IBC protocol via 6 entry points)",
522493
"oneOf": [
@@ -668,93 +639,6 @@
668639
}
669640
},
670641
"additionalProperties": false
671-
},
672-
{
673-
"description": "Incentivizes the next IBC packet sent after this message with a fee. Note that this does not necessarily have to be a packet sent by this contract. The fees are taken from the contract's balance immediately and locked until the packet is handled.\n\n# Example\n\nMost commonly, you will attach this message to a response right before sending a packet using [`IbcMsg::SendPacket`] or [`IbcMsg::Transfer`].\n\n```rust # use cosmwasm_std::{IbcMsg, IbcEndpoint, IbcFee, IbcTimeout, Coin, coins, CosmosMsg, Response, Timestamp};\n\nlet incentivize = IbcMsg::PayPacketFee { port_id: \"transfer\".to_string(), channel_id: \"source-channel\".to_string(), fee: IbcFee { receive_fee: coins(100, \"token\"), ack_fee: coins(201, \"token\"), timeout_fee: coins(200, \"token\"), }, relayers: vec![], }; let transfer = IbcMsg::Transfer { channel_id: \"source-channel\".to_string(), to_address: \"receiver\".to_string(), amount: Coin::new(100u32, \"token\"), timeout: IbcTimeout::with_timestamp(Timestamp::from_nanos(0)), memo: None, };\n\n# #[cfg(feature = \"stargate\")] let _: Response = Response::new() .add_message(CosmosMsg::Ibc(incentivize)) .add_message(CosmosMsg::Ibc(transfer)); ```",
674-
"type": "object",
675-
"required": [
676-
"pay_packet_fee"
677-
],
678-
"properties": {
679-
"pay_packet_fee": {
680-
"type": "object",
681-
"required": [
682-
"channel_id",
683-
"fee",
684-
"port_id",
685-
"relayers"
686-
],
687-
"properties": {
688-
"channel_id": {
689-
"description": "The channel id on the chain where the packet is sent from (this chain).",
690-
"type": "string"
691-
},
692-
"fee": {
693-
"$ref": "#/definitions/IbcFee"
694-
},
695-
"port_id": {
696-
"description": "The port id on the chain where the packet is sent from (this chain).",
697-
"type": "string"
698-
},
699-
"relayers": {
700-
"description": "Allowlist of relayer addresses that can receive the fee. An empty list means that any relayer can receive the fee.\n\nThis is currently not implemented and *must* be empty.",
701-
"type": "array",
702-
"items": {
703-
"type": "string"
704-
}
705-
}
706-
},
707-
"additionalProperties": false
708-
}
709-
},
710-
"additionalProperties": false
711-
},
712-
{
713-
"description": "Incentivizes the existing IBC packet with the given port, channel and sequence with a fee. Note that this does not necessarily have to be a packet sent by this contract. The fees are taken from the contract's balance immediately and locked until the packet is handled. They are added to the existing fees on the packet.",
714-
"type": "object",
715-
"required": [
716-
"pay_packet_fee_async"
717-
],
718-
"properties": {
719-
"pay_packet_fee_async": {
720-
"type": "object",
721-
"required": [
722-
"channel_id",
723-
"fee",
724-
"port_id",
725-
"relayers",
726-
"sequence"
727-
],
728-
"properties": {
729-
"channel_id": {
730-
"description": "The channel id on the chain where the packet is sent from (this chain).",
731-
"type": "string"
732-
},
733-
"fee": {
734-
"$ref": "#/definitions/IbcFee"
735-
},
736-
"port_id": {
737-
"description": "The port id on the chain where the packet is sent from (this chain).",
738-
"type": "string"
739-
},
740-
"relayers": {
741-
"description": "Allowlist of relayer addresses that can receive the fee. An empty list means that any relayer can receive the fee.\n\nThis is currently not implemented and *must* be empty.",
742-
"type": "array",
743-
"items": {
744-
"type": "string"
745-
}
746-
},
747-
"sequence": {
748-
"description": "The sequence number of the packet that should be incentivized.",
749-
"type": "integer",
750-
"format": "uint64",
751-
"minimum": 0.0
752-
}
753-
},
754-
"additionalProperties": false
755-
}
756-
},
757-
"additionalProperties": false
758642
}
759643
]
760644
},

contracts/reflect/schema/raw/query.json

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -378,34 +378,6 @@
378378
}
379379
},
380380
"additionalProperties": false
381-
},
382-
{
383-
"description": "Queries whether the given channel supports IBC fees. If port_id is omitted, it will default to the contract's own channel. (To save a PortId{} call)\n\nReturns a `FeeEnabledChannelResponse`.",
384-
"type": "object",
385-
"required": [
386-
"fee_enabled_channel"
387-
],
388-
"properties": {
389-
"fee_enabled_channel": {
390-
"type": "object",
391-
"required": [
392-
"channel_id"
393-
],
394-
"properties": {
395-
"channel_id": {
396-
"type": "string"
397-
},
398-
"port_id": {
399-
"type": [
400-
"string",
401-
"null"
402-
]
403-
}
404-
},
405-
"additionalProperties": false
406-
}
407-
},
408-
"additionalProperties": false
409381
}
410382
]
411383
},

0 commit comments

Comments
 (0)