Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: add module name to message server #14352

Closed
wants to merge 4 commits into from
Closed

Conversation

tac0turtle
Copy link
Member

@tac0turtle tac0turtle commented Dec 18, 2022

Description

this pr uses store keys as module message url identifiers instead of a string search.

this can also be used to wrap errors on return of message result removing the need to register errors

attempt to close: #14295

this is a bit hacky but safer then strings.Split(".") imo


Author Checklist

All items are required. Please add a note to the item if the item is not applicable and
please add links to any relevant follow up issues.

I have...

  • included the correct type prefix in the PR title
  • added ! to the type prefix if API or client breaking change
  • targeted the correct branch (see PR Targeting)
  • provided a link to the relevant issue or specification
  • followed the guidelines for building modules
  • included the necessary unit and integration tests
  • added a changelog entry to CHANGELOG.md
  • included comments for documenting Go code
  • updated the relevant documentation or specification
  • reviewed "Files changed" and left comments if necessary
  • confirmed all CI checks have passed

Reviewers Checklist

All items are required. Please add a note if the item is not applicable and please add
your handle next to the items reviewed if you only reviewed selected items.

I have...

  • confirmed the correct type prefix in the PR title
  • confirmed ! in the type prefix if API or client breaking change
  • confirmed all author checklist items have been addressed
  • reviewed state machine logic
  • reviewed API design and naming
  • reviewed documentation is accurate
  • reviewed tests and test coverage
  • manually tested (if applicable)

@tac0turtle tac0turtle changed the title add way to add modules to message service router for errors and events refactor: add module name to message server Dec 18, 2022
Comment on lines +166 to +172
for k := range msr.names {
if strings.Contains(msgUrl, k) {
if !strings.Contains(k, ":") { // avoid setting moduleurl to storekeys like transient:params
msr.moduleNames[msgUrl] = k // put the module name on the message url
}
}
}

Check failure

Code scanning / gosec

the value in the range statement should be _ unless copying a map: want: for key := range m

got *ast.IfStmt; expected exactly 1 statement (either append or delete) in a range with a map
Comment on lines +166 to +172
for k := range msr.names {
if strings.Contains(msgUrl, k) {
if !strings.Contains(k, ":") { // avoid setting moduleurl to storekeys like transient:params
msr.moduleNames[msgUrl] = k // put the module name on the message url
}
}
}

Check warning

Code scanning / CodeQL

Iteration over map

Iteration over map may be a possible source of non-determinism
@tac0turtle
Copy link
Member Author

I think we may need something similar for queries in the future to fill remove the need to register errors with module names if that path is chosen.

@julienrbrt
Copy link
Member

Closing in favor of #14356

@julienrbrt julienrbrt closed this Dec 19, 2022
@julienrbrt julienrbrt deleted the marko/module_name branch December 19, 2022 17:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

event attribute value for sdk.AttributeKeyModule is incorrectly determined with ibc-go Msg types
2 participants