diff --git a/pkg/pgutils/utils.go b/pkg/pgutils/utils.go index f207ff2..b9681d2 100644 --- a/pkg/pgutils/utils.go +++ b/pkg/pgutils/utils.go @@ -15,6 +15,7 @@ const ( MajorVersion13 = "13" MajorVersion14 = "14" MajorVersion15 = "15" + MajorVersion16 = "16" ) const ( @@ -45,7 +46,7 @@ func ToPGMajorVersion(val string) (string, error) { return "", fmt.Errorf(errCouldNotParseVersionFmt, val) } switch res[1] { - case MajorVersion10, MajorVersion11, MajorVersion12, MajorVersion13, MajorVersion14, MajorVersion15: + case MajorVersion10, MajorVersion11, MajorVersion12, MajorVersion13, MajorVersion14, MajorVersion15, MajorVersion16: return res[1], nil case "7", "8", "9": return res[1] + res[2], nil diff --git a/pkg/tstune/utils.go b/pkg/tstune/utils.go index 1ef679b..07554f1 100644 --- a/pkg/tstune/utils.go +++ b/pkg/tstune/utils.go @@ -12,6 +12,7 @@ import ( // ValidPGVersions is a slice representing the major versions of PostgreSQL // for which recommendations can be generated. var ValidPGVersions = []string{ + pgutils.MajorVersion16, pgutils.MajorVersion15, pgutils.MajorVersion14, pgutils.MajorVersion13, diff --git a/pkg/tstune/utils_test.go b/pkg/tstune/utils_test.go index 211ebf7..dd9882d 100644 --- a/pkg/tstune/utils_test.go +++ b/pkg/tstune/utils_test.go @@ -119,6 +119,7 @@ func TestGetPGMajorVersion(t *testing.T) { okPath13 := "pg_config_13" okPath14 := "pg_config_14" okPath15 := "pg_config_15" + okPath16 := "pg_config_16" okPath95 := "pg_config_9.5" okPath60 := "pg_config_6.0" cases := []struct { @@ -195,6 +196,8 @@ func TestGetPGMajorVersion(t *testing.T) { return "PostgreSQL 14.0", nil case okPath15: return "PostgreSQL 15.0", nil + case okPath16: + return "PostgreSQL 16.0", nil default: return "", exec.ErrNotFound } @@ -231,6 +234,7 @@ func TestValidatePGMajorVersion(t *testing.T) { pgutils.MajorVersion13: true, pgutils.MajorVersion14: true, pgutils.MajorVersion15: true, + pgutils.MajorVersion16: true, "9.5": false, "1.2.3": false, "9.6.6": false,