-
Notifications
You must be signed in to change notification settings - Fork 106
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
golangci-lint #358
golangci-lint #358
Conversation
Did I miss something? If there is a fork, it would be good to know the place, so we can link it for people interested. I got this question from some people wishing to use an interpreter |
Ah, no fork Sorry, don't mean to alarm. This is how I start any code task, clean out the repo & automate as much as possible. In fact, what I'd like to see happen, is that we have mutually compatible implementations: Contracts are exactly the same. When we run those contracts in a go environment (ex: wasmd) they run without cgo dependencies When we eg: cw-sdk, they run rust only (as they already do) Goal: when we run CosmWasm contracts on a chain written in Go, we do so without using cgo because it makes performance wonky in every case I see it used. Goal: when we use the cw-sdk, we all light a candle for larry. |
@webmaster128 Please let me know if you're good merging this PR, I am more than happy to handle its integration into wasmd. Goal: you change nothing and continue to do your thing in rust. PS if this doesn't work please let me know. concerning the question of a cgo-less fork, take this PR and the others that I made today, and this will form the basis of it. But the goal is actually to make cw much faster in go chains, and change nothing in rust. Anyhow, all code will be PR'd to this repo :) |
Looks like some nice changes in the diff. We already have a Go sanity job in CircleCI and the tools should probably go there instead of introducing GitHub Actions here. Getting rid of cgo is certainly not a goal any time soon. I'll try to look into this around mid November. |
ok man, it is definitely not the biggest hurry. Notes:
So, those are done now, and basically my plan is I will make a branch, using all of those. After that we.... well, yes, I agree with you, it will be a hard ride to work out the right way to run the wasm in go only. However when that is done, I suspect that go chains will run things much more smoothly. Some folks have always wondered why I am pretty strict on all of the items above-- basically, from there, I have a base where my editor is much more useful. All warnings have been eliminated, and making modifications is much easier. |
basically, linting is an important best practice, which helps to prevent bugs. |
I just tried to enable |
I did it manually, to prevent bugs. It took a long time. Stylecheck might not be the most important linter. Some of the other linters, certainly found bugs. |
I'm happy for those changes to get in, but could you do them one by one using our existing linter setup? There is I was looking at |
You use disable-all: true to ensure that nothing random gets in there. I am currently doing testifylint. Sir, tbh, the linting shows a LOT of issues. I will make PRs provided that you'll review them and quit canceling contributors. Do understand: this PR was complete, years ago. And showed the issues then, too. |
for example.... basically there is a lot of test here, that is not test. And more. Much more. I needed testifylint to work on the go implementation of the VM. Please, don't view that as a competitive effort. The fact is I have seen cosmwasm work out very well as a language, but libwasmvm isn't very good, mainly because of all of the interop stuff. Would be interesting to |
Golangci-lint github action and golangci lint configuration.
All PR's just submitted will be used in the base of the wasmerless cosmwasm, but are also good for the wasmer version.