Editions

Richie iOS SDK Changelog

Changes in the Richie iOS SDK, not limited to Editions

Richie iOS SDK releases can be found at richiefi/richiesdk-ios.

The version numbering scheme is YYYYYMM.X.Y, where YYYYMM indicates year and month, X is an incrementing number starting from zero at the start of the month indicating change ordering and Y is patch level and usually expected to be 0. Each release lists the changes it includes that are relevant to SDK users and those change lines start with the version number for that change.

202503.42.0 (2025-03-26)

Changelog

  • 202503.42: Fix ads impressions times in the Editions reader.
  • 202503.40: Fix internal crash introduced in 202503.32.0.

202503.32.0 (2025-03-24)

Changelog

  • 202503.30:New opening animation in the editions reader.
  • 202503.29: Fix excesive CPU usage in native multipage ads caused by the scroll indicator animation.
  • 202503.27: Improve the performance of the rendering pipeline in the Editions reader.
  • 202503.25: Remove APIs related to slot ad optionality. We removed three RichieAds APIs related to slot optionality: setUsesSlotAds, refreshSlotAds and automaticallyRefreshesSlotAds. Slot ads are always used and these APIs are unnecessary.
  • 202503.16: Fix more ad view leaks.
  • 202503.15: Fix scroll position jumping in multipage ads while dragging or swiping.
  • 202503.9: Add customization options for opening richie ads on tap.

202503.5.0 (2025-03-05)

Changelog

  • 202503.3: Fix app identifier usage in the SDK factory. We have renamed the identifiers used with the Richie SDK factory and RichieAdsController for clarity and platform consistency. Richie takes in a value called richieAppID. It can be the bundle ID, Richie Ads ID, or any other arbitrary value that matches a configuration available in the Richie configuration service.

    RichieAdsController takes in a value called richieAdsID, which is the identifier used in the Richie Ads system.

    The methods taking in the old names are still available, but have been marked as deprecated.

  • 202503.2: Fix Ad views lingering in the Editions reader after being used.

  • 202502.40: Fix swiping from zoomed in spreads in the Editions reader when there are ads after the last page and when the zoom level is not enough to let the spread view scroll horizontally.

202502.39.0 (2025-02-27)

Changelog

  • 202502.39: Fix potential render crash.
  • 202502.34: Fix non loaded ads being displayed as blanks in the Editions reader.

202502.26.0 (2025-02-19)

Changelog

  • 202502.26: Fix internal Editions clean up after a download attempt.

202502.21.0 (2025-02-17)

Changelog

  • 202502.17: Fix DownloadError errors reported in DownloadProgressListener.editionDidFailDownload.

202501.30.0 (2025-01-31)

Changelog

  • 202501.21: Fix spreads z-index calculation in the editions reader grid transition when there are ads in the swiper.

202411.29.0 (2024-11-18)

Changelog

  • 202411.29: Don't display ads in the grid view.
  • 202411.28: Disable swipe down gesture to go to the grid view when the user is on an ad, this fixes vertical scrolling on ads.

202411.25.0 (2024-11-14)

This release includes new features and fixes.

Editions

  • EditionProvider has a new search method, editions(title:productTag:pageSize:). It can be used to search for editions based on title and product.

  • There are now async versions of all the callback based EditionProvider methods.

  • Editions.updateFeed now has an async version.

  • Paginator.next now has an async version.

Actor Annotations and Sendable Conformance Updates

  • EditionCoverProvider and EditionCoverDataProvider are now marked as @MainActor.
  • MaggioIssue is now Sendable.
  • The Paginator type is now marked as Sendable.
  • MaggioGuid is now Sendable.
  • RichieAdsViewDelegate is now MainActor.

Changelog

  • 202411.25: Fix fixed position ads in the Editions reader
  • 202411.24: Improvements to API docs
  • 202411.2: Fix memory leak, a retain cycle in the editions reader was removed.
  • 202410.9: API for finding editions by title
  • 202409.6: Add async cover download method.
  • 202408.47: Define RichieAds to run on main actor.
  • 202408.44: Add Richie.invalidate, document invalidation better.
  • 202408.3: Invalidate editions covers from the cache when they change.

202406.40.0 (2024-06-25)

  • 202406.39: Fix a crash with the old reader. The crash was introduced in version 202406.7.

202406.25.0 (2024-06-17)

This version fixes ad preloading in the editions reader, changes how editions zooming behaves and (mostly) replaces the public interface of analytics.

  • 202406.24: Render new zoomed images when editions zoom changes and modify the default zoom to use UIApplication.shared.preferredContentSizeCategory.
  • 202406.14: Add new analytics interface, RichieAnalytics, and move the kMaggioAnalytics_X constants into RichieAnalyticsEvent and RichieAnalyticsAttribute types.
  • 202405.37: Fix ads not being preloaded in the editions reader and remove ad preloading limitations.

202405.15.0 (2024-05-20)

This SDK release contains couple of internal improvements & a new feature for app-specific data hosts. No Public API changes.

Custom Host Name Configuration

Richie SDK-based applications now support the configuration of an app-specific host name, replacing the default data.richie.app domain for fetching app content, including configurations and Editions issues. Set the RichieAppDataHost key in Info.plist of the host app to the app-specific hostname which has been coordinated with Richie.

Updated Pinned Certificates

This release includes an updated set of pinned Richie certificates. These updates are essential to maintain the seamless functionality of Richie SDK-based applications moving forward.

If you have already adopted the previous SDK version 202404.11.0 then it's important that you'll update to this SDK version before August 2024.

Changelog

  • 202405.11: Update the list of pinned Richie certificates
  • 202404.33: Add check for free disk space before downloading edition. Add accessed API information (NSPrivacyAccessedAPICategoryDiskSpace) to the privacy manifest.
  • 202404.29: Add Richie App Data Host customization support. By setting the RichieAppDataHost key in host app Info.plist to the app-specific host name all requests to Richie app data backend will be done to that hostname instead of the default data.richie.app.

202404.11.0 (2024-04-16)

This release fixes issues in the new reader and adds two new interfaces on top of the old functionality: Richie as an entry point to all the sub-SDKs (ads, editions, books) and RichieAdsController as a more modern, limited version of RichieAds. For now these are just facades on the still-available old types and you can adopt them on your own pace.

  • 202404.10: Add some sendability annotations
  • 202404.4: Add an unified SDK factory, Richie. You can use it to create ads, editions and books root objects.
    • The books factory method drops the useCustomTabs parameter that is on the BooksLibraryController constructor because it was being ignored there.
  • 202404.1: Add a new Swifty interface to Ads, RichieAdsController. It forces main actor and hides unused features.
  • 202403.51: Add missing version info to docs
  • 202403.39: Support for tab grouping in books catalog
  • 202403.20: Fix interaction bugs in the editions reader
  • 202403.3: Show numeric keyboard for sudokus
  • 202402.50: Memory usage reduction: clear the editions reader image cache when the app goes to background
  • 202402.35: Fix multicolumn text selection in the editions reader
  • 202402.34: Fix zoom state handling in the editions reader
  • 202402.27: Fix zoom state handling in the editions reader

202402.25.0 (2024-02-15)

The headlining feature of this release is that we have dropped support for iOS 12, 13 and 14. iOS 15 is now the minimum supported version.

  • 202402.21: Remove RichiePushNotification from the SDKs
  • 202402.18: Remove some unwanted symbols from the SDK documentation
  • 202402.16: Fix editions reader losing pinch to zoom after quick spread changes
  • 202402.8: Bump SDK operating system version requirements to iOS 15
  • 202402.4: Add support for double tapping in editions reader crosswords for zooming in
  • 202402.1: Fix a non-portrait book cover sometimes disappearing while scrolling
  • 202401.44: Omit xattrs from SDK documentation archives
  • 202401.42: Expose ObjC in the SDK documentation
  • 202401.41: Deprecate "Organization" and "Product" analytics attributes
  • 202401.38: Use integers for PageViewDuration analytics
  • 202401.36: Fix crosswords content disappearing in the editions reader
  • 202401.34: Fix editions reader opening animation
  • 202401.33: Fix editions reader crossword flashing an blurriness
  • 202401.31: Add search to podcasts
  • 202401.28: Remove user analytics attributes
  • 202401.17: Reduce new reader memory usage
  • 202401.16: Fix keyboard covering crosswords in the new reader
  • 202401.10: Fix flickering ads and zoomed spread visible in grid in the new reader

202312.17.0 (2023-12-21)

  • 202312.17: Fix missing "Did start filling crossword" event in Editions
  • 202312.16: Fix opening animation timing and leaks in the new reader
  • 202311.59: Add opening animation to the new reader
  • 202311.55: Fix missing gesture attribute in new reader analytics page view event
Previous
Android SDK Changelog