Skip to content

Commit

Permalink
Bump compatibility version to 1.3.0 for terraform core release (#30988)
Browse files Browse the repository at this point in the history
* Bump compatibility version to 1.3.0 for terraform core release

Co-authored-by: Brandon Croft <brandon.croft@gmail.com>
  • Loading branch information
annawinkler and brandonc committed May 3, 2022
1 parent 2f32007 commit 22c121d
Show file tree
Hide file tree
Showing 5 changed files with 10 additions and 10 deletions.
6 changes: 3 additions & 3 deletions internal/backend/remote/backend.go
Original file line number Diff line number Diff line change
Expand Up @@ -939,9 +939,9 @@ func (b *Remote) VerifyWorkspaceTerraformVersion(workspaceName string) tfdiags.D
// are aware of are:
//
// - 0.14.0 is guaranteed to be compatible with versions up to but not
// including 1.2.0
v120 := version.Must(version.NewSemver("1.2.0"))
if tfversion.SemVer.LessThan(v120) && remoteVersion.LessThan(v120) {
// including 1.3.0
v130 := version.Must(version.NewSemver("1.3.0"))
if tfversion.SemVer.LessThan(v130) && remoteVersion.LessThan(v130) {
return diags
}
// - Any new Terraform state version will require at least minor patch
Expand Down
2 changes: 1 addition & 1 deletion internal/backend/remote/backend_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -567,7 +567,7 @@ func TestRemote_VerifyWorkspaceTerraformVersion(t *testing.T) {
{"0.14.0", "0.14.1", "remote", false},
{"0.14.0", "1.0.99", "remote", false},
{"0.14.0", "1.1.0", "remote", false},
{"0.14.0", "1.2.0", "remote", true},
{"0.14.0", "1.3.0", "remote", true},
{"1.2.0", "1.2.99", "remote", false},
{"1.2.0", "1.3.0", "remote", true},
{"0.15.0", "latest", "remote", false},
Expand Down
10 changes: 5 additions & 5 deletions internal/cloud/backend.go
Original file line number Diff line number Diff line change
Expand Up @@ -865,12 +865,12 @@ func (b *Cloud) VerifyWorkspaceTerraformVersion(workspaceName string) tfdiags.Di
// operator other than simple equality.
if remoteVersion != nil && remoteVersion.Prerelease() == "" {
v014 := version.Must(version.NewSemver("0.14.0"))
v120 := version.Must(version.NewSemver("1.2.0"))
v130 := version.Must(version.NewSemver("1.3.0"))

// Versions from 0.14 through the early 1.x series should be compatible
// (though we don't know about 1.2 yet).
if remoteVersion.GreaterThanOrEqual(v014) && remoteVersion.LessThan(v120) {
early1xCompatible, err := version.NewConstraint(fmt.Sprintf(">= 0.14.0, < %s", v120.String()))
// (though we don't know about 1.3 yet).
if remoteVersion.GreaterThanOrEqual(v014) && remoteVersion.LessThan(v130) {
early1xCompatible, err := version.NewConstraint(fmt.Sprintf(">= 0.14.0, < %s", v130.String()))
if err != nil {
panic(err)
}
Expand All @@ -879,7 +879,7 @@ func (b *Cloud) VerifyWorkspaceTerraformVersion(workspaceName string) tfdiags.Di

// Any future new state format will require at least a minor version
// increment, so x.y.* will always be compatible with each other.
if remoteVersion.GreaterThanOrEqual(v120) {
if remoteVersion.GreaterThanOrEqual(v130) {
rwvs := remoteVersion.Segments64()
if len(rwvs) >= 3 {
// ~> x.y.0
Expand Down
2 changes: 1 addition & 1 deletion internal/cloud/backend_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -974,7 +974,7 @@ func TestCloud_VerifyWorkspaceTerraformVersion(t *testing.T) {
{"0.14.0", "0.14.1", "remote", false},
{"0.14.0", "1.0.99", "remote", false},
{"0.14.0", "1.1.0", "remote", false},
{"0.14.0", "1.2.0", "remote", true},
{"0.14.0", "1.3.0", "remote", true},
{"1.2.0", "1.2.99", "remote", false},
{"1.2.0", "1.3.0", "remote", true},
{"0.15.0", "latest", "remote", false},
Expand Down
Binary file added terraform
Binary file not shown.

0 comments on commit 22c121d

Please sign in to comment.