cw-controllers are using CosmosMsg<Empty> (and relatives) when it comes to messaging. This is an issue, as it makes them unusable in chains which have their specific custom message (and there is no way to simply map those). The solution is simple - as those utilities are never using Custom, instead of returning cosmwasm_std::Response, they should return generic cosmwasm_std::Response<T>, for eg the cw_controllers::Admin::execute_udpate_admin may look like:
pub fn execute_update_admin<C>(...) -> Result<Response<C> { ... }
C should be easy to infer, as those calls are used to directly return them.
cw-controllersare usingCosmosMsg<Empty>(and relatives) when it comes to messaging. This is an issue, as it makes them unusable in chains which have their specific custom message (and there is no way to simply map those). The solution is simple - as those utilities are never usingCustom, instead of returningcosmwasm_std::Response, they should return genericcosmwasm_std::Response<T>, for eg thecw_controllers::Admin::execute_udpate_adminmay look like:C should be easy to infer, as those calls are used to directly return them.