MessageKit breaking changes

cocoapods

40 curated breaking changes across major versions of MessageKit. Use this as a migration checklist before bumping dependencies.

40
changes
Breaking changes by transition
  • 4.3.0 \u2192 5.0.0breaking

    **Breaking change**: Fully migrated to Swift 6.0 by @Kaspik in https://github.com/MessageKit/MessageKit/pull/1870

  • 4.0.0-beta.2 \u2192 4.0.0-beta.4breaking

    **Breaking change**: Dropped support for iOS 12 [2bd234b](https://github.com/MessageKit/MessageKit/commit/2bd234b1e878f392089f166d6868ce644d6c9e95) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.2 \u2192 4.0.0-beta.4breaking

    **Breaking change**: Moved messageInputBar from inputAccessoryView to a subview in MessagesViewController [#1704](https://github.com/MessageKit/MessageKit/pull/1704) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.2 \u2192 4.0.0-beta.4breaking

    **Deprecation**: Deprecated `maintainPositionOnKeyboardFrameChangedMoved` in favor of `maintainPositionOnInputBarHeightChanged` which better describes the intended use of this property [#1704](https://github.com/MessageKit/MessageKit/pull/1705) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.2 \u2192 4.0.0-beta.4breaking

    **Breaking change**: Added an argument to `messageContainerMaxWidth` [cd4f75b](https://github.com/MessageKit/MessageKit/commit/cd4f75b561129fc25e6c4576000e5a92ccd81cad) by [@martinpucik](https://github.com/martinpucik) ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType) -> CGFloat ``` now has IndexPath argument ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType, at indexPath: IndexPath) -> CGFloat ```

  • 4.0.0-beta.2 \u2192 4.0.0-beta.4breaking

    **Breaking change**: Added an argument to `messageContainerSize` [cd4f75b](https://github.com/MessageKit/MessageKit/commit/cd4f75b561129fc25e6c4576000e5a92ccd81cad) by [@martinpucik](https://github.com/martinpucik) ```swift MessageSizeCalculator.messageContainerSize(for message: MessageType) -> CGSize ``` now has IndexPath argument ```swift MessageSizeCalculator.messageContainerSize(for message: MessageType, at indexPath: IndexPath) -> CGSize ```

  • 4.0.0-beta.1 \u2192 4.0.0-beta.2breaking

    **Breaking change**: Moved messageInputBar from inputAccessoryView to a subview in MessagesViewController [#1704](https://github.com/MessageKit/MessageKit/pull/1704) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.1 \u2192 4.0.0-beta.2breaking

    **Breaking change**: Added an argument to `messageContainerSize` [cd4f75b](https://github.com/MessageKit/MessageKit/commit/cd4f75b561129fc25e6c4576000e5a92ccd81cad) by [@martinpucik](https://github.com/martinpucik) ```swift MessageSizeCalculator.messageContainerSize(for message: MessageType) -> CGSize ``` now has IndexPath argument ```swift MessageSizeCalculator.messageContainerSize(for message: MessageType, at indexPath: IndexPath) -> CGSize ```

  • 4.0.0-beta.1 \u2192 4.0.0-beta.2breaking

    **Breaking change**: Added an argument to `messageContainerMaxWidth` [cd4f75b](https://github.com/MessageKit/MessageKit/commit/cd4f75b561129fc25e6c4576000e5a92ccd81cad) by [@martinpucik](https://github.com/martinpucik) ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType) -> CGFloat ``` now has IndexPath argument ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType, at indexPath: IndexPath) -> CGFloat ```

  • 4.0.0-beta.1 \u2192 4.0.0-beta.2breaking

    **Deprecation**: Deprecated `maintainPositionOnKeyboardFrameChangedMoved` in favor of `maintainPositionOnInputBarHeightChanged` which better describes the intended use of this property [#1704](https://github.com/MessageKit/MessageKit/pull/1705) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.1 \u2192 4.0.0-beta.2breaking

    **Breaking change**: Dropped support for iOS 12 [2bd234b](https://github.com/MessageKit/MessageKit/commit/2bd234b1e878f392089f166d6868ce644d6c9e95) by [@martinpucik](https://github.com/martinpucik)

  • 3.8.0 \u2192 4.0.0-beta.1breaking

    **Breaking change**: Added an argument to `messageContainerMaxWidth` [cd4f75b](https://github.com/MessageKit/MessageKit/commit/cd4f75b561129fc25e6c4576000e5a92ccd81cad) by [@martinpucik](https://github.com/martinpucik) ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType) -> CGFloat ``` now has IndexPath argument ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType, at indexPath: IndexPath) -> CGFloat ```

  • 3.8.0 \u2192 4.0.0-beta.1breaking

    **Breaking change**: Dropped support for iOS 12 [2bd234b](https://github.com/MessageKit/MessageKit/commit/2bd234b1e878f392089f166d6868ce644d6c9e95) by [@martinpucik](https://github.com/martinpucik)

  • 3.8.0 \u2192 4.0.0-beta.1breaking

    **Breaking change**: Moved messageInputBar from inputAccessoryView to a subview in MessagesViewController [#1704](https://github.com/MessageKit/MessageKit/pull/1704) by [@martinpucik](https://github.com/martinpucik)

  • 3.8.0 \u2192 4.0.0-beta.1breaking

    **Deprecation**: Deprecated `maintainPositionOnKeyboardFrameChangedMoved` in favor of `maintainPositionOnInputBarHeightChanged` which better describes the intended use of this property [#1704](https://github.com/MessageKit/MessageKit/pull/1705) by [@martinpucik](https://github.com/martinpucik)

  • 3.8.0 \u2192 4.0.0-beta.1breaking

    **Breaking change**: Added an argument to `messageContainerSize` [cd4f75b](https://github.com/MessageKit/MessageKit/commit/cd4f75b561129fc25e6c4576000e5a92ccd81cad) by [@martinpucik](https://github.com/martinpucik) ```swift MessageSizeCalculator.messageContainerSize(for message: MessageType) -> CGSize ``` now has IndexPath argument ```swift MessageSizeCalculator.messageContainerSize(for message: MessageType, at indexPath: IndexPath) -> CGSize ```

  • 4.0.0-beta.4 \u2192 4.0.0breaking

    **Breaking change**: Moved messageInputBar from inputAccessoryView to a subview in MessagesViewController [#1704](https://github.com/MessageKit/MessageKit/pull/1704) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.4 \u2192 4.0.0breaking

    **Breaking change**: Dropped support for iOS 12 [2bd234b](https://github.com/MessageKit/MessageKit/commit/2bd234b1e878f392089f166d6868ce644d6c9e95) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.4 \u2192 4.0.0breaking

    **Breaking change**: Added an argument to `messageContainerMaxWidth` [cd4f75b](https://github.com/MessageKit/MessageKit/commit/cd4f75b561129fc25e6c4576000e5a92ccd81cad) by [@martinpucik](https://github.com/martinpucik) ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType) -> CGFloat ``` now has IndexPath argument ```swift MessageSizeCalculator.messageContainerMaxWidth(for message: MessageType, at indexPath: IndexPath) -> CGFloat ```

  • 4.0.0-beta.4 \u2192 4.0.0breaking

    **Deprecation**: Deprecated `maintainPositionOnKeyboardFrameChangedMoved` in favor of `maintainPositionOnInputBarHeightChanged` which better describes the intended use of this property [#1704](https://github.com/MessageKit/MessageKit/pull/1705) by [@martinpucik](https://github.com/martinpucik)

  • 4.0.0-beta.4 \u2192 4.0.0breaking

    **Breaking change**: Renamed `func currentSender() -> SenderType` to `var currentSender: SenderType` [#1714](https://github.com/MessageKit/MessageKit/pull/1714) by [@martinpucik](https://github.com/martinpucik)

  • 3.1.0 \u2192 3.2.0breaking

    Change the video message playback button to use a UIVisualEffectsView to better match the look and feel of iMessage. [#1386](https://github.com/MessageKit/MessageKit/pull/1386) by [@kinoroy](https://github.com/kinoroy)

  • 3.1.0 \u2192 3.2.0breaking

    Added a SwiftUI view using MessageKit in the Example Project by [#1410](https://github.com/MessageKit/MessageKit/pull/1410) [@kinoroy](https://github.com/kinoroy)

  • 3.1.0 \u2192 3.2.0breaking

    Converted internal, static colors into color assets to better support dark and high contrast modes [#1386](https://github.com/MessageKit/MessageKit/pull/1386) by [@kinoroy](https://github.com/kinoroy)

  • 3.0.0 \u2192 3.1.0-beta.1breaking

    Deprecated `SenderType.id` in favour of `SenderType.senderId`. This change was previously meant for 3.0.0 but was implemented erroneously. [#1201](https://github.com/MessageKit/MessageKit/pull/1201) by [@kinoroy](https://github.com/kinoroy)

  • 3.0.0 \u2192 3.1.0-beta.1breaking

    Fixes scrollToBottom method to properly handle calls made early in the view lifecycle. [#1110](https://github.com/MessageKit/MessageKit/pull/1110) by [@marcetcheverry](https://github.com/marcetcheverry)

  • 3.0.0 \u2192 3.1.0-beta.1breaking

    Add missing cellTopLabelAlignment to MessageSizeCalculator. [#1113](https://github.com/MessageKit/MessageKit/pull/1113) by [@marcetcheverry](https://github.com/marcetcheverry)

  • 3.0.0 \u2192 3.1.0-beta.1breaking

    **Breaking Change** `MessageInputBar`, and `MessageInputBarDelegate` have been obsoleted. Use`InputBarAccessoryView` and `InputBarAccessoryViewDelegate` respectively. This change was previously meant for 3.0.0 but was implemented erroneously. [#1201](https://github.com/MessageKit/MessageKit/pull/1201) by [@kinoroy](https://github.com/kinoroy)

  • 2.0.0 \u2192 3.0.0-beta-swift4-2breaking

    **Breaking Change** Moved `handleTapGesture` method to `MessageCollectionViewCell` [#950](https://github.com/MessageKit/MessageKit/pull/950) by [@nathantannar4](https://github.com/nathantannar4)

  • 2.0.0 \u2192 3.0.0-beta-swift4-2breaking

    **Breaking Change** Add support for audio messages. Added new protocols `AudioControllerDelegate`, `AudioItem` a new cell `AudioMessageCell` and a new controller `BasicAudioController`. [#892](https://github.com/MessageKit/MessageKit/pull/892) by [@moldovaniosif](https://github.com/moldovaniosif).

  • 2.0.0 \u2192 3.0.0-beta-swift4-2breaking

    **Breaking Change** Renamed function `layoutBottomLabel(with:)` to `layoutMessageBottomLabel(with:)` in `MessageContentCell` class. [#920](https://github.com/MessageKit/MessageKit/pull/920) by [@maxxx777](https://github.com/maxxx777)

  • 1.0.0 \u2192 2.0.0-beta.1breaking

    Fixed `MessagesCollectionView` to allow to use nibs with `MessageReusableView`. [#832](https://github.com/MessageKit/MessageKit/pull/832) by [@maxxx777](https://github.com/maxxx777).

  • 1.0.0 \u2192 2.0.0-beta.1breaking

    Fixed bottom content inset adjustment when using an undocked keyboard on iPad, or when `edgesForExtendedLayout` does not include `.top`, or when a parent container view controller adds extra views at the top of the screen. [#787](https://github.com/MessageKit/MessageKit/pull/787) by [@andreyvit](https://github.com/andreyvit)

  • 1.0.0 \u2192 2.0.0-beta.1breaking

    Fixed the `MessageData.emoji` case to use 2x the `messageLabelFont` size by default. [#795](https://github.com/MessageKit/MessageKit/pull/795) by [@Vortec4800](https://github.com/vortec4800).

  • 1.0.0 \u2192 2.0.0-beta.1breaking

    Fixed multiple crashes at views, when views are being called from another XIB. [#905](https://github.com/MessageKit/MessageKit/pull/905) by [@talanov](https://github.com/talanov).

  • unknown \u2192 1.0.0-beta.1breaking

    **Breaking Change** Added new protocol `MediaItem` as the associated value for the `MessageData.video` and `MessageData.photo` cases. [#587](https://github.com/MessageKit/MessageKit/pull/587) by [@SD10](https://github.com/sd10).

  • unknown \u2192 1.0.0-beta.1breaking

    **Breaking Change** Added new protocol `LocationItem` as the associated value for the `MessageData.location` case. [#587](https://github.com/MessageKit/MessageKit/pull/587) by [@SD10](https://github.com/sd10).

  • unknown \u2192 1.0.0-beta.1breaking

    **Breaking Change** Added new `DetectorType` called `.transitInformation` to message label. [#520](https://github.com/MessageKit/MessageKit/pull/520) by [@nosarj](https://github.com/nosarj).

  • unknown \u2192 1.0.0-beta.1breaking

    **Breaking Change** Added `.custom(Any?)` case to `MessageData`. [#498](https://github.com/MessageKit/MessageKit/pull/498) by [@SD10](https://github.com/SD10).

  • unknown \u2192 1.0.0-beta.1breaking

    **Breaking Change** Added `.messageLabelTop` case to `AvatarPosition.Vertical` enum. [#596](https://github.com/MessageKit/MessageKit/pull/596) by [@zhongwuzw](https://github.com/zhongwuzw)

API access

Get this data programmatically \u2014 free, no authentication.

curl https://depscope.dev/api/breaking/cocoapods/MessageKit
MessageKit breaking changes — CocoaPods migration guide | DepScope