Skip to content

Tag properties should not silently fail type conversion #19

@theRealRobG

Description

@theRealRobG

Significant effort was put in to supporting enumerated strings and string lists in a "loose" way (thereby keeping forward compatibility), by providing the Unknown case, where any string value that does not confirm to the expectations of the enumeration are still provided to the user.

This issue centers around the fact that the same loose parsing does not apply to other types, such as DateTime, f64, DecimalIntegerRange, etc. This means that a playlist author could provide a value for a property yet the library will indicate that none exists. This at the very least hides validation issues (and would make any application of this library as a validator very difficult), but worse, where there are bugs in parsing (such as #18) it could lead to valid values being hidden as None from the user.

The counterpoint is that we don't want to make the public API cumbersome to use, by putting optional typing everywhere, so care should be taken to find a solution that enhances visibility without complicating any integrations.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions