This repository has been archived by the owner on Aug 12, 2022. It is now read-only.
2.0.0-alpha.1
Pre-release
Pre-release
mickael-menu
released this
11 Aug 12:38
·
177 commits
to develop
since this release
Added
- The new Format API simplifies the detection of file formats, including known publication formats such as EPUB and PDF.
- A format can be "sniffed" from files, raw bytes or even HTTP responses.
- Reading apps are welcome to extend the API with custom formats.
- Using
Link.mediaType?.matches()
is now recommended to safely check the type of a resource. - More details about the Swift implementation can be found in the pull request.
- In
Publication
shared models:- Presentation Hints and HTML Locations extensions.
- Support for OPDS holds, copies and availability in
Link
, for library-specific features.
- (Experimental) Audiobook toolkit:
AudioSession
simplifies the setup of anAVAudioSession
and handling its interruptions.NowPlayingInfo
helps manage the "Now Playing" information displayed on the lock screen.
Changed
- All the
Publication
shared models are now immutable, to improve code safety. This should not impact reading apps unless you createdPublication
or other models yourself. - The
DocumentTypes
API was extended and offers an easy way to check if your app supports a given file. - Dependencies to format-related third-party libraries such as ZIP, XML and PDF are being consolidated into
r2-shared-swift
. Therefore,r2-shared-swift
now depends on Fuzi and ZIPFoundation. This change will improve maintainability by isolating third-party code and allow (work in progress) to substitute the default libraries with custom ones.