osmosis icon indicating copy to clipboard operation
osmosis copied to clipboard

chore: go 1.19 for ci only and cleanup

Open faddat opened this issue 3 years ago • 5 comments

What is the purpose of the change

Go 1.19 adds some new cryptographic safety features.

https://tip.golang.org/doc/go1.19

Brief Changelog

  • golangci-lint run ./... --fix
  • replace ioutil
  • update docker and ci to go 1.19
  • update dependabot so that it covers github actions too. Many of ours are out of date.

Testing and Verifying

make test should pass, and this should pass all ci checks. It doesn't change functionality.

Documentation and Release Note

  • Does this pull request introduce a new feature or user-facing behavior changes? no
  • Is a relevant changelog entry added to the Unreleased section in CHANGELOG.md? yes
  • How is the feature or change documented? NA

faddat avatar Aug 08 '22 07:08 faddat

The proto docker image should be updated later today.

I noticed we're using super-linter-- fyi we dropped that from pylons; it kept giving us pretty poor results.

faddat avatar Aug 08 '22 07:08 faddat

The proto docker image should be updated later today.

I noticed we're using super-linter-- fyi we dropped that from pylons; it kept giving us pretty poor results.

thanks @faddat . super-linter is only used for linting markdowns, everything else is disabled

p0mvn avatar Aug 08 '22 14:08 p0mvn

I don't think we should update to go 1.19 immediately, I don't see much utility in forcing everyone to update their golang versions immediately

ValarDragon avatar Aug 08 '22 16:08 ValarDragon

@ValarDragon wasn't figuring that this should be immediate (backported) -- instead was figuring a next release thing.

Close the PR?

Also, regarding utility of this -- so, couple of things:

  • figure it's easier to have a standard dev env
  • figure the standard dev env should specify latest version of Go
  • by enforcing the latest version, I figure that we're creating clearer guidelines for devs and devs will get the same compiler warnings, etc. For example, 1.19 will warn about use of io/ioutil

wdyt?

Alternate, and maybe better suggestion:

update images, ci, and the like to go1.19 don't update go.mod

faddat avatar Aug 09 '22 05:08 faddat

I figure that this approach is better.

faddat avatar Aug 09 '22 07:08 faddat

These lint changes + CI changes differ from other osmosis standards (e.g. CI YML). (Its golang 1.19's job to ensure compat with v1.18 code)

Going to close this for now.

We have a separate decision whether to switch default things to 1.19 for oneof:

  • CI speed
  • Custom v1.19 features
  • etc.

(People can use any go version v1.18 or v1.19)

ValarDragon avatar Aug 19 '22 12:08 ValarDragon