You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
the '/' used as type/namespace/name and subpath segments separator does not need to and must NOT be percent-encoded. It is unambiguous unencoded everywhere
This issue was first discussed with @pombredanne and this is really invalid.
On last community meeting, @fviernau mentioned a probable cause that SwiftPM not provides the namespace like field, only entire namespace as a name, and Ort was assuming that slash was a part of name, so %2F enconding.
Some package manager like Maven provides namespace ( a Java common ), so Ort probably wrong assuming that every single package manager follow.
A possible simple solution is just not encode anymore ant entry and treat PURL as single entity, instead of expecting namespace ( or consider as last fallback )
A more complex, un unlikely solution is make adjusts on the SwiftPM package manager code to separate namespace / name, but this can only work if retrieved names are consistent from the package manager.
A possible improvement is get rid of self made PURL code and use the PURL official java library to assembly the PURL and have it validated as well.
The text was updated successfully, but these errors were encountered:
In order to interpret the excerpt from the PURL spec, one must have define what exactly the namespace and name bits are. This IMO is not clear for swift packages.
Current Swift generated PURL has slash encoding, creating a result similar like:
This is not valid following the PURL specification. Quoting here from Character Encoding section:
This issue was first discussed with @pombredanne and this is really invalid.
On last community meeting, @fviernau mentioned a probable cause that SwiftPM not provides the namespace like field, only entire namespace as a name, and Ort was assuming that slash was a part of name, so %2F enconding.
Some package manager like Maven provides namespace ( a Java common ), so Ort probably wrong assuming that every single package manager follow.
A possible simple solution is just not encode anymore ant entry and treat PURL as single entity, instead of expecting namespace ( or consider as last fallback )
A more complex, un unlikely solution is make adjusts on the SwiftPM package manager code to separate namespace / name, but this can only work if retrieved names are consistent from the package manager.
A possible improvement is get rid of self made PURL code and use the PURL official java library to assembly the PURL and have it validated as well.
The text was updated successfully, but these errors were encountered: