Changelog for C# SDK

## v7.4.1 *July 30, 2025* | Type | Changes | |------|----------| | **Fixed** | • Added MembershipMetadata container inside PNObjectEventResult to correctly parse and forward data when object event type is `membership`.<br/>• Fixed issue where some result objects like PNMessageResult had UserMetadata declared as an object instead of the standard Dictionary&lt;string, object> format for metadata. | ## v7.4.0 *July 23, 2025* | Type | Changes | |------|----------| | **Added** | • Added support for `status` and `type` fields for uuid, channel and members app context apis. | ## v7.3.15 *July 3, 2025* | Type | Changes | |------|----------| | **Added** | • Implemented an in-house CBOR solution for ParseToken() handling to reduce total SDK+dependencies size. | ## v7.3.14 *June 25, 2025* | Type | Changes | |------|----------| | **Modified** | • Updated log type from Error to Warn for TaskCanceledException. | ## v7.3.13 *June 6, 2025* | Type | Changes | |------|----------| | **Fixed** | • Improved parsing of file download errors to be properly set in operation status ErrorData. | ## v7.3.12 *May 28, 2025* | Type | Changes | |------|----------| | **Added** | • Added new integration tests to better cover all SDK endpoints. | | **Fixed** | • Fixed an issue when upon receiving a message with published with a custom type the CustomMessageType would be null upon receiving. | ## v7.3.11 *May 20, 2025* | Type | Changes | |------|----------| | **Fixed** | • Fix missing `heartbeat` and `leave` REST API calls when the event engine is enabled and `presenceTimeout` or `presenceHeartbeatInterval` not set. | ## v7.3.10 *May 9, 2025* | Type | Changes | |------|----------| | **Fixed** | • Specified dependency version for fixing synk reported issues. | ## v7.3.9 *May 9, 2025* | Type | Changes | |------|----------| | **Modified** | • Changed the way the PubNub logger is injected into IHtttpClientService for better custom-transport-layers handling. | ## v7.3.8 *April 8, 2025* | Type | Changes | |------|----------| | **Modified** | • Subscribe with custom timetoken scenario handling improvements. | ## v7.3.7 *April 7, 2025* | Type | Changes | |------|----------| | **Modified** | • Enhance request handling with detailed response interface. | ## v7.3.6 *April 3, 2025* | Type | Changes | |------|----------| | **Fixed** | • Reafctor: Removed excess logging from transport module. Removed redundant logging from transport layer and added thread id information for tracking http request. | ## v7.3.5 *March 31, 2025* | Type | Changes | |------|----------| | **Fixed** | • Standardize connection configuration to address inconsistent platform defaults leading to socket exhaustion under high load. | ## v7.3.4 *March 28, 2025* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue with subscribe loop when mulitple subscription changes happen rapidly. | ## v7.3.3 *March 26, 2025* | Type | Changes | |------|----------| | **Modified** | • Upgrade Cbor library to latest version.<br/>• Additional logging to log pubnub instance configuration through registered custom logger. | ## v7.3.2 *March 26, 2025* | Type | Changes | |------|----------| | **Modified** | • Upgrade newtonsoft json library. | ## v7.3.1 *March 18, 2025* | Type | Changes | |------|----------| | **Modified** | • Removed old deprecated logger code. | ## v7.3.0 *March 11, 2025* | Type | Changes | |------|----------| | **Modified** | • Implemented new logger for enhanced logging. | ## v7.2.1 *February 25, 2025* | Type | Changes | |------|----------| | **Fixed** | • Implemented enhanced cancellation token management for `HttpClient` to allow graceful termination of HTTP requests. | ## v7.2.0 *January 29, 2025* | Type | Changes | |------|----------| | **Added** | • Added new optional parameter `IfMatchesEtag` for `setUUIDMetadata` and `setChannelMetadata`. When provided, the server compares the argument value with the eTag on the server and if they don't match a HTTP 412 error is returned. | | **Fixed** | • Fixes issue of not getting `PNSubscriptionChangedCategory` status when subscription change happens. | ## v7.1.3 *January 23, 2025* | Type | Changes | |------|----------| | **Modified** | • Informative log statements throughout SDK. | ## v7.1.2 *January 21, 2025* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue of receiving duplicate messages when event engine is disabled. | ## v7.1.1 *January 16, 2025* | Type | Changes | |------|----------| | **Modified** | • Refactored event result data parsing logic within the subscribe feature for enhanced performance and maintainability. | ## v7.1.0 *December 4, 2024* | Type | Changes | |------|----------| | **Added** | • Added support for CustomMessageType in publish, signal, files features.<br/>• Added support for Type field in membership APIs. | ## v7.0.0 *October 30, 2024* | Type | Changes | |------|----------| | **Added** | • Added support for `Channel`, `ChannelGroup`, `Subscription` and `SubscriptionSet`, `ChannelMetadata`, `UserMetadata` entities for Subscribe related operation.<br/>• BREAKING CHANGES: Default Reconnection policy is set to Exponential.<br/>• BREAKING CHANGES: All apis calls will be made through `HttpClient` by default.<br/>• Default value for `EnableEventEngine` is set to `true`, Subscribe operation will be executed by event engine by default. | | **Modified** | • Removed telemetry manager. | ## v6.20.2 *October 3, 2024* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue of listener not being removed on RemoveListener call. | ## v6.20.1 *May 9, 2024* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue of Unity SDK not being able to have a fully independent IJsonPluggableLibrary implementation because of direct nu-get Newtonsoft usage in C# SDK (Unity has it's own version that works with IL2CPP builds). | ## v6.20.0 *April 18, 2024* | Type | Changes | |------|----------| | **Added** | • Added event engine implementation for subscribe and presence operation.<br/>• Added support for `RetryConfiguration` to configure subscribe request retry. | ## v6.19.7 *April 2, 2024* | Type | Changes | |------|----------| | **Fixed** | • Resolved the issue where an incorrect network status was emitted when no internet connection was detected. | ## v6.19.6 *March 28, 2024* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue of inaccurate DateTime to TimeToken conversion in TranslateDateTimeToPubnubUnixNanoSeconds. | ## v6.19.5 *January 17, 2024* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue of getting exception for custom objects in subscription and history when crypto module is configured. | ## v6.19.4 *November 28, 2023* | Type | Changes | |------|----------| | **Fixed** | • Handle unencrypted message while getting messages with crypto. | ## v6.19.3 *October 31, 2023* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue of applying default serializer settings. | ## v6.19.2 *October 30, 2023* | Type | Changes | |------|----------| | **Modified** | • Changed license to PubNub Software Development Kit License. | ## v6.19.1 *October 24, 2023* | Type | Changes | |------|----------| | **Fixed** | • Fixes issue of getting error when hereNow is called with channelGroups param only. | ## v6.19.0 *October 16, 2023* | Type | Changes | |------|----------| | **Added** | • Add crypto module that allows configure SDK to encrypt and decrypt messages. | | **Fixed** | • Improved security of crypto implementation by adding enhanced AES-CBC cryptor.<br/>• Fixes Newtonsoft Json vulnerability with MaxDepth and upgrade to version for non-PCL. | | **Modified** | • Add SubscribeKey validation for subscribe feature. | ## v6.18.0 *September 4, 2023* | Type | Changes | |------|----------| | **Fixed** | • Allow name param as optional in SetChannelMetadata. Removed default empty value. | ## v6.17.0 *July 10, 2023* | Type | Changes | |------|----------| | **Modified** | • Validate json string before deserialization. | ## v6.16.0 *May 18, 2023* | Type | Changes | |------|----------| | **Modified** | • Replaced ConcurrentDictionary class file with System.Collections.Concurrent package for all target frameworks except .net 3.5/4.0.<br/>• Addressed threading issue on reading ConcurrentDictionary keys. | ## v6.15.0 *March 16, 2023* | Type | Changes | |------|----------| | **Added** | • Sending files as raw byte arrays. | | **Modified** | • Added TcpKeepAlive and ConnectionLimit to improve performance. | ## v6.14.0 *February 27, 2023* | Type | Changes | |------|----------| | **Modified** | • Undeprecated GrantToken methods/properties. | ## v6.13.0 *December 5, 2022* | Type | Changes | |------|----------| | **Fixed** | • Added null check for PublishFileMessage PNStatus in SendFileOperation.<br/>• Removed invalid Content-Type in ObjectsV2 request headers targeting .Net Frameworks. | | **Modified** | • Added CultureInfo.InvariantCulture to string formatting. | ## v6.12.0 *November 14, 2022* | Type | Changes | |------|----------| | **Fixed** | • Encode comma char for push related multi channels. | ## v6.11.0 *November 7, 2022* | Type | Changes | |------|----------| | **Modified** | • Added Content-Type to request header to support internal acceptance tests.<br/>• Added acceptance tests for ObjectsV2 feature. | ## v6.10.0 *September 6, 2022* | Type | Changes | |------|----------| | **Fixed** | • Add Users/Spaces support to PCL versions. | ## v6.9.0 *August 22, 2022* | Type | Changes | |------|----------| | **Fixed** | • Fix Timer reference conflict in net6.0. | ## v6.8.0 *August 10, 2022* | Type | Changes | |------|----------| | **Fixed** | • Fixed Destroy() method when multiple Pubnub instances were in use. | ## v6.7.0 *July 27, 2022* | Type | Changes | |------|----------| | **Modified** | • Added support for Users/Spaces to GrantToken. | ## v6.6.0 *July 18, 2022* | Type | Changes | |------|----------| | **Modified** | • Introduced UserId to PNConfiguration and deprecated UUID.<br/>• Added build target framework support to .Net Framework 4.8 and .Net 6.0. | ## v6.5.0 *June 14, 2022* | Type | Changes | |------|----------| | **Fixed** | • Suppress web request aborted exception message to callback. | ## v6.4.0 *May 23, 2022* | Type | Changes | |------|----------| | **Fixed** | • Handle PNConfiguration for multi Pubnub instances. | ## v6.3.0 *March 22, 2022* | Type | Changes | |------|----------| | **Fixed** | • Refactor Telemetry Task Result to GetAwaiter().GetResult() .<br/>• Removed SILVERLIGHT, WINDOWS_PHONE preprocessor directive code. | ## v6.2.0 *January 27, 2022* | Type | Changes | |------|----------| | **Modified** | • Bumped PeterO.Cbor library version to 4.5.2. | ## v6.1.0 *January 20, 2022* | Type | Changes | |------|----------| | **Fixed** | • Capture region when exception occur during subscribe. | ## v6.0.0 *January 12, 2022* | Type | Changes | |------|----------| | **Modified** | • BREAKING CHANGES: UUID is mandatory to use SDK. | ## v5.4.0 *December 16, 2021* | Type | Changes | |------|----------| | **Fixed** | • Replaced BouncyCastle lib with System.Security.Cryptography.Algorithms.<br/>• Added try/catch for publish operation to catch exceptions. | ## v5.3.0 *November 16, 2021* | Type | Changes | |------|----------| | **Added** | • Added RevokeToken feature. | ## v5.2.0 *November 1, 2021* | Type | Changes | |------|----------| | **Modified** | • Capture region for subscribe.<br/>• Removed throw exception on atleast one PAM permission validation. | ## v5.1.0 *October 12, 2021* | Type | Changes | |------|----------| | **Modified** | • Dispose RandomNumberGenerator | | **Added** | • Added PAMv3 support - GrantToken, ParseToken, SetAuthToken. | ## v5.0.1 *July 14, 2021* | Type | Changes | |------|----------| | **Modified** | • Replaced Random class with RandomNumberGenerator for secure random bytes.<br/>• Handling of SendFile file size exceeded error message and refactored DeleteFile.<br/>• Refactored Encrypt/Decrypt methods in calling PubnubCrypto constructor with config. | ## v5.0.0 *June 14, 2021* | Type | Changes | |------|----------| | **Added** | • BREAKING CHANGE - UseRandomInitializationVector is true by default. | ## 4.15.0.0 *May 27, 2021* | Type | Changes | |------|----------| | **Modified** | • Refactored code to handle malformed message for reconnection policy. | ## 4.14.0.0 *May 18, 2021* | Type | Changes | |------|----------| | **Fixed** | • Refactored code to handle malformed message for re-subscribe. | | **Modified** | • Upgraded System.Net.Http minimum version to 4.3.4, to address security advisory CVE-2018-8292 in PubnubPCL. | ## 4.13.0.0 *January 18, 2021* | Type | Changes | |------|----------| | **Modified** | • Increase message count default limit for History v3 api call to 100 for single channel. | | **Fixed** | • UnsubscribeAll fix when no channels subscribed. | ## 4.12.0.0 *October 5, 2020* | Type | Changes | |------|----------| | **Modified** | • Added support to Objects Access Manager | ## 4.11.0.0 *August 27, 2020* | Type | Changes | |------|----------| | **Modified** | • Fix for SaveFileToLocal in PNDownloadFileResult<br/>• Code refactor to use file Content-Type from generate-upload-url form fields<br/>• Removed IncludeUuid and IncludeMessageType from v2/history endpoint | ## 4.10.0.0 *July 30, 2020* | Type | Changes | |------|----------| | **Modified** | • Fix for publish file message<br/>• Modified PNFileEventResult model class and applied internal set accessor for models. | ## 4.9.0.0 *July 28, 2020* | Type | Changes | |------|----------| | **Modified** | • Added files feature | ## 4.8.0.0 *June 10, 2020* | Type | Changes | |------|----------| | **Modified** | • Removed V1 Objects API feature. BREAKING CHANGE if you are using V1 Objects.<br/>• Added Objects Simplification API feature. | ## 4.7.0.0 *May 27, 2020* | Type | Changes | |------|----------| | **Modified** | • Code refactor for Signal, Publish, Fire input validation. | ## 4.6.0.0 *April 30, 2020* | Type | Changes | |------|----------| | **Modified** | • Added async/await support for feature method calls.<br/>• Added sort for Objects API.<br/>• Typo correction SupressLeaveEvents to SuppressLeaveEvents in PNConfiguration. | ## 4.5.0.0 *January 9, 2020* | Type | Changes | |------|----------| | **Modified** | • Code refactor to fix Objects and MessageActions using POST/PATCH/DELETE based requests.<br/>• Added filter support for Objects API. | ## 4.4.0.0 *December 19, 2019* | Type | Changes | |------|----------| | **Modified** | • Refactored code related to TMS GetToken and GetTokens<br/>• Refactored code to retrieve assembly version | ## 4.3.0.0 *December 12, 2019* | Type | Changes | |------|----------| | **Modified** | • Added APNS2 support for mobile push.<br/>• Added helper class to build mobile push payload.<br/>• Refactored code for PAM Signature. | ## 4.2.0.0 *October 15, 2019* | Type | Changes | |------|----------| | **Modified** | • Added IncludeMeta option to History.<br/>• Added new feature FetchHistory.<br/>• Added support for Message Actions.<br/>• Fix for ManageMembers and ManageMemberships when multiple include fields are provided. | ## 4.1.0.0 *September 26, 2019* | Type | Changes | |------|----------| | **Modified** | • Fix for MessageCounts when multiple channels are used.<br/>• Fix for PAM Signature when case-sensitive param keys are provided.<br/>• Refactored all calls that use PAM signature to use v2 format signature.<br/>• Implemented PAMv3 to all Objects.<br/>• New feature Token Management System to all Objects. | ## 4.0.33.0 *August 22, 2019* | Type | Changes | |------|----------| | **Modified** | • Modified Signal listener message type to PNSignalResult.<br/>• Added ObjectsAPI feature. | ## 4.0.32.0 *August 8, 2019* | Type | Changes | |------|----------| | **Modified** | • Async() is deprecated. Use Execute() instead.<br/>• Added Signal feature. | ## 4.0.31.0 *July 25, 2019* | Type | Changes | |------|----------| | **Modified** | • Refactored code to encode unsafe chars ignored by EscapeDataString in NET35/NET40 | ## 4.0.30.0 *May 28, 2019* | Type | Changes | |------|----------| | **Modified** | • Refactored code to enforce minimum PresenceTimeout value to 20<br/>• Refactored code to handle bool type in presence state | ## 4.0.29.0 *April 25, 2019* | Type | Changes | |------|----------| | **Modified** | • Fix to retrieve channel name for PNPresenceEventResult when channel group is used | ## 4.0.28.0 *March 28, 2019* | Type | Changes | |------|----------| | **Modified** | • Fix for MessageCounts feature when multiple channels or timetokens are used with PAM enabled keys | ## 4.0.27.0 *March 13, 2019* | Type | Changes | |------|----------| | **Modified** | • Added MessageCounts feature to get count of messages published since a given time | ## 4.0.26.0 *February 14, 2019* | Type | Changes | |------|----------| | **Modified** | • Fix to capture last timetoken when subscribe request timeout/terminated | ## 4.0.25.0 *February 7, 2019* | Type | Changes | |------|----------| | **Modified** | • Refactored code to allow tilde char for publish GET with secret key<br/>• Minor code refactoring based on Codacy analysis | ## 4.0.24.0 *October 11, 2018* | Type | Changes | |------|----------| | **Modified** | • Code refactor to check null value of variables related to Reconnect usage | ## 4.0.23.0 *October 1, 2018* | Type | Changes | |------|----------| | **Modified** | • Code refactor based on codacy rules on unused code<br/>• Refactored code to handle WebException from HttpRequestException for NetStandard platforms | ## 4.0.22.0 *September 6, 2018* | Type | Changes | |------|----------| | **Modified** | • Added Grant delete permission feature<br/>• Modified SDK dependency Portable.BouncyCastle minimum version to 1.8.1.2 | ## 4.0.21.0 *August 13, 2018* | Type | Changes | |------|----------| | **Modified** | • Refactored code for performance improvement<br/>• Refactored CleanupTelemetryData | ## 4.0.20.0 *August 6, 2018* | Type | Changes | |------|----------| | **Modified** | • Refactored code to publish multiple emoji characters<br/>• Refactored code to improve performance of Publish/Fire/Grant/Subscribe/Unsubscribe requests targeting .net framework | ## 4.0.19.0 *July 12, 2018* | Type | Changes | |------|----------| | **Modified** | • Code refactor to maintain separate instance id during multi-instancing | ## 4.0.18.0 *June 20, 2018* | Type | Changes | |------|----------| | **Modified** | • Added Publisher property to PNMessageResult of subscribe<br/>• Added PNException class and refactored code internally around status response | ## 4.0.17.0 *May 30, 2018* | Type | Changes | |------|----------| | **Modified** | • Code refactor related to MultiplexExceptionHandler<br/>• Support to Apple Watch<br/>• Code refactor related to PubnubInstance | ## 4.0.16.0 *April 9, 2018* | Type | Changes | |------|----------| | **Modified** | • Code refactor to ClientNetworkStatus<br/>• Proxy support for HttpClient<br/>• Code refactor to Telemetry<br/>• Reduced internal subscribe heartbeat interval for improvement in message delivery | ## 4.0.15.0 *March 22, 2018* | Type | Changes | |------|----------| | **Modified** | • Feature to add external query params<br/>• Internal deduping mechanism when devices cross regions (DedupOnSubscribe)<br/>• Added provision to SupressLeaveEvents<br/>• Refactored code related to network check time request for non-200 response logging | ## 4.0.14.0 *February 15, 2018* | Type | Changes | |------|----------| | **Modified** | • Fix for Publish Sync<br/>• Refactored Int32/Int64 Parse to TryParse<br/>• Code refactor based on Codacy | ## 4.0.13.0 *January 18, 2018* | Type | Changes | |------|----------| | **Modified** | • Relay server sent error status to PNStatus for Publish request<br/>• Refactored to allow colon char for publish with secret key | ## 4.0.12.0 *December 21, 2017* | Type | Changes | |------|----------| | **Modified** | • Relay server sent 403 status to PNStatus for PCL<br/>• Resolved array type published message for Subscribe&lt;string&gt; | ## 4.0.11.0 *December 14, 2017* | Type | Changes | |------|----------| | **Modified** | • Refactored by applying JArray.Parse for history and time json response | ## 4.0.10.0 *December 13, 2017* | Type | Changes | |------|----------| | **Modified** | • Refactored code by replacing Add with AddOrGet for ConcurrentDictionary<br/>• Added exception handling in TerminateReconnectTimer<br/>• Code refactor based on Codacy recommendation | ## 4.0.9.0 *December 5, 2017* | Type | Changes | |------|----------| | **Modified** | • Return PNStatus for non-subscribe requests timeout<br/>• Fix for PAM Grant requests to work independent of device locale<br/>• Code refactor based on Codacy recommendation | ## 4.0.8.0 *November 9, 2017* | Type | Changes | |------|----------| | **Modified** | • Added bool return value for AddListener and RemoveListener<br/>• ResetTimeToken option for Reconnect and bool return for Reconnect/Disconnect<br/>• Resubscribe fix when channelgroup is used | ## 4.0.7.0 *November 1, 2017* | Type | Changes | |------|----------| | **Modified** | • Added exception handling to AddListener and RemoveListener<br/>• Code refactor to address collection modified error in TelemetryManager<br/>• Code refactor based on Codacy recommendation | ## 4.0.6.0 *October 27, 2017* | Type | Changes | |------|----------| | **Modified** | • Added null check in exception catch block during network reconnect<br/>• Refactored code to send correct channel group, if exist, to PNStatus during network reconnect<br/>• Fix for delete message from history<br/>• Code refactor based on Codacy recommendation | ## 4.0.5.2 *October 10, 2017* | Type | Changes | |------|----------| | **Modified** | • Added exception handling for subscribe and unsubscribe internal exceptions | ## 4.0.5.1 *September 26, 2017* | Type | Changes | |------|----------| | **Modified** | • Added new method RemoveAllPushNotificationsFromDeviceWithPushToken<br/>• Code refactor on Reconnect<br/>• Code refactor based on Codacy recommendation | ## 4.0.4.1 *September 19, 2017* | Type | Changes | |------|----------| | **Modified** | • Added Telemetry feature<br/>• Fix for PNPushListProvisionsResult | ## 4.0.3.2 *September 6, 2017* | Type | Changes | |------|----------| | **Modified** | • Added HereNowRefresh to PNPresenceEventResult<br/>• PCL version duplicate message fix for multiple disconnect/reconnect | ## 4.0.3.1 *August 18, 2017* | Type | Changes | |------|----------| | **Modified** | • Refactored code to handle exception in Unsubscribe and query builder functionality<br/>• Migrated source code from VS 2015 to VS 2017<br/>• Added DeleteMessages feature | ## 4.0.2.2 *July 20, 2017* | Type | Changes | |------|----------| | **Modified** | • Code refactor to fix subscribe timeout and reconnect | ## 4.0.2.0 *July 5, 2017* | Type | Changes | |------|----------| | **Modified** | • Refactored code for application level grant<br/>• Refactored code to reuse HttpClient instance<br/>• Refactored code to handle Pubnub multi-instancing | ## 4.0.1.7 *June 7, 2017* | Type | Changes | |------|----------| | **Modified** | • Fix for publish with UsePOST and cipher key<br/>• Handling object array for History response | ## 4.0.1.6 *April 15, 2017* | Type | Changes | |------|----------| | **Modified** | • Fix for subscribe connect status callback<br/>• Message null value check for publish | ## 4.0.1.5 *April 6, 2017* | Type | Changes | |------|----------| | **Modified** | • Refactored to handle thread blocking | ## 4.0.1.4 *March 31, 2017* | Type | Changes | |------|----------| | **Modified** | • Fix to support Xamarin.Android Pubnub SDK install using Visual Studio | ## 4.0.1.3 *March 29, 2017* | Type | Changes | |------|----------| | **Modified** | • Added code to handle presence interval event<br/>• Code refactor per CA2000 code analysis | ## 4.0.1.3-rc13 *March 28, 2017* | Type | Changes | |------|----------| | **Modified** | • Refactored to address false alert log and timeout messages. | ## 4.0.1.3-rc12 *March 16, 2017* | Type | Changes | |------|----------| | **Modified** | • Support for ASP.NET/MVC project template projects. | ## 4.0.1.3-rc11 *March 11, 2017* | Type | Changes | |------|----------| | **Modified** | • Replaced HttpClient with compatible lib for .net 4.5/4.61 to support VS 2013. | ## 4.0.1.3-rc10 *March 8, 2017* | Type | Changes | |------|----------| | **Fixed** | • Comma encoding fix for multi channelgroups<br/>• Fixed channel remove from channelgroup | ## 4.0.1.3-rc9 *March 3, 2017* | Type | Changes | |------|----------| | **Fixed** | • Message fix for history when timetoken=false. | ## 4.0.1.3-rc8 *March 2, 2017* | Type | Changes | |------|----------| | **Modified** | • Added pn- prefix to default uuid. | ## 4.0.1.3-rc7 *February 20, 2017* | Type | Changes | |------|----------| | **Fixed** | • pcl profile 111 subscribe message fix. | ## 4.0.1.3-rc6 *February 17, 2017* | Type | Changes | |------|----------| | **Fixed** | • Timetoken fix for subscribed messages. | ## 4.0.1.3-rc5 *February 7, 2017* | Type | Changes | |------|----------| | **Modified** | • HttpClient to supported platforms. | | **Fixed** | • Fixed Unsubscribe issue. | ## 4.0.1.3-rc1 *January 17, 2017* | Type | Changes | |------|----------| | **Modified** | • Derived classes for inline coding. | ## 4.0.1.2-rc1 *December 16, 2016* | Type | Changes | |------|----------| | **Modified** | • Cipher typo, Origin change. | ## 4.0.1.0-rc1 *December 12, 2016* | Type | Changes | |------|----------| | **Modified** | • initial v4 version. |

v7.4.1

July 30, 2025
Fixed
  • Added MembershipMetadata container inside PNObjectEventResult to correctly parse and forward data when object event type is membership.
  • Fixed issue where some result objects like PNMessageResult had UserMetadata declared as an object instead of the standard Dictionary<string, object> format for metadata.

v7.4.0

July 23, 2025
Added
  • Added support for status and type fields for uuid, channel and members app context apis.

v7.3.15

July 3, 2025
Added
  • Implemented an in-house CBOR solution for ParseToken() handling to reduce total SDK+dependencies size.

v7.3.14

June 25, 2025
Modified
  • Updated log type from Error to Warn for TaskCanceledException.

v7.3.13

June 6, 2025
Fixed
  • Improved parsing of file download errors to be properly set in operation status ErrorData.

v7.3.12

May 28, 2025
Added
  • Added new integration tests to better cover all SDK endpoints.
Fixed
  • Fixed an issue when upon receiving a message with published with a custom type the CustomMessageType would be null upon receiving.

v7.3.11

May 20, 2025
Fixed
  • Fix missing heartbeat and leave REST API calls when the event engine is enabled and presenceTimeout or presenceHeartbeatInterval not set.

v7.3.10

May 9, 2025
Fixed
  • Specified dependency version for fixing synk reported issues.

v7.3.9

May 9, 2025
Modified
  • Changed the way the PubNub logger is injected into IHtttpClientService for better custom-transport-layers handling.

v7.3.8

April 8, 2025
Modified
  • Subscribe with custom timetoken scenario handling improvements.

v7.3.7

April 7, 2025
Modified
  • Enhance request handling with detailed response interface.

v7.3.6

April 3, 2025
Fixed
  • Reafctor: Removed excess logging from transport module. Removed redundant logging from transport layer and added thread id information for tracking http request.

v7.3.5

March 31, 2025
Fixed
  • Standardize connection configuration to address inconsistent platform defaults leading to socket exhaustion under high load.

v7.3.4

March 28, 2025
Fixed
  • Fixes issue with subscribe loop when mulitple subscription changes happen rapidly.

v7.3.3

March 26, 2025
Modified
  • Upgrade Cbor library to latest version.
  • Additional logging to log pubnub instance configuration through registered custom logger.

v7.3.2

March 26, 2025
Modified
  • Upgrade newtonsoft json library.

v7.3.1

March 18, 2025
Modified
  • Removed old deprecated logger code.

v7.3.0

March 11, 2025
Modified
  • Implemented new logger for enhanced logging.

v7.2.1

February 25, 2025
Fixed
  • Implemented enhanced cancellation token management for HttpClient to allow graceful termination of HTTP requests.

v7.2.0

January 29, 2025
Added
  • Added new optional parameter IfMatchesEtag for setUUIDMetadata and setChannelMetadata. When provided, the server compares the argument value with the eTag on the server and if they don't match a HTTP 412 error is returned.
Fixed
  • Fixes issue of not getting PNSubscriptionChangedCategory status when subscription change happens.

v7.1.3

January 23, 2025
Modified
  • Informative log statements throughout SDK.

v7.1.2

January 21, 2025
Fixed
  • Fixes issue of receiving duplicate messages when event engine is disabled.

v7.1.1

January 16, 2025
Modified
  • Refactored event result data parsing logic within the subscribe feature for enhanced performance and maintainability.

v7.1.0

December 4, 2024
Added
  • Added support for CustomMessageType in publish, signal, files features.
  • Added support for Type field in membership APIs.

v7.0.0

October 30, 2024
Added
  • Added support for Channel, ChannelGroup, Subscription and SubscriptionSet, ChannelMetadata, UserMetadata entities for Subscribe related operation.
  • BREAKING CHANGES: Default Reconnection policy is set to Exponential.
  • BREAKING CHANGES: All apis calls will be made through HttpClient by default.
  • Default value for EnableEventEngine is set to true, Subscribe operation will be executed by event engine by default.
Modified
  • Removed telemetry manager.

v6.20.2

October 3, 2024
Fixed
  • Fixes issue of listener not being removed on RemoveListener call.

v6.20.1

May 9, 2024
Fixed
  • Fixes issue of Unity SDK not being able to have a fully independent IJsonPluggableLibrary implementation because of direct nu-get Newtonsoft usage in C# SDK (Unity has it's own version that works with IL2CPP builds).

v6.20.0

April 18, 2024
Added
  • Added event engine implementation for subscribe and presence operation.
  • Added support for RetryConfiguration to configure subscribe request retry.

v6.19.7

April 2, 2024
Fixed
  • Resolved the issue where an incorrect network status was emitted when no internet connection was detected.

v6.19.6

March 28, 2024
Fixed
  • Fixes issue of inaccurate DateTime to TimeToken conversion in TranslateDateTimeToPubnubUnixNanoSeconds.

v6.19.5

January 17, 2024
Fixed
  • Fixes issue of getting exception for custom objects in subscription and history when crypto module is configured.

v6.19.4

November 28, 2023
Fixed
  • Handle unencrypted message while getting messages with crypto.

v6.19.3

October 31, 2023
Fixed
  • Fixes issue of applying default serializer settings.

v6.19.2

October 30, 2023
Modified
  • Changed license to PubNub Software Development Kit License.

v6.19.1

October 24, 2023
Fixed
  • Fixes issue of getting error when hereNow is called with channelGroups param only.

v6.19.0

October 16, 2023
Added
  • Add crypto module that allows configure SDK to encrypt and decrypt messages.
Fixed
  • Improved security of crypto implementation by adding enhanced AES-CBC cryptor.
  • Fixes Newtonsoft Json vulnerability with MaxDepth and upgrade to version for non-PCL.
Modified
  • Add SubscribeKey validation for subscribe feature.

v6.18.0

September 4, 2023
Fixed
  • Allow name param as optional in SetChannelMetadata. Removed default empty value.

v6.17.0

July 10, 2023
Modified
  • Validate json string before deserialization.

v6.16.0

May 18, 2023
Modified
  • Replaced ConcurrentDictionary class file with System.Collections.Concurrent package for all target frameworks except .net 3.5/4.0.
  • Addressed threading issue on reading ConcurrentDictionary keys.

v6.15.0

March 16, 2023
Added
  • Sending files as raw byte arrays.
Modified
  • Added TcpKeepAlive and ConnectionLimit to improve performance.

v6.14.0

February 27, 2023
Modified
  • Undeprecated GrantToken methods/properties.

v6.13.0

December 5, 2022
Fixed
  • Added null check for PublishFileMessage PNStatus in SendFileOperation.
  • Removed invalid Content-Type in ObjectsV2 request headers targeting .Net Frameworks.
Modified
  • Added CultureInfo.InvariantCulture to string formatting.

v6.12.0

November 14, 2022
Fixed
  • Encode comma char for push related multi channels.

v6.11.0

November 7, 2022
Modified
  • Added Content-Type to request header to support internal acceptance tests.
  • Added acceptance tests for ObjectsV2 feature.

v6.10.0

September 6, 2022
Fixed
  • Add Users/Spaces support to PCL versions.

v6.9.0

August 22, 2022
Fixed
  • Fix Timer reference conflict in net6.0.

v6.8.0

August 10, 2022
Fixed
  • Fixed Destroy() method when multiple Pubnub instances were in use.

v6.7.0

July 27, 2022
Modified
  • Added support for Users/Spaces to GrantToken.

v6.6.0

July 18, 2022
Modified
  • Introduced UserId to PNConfiguration and deprecated UUID.
  • Added build target framework support to .Net Framework 4.8 and .Net 6.0.

v6.5.0

June 14, 2022
Fixed
  • Suppress web request aborted exception message to callback.

v6.4.0

May 23, 2022
Fixed
  • Handle PNConfiguration for multi Pubnub instances.

v6.3.0

March 22, 2022
Fixed
  • Refactor Telemetry Task Result to GetAwaiter().GetResult() .
  • Removed SILVERLIGHT, WINDOWS_PHONE preprocessor directive code.

v6.2.0

January 27, 2022
Modified
  • Bumped PeterO.Cbor library version to 4.5.2.

v6.1.0

January 20, 2022
Fixed
  • Capture region when exception occur during subscribe.

v6.0.0

January 12, 2022
Modified
  • BREAKING CHANGES: UUID is mandatory to use SDK.

v5.4.0

December 16, 2021
Fixed
  • Replaced BouncyCastle lib with System.Security.Cryptography.Algorithms.
  • Added try/catch for publish operation to catch exceptions.

v5.3.0

November 16, 2021
Added
  • Added RevokeToken feature.

v5.2.0

November 1, 2021
Modified
  • Capture region for subscribe.
  • Removed throw exception on atleast one PAM permission validation.

v5.1.0

October 12, 2021
Modified
  • Dispose RandomNumberGenerator
Added
  • Added PAMv3 support - GrantToken, ParseToken, SetAuthToken.

v5.0.1

July 14, 2021
Modified
  • Replaced Random class with RandomNumberGenerator for secure random bytes.
  • Handling of SendFile file size exceeded error message and refactored DeleteFile.
  • Refactored Encrypt/Decrypt methods in calling PubnubCrypto constructor with config.

v5.0.0

June 14, 2021
Added
  • BREAKING CHANGE - UseRandomInitializationVector is true by default.

4.15.0.0

May 27, 2021
Modified
  • Refactored code to handle malformed message for reconnection policy.

4.14.0.0

May 18, 2021
Fixed
  • Refactored code to handle malformed message for re-subscribe.
Modified
  • Upgraded System.Net.Http minimum version to 4.3.4, to address security advisory CVE-2018-8292 in PubnubPCL.

4.13.0.0

January 18, 2021
Modified
  • Increase message count default limit for History v3 api call to 100 for single channel.
Fixed
  • UnsubscribeAll fix when no channels subscribed.

4.12.0.0

October 5, 2020
Modified
  • Added support to Objects Access Manager

4.11.0.0

August 27, 2020
Modified
  • Fix for SaveFileToLocal in PNDownloadFileResult
  • Code refactor to use file Content-Type from generate-upload-url form fields
  • Removed IncludeUuid and IncludeMessageType from v2/history endpoint

4.10.0.0

July 30, 2020
Modified
  • Fix for publish file message
  • Modified PNFileEventResult model class and applied internal set accessor for models.

4.9.0.0

July 28, 2020
Modified
  • Added files feature

4.8.0.0

June 10, 2020
Modified
  • Removed V1 Objects API feature. BREAKING CHANGE if you are using V1 Objects.
  • Added Objects Simplification API feature.

4.7.0.0

May 27, 2020
Modified
  • Code refactor for Signal, Publish, Fire input validation.

4.6.0.0

April 30, 2020
Modified
  • Added async/await support for feature method calls.
  • Added sort for Objects API.
  • Typo correction SupressLeaveEvents to SuppressLeaveEvents in PNConfiguration.

4.5.0.0

January 9, 2020
Modified
  • Code refactor to fix Objects and MessageActions using POST/PATCH/DELETE based requests.
  • Added filter support for Objects API.

4.4.0.0

December 19, 2019
Modified
  • Refactored code related to TMS GetToken and GetTokens
  • Refactored code to retrieve assembly version

4.3.0.0

December 12, 2019
Modified
  • Added APNS2 support for mobile push.
  • Added helper class to build mobile push payload.
  • Refactored code for PAM Signature.

4.2.0.0

October 15, 2019
Modified
  • Added IncludeMeta option to History.
  • Added new feature FetchHistory.
  • Added support for Message Actions.
  • Fix for ManageMembers and ManageMemberships when multiple include fields are provided.

4.1.0.0

September 26, 2019
Modified
  • Fix for MessageCounts when multiple channels are used.
  • Fix for PAM Signature when case-sensitive param keys are provided.
  • Refactored all calls that use PAM signature to use v2 format signature.
  • Implemented PAMv3 to all Objects.
  • New feature Token Management System to all Objects.

4.0.33.0

August 22, 2019
Modified
  • Modified Signal listener message type to PNSignalResult.
  • Added ObjectsAPI feature.

4.0.32.0

August 8, 2019
Modified
  • Async() is deprecated. Use Execute() instead.
  • Added Signal feature.

4.0.31.0

July 25, 2019
Modified
  • Refactored code to encode unsafe chars ignored by EscapeDataString in NET35/NET40

4.0.30.0

May 28, 2019
Modified
  • Refactored code to enforce minimum PresenceTimeout value to 20
  • Refactored code to handle bool type in presence state

4.0.29.0

April 25, 2019
Modified
  • Fix to retrieve channel name for PNPresenceEventResult when channel group is used

4.0.28.0

March 28, 2019
Modified
  • Fix for MessageCounts feature when multiple channels or timetokens are used with PAM enabled keys

4.0.27.0

March 13, 2019
Modified
  • Added MessageCounts feature to get count of messages published since a given time

4.0.26.0

February 14, 2019
Modified
  • Fix to capture last timetoken when subscribe request timeout/terminated

4.0.25.0

February 7, 2019
Modified
  • Refactored code to allow tilde char for publish GET with secret key
  • Minor code refactoring based on Codacy analysis

4.0.24.0

October 11, 2018
Modified
  • Code refactor to check null value of variables related to Reconnect usage

4.0.23.0

October 1, 2018
Modified
  • Code refactor based on codacy rules on unused code
  • Refactored code to handle WebException from HttpRequestException for NetStandard platforms

4.0.22.0

September 6, 2018
Modified
  • Added Grant delete permission feature
  • Modified SDK dependency Portable.BouncyCastle minimum version to 1.8.1.2

4.0.21.0

August 13, 2018
Modified
  • Refactored code for performance improvement
  • Refactored CleanupTelemetryData

4.0.20.0

August 6, 2018
Modified
  • Refactored code to publish multiple emoji characters
  • Refactored code to improve performance of Publish/Fire/Grant/Subscribe/Unsubscribe requests targeting .net framework

4.0.19.0

July 12, 2018
Modified
  • Code refactor to maintain separate instance id during multi-instancing

4.0.18.0

June 20, 2018
Modified
  • Added Publisher property to PNMessageResult of subscribe
  • Added PNException class and refactored code internally around status response

4.0.17.0

May 30, 2018
Modified
  • Code refactor related to MultiplexExceptionHandler
  • Support to Apple Watch
  • Code refactor related to PubnubInstance

4.0.16.0

April 9, 2018
Modified
  • Code refactor to ClientNetworkStatus
  • Proxy support for HttpClient
  • Code refactor to Telemetry
  • Reduced internal subscribe heartbeat interval for improvement in message delivery

4.0.15.0

March 22, 2018
Modified
  • Feature to add external query params
  • Internal deduping mechanism when devices cross regions (DedupOnSubscribe)
  • Added provision to SupressLeaveEvents
  • Refactored code related to network check time request for non-200 response logging

4.0.14.0

February 15, 2018
Modified
  • Fix for Publish Sync
  • Refactored Int32/Int64 Parse to TryParse
  • Code refactor based on Codacy

4.0.13.0

January 18, 2018
Modified
  • Relay server sent error status to PNStatus for Publish request
  • Refactored to allow colon char for publish with secret key

4.0.12.0

December 21, 2017
Modified
  • Relay server sent 403 status to PNStatus for PCL
  • Resolved array type published message for Subscribe<string>

4.0.11.0

December 14, 2017
Modified
  • Refactored by applying JArray.Parse for history and time json response

4.0.10.0

December 13, 2017
Modified
  • Refactored code by replacing Add with AddOrGet for ConcurrentDictionary
  • Added exception handling in TerminateReconnectTimer
  • Code refactor based on Codacy recommendation

4.0.9.0

December 5, 2017
Modified
  • Return PNStatus for non-subscribe requests timeout
  • Fix for PAM Grant requests to work independent of device locale
  • Code refactor based on Codacy recommendation

4.0.8.0

November 9, 2017
Modified
  • Added bool return value for AddListener and RemoveListener
  • ResetTimeToken option for Reconnect and bool return for Reconnect/Disconnect
  • Resubscribe fix when channelgroup is used

4.0.7.0

November 1, 2017
Modified
  • Added exception handling to AddListener and RemoveListener
  • Code refactor to address collection modified error in TelemetryManager
  • Code refactor based on Codacy recommendation

4.0.6.0

October 27, 2017
Modified
  • Added null check in exception catch block during network reconnect
  • Refactored code to send correct channel group, if exist, to PNStatus during network reconnect
  • Fix for delete message from history
  • Code refactor based on Codacy recommendation

4.0.5.2

October 10, 2017
Modified
  • Added exception handling for subscribe and unsubscribe internal exceptions

4.0.5.1

September 26, 2017
Modified
  • Added new method RemoveAllPushNotificationsFromDeviceWithPushToken
  • Code refactor on Reconnect
  • Code refactor based on Codacy recommendation

4.0.4.1

September 19, 2017
Modified
  • Added Telemetry feature
  • Fix for PNPushListProvisionsResult

4.0.3.2

September 6, 2017
Modified
  • Added HereNowRefresh to PNPresenceEventResult
  • PCL version duplicate message fix for multiple disconnect/reconnect

4.0.3.1

August 18, 2017
Modified
  • Refactored code to handle exception in Unsubscribe and query builder functionality
  • Migrated source code from VS 2015 to VS 2017
  • Added DeleteMessages feature

4.0.2.2

July 20, 2017
Modified
  • Code refactor to fix subscribe timeout and reconnect

4.0.2.0

July 5, 2017
Modified
  • Refactored code for application level grant
  • Refactored code to reuse HttpClient instance
  • Refactored code to handle Pubnub multi-instancing

4.0.1.7

June 7, 2017
Modified
  • Fix for publish with UsePOST and cipher key
  • Handling object array for History response

4.0.1.6

April 15, 2017
Modified
  • Fix for subscribe connect status callback
  • Message null value check for publish

4.0.1.5

April 6, 2017
Modified
  • Refactored to handle thread blocking

4.0.1.4

March 31, 2017
Modified
  • Fix to support Xamarin.Android Pubnub SDK install using Visual Studio

4.0.1.3

March 29, 2017
Modified
  • Added code to handle presence interval event
  • Code refactor per CA2000 code analysis

4.0.1.3-rc13

March 28, 2017
Modified
  • Refactored to address false alert log and timeout messages.

4.0.1.3-rc12

March 16, 2017
Modified
  • Support for ASP.NET/MVC project template projects.

4.0.1.3-rc11

March 11, 2017
Modified
  • Replaced HttpClient with compatible lib for .net 4.5/4.61 to support VS 2013.

4.0.1.3-rc10

March 8, 2017
Fixed
  • Comma encoding fix for multi channelgroups
  • Fixed channel remove from channelgroup

4.0.1.3-rc9

March 3, 2017
Fixed
  • Message fix for history when timetoken=false.

4.0.1.3-rc8

March 2, 2017
Modified
  • Added pn- prefix to default uuid.

4.0.1.3-rc7

February 20, 2017
Fixed
  • pcl profile 111 subscribe message fix.

4.0.1.3-rc6

February 17, 2017
Fixed
  • Timetoken fix for subscribed messages.

4.0.1.3-rc5

February 7, 2017
Modified
  • HttpClient to supported platforms.
Fixed
  • Fixed Unsubscribe issue.

4.0.1.3-rc1

January 17, 2017
Modified
  • Derived classes for inline coding.

4.0.1.2-rc1

December 16, 2016
Modified
  • Cipher typo, Origin change.

4.0.1.0-rc1

December 12, 2016
Modified
  • initial v4 version.
Last updated on
On this page