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

Update Go Module to Go 1.20 Minimum #1245

Closed
bflad opened this issue Sep 6, 2023 · 1 comment · Fixed by #1246
Closed

Update Go Module to Go 1.20 Minimum #1245

bflad opened this issue Sep 6, 2023 · 1 comment · Fixed by #1246
Assignees
Labels
enhancement New feature or request
Milestone

Comments

@bflad
Copy link
Member

bflad commented Sep 6, 2023

terraform-plugin-sdk version

2.28.0

Use cases

Following the Go support policy and given the ecosystem availability of the latest Go minor version, it's time to upgrade. This will ensure that this project can use recent improvements to the Go runtime, standard library functionality, and continue to receive security updates.

Proposal

  • Run the following commands to upgrade the Go module files and automatically fix outdated Go code:
go mod edit -go=1.20
go mod tidy
go fix ./...
cd tools
go mod edit -go=1.20
go mod tidy
  • Ensure any GitHub Actions workflows (.github/workflows/*.yml) use 1.21 in place of any 1.20 and 1.20 in place of any 1.19 or earlier
  • Ensure the README or any Contributing documentation notes the Go 1.20 expected minimum

References

@bflad bflad added the enhancement New feature or request label Sep 6, 2023
@bflad bflad added this to the v2.29.0 milestone Sep 6, 2023
@bflad bflad self-assigned this Sep 6, 2023
bflad added a commit that referenced this issue Sep 6, 2023
bflad added a commit that referenced this issue Sep 6, 2023
Reference: https://pkg.go.dev/math/rand#Seed
Reference: #1245

Previously from `golangci-lint` after Go 1.20 upgrade:

```
helper/acctest/random.go:24:2: SA1019: rand.Seed has been deprecated since Go 1.20 and an alternative has been available since Go 1.0: As of Go 1.20 there is no reason to call Seed with a random value. Programs that call Seed with a known value to get a specific sequence of results should use New(NewSource(seed)) to obtain a local random generator. (staticcheck)
	rand.Seed(time.Now().UTC().UnixNano())
	^
```
techknowlogick pushed a commit to go-gitea/terraform-provider-gitea that referenced this issue Sep 8, 2023
… to v2.29.0 (#17)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [github.com/hashicorp/terraform-plugin-sdk/v2](https://github.com/hashicorp/terraform-plugin-sdk) | require | minor | `v2.27.0` -> `v2.29.0` |

---

### Release Notes

<details>
<summary>hashicorp/terraform-plugin-sdk (github.com/hashicorp/terraform-plugin-sdk/v2)</summary>

### [`v2.29.0`](https://github.com/hashicorp/terraform-plugin-sdk/releases/tag/v2.29.0)

[Compare Source](hashicorp/terraform-plugin-sdk@v2.28.0...v2.29.0)

NOTES:

-   all: This Go module has been updated to Go 1.20 per the [Go support policy](https://go.dev/doc/devel/release#policy). It is recommended to review the [Go 1.20 release notes](https://go.dev/doc/go1.20) before upgrading. Any consumers building on earlier Go versions may experience errors. ([#&#8203;1245](hashicorp/terraform-plugin-sdk#1245))

FEATURES:

-   helper/schema: Upgrade to protocol version 5.4, which can significantly reduce memory usage with Terraform 1.6 and later when a configuration includes multiple instances of the same provider ([#&#8203;1234](hashicorp/terraform-plugin-sdk#1234))

ENHANCEMENTS:

-   helper/validation: Added `AllDiag` and `AnyDiag`, which are `SchemaValidateDiagFunc` variants of `All` and `Any` ([#&#8203;1155](hashicorp/terraform-plugin-sdk#1155))
-   helper/validation: Added quoting in `StringInSlice` error diagnostic output to prevent confusion with values that contain spaces ([#&#8203;464](hashicorp/terraform-plugin-sdk#464))

### [`v2.28.0`](https://github.com/hashicorp/terraform-plugin-sdk/releases/tag/v2.28.0)

[Compare Source](hashicorp/terraform-plugin-sdk@v2.27.0...v2.28.0)

NOTES:

-   helper/schema: The `Resource` type `EnableApplyLegacyTypeSystemErrors` and `EnablePlanLegacyTypeSystemErrors` fields can be enabled to more easily discover resource data consistency errors which Terraform would normally demote to warning logs. Before enabling the flag in a production release for a resource, the resource should be exhaustively acceptance tested as there may be unrecoverable error situations for practitioners. It is recommended to first enable and test in environments where it is easy to clean up resources, potentially outside of Terraform. ([#&#8203;1227](hashicorp/terraform-plugin-sdk#1227))

ENHANCEMENTS:

-   helper/schema: Added `Resource` type `EnableLegacyTypeSystemApplyErrors` field, which will prevent Terraform from demoting data consistency errors to warning logs during `ApplyResourceChange` (`Create`, `Update`, and `Delete`) operations with the resource ([#&#8203;1227](hashicorp/terraform-plugin-sdk#1227))
-   helper/schema: Added `Resource` type `EnableLegacyTypeSystemPlanErrors` field, which can be used to prevent Terraform from demoting data consistency errors to warning logs during `PlanResourceChange` operations with the resource ([#&#8203;1227](hashicorp/terraform-plugin-sdk#1227))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNi43OS4xIiwidXBkYXRlZEluVmVyIjoiMzYuNzkuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Reviewed-on: https://gitea.com/gitea/terraform-provider-gitea/pulls/17
Co-authored-by: Renovate Bot <renovate-bot@gitea.com>
Co-committed-by: Renovate Bot <renovate-bot@gitea.com>
@github-actions
Copy link

github-actions bot commented Oct 7, 2023

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Oct 7, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant