Skip to content

0.7.0

Choose a tag to compare

@theRealRobG theRealRobG released this 06 Sep 19:54
· 6 commits to main since this release

Added

  • Better support for HLS Interstitial attributes in EXT-X-DATERANGE via a dedicated struct that holds all the extension properties, and enums for all the enumerated string values that have been defined in Appendix D.
  • Better support for Preloading HLS Date Range Resources (Appendix F) via a dedicated struct that holds all the extension properties with friendlier types (&str rather than ExtensionAttributeValue).

Changed

  • BREAKING CHANGE: Daterange::start_date return type has been changed from DateTime to Option<DateTime>. This is based on the update in draft 18 where it was clarified that all daterange attributes, other than ID, are optional on an instance of the tag because the values are inherited from previous instances of the tag. Given that parsing in this library occurs line-by-line, we must consider this optional now.
  • BREAKING CHANGE: IFrameStreamInf::allowed_cpc return type has been changed from Option<&str> to Option<AllowedCpc<'_>>. This should always have been the case; however, when adding this type for StreamInf, the IFrameStreamInf was forgotten about.
  • BREAKING CHANGE: DecimalResolutionParseError removed the MissingWidth case, and renamed MissingHeight to MissingSeparator to better indicate the source of the error (the x separator not found).
  • BREAKING CHANGE: PartByterange was removed in favor of the new more common type DecimalIntegerRange that is used for all types following the same scheme (<n>[@<o>]). This allowed for the parsing to be consolidated, and now, the TryFrom<&str> methods are public, so users of the library do not have to reimplement the parsing if they want to use the types directly with custom data.

Full Changelog: 0.6.0...0.7.0