Faye Amacker
Faye Amacker
Confirmed with @ramtinms that this can be closed for now.
hi @mkungla `reflect` is used for setting value during decoding, in addition to getting underlying value and type during encoding and decoding. So it is quite a task to replace...
Quick update: TinyGo released 0.28 today (June 11, 2023) and it includes 24 improvements related to `reflect`. I need to work this weekend but will take a look after wrapping...
TinyGo 0.28.1 allowed fxamacker/cbor to pass more tests, so that's the good news. :sweat_smile: - First issue is `MapIter.Key()` returning key with wrong type for maps with `any` or `interface{}`...
I created branch https://github.com/fxamacker/cbor/tree/fxamacker/cbor-tinygo based on fxamacker/cbor [v2.5.0-beta4](https://github.com/fxamacker/cbor/releases/tag/v2.5.0-beta4). It passes tests when compiled with TinyGo 0.28.1 patched with PR https://github.com/tinygo-org/tinygo/pull/3795. A tradeoff is the removal of one feature: codec cannot...
dgryski's https://github.com/tinygo-org/tinygo/pull/3795 got merged :tada:
> `InclusiveRangeStaticType.IsComposite`? @turbolent Does `InclusiveRangeStaticType` need to implement `atree.TypeInfo` interface? If not, we don't need to implement `InclusiveRangeStaticType.IsComposite`. `DecodeTypeInfo` used by atree doesn't appear to handle decoding of `InclusiveRangeStaticType`. https://github.com/onflow/cadence/blob/027e3c00f1731804b1dcb8d07aef9656be0f4ef9/runtime/interpreter/decode.go#L2145
> For some reason, the re-hash tests in the migrations panic with an error indicating that the iteration's key cannot be found, but I can't really see why that would...
> Why doesn't CompositeStaticType implement TypeInfo? @turbolent `CompositeStaticType` doesn't implement `atree.TypeInfo` is because we only creates `atree.OrderedMap` with `compositeTypeInfo` for `CompositeValue`. https://github.com/onflow/cadence/blob/c8b011058b6a178f66b2d931cbec105606fd643a/runtime/interpreter/value.go#L16665-L16675
> Out of curiosity: why were the migrations working in v0.42 without those equality functions? Those equality functions are for Cadence 1.0 migration and are not part of Cadence v0.42...