Skip to content

ExternalId: createBdioId() and createExternalId() are broken when used with Forge.LONG_TAIL #41

@fviernau

Description

@fviernau

An externalId or rather originId for the forge long_tail looks e.g. like [1].
So, the IDs are repository URLs. Forge.LONG_TAIL defines / as the separator.
When creating an externalId for [1] with Forge.LONG_TAIL, then createBdioId() and createExternalId()
give strings containing git:/code.qt.io/qt/qt5#v6.5.3. The reason is that the input string get's split into parts
using the forges separator and then get joined again. However, the empty string inbetween // is lost. So,
any double slash gets stripped off. As a result, searching by externalID does not give any results.

Proposal: Since the input is a repository URL, for which it does not really make or is important to decompose it
into parts, the separator could be chosen such that no double separator occurences are removed. The : would
be a good candidate.

[1] git://code.qt.io/qt/qt5#v6.5.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions