removed the temp len binding as the issue was fixed in goja#521
This commit is contained in:
		
							parent
							
								
									93606c6647
								
							
						
					
					
						commit
						fc311a8d28
					
				
							
								
								
									
										58
									
								
								go.mod
								
								
								
								
							
							
						
						
									
										58
									
								
								go.mod
								
								
								
								
							| 
						 | 
					@ -3,11 +3,11 @@ module github.com/pocketbase/pocketbase
 | 
				
			||||||
go 1.18
 | 
					go 1.18
 | 
				
			||||||
 | 
					
 | 
				
			||||||
require (
 | 
					require (
 | 
				
			||||||
	github.com/AlecAivazis/survey/v2 v2.3.6
 | 
						github.com/AlecAivazis/survey/v2 v2.3.7
 | 
				
			||||||
	github.com/aws/aws-sdk-go v1.44.278
 | 
						github.com/aws/aws-sdk-go v1.44.286
 | 
				
			||||||
	github.com/disintegration/imaging v1.6.2
 | 
						github.com/disintegration/imaging v1.6.2
 | 
				
			||||||
	github.com/domodwyer/mailyak/v3 v3.6.0
 | 
						github.com/domodwyer/mailyak/v3 v3.6.0
 | 
				
			||||||
	github.com/dop251/goja v0.0.0-20230605162241-28ee0ee714f3
 | 
						github.com/dop251/goja v0.0.0-20230621100801-7749907a8a20
 | 
				
			||||||
	github.com/dop251/goja_nodejs v0.0.0-20230602164024-804a84515562
 | 
						github.com/dop251/goja_nodejs v0.0.0-20230602164024-804a84515562
 | 
				
			||||||
	github.com/fatih/color v1.15.0
 | 
						github.com/fatih/color v1.15.0
 | 
				
			||||||
	github.com/fsnotify/fsnotify v1.6.0
 | 
						github.com/fsnotify/fsnotify v1.6.0
 | 
				
			||||||
| 
						 | 
					@ -21,35 +21,33 @@ require (
 | 
				
			||||||
	github.com/pocketbase/tygoja v0.0.0-20230618203136-2f8d57768be1
 | 
						github.com/pocketbase/tygoja v0.0.0-20230618203136-2f8d57768be1
 | 
				
			||||||
	github.com/spf13/cast v1.5.1
 | 
						github.com/spf13/cast v1.5.1
 | 
				
			||||||
	github.com/spf13/cobra v1.7.0
 | 
						github.com/spf13/cobra v1.7.0
 | 
				
			||||||
	gocloud.dev v0.29.0
 | 
						gocloud.dev v0.30.0
 | 
				
			||||||
	golang.org/x/crypto v0.10.0
 | 
						golang.org/x/crypto v0.10.0
 | 
				
			||||||
	golang.org/x/net v0.11.0
 | 
						golang.org/x/net v0.11.0
 | 
				
			||||||
	golang.org/x/oauth2 v0.8.0
 | 
						golang.org/x/oauth2 v0.9.0
 | 
				
			||||||
	modernc.org/sqlite v1.23.0
 | 
						modernc.org/sqlite v1.23.1
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
require (
 | 
					require (
 | 
				
			||||||
	cloud.google.com/go v0.110.0 // indirect
 | 
					 | 
				
			||||||
	cloud.google.com/go/iam v0.13.0 // indirect
 | 
					 | 
				
			||||||
	github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
 | 
						github.com/asaskevich/govalidator v0.0.0-20230301143203-a9d515a09cc2 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2 v1.18.0 // indirect
 | 
						github.com/aws/aws-sdk-go-v2 v1.18.1 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.10 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.4.10 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/config v1.18.25 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/config v1.18.27 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/credentials v1.13.24 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/credentials v1.13.26 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.3 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.13.4 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.67 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.11.70 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.33 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/internal/configsources v1.1.34 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.27 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.4.28 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/internal/ini v1.3.34 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/internal/ini v1.3.35 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.25 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/internal/v4a v1.0.26 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.11 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.9.11 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.28 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.1.29 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.27 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.9.28 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.14.2 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.14.3 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/s3 v1.33.1 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/s3 v1.35.0 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/sso v1.12.10 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/sso v1.12.12 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/ssooidc v1.14.10 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/ssooidc v1.14.12 // indirect
 | 
				
			||||||
	github.com/aws/aws-sdk-go-v2/service/sts v1.19.0 // indirect
 | 
						github.com/aws/aws-sdk-go-v2/service/sts v1.19.2 // indirect
 | 
				
			||||||
	github.com/aws/smithy-go v1.13.5 // indirect
 | 
						github.com/aws/smithy-go v1.13.5 // indirect
 | 
				
			||||||
	github.com/dlclark/regexp2 v1.10.0 // indirect
 | 
						github.com/dlclark/regexp2 v1.10.0 // indirect
 | 
				
			||||||
	github.com/dustin/go-humanize v1.0.1 // indirect
 | 
						github.com/dustin/go-humanize v1.0.1 // indirect
 | 
				
			||||||
| 
						 | 
					@ -59,7 +57,7 @@ require (
 | 
				
			||||||
	github.com/google/pprof v0.0.0-20230602150820-91b7bce49751 // indirect
 | 
						github.com/google/pprof v0.0.0-20230602150820-91b7bce49751 // indirect
 | 
				
			||||||
	github.com/google/uuid v1.3.0 // indirect
 | 
						github.com/google/uuid v1.3.0 // indirect
 | 
				
			||||||
	github.com/google/wire v0.5.0 // indirect
 | 
						github.com/google/wire v0.5.0 // indirect
 | 
				
			||||||
	github.com/googleapis/gax-go/v2 v2.10.0 // indirect
 | 
						github.com/googleapis/gax-go/v2 v2.11.0 // indirect
 | 
				
			||||||
	github.com/inconshreveable/mousetrap v1.1.0 // indirect
 | 
						github.com/inconshreveable/mousetrap v1.1.0 // indirect
 | 
				
			||||||
	github.com/jmespath/go-jmespath v0.4.0 // indirect
 | 
						github.com/jmespath/go-jmespath v0.4.0 // indirect
 | 
				
			||||||
	github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect
 | 
						github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51 // indirect
 | 
				
			||||||
| 
						 | 
					@ -71,7 +69,7 @@ require (
 | 
				
			||||||
	github.com/valyala/bytebufferpool v1.0.0 // indirect
 | 
						github.com/valyala/bytebufferpool v1.0.0 // indirect
 | 
				
			||||||
	github.com/valyala/fasttemplate v1.2.2 // indirect
 | 
						github.com/valyala/fasttemplate v1.2.2 // indirect
 | 
				
			||||||
	go.opencensus.io v0.24.0 // indirect
 | 
						go.opencensus.io v0.24.0 // indirect
 | 
				
			||||||
	golang.org/x/image v0.7.0 // indirect
 | 
						golang.org/x/image v0.8.0 // indirect
 | 
				
			||||||
	golang.org/x/mod v0.11.0 // indirect
 | 
						golang.org/x/mod v0.11.0 // indirect
 | 
				
			||||||
	golang.org/x/sys v0.9.0 // indirect
 | 
						golang.org/x/sys v0.9.0 // indirect
 | 
				
			||||||
	golang.org/x/term v0.9.0 // indirect
 | 
						golang.org/x/term v0.9.0 // indirect
 | 
				
			||||||
| 
						 | 
					@ -79,15 +77,15 @@ require (
 | 
				
			||||||
	golang.org/x/time v0.3.0 // indirect
 | 
						golang.org/x/time v0.3.0 // indirect
 | 
				
			||||||
	golang.org/x/tools v0.10.0 // indirect
 | 
						golang.org/x/tools v0.10.0 // indirect
 | 
				
			||||||
	golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
 | 
						golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect
 | 
				
			||||||
	google.golang.org/api v0.125.0 // indirect
 | 
						google.golang.org/api v0.128.0 // indirect
 | 
				
			||||||
	google.golang.org/appengine v1.6.7 // indirect
 | 
						google.golang.org/appengine v1.6.7 // indirect
 | 
				
			||||||
	google.golang.org/genproto/googleapis/rpc v0.0.0-20230530153820-e85fd2cbaebc // indirect
 | 
						google.golang.org/genproto/googleapis/rpc v0.0.0-20230530153820-e85fd2cbaebc // indirect
 | 
				
			||||||
	google.golang.org/grpc v1.55.0 // indirect
 | 
						google.golang.org/grpc v1.56.0 // indirect
 | 
				
			||||||
	google.golang.org/protobuf v1.30.0 // indirect
 | 
						google.golang.org/protobuf v1.30.0 // indirect
 | 
				
			||||||
	lukechampine.com/uint128 v1.3.0 // indirect
 | 
						lukechampine.com/uint128 v1.3.0 // indirect
 | 
				
			||||||
	modernc.org/cc/v3 v3.41.0 // indirect
 | 
						modernc.org/cc/v3 v3.41.0 // indirect
 | 
				
			||||||
	modernc.org/ccgo/v3 v3.16.13 // indirect
 | 
						modernc.org/ccgo/v3 v3.16.14 // indirect
 | 
				
			||||||
	modernc.org/libc v1.23.0 // indirect
 | 
						modernc.org/libc v1.24.1 // indirect
 | 
				
			||||||
	modernc.org/mathutil v1.5.0 // indirect
 | 
						modernc.org/mathutil v1.5.0 // indirect
 | 
				
			||||||
	modernc.org/memory v1.6.0 // indirect
 | 
						modernc.org/memory v1.6.0 // indirect
 | 
				
			||||||
	modernc.org/opt v0.1.3 // indirect
 | 
						modernc.org/opt v0.1.3 // indirect
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -79,24 +79,6 @@ func baseBinds(vm *goja.Runtime) {
 | 
				
			||||||
		return dest, nil
 | 
							return dest, nil
 | 
				
			||||||
	})
 | 
						})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// temporary helper to properly return the length of an array
 | 
					 | 
				
			||||||
	// see https://github.com/dop251/goja/issues/521
 | 
					 | 
				
			||||||
	vm.Set("len", func(val any) int {
 | 
					 | 
				
			||||||
		rv := reflect.ValueOf(val)
 | 
					 | 
				
			||||||
		rk := rv.Kind()
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		if rk == reflect.Ptr {
 | 
					 | 
				
			||||||
			rv = rv.Elem()
 | 
					 | 
				
			||||||
			rk = rv.Kind()
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		if rk == reflect.Slice || rk == reflect.Array {
 | 
					 | 
				
			||||||
			return rv.Len()
 | 
					 | 
				
			||||||
		}
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
		return 0
 | 
					 | 
				
			||||||
	})
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
	vm.Set("DynamicModel", func(call goja.ConstructorCall) *goja.Object {
 | 
						vm.Set("DynamicModel", func(call goja.ConstructorCall) *goja.Object {
 | 
				
			||||||
		shape, ok := call.Argument(0).Export().(map[string]any)
 | 
							shape, ok := call.Argument(0).Export().(map[string]any)
 | 
				
			||||||
		if !ok || len(shape) == 0 {
 | 
							if !ok || len(shape) == 0 {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,7 +24,7 @@ func TestBaseBindsCount(t *testing.T) {
 | 
				
			||||||
	vm := goja.New()
 | 
						vm := goja.New()
 | 
				
			||||||
	baseBinds(vm)
 | 
						baseBinds(vm)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	testBindsCount(vm, "this", 15, t)
 | 
						testBindsCount(vm, "this", 14, t)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
func TestBaseBindsUnmarshal(t *testing.T) {
 | 
					func TestBaseBindsUnmarshal(t *testing.T) {
 | 
				
			||||||
| 
						 | 
					@ -706,7 +706,7 @@ func TestLoadingDynamicList(t *testing.T) {
 | 
				
			||||||
		    .orderBy("text ASC")
 | 
							    .orderBy("text ASC")
 | 
				
			||||||
		    .all(result)
 | 
							    .all(result)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if (len(result) != 2) {
 | 
							if (result.length != 2) {
 | 
				
			||||||
			throw new Error('Expected 2 list items, got ' + result.length);
 | 
								throw new Error('Expected 2 list items, got ' + result.length);
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue