Changelog for PubNub Swift SDK
5.1.0
February 2, 2022
Added
- Add affected channels and groups under
affected
resources list.
5.0.1
January 19, 2022
Fixed
- Fix issue because of which access token not updated in subscription session.
5.0.0
January 12, 2022
Modified
- BREAKING CHANGES: Disable automated
uuid
generation and make it mandatory to specify during PubNubConfiguration instance creation.
4.1.2
November 8, 2021
Fixed
- Make
name
field optional for channel and UUID metadata.
4.1.1
November 5, 2021
Fixed
- Fix issue because of which request with applied mutators not used.
4.1.0
September 16, 2021
Added
- Add ability to parse permissions from token provided by servers.
- Make it possible to add component identifiers for requests.
Modified
- Use
token
instead ofauthKey
(if specified) for queryauth
.
Fixed
- Fix
bufferTooSmall
and make temporary buffers for files encryption / decryption adaptive in size to provided stream buffer size. - Don't perform HEX-encoding of
Data
with FCM token which should be used as-is.
v4.0.2
August 3, 2021
Fixed
- Memory leaks with captured request in subscription loop.
v4.0.1
July 7, 2021
Fixed
- Subscribe Factory will hash additional values when comparing sessions
- Adding APNS2 Devices will correctly return the devices that were added.
- Per request configuration changes will correct be applied to the outgoing request.
v4.0.0
June 8, 2021
Added
- BREAKING CHANGE: Crypto by default initialized with
randomizeIV
set totrue
which will encrypt / decrypt data with publish / subscribe / history API calls using randomized initialization vector
Modified
- Add new
sdks
section to.pubnub.yml
with information about available artifacts and distribution variants
v3.1.3
May 28, 2021
Modified
- Custom error messages (from functions) will be included inside PubNub Error Details
Fixed
- Fix Coding issue when setting UUIDMetadata objects
v3.1.2
April 30, 2021
Fixed
- Subscribe Message events will have the correct messageType flag
v3.1.1
March 12, 2021
Modified
- PubNub model objects are now Hashable
Fixed
- FileEvents will contain the file name stored with PubNub and not the local filename (if different)
v3.1.0
October 6, 2020
Added
- CryptoStream and CryptoInputStream can be used to perform crypto operations on streams of data
- File upload/download support
- Added includeUUID and includeMessageType flags to History
Modified
- History will now has a default limit of 100 for single-channel and 25 for multichannel requests
- Removed depcreated platform version support to align with Xcode 12 warnings
v3.0.1
June 25, 2020
Fixed
- Fixed crash when performing many requests simulataneously
v3.0.0
June 17, 2020
Added
- Added Objects v2 API and removed Objects v1 API
Modified
- Replace PubNub API response objects with primitives or prtocols
- Replace Subscribe Event objects with primitives or prtocols
- Subscribe Listener now has a batched event handler
- Renamed several APIs to align naming across all APIs
- PubNubConfiguration properites can all be set through default init
- Reduced access control of objects that are not public facing
- Request level configuration available for most PubNub APIs
v2.5.4
June 25, 2020
Fixed
- Fixed crash when performing many requests simulataneously
v2.5.3
June 9, 2020
Modified
- Payload and FCMTarget fields are now optional for PubNubPushMessage
Fixed
- Fixed an issue where nested presence state could be published
v2.5.2
June 4, 2020
Fixed
- Resolves possible memory leaks related to listeners
- Responds with the appropriate error when a Signal payload is too large
- Added PAM support to Channels for Channel-Group endpoint
- Invalid JSON will attempt to be parsed for the next Timetoken, and if successful will no interrupt the current subscription loop
v2.5.1
May 7, 2020
Modified
- AnyJSON dictionaries can now perform a rawValue subscript that will return the underlying Any object
Fixed
- Add
uuid
andchannel
to the Message Action Event - Fixed typos inside log messages
v2.5.0
March 26, 2020
Modified
- Message Subscribe Events and Message History will now return the decrypted
Data
blob in the event it was decrypted, but couldn't be stringified - Crypto will now accept the type of
String.Encoding
to be used when converting betweenData
andString
- Object API fetch|create|update methods with generic response objects have been added
- Object API fetch|create|update methods with protocol response objects have been added
- Object types User|Space|Member|Membership can now convert the underlying type using
transocde(into:)
Fixed
- Corrected the access control level of
MembershipIdentifiable
properties - User/Space Subscription Update events wouldn't properly handle partial object updates
v2.4.2
March 12, 2020
Fixed
- Make
region
optional duringoriginTimetoken
parsing and set to 0 by default
v2.4.1
January 24, 2020
Fixed
- A
reconnecting
event will be emitted once subscription starts retrying
v2.4.0
January 17, 2020
Added
- PAM Token Management System added to manage Object API auth tokens
Fixed
- HereNow Presence will now work when only groups are being used
v2.3.3
January 7, 2020
Fixed
- Enable ability to send auth token on Presence endpoints
v2.3.2
December 9, 2019
Fixed
- Subscription requests will now properly cancel when updating existing subscription loop
v2.3.1
December 3, 2019
Fixed
- Duplicate subscription will no longer start if a current subscription is connecting
- Added missing APNS2 pubnub config field to publish payload object
- Fixed Coding issue when a scalar value is used for APNS2 publish payload object
- Subscription will no long attempt to automatically reconnect after an unexpected disconnet
v2.3.0
November 25, 2019
Added
- Added convenience objects for creating push publish messages
- List/Add/Remove/Remove-All of APNS2 push channels for devices
Fixed
Channel
property on push responses is not public
v2.2.0
November 14, 2019
Modified
Timetoken
was changed from an Int64 to UInt64 to avoid negative timetoken values- Removed
PubNubRouter
, and replaced with multiple service specificHTTPRouter
implementations - Removed
Endpoint
type - Renamed
Response
toEndpointResponse
- Removed
HTTPHeader
&HTTPHeader
, and replaced with[String: String]
- Renamed
Session
toHTTPSession
and made it an internal type - Created
RequestReplaceable
and madeRequest
an internal type
v2.1.2
November 12, 2019
Fixed
- PubNub Info.plist is now included on Cocoapod and Carthage deployed builds
v2.1.1
November 6, 2019
Fixed
- Encoding
JSONCodableScalar
values will now properly encode to a single value - Membership APIs no longer use hardcoded subscribe key
v2.1.0
November 1, 2019
Added
- Added support for Message Action Subscription Listener
- Fetch previously published Message Actions and Messages via History APIs
- Fetch previously published Message Actions on a channel
- Add/Remove Message Actions on previously published messages
v2.0.2
October 25, 2019
Fixed
- Add/Update documentation for public classes, methods, and properties
v2.0.1
October 21, 2019
Fixed
- Update the version inside the podspec file
v2.0.0
October 17, 2019
Added
- Added subscription event listener for subscribe/unsubscribe changes
Modified
- PNError enum has been replaced by PubNubError struct to allow for greater flexibility in error handling and recognition
- AnyJSON as been replaced by the JSONCodable protocol for method parameters allowing any conforming object to be passed
- Removed initialized and cancelled as ConnectionsStatus options
- Response error events due to cancellations will now be suppresed by default by the SubscriptionListener. They can be toggled on using a the
supressCancellationErrors
property
Fixed
- Subscribe/Unsubscribe will now properly cancel/restart the subscribe loop when completely stoppping cycle
- Fixed memory leak inside Hearthbeat response handler
- Fixed memory leak inside SubscriptionSessionFactory
v1.2.1
October 15, 2019
Modified
- Made the subscription token a property on the listener for cleaner setup
v1.2.0
October 8, 2019
Added
- Support for Objects added
Modified
- Removed development dependencies from being included in Swift Package imports
- Added meta event listener covering all event types
Fixed
- Changed
ConnectionStatus.isActive
andConnectionStatus.isConnected
access control to public - Fixed typo in PubNub.Push method parameters
- Add support for Global HereNow
- Fixed HereNow stateless response decoding
- Fixed HereNow single channel response decoding
v1.1.0
September 3, 2019
Added
- Add support for Signal Subscription Listener
- Add support for Signal publish API
Modified
- Exposed add(listener:) to be called by PubNub instance directly
Fixed
- Fixed crash attempting to create URLSessionTasks from invalidated URLSession
- Default Encryption/Decryption methodology now properly aligns with other SDKs
?
characters inside URL query parameters will now be properly url encoded
v1.0.0
August 23, 2019
Added
- Initial release of native Swift PubNub SDK