Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix Googleplay Podcast explicit type #95

Closed
wants to merge 6 commits into from

Conversation

rock3r
Copy link
Collaborator

@rock3r rock3r commented May 21, 2021

For some reason, the PodcastGoogleplay was using a boolean to map the explicit flag, instead of the ExplicitType enum. This PR fixes that. It is a non-source-breaking API change, but it is a binary incompatible change.

Do you have any data from your recent explorations about the values that people use for this, and other, explicit tags? Would be worth checking so we can map additional values if need be.

@rock3r rock3r added this to the 1.1.0 milestone May 21, 2021
@rock3r rock3r requested a review from mpgirro May 21, 2021 11:52
public fun <init> (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;Ljava/lang/Boolean;ZLdev/stalla/model/HrefOnlyImage;Ljava/lang/String;)V
public synthetic fun <init> (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;Ljava/lang/Boolean;ZLdev/stalla/model/HrefOnlyImage;Ljava/lang/String;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
public static fun builder ()Ldev/stalla/builder/podcast/PodcastGoogleplayBuilder;
public final fun component1 ()Ljava/lang/String;
public final fun component2 ()Ljava/lang/String;
public final fun component3 ()Ljava/util/List;
public final fun component4 ()Ljava/lang/String;
public final fun component5 ()Ljava/lang/Boolean;
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the first binary incompatible change

public final fun component6 ()Z
public final fun component7 ()Ldev/stalla/model/HrefOnlyImage;
public final fun component8 ()Ljava/lang/String;
public final fun copy (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/lang/String;Ljava/lang/Boolean;ZLdev/stalla/model/HrefOnlyImage;Ljava/lang/String;)Ldev/stalla/model/googleplay/PodcastGoogleplay;
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the other binary incompatible change

@mpgirro
Copy link
Owner

mpgirro commented May 22, 2021

I just had a confirming look at the Google Play XML Schema, and it seems it's intended behaviour that PodcastGoogleplay isn't using the ExplicitType. The schema specifies that the clean value is only applicable within <item> elements. Therefore <channel> can just have yes and no, which is parsed into a boolean by our String?.parseAsBooleanOrNull() extension method.

@mpgirro
Copy link
Owner

mpgirro commented May 22, 2021

I have no backing data on this at the moment, but I can add this in the future.

@rock3r
Copy link
Collaborator Author

rock3r commented May 23, 2021

Ah, my bad. I only checked the xsd element definition and not the description 😅 Suppose we can drop this then

@rock3r rock3r closed this May 23, 2021
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.

None yet

2 participants