tinygo-site icon indicating copy to clipboard operation
tinygo-site copied to clipboard

Stdlib support page is out of date

Open lu4p opened this issue 4 years ago • 1 comments

For example https://tinygo.org/lang-support/stdlib/#encoding-json shows this error:

# encoding/json
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:349:23: Map not declared by package sync
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:1271:21: Map not declared by package sync
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:1120:19: sf.Tag.Get undefined (type string has no field or method Get)
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:1133:11: ft.Name undefined (type reflect.Type has no field or method Name)
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:1190:41: ft.Name undefined (type reflect.Type has no field or method Name)
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:771:16: PtrTo not declared by package reflect
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:712:11: t.Key undefined (type reflect.Type has no field or method Key)
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:717:9: t.Key undefined (type reflect.Type has no field or method Key)
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:398:53: PtrTo not declared by package reflect
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:405:53: PtrTo not declared by package reflect
../../../.gvm/gos/go1.13/src/encoding/json/encode.go:368:11: WaitGroup not declared by package sync
../../../.gvm/gos/go1.13/src/encoding/json/decode.go:979:9: v.NumMethod undefined (type reflect.Value has no field or method NumMethod)
../../../.gvm/gos/go1.13/src/encoding/json/decode.go:1008:6: v.SetBytes undefined (type reflect.Value has no field or method SetBytes)
../../../.gvm/gos/go1.13/src/encoding/json/decode.go:1012:9: v.NumMethod undefined (type reflect.Value has no field or method NumMethod)
[...more lines following...]

But in reality it is this:

# encoding/json
../../../usr/lib/go/src/encoding/json/decode.go:160:15: cannot convert nil (untyped nil value) to reflect.Type
../../../usr/lib/go/src/encoding/json/decode.go:235:26: cannot convert nil (untyped nil value) to reflect.Type
../../../usr/lib/go/src/encoding/json/decode.go:252:30: cannot convert nil (untyped nil value) to reflect.Type
../../../usr/lib/go/src/encoding/json/decode.go:255:39: d.errorContext.Struct.Name undefined (type reflect.Type has no field or method Name)
../../../usr/lib/go/src/encoding/json/decode.go:457:41: v.Type().Name undefined (type reflect.Type has no field or method Name)
../../../usr/lib/go/src/encoding/json/decode.go:491:15: v.Type().NumMethod undefined (type reflect.Type has no field or method NumMethod)
../../../usr/lib/go/src/encoding/json/decode.go:532:8: v.NumMethod undefined (type reflect.Value has no field or method NumMethod)
../../../usr/lib/go/src/encoding/json/decode.go:565:13: Copy not declared by package reflect
../../../usr/lib/go/src/encoding/json/decode.go:569:7: v.SetLen undefined (type reflect.Value has no field or method SetLen)
../../../usr/lib/go/src/encoding/json/decode.go:606:6: v.SetLen undefined (type reflect.Value has no field or method SetLen)
../../../usr/lib/go/src/encoding/json/decode.go:637:40: v.NumMethod undefined (type reflect.Value has no field or method NumMethod)
../../../usr/lib/go/src/encoding/json/decode.go:653:12: t.Key undefined (type reflect.Type has no field or method Key)
../../../usr/lib/go/src/encoding/json/decode.go:658:16: PtrTo not declared by package reflect
../../../usr/lib/go/src/encoding/json/decode.go:658:24: t.Key undefined (type reflect.Type has no field or method Key)
../../../usr/lib/go/src/encoding/json/decode.go:665:18: MakeMap not declared by package reflect
../../../usr/lib/go/src/encoding/json/decode.go:790:12: t.Key undefined (type reflect.Type has no field or method Key)
../../../usr/lib/go/src/encoding/json/decode.go:793:17: PtrTo not declared by package reflect
../../../usr/lib/go/src/encoding/json/decode.go:800:31: reflect.ValueOf(key).Convert undefined (type reflect.Value has no field or method Convert)
../../../usr/lib/go/src/encoding/json/decode.go:806:40: reflect.Zero(kt).OverflowInt undefined (type reflect.Value has no field or method OverflowInt)
../../../usr/lib/go/src/encoding/json/decode.go:810:30: reflect.ValueOf(n).Convert undefined (type reflect.Value has no field or method Convert)
../../../usr/lib/go/src/encoding/json/decode.go:814:40: reflect.Zero(kt).OverflowUint undefined (type reflect.Value has no field or method OverflowUint)
../../../usr/lib/go/src/encoding/json/decode.go:818:30: reflect.ValueOf(n).Convert undefined (type reflect.Value has no field or method Convert)
../../../usr/lib/go/src/encoding/json/decode.go:824:7: v.SetMapIndex undefined (type reflect.Value has no field or method SetMapIndex)
../../../usr/lib/go/src/encoding/json/decode.go:938:9: v.NumMethod undefined (type reflect.Value has no field or method NumMethod)
../../../usr/lib/go/src/encoding/json/decode.go:967:6: v.SetBytes undefined (type reflect.Value has no field or method SetBytes)
../../../usr/lib/go/src/encoding/json/decode.go:974:9: v.NumMethod undefined (type reflect.Value has no field or method NumMethod)
../../../usr/lib/go/src/encoding/json/decode.go:1007:9: v.NumMethod undefined (type reflect.Value has no field or method NumMethod)
../../../usr/lib/go/src/encoding/json/decode.go:1015:23: v.OverflowInt undefined (type reflect.Value has no field or method OverflowInt)
../../../usr/lib/go/src/encoding/json/decode.go:1023:23: v.OverflowUint undefined (type reflect.Value has no field or method OverflowUint)
../../../usr/lib/go/src/encoding/json/decode.go:1031:23: v.OverflowFloat undefined (type reflect.Value has no field or method OverflowFloat)
../../../usr/lib/go/src/encoding/json/encode.go:389:11: WaitGroup not declared by package sync
../../../usr/lib/go/src/encoding/json/encode.go:420:53: PtrTo not declared by package reflect
../../../usr/lib/go/src/encoding/json/encode.go:426:53: PtrTo not declared by package reflect
../../../usr/lib/go/src/encoding/json/encode.go:807:11: t.Key undefined (type reflect.Type has no field or method Key)
../../../usr/lib/go/src/encoding/json/encode.go:812:9: t.Key undefined (type reflect.Type has no field or method Key)
../../../usr/lib/go/src/encoding/json/encode.go:866:16: PtrTo not declared by package reflect
../../../usr/lib/go/src/encoding/json/encode.go:1229:19: sf.Tag.Get undefined (type string has no field or method Get)
../../../usr/lib/go/src/encoding/json/encode.go:1242:11: ft.Name undefined (type reflect.Type has no field or method Name)
../../../usr/lib/go/src/encoding/json/encode.go:1299:41: ft.Name undefined (type reflect.Type has no field or method Name)

Maybe setup some CD to update the support automatically when a new tinygo version is released.

lu4p avatar Jun 30 '20 15:06 lu4p

Yes, we update that page each release. I do not think adding a CI job for that is worth the trouble, as it only takes a few minutes to update.

aykevl avatar Jun 30 '20 16:06 aykevl