Skip to content

Conversation

@arnetheduck
Copy link
Member

These popular names easily fall afoul of ambiguous symbol resolution conflicts, such as when stew/base64 is imported alongside a serialization format and the right arguments are passed

These popular names easily fall afoul of ambiguous symbol resolution
conflicts, such as when stew/base64 is imported alongside a
serialization format and the right arguments are passed
arnetheduck added a commit to status-im/nim-json-serialization that referenced this pull request Jul 23, 2025
For better forward compat with changes in nim-serialization, such as
status-im/nim-serialization#84
jangko pushed a commit to status-im/nim-json-serialization that referenced this pull request Jul 24, 2025
For better forward compat with changes in nim-serialization, such as
status-im/nim-serialization#84
@arnetheduck arnetheduck merged commit 5c98f31 into master Jul 24, 2025
26 checks passed
@arnetheduck arnetheduck deleted the inherit-format branch July 24, 2025 14:02
etan-status added a commit that referenced this pull request Jul 30, 2025
#84 removed a workaround for a Nim bug that required duplication of the
`decode` template. This removal was not mentioned in the PR, so may be
unintentional. However, the underlying problem is still there, and is
surfaced when trying to compile `nim-ssz-serialization`'s tests.

```
/nim-ssz-serialization/tests/test_ssz_union.nim(137, 18) Error: type mismatch
Expression: decode(SSZ, encoded, TestCaseObject)
  [1] SSZ: typedesc[SSZ]
  [2] encoded: array[0..0, byte]
  [3] TestCaseObject: typedesc[TestCaseObject]

Expected one of (first mismatch at [position]):
[2] template decode(Format: type SerializationFormat;
                input: string | openArray[char] | seq[byte] | openArray[byte];
                RecordType: type; params: varargs[untyped]): auto
```

Re-applying the workaround fixes this problem.
etan-status added a commit that referenced this pull request Jul 30, 2025
#84 removed a workaround for a Nim bug that required duplication of the
`decode` template. This removal was not mentioned in the PR, so may be
unintentional. However, the underlying problem is still there, and is
surfaced when trying to compile `nim-ssz-serialization`'s tests.

```
/nim-ssz-serialization/tests/test_ssz_union.nim(137, 18) Error: type mismatch
Expression: decode(SSZ, encoded, TestCaseObject)
  [1] SSZ: typedesc[SSZ]
  [2] encoded: array[0..0, byte]
  [3] TestCaseObject: typedesc[TestCaseObject]

Expected one of (first mismatch at [position]):
[2] template decode(Format: type SerializationFormat;
                input: string | openArray[char] | seq[byte] | openArray[byte];
                RecordType: type; params: varargs[untyped]): auto
```

Re-applying the workaround fixes this problem.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant