This repository has been archived by the owner on Aug 12, 2022. It is now read-only.
Releases: readium/r2-lcp-swift
Releases · readium/r2-lcp-swift
2.2.0
Take a look at the migration guide
Nothing new for r2-lcp-swift
in Readium Swift 2.2.0.
2.1.1
Take a look at the migration guide
Fixed
- Fix crash using the default
LCPDialogViewController
with CocoaPods.
2.1.0
Take a look at the migration guide
Added
- Support for Swift Package Manager (contributed by @stevenzeck).
2.0.0
Take a look at the migration guide
Deprecated
- All APIs deprecated in previous versions are now unavailable.
2.0.0-beta.2
Take a look at the migration guide
Changed
- We removed the dependency to the private
R2LCPClient.framework
, which means:- Now
r2-lcp-swift
works as a Carthage dependency, no need to use a submodule anymore. - You do not need to modify
r2-lcp-swift
'sCartfile
anymore to add the privateliblcp
dependency. - However, you must provide a facade to
LCPService
(see README for an example implementation).
- Now
- The Renew Loan API got revamped to better support renewal through a web page.
- You will need to implement
LCPRenewDelegate
to coordinate the UX interaction. - Readium ships with a default implementation
LCPDefaultRenewDelegate
to handle web page renewal withSFSafariViewController
.
- You will need to implement
Fixed
- Fixed really slow opening of large PDF documents.
2.0.0-beta.1
2.0.0-alpha.2
Take a look at the migration guide
Added
- LCP implementation of the Content Protection API to work with the new Streamer API.
- It is highly recommended that you upgrade to the new
Streamer
API to open publications, which will simplify DRM unlocking.
- It is highly recommended that you upgrade to the new
- Two default implementations of
LCPAuthenticating
:LCPDialogAuthentication
to prompt the user for its passphrase with the official LCP dialog.LCPPassphraseAuthentication
to provide directly a passphrase, pulled for example from a database or a web service.
LCPService.acquirePublication()
is a new API to acquire a publication from a standalone license. Compared to the formerimportPublication()
:- It doesn't require the passphrase, to allow bulk imports.
- It can be cancelled by calling
cancel()
on the returnedLCPAcquisition
object.
LCPService.isLCPProtected()
provides a way to check if a file is protected with LCP.
Changed
LCPAuthenticating
is now provided with more information and you will need to update your implementation.
Fixed
2.0.0-alpha.1
Added
- Support for PDF and Readium Audiobooks protected with LCP.
Changed
LCPAuthenticating
can now return hashed passphrases in addition to clear ones. This can be used by reading apps fetching hashed passphrases from a web service or Authentication for OPDS, for example.- Provided
LCPAuthenticating
instances are now retained by the LCP service. Therefore, you can provide one without keeping a reference around in your own code.
1.2.3: Merge pull request #73 from readium/develop
1.2.2: Merge pull request #66 from readium/fixes/travis
dependency updates