Revert go version change and mariadb.

This commit is contained in:
go-jet 2025-03-09 18:22:31 +01:00
parent 950b33191e
commit 97f1b46352
9 changed files with 19 additions and 16 deletions

View file

@ -8,7 +8,7 @@ jobs:
build_and_tests: build_and_tests:
docker: docker:
# specify the version # specify the version
- image: cimg/go:1.23.6 - image: cimg/go:1.22.8
# Please keep the version in sync with test/docker-compose.yaml # Please keep the version in sync with test/docker-compose.yaml
- image: cimg/postgres:14.1 - image: cimg/postgres:14.1

View file

@ -11,7 +11,7 @@ permissions:
contents: read contents: read
env: env:
go_version: "1.23.6" go_version: "1.22.8"
jobs: jobs:

2
go.mod
View file

@ -1,6 +1,6 @@
module github.com/go-jet/jet/v2 module github.com/go-jet/jet/v2
go 1.21 go 1.22
// used by jet generator // used by jet generator
require ( require (

View file

@ -61,6 +61,7 @@ func (s *SQLBuilder) WriteProjections(statement StatementType, projections []Pro
s.DecreaseIdent() s.DecreaseIdent()
} }
// WriteRowToJsonProjections serializes slice of projections intended for row_to_json json aggregation
func (s *SQLBuilder) WriteRowToJsonProjections(statement StatementType, projections []Projection) { func (s *SQLBuilder) WriteRowToJsonProjections(statement StatementType, projections []Projection) {
for i, projection := range projections { for i, projection := range projections {
if i > 0 { if i > 0 {
@ -109,6 +110,7 @@ func (s *SQLBuilder) WriteString(str string) {
s.write([]byte(str)) s.write([]byte(str))
} }
// WriteJsonObjKey serializes json object key
func (s *SQLBuilder) WriteJsonObjKey(key string) { func (s *SQLBuilder) WriteJsonObjKey(key string) {
s.WriteString(fmt.Sprintf(`'%s', `, key)) s.WriteString(fmt.Sprintf(`'%s', `, key))
} }

View file

@ -10,7 +10,7 @@ import (
) )
var ( var (
castOverFlowError = fmt.Errorf("cannot cast a negative value to an unsigned value, buffer overflow error") errCastOverFlow = fmt.Errorf("cannot cast a negative value to an unsigned value, buffer overflow error")
) )
// NullBool struct // NullBool struct
@ -92,31 +92,31 @@ func (n *NullUInt64) Scan(value interface{}) error {
return nil return nil
case int64: case int64:
if v < 0 { if v < 0 {
return castOverFlowError return errCastOverFlow
} }
n.UInt64, n.Valid = uint64(v), true n.UInt64, n.Valid = uint64(v), true
return nil return nil
case int32: case int32:
if v < 0 { if v < 0 {
return castOverFlowError return errCastOverFlow
} }
n.UInt64, n.Valid = uint64(v), true n.UInt64, n.Valid = uint64(v), true
return nil return nil
case int16: case int16:
if v < 0 { if v < 0 {
return castOverFlowError return errCastOverFlow
} }
n.UInt64, n.Valid = uint64(v), true n.UInt64, n.Valid = uint64(v), true
return nil return nil
case int8: case int8:
if v < 0 { if v < 0 {
return castOverFlowError return errCastOverFlow
} }
n.UInt64, n.Valid = uint64(v), true n.UInt64, n.Valid = uint64(v), true
return nil return nil
case int: case int:
if v < 0 { if v < 0 {
return castOverFlowError return errCastOverFlow
} }
n.UInt64, n.Valid = uint64(v), true n.UInt64, n.Valid = uint64(v), true
return nil return nil

View file

@ -103,25 +103,25 @@ func TestNullUInt64(t *testing.T) {
//Validate negative use cases //Validate negative use cases
err := nullUInt64.Scan(int64(-5)) err := nullUInt64.Scan(int64(-5))
assert.NotNil(t, err) assert.NotNil(t, err)
assert.Error(t, err, castOverFlowError) assert.Error(t, err, errCastOverFlow)
//Validate negative use cases //Validate negative use cases
err = nullUInt64.Scan(-5) err = nullUInt64.Scan(-5)
assert.NotNil(t, err) assert.NotNil(t, err)
assert.Error(t, err, castOverFlowError) assert.Error(t, err, errCastOverFlow)
//Validate negative use cases //Validate negative use cases
err = nullUInt64.Scan(int32(-5)) err = nullUInt64.Scan(int32(-5))
assert.NotNil(t, err) assert.NotNil(t, err)
assert.Error(t, err, castOverFlowError) assert.Error(t, err, errCastOverFlow)
//Validate negative use cases //Validate negative use cases
err = nullUInt64.Scan(int16(-5)) err = nullUInt64.Scan(int16(-5))
assert.NotNil(t, err) assert.NotNil(t, err)
assert.Error(t, err, castOverFlowError) assert.Error(t, err, errCastOverFlow)
//Validate negative use cases //Validate negative use cases
err = nullUInt64.Scan(int8(-5)) err = nullUInt64.Scan(int8(-5))
assert.NotNil(t, err) assert.NotNil(t, err)
assert.Error(t, err, castOverFlowError) assert.Error(t, err, errCastOverFlow)
} }

View file

@ -50,6 +50,7 @@ var Decimal = jet.Decimal
// String creates new string literal expression // String creates new string literal expression
var String = jet.String var String = jet.String
// Blob creates new blob literal expression
func Blob(data []byte) BlobExpression { func Blob(data []byte) BlobExpression {
return BlobExp(jet.Literal(data)) return BlobExp(jet.Literal(data))
} }

View file

@ -26,7 +26,7 @@ services:
- ./testdata/init/mysql:/docker-entrypoint-initdb.d - ./testdata/init/mysql:/docker-entrypoint-initdb.d
mariadb: mariadb:
image: mariadb:11.7 image: mariadb:11.4
command: ['--default-authentication-plugin=mysql_native_password', '--log_bin_trust_function_creators=1'] command: ['--default-authentication-plugin=mysql_native_password', '--log_bin_trust_function_creators=1']
restart: always restart: always
environment: environment:

View file

@ -2,8 +2,8 @@ package sqlite
import ( import (
"github.com/go-jet/jet/v2/internal/testutils" "github.com/go-jet/jet/v2/internal/testutils"
"github.com/go-jet/jet/v2/qrm"
"github.com/go-jet/jet/v2/internal/utils/ptr" "github.com/go-jet/jet/v2/internal/utils/ptr"
"github.com/go-jet/jet/v2/qrm"
"github.com/stretchr/testify/require" "github.com/stretchr/testify/require"
"testing" "testing"