I am going through the current implementation of SpiffeId in this library and noticed a couple of deviations from the spec.
- The scheme validation seems to strictly enforce lower-case during the parse operation, whereas the spec seems to treat the scheme to be case-insensitive for parsing. (same goes for the trustdomain, though it must be lower-case, I guess, as per spec, the parsing should be case-insensitive)
- Maximum Spiffe Id length seems to enforce the URI to be atmost 2048 and host to be atmost 255 characters, but the implementation seems to enforce this. (The spec uses "MUST", hence this question)
If these are design choices or if I missed something, apologies. Also, happy to contribute if these are some of the valid concerns.