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

ci: bump to golang v1.21 #1698

Merged
merged 5 commits into from
Dec 7, 2023
Merged

ci: bump to golang v1.21 #1698

merged 5 commits into from
Dec 7, 2023

Conversation

k-yang
Copy link
Member

@k-yang k-yang commented Dec 7, 2023

Description

Bumps the codebase to use Golang v1.21

Purpose

Potential language improvements, and the new version of rocksdb requires it.

Summary by CodeRabbit

  • Chores

    • Updated Go version from 1.19 to 1.21 across various GitHub Actions workflows to ensure compatibility and leverage improvements in the latest Go release.
    • Updated the base image in Dockerfiles from golang:1.19 to golang:1.21 to incorporate the latest features and optimizations available in the Go language.
    • Modified build scripts to use updated Go version and improved goreleaser flags for more efficient release processes.
  • Documentation

    • Updated CHANGELOG.md to reflect the latest changes, including state machine breaking changes, dependency updates, and version bumps for the next mainnet release.
  • Refactor

    • Adjusted file paths in release scripts to align with the new directory structure for macOS SDK resources.

Copy link
Contributor

coderabbitai bot commented Dec 7, 2023

Walkthrough

The changes across various files indicate a systematic update of the Go language version from 1.19 to 1.21 in the project's GitHub Actions workflows, Dockerfiles, and build scripts. This update likely aims to leverage improvements and new features in the latest Go release, ensuring the project's build and test environments are current.

Changes

File(s) Summary
.github/workflows/.../golangci-lint.yml
.github/workflows/.../integration-tests.yml
.github/workflows/.../sims.yml
.github/workflows/.../unit-tests.yml
Updated go-version from 1.19 to 1.21 in GitHub Actions workflows.
Dockerfile
contrib/docker/.../chaosnet.Dockerfile
contrib/docker/.../goreleaser.Dockerfile
Changed the base image from golang:1.19 to golang:1.21.
contrib/make/release.mk Updated GOLANG_CROSS_VERSION from v1.19.4 to v1.21.5 and modified goreleaser flags.
contrib/scripts/release_pre_darwin.sh Updated file paths for downloading and extracting libraries.
CHANGELOG.md Documented updates including state machine breaking changes, dependency version bumps, and other modifications.

🐇✨
In the realm of code, where the rabbits hop,
We've leapt from Go one-nine to one-two-one nonstop.
With each version new, our code does enhance,
In the dance of the bits, we take our chance. 🚀🌟


Tips

Chat with CodeRabbit Bot (@coderabbitai)

  • If you reply to a review comment from CodeRabbit, the bot will automatically respond.
  • To engage with CodeRabbit bot directly around the specific lines of code in the PR, mention @coderabbitai in your review comment
  • Note: Review comments are made on code diffs or files, not on the PR overview.
  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.

CodeRabbit Commands (invoked as PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger a review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai help to get help.

Note: For conversation with the bot, please use the review comments on code diffs or files.

CodeRabbit Configration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • The JSON schema for the configuration file is available here.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/coderabbit-overrides.v2.json

@k-yang k-yang marked this pull request as ready for review December 7, 2023 20:26
@k-yang k-yang requested a review from a team as a code owner December 7, 2023 20:26
@k-yang k-yang self-assigned this Dec 7, 2023
@k-yang k-yang added the dependencies Pull requests that update a dependency file label Dec 7, 2023
@k-yang k-yang enabled auto-merge (squash) December 7, 2023 20:26
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Status

Actionable comments generated: 2

Configuration used: CodeRabbit UI

Commits Files that changed from the base of the PR and between b4e380c and 61e44fc.
Files ignored due to filter (2)
  • go.mod
  • go.sum
Files selected for processing (10)
  • .github/workflows/golangci-lint.yml (1 hunks)
  • .github/workflows/integration-tests.yml (1 hunks)
  • .github/workflows/sims.yml (2 hunks)
  • .github/workflows/unit-tests.yml (2 hunks)
  • CHANGELOG.md (10 hunks)
  • Dockerfile (1 hunks)
  • contrib/docker/chaosnet.Dockerfile (1 hunks)
  • contrib/docker/goreleaser.Dockerfile (1 hunks)
  • contrib/make/release.mk (2 hunks)
  • contrib/scripts/release_pre_darwin.sh (1 hunks)
Files skipped from review due to trivial changes (5)
  • .github/workflows/unit-tests.yml
  • Dockerfile
  • contrib/docker/chaosnet.Dockerfile
  • contrib/make/release.mk
  • contrib/scripts/release_pre_darwin.sh
Additional comments: 10
.github/workflows/golangci-lint.yml (1)
  • 26-29: The update of the go-version to 1.21 in the GitHub Actions workflow is consistent with the PR objective to update the Go version used in the codebase. This change will ensure that the linter runs with the updated Go version.
.github/workflows/integration-tests.yml (1)
  • 24-29: The update of the go-version to 1.21 in the GitHub Actions workflow is consistent with the PR objective and the summary provided. This change will ensure that the integration tests are run using the updated Go version.
.github/workflows/sims.yml (2)
  • 11-17: The update of the go-version to 1.21 in the actions/setup-go step is consistent with the PR objective to upgrade the Go version used in the codebase. This change will ensure that the GitHub Actions workflow uses the correct version of Go for the install-runsim job.

  • 33-39: Similarly, the go-version is updated to 1.21 in the actions/setup-go step for the test-sim-nondeterminism job, aligning with the PR objective. This ensures that the testing environment is consistent with the new Go version.

CHANGELOG.md (5)
  • 43-49: The hunk correctly reflects the state machine breaking changes for the next mainnet version as mentioned in the summary.

  • 73-77: The hunk correctly reflects the dependency updates, including the bump of golang from 1.19 to 1.21, which aligns with the PR objective and the summary provided.

  • 93-106: The hunk shows state machine breaking changes for the v1.0.0 release, which is consistent with the summary provided.

  • 139-150: The hunk correctly reflects the dependency updates for the v1.0.0 release, which is consistent with the summary provided.

  • 440-447: The hunk correctly reflects the dependency updates for the v0.19.4 release, which is consistent with the summary provided.

contrib/docker/goreleaser.Dockerfile (1)
  • 1-4: The update to the base image from golang:1.19 to golang:1.21 is consistent with the PR objective to use Go version 1.21.

CHANGELOG.md Show resolved Hide resolved
Comment on lines 357 to 364
* [#1322](https://gitub.com/NibiruChain/nibiru/pull/1322) - build(deps): Bumps github.com/armon/go-metrics from 0.4.0 to 0.4.1.
* [#1319](https://github.com/NibiruChain/nibiru/pull/1319) - test: add integration test actions
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(testutil): Use secp256k1 algo for private key generation in common/testutil.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1315](https://github.com/NibiruChain/nibiru/pull/1315) - feat: oracle rewards distribution every week
* [#1315](https://github.com/NibiruChain/nibiru/pull/1315) - feat: oracle rewards distribution every week
* [#1312](https://github.com/NibiruChain/nibiru/pull/1312) - feat(wasm): wire depth shift handler to the wasm router
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a typo in the URL for the pull request #1322, which should be corrected to maintain the integrity of the changelog.

- * [#1322](https://gitub.com/NibiruChain/nibiru/pull/1322) - build(deps): Bumps github.com/armon/go-metrics from 0.4.0 to 0.4.1.
+ * [#1322](https://github.com/NibiruChain/nibiru/pull/1322) - build(deps): Bumps github.com/armon/go-metrics from 0.4.0 to 0.4.1.

Committable suggestion

IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation.

Suggested change
* [#1322](https://gitub.com/NibiruChain/nibiru/pull/1322) - build(deps): Bumps github.com/armon/go-metrics from 0.4.0 to 0.4.1.
* [#1319](https://github.com/NibiruChain/nibiru/pull/1319) - test: add integration test actions
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(testutil): Use secp256k1 algo for private key generation in common/testutil.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1315](https://github.com/NibiruChain/nibiru/pull/1315) - feat: oracle rewards distribution every week
* [#1315](https://github.com/NibiruChain/nibiru/pull/1315) - feat: oracle rewards distribution every week
* [#1312](https://github.com/NibiruChain/nibiru/pull/1312) - feat(wasm): wire depth shift handler to the wasm router
* [#1322](https://github.com/NibiruChain/nibiru/pull/1322) - build(deps): Bumps github.com/armon/go-metrics from 0.4.0 to 0.4.1.
* [#1319](https://github.com/NibiruChain/nibiru/pull/1319) - test: add integration test actions
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(testutil): Use secp256k1 algo for private key generation in common/testutil.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1317](https://github.com/NibiruChain/nibiru/pull/1317) - feat(sudo): Implement and test CLI commands for tx and queries.
* [#1315](https://github.com/NibiruChain/nibiru/pull/1315) - feat: oracle rewards distribution every week
* [#1315](https://github.com/NibiruChain/nibiru/pull/1315) - feat: oracle rewards distribution every week
* [#1312](https://github.com/NibiruChain/nibiru/pull/1312) - feat(wasm): wire depth shift handler to the wasm router

@k-yang k-yang merged commit f4d0933 into main Dec 7, 2023
21 checks passed
@k-yang k-yang deleted the ci/golang/go-v1.21 branch December 7, 2023 20:58
k-yang added a commit that referenced this pull request Dec 22, 2023
* feat: bump to golang v1.21

* ci: bump golang cross version to 1.21.5

* fix: osxcross directory changed

* Update CHANGELOG.md

Run markdown linter on changelog.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
Status: ✅ Completed
Development

Successfully merging this pull request may close these issues.

2 participants