January 30 2025
- Extended functionality of Channel Members and User Membership. Now it's possible to use fine-grade includes and set member/membership status and type.
January 28 2025
- Fix issue because of which custom message type wasn't set to the parsed subscription response objects.
January 13 2025
- Introduced configurable request handler with HTTP/2 support.
November 19 2024
- Add custom message type support for the following APIs: Publish, signal, share file, subscribe and history.
October 02 2024
- BREAKING CHANGES: Automatic reconnecting for subscribe with exponential backoff is now enabled by default.
- Access manager v2 endpoints (grant and audit) will no longer be supported after December 31, 2024, and will be removed without further notice. Refer to the documentation to learn more.
- BREAKING CHANGES: Once used to instantiate PubNub, the configuration object (PNConfiguration instance) becomes immutable. You will receive exceptions if you rely on modifying the configuration after the PubNub instance is created. Refer to the documentation to learn more.
- Type hints for parameters and return values are now added to provide a better developer experience.
- All endpoints are now accessible through the builder pattern and named parameters, providing a more flexible experience suitable for custom solutions.
August 13 2024
- Option to lock PNConfiguration mutability. Note that mutable config will be deprecated in future major releases.
- Fix for routing crypto module if custom one was defined.
- Additional Examples.
May 09 2024
- A new version of subscription and presence handling is enabled by default (enableEventEngine flag is set to true). Please consult the documentation for new PNStatus values that are emitted for subscriptions, as code changes might be required to support this change.
- Channels, ChannelGroups, ChannelMetadata and UserMetadata.
April 10 2024
- Fix compatibility issues between EventEngine and Asyncio subscription manager.
March 28 2024
- Fixes in the thread based subscription managers causing to duplicate subscription calls.
March 07 2024
- Add missing status and type fields in app context. Now they are included, by default, in the response for getting channel/uuid metadata .
February 26 2024
- Fixes AsyncioTelemetryManager to avoid creating a task every second.
February 08 2024
- Optional Event Engine for Subscribe Loop.
November 27 2023
- Gracefully handle decrypting an unencrypted method. If a decryption error occurs when trying to decrypt plain text, the plain text message will be returned and an error field will be set in the response. This works for both history and subscription messages.
October 30 2023
- Changed license type from MIT to PubNub Software Development Kit License.
October 16 2023
- Add crypto module that allows configure SDK to encrypt and decrypt messages.
- Improved security of crypto implementation by adding enhanced AES-CBC cryptor.
July 06 2023
- Introduced option to select ciphering method for encoding messages and files. The default behavior is unchanged. More can be read in this comment.
January 17 2023
- Add optional TTL parameter for publish endpoint.
November 24 2022
- This change fixes typo in consumer models user and space resulting in setting invalid flags for the request.
- This change fixes error in calling and returning value of
status.is_error()
method. - This change adds additional informations to PyPi package. Informations include URLs to source code and documentation, required python version (at least 3.7) and updates a list of supported python versions (removed 3.6 and added 3.10). Fixed the following issues reported by @Saluev, @natekspencer and @andriyor: #145, #102 and #115.
October 05 2022
- Remove deprecation warning of Event.is_set and Thread.deamon.
August 23 2022
- Update build process to include python v3.10-dev and remove v3.6.
- Fix of randomly failing tests of
where_now feature
.
August 02 2022
- Fix bugs in Spaces Membership endpoints.
July 27 2022
- Grant token now supports Users and Spaces.
July 14 2022
- This addresses the issue #130 - a problem with importing module.
July 13 2022
- Spaces Users and Membership endpoint implementation. This functionality is hidden behind a feature flag. By default it is disabled. To enable it there should be an environment variable named
PN_ENABLE_ENTITIES
set toTrue
.
June 25 2022
- Fixed error which happened when random initialization vector has been used. Request path was encrypted two times, once to prepare signage and second one when sending the request.
- Fixed exception while receiving empty
message
field inFileMessageResult
.
May 16 2022
- Fix issue with signing objects requests containing filter.
April 27 2022
- This issue was mentioned in issue #118 and replaces PR #119 to match our PR policy. Fixed the following issues reported by @tjazsilovsek and @tjazsilovsek: #118 and #119.
April 01 2022
- Add methods to include additional fields in fetch_messages.
March 21 2022
- Add methods to change use compression option on chosen endpoints.
March 01 2022
- Add config option to set Content-Encoding to 'gzip'.
February 01 2022
- Remove unwanted output while calling
fetch_messages
.
January 13 2022
- BREAKING CHANGES: uuid is required parameter while creating an instance of PubNub.
December 16 2021
- 🌟️ Revoke token functionality.
December 16 2021
- 🌟️ Parse_token method refactored.
- 🌟️ Grant result object str message unified.
- 🌟️ Extend grant_token method to enable control of Objects API permission. Enhance granularity of permission control to enable permissions per UUID.
- 🐛 Encoding of the double quote character fixed.
- 🌟️ PAMv3 support for Objects_v2 added (beta). Furthermore PAMv3 tokens can now be used within other PubNub features.
- 🌟️ SDK metadata was added. Additionally, example code for the FastAPI integration was added.
- 🐛 Disabling default request headers within the Endpoint.
- 🐛 Request headers required by the Grant Token functionality added.
- 🐛 Multiple community Pull Requests for Asyncio related code applied.
- 🌟️ BREAKING CHANGE: Add randomized initialization vector usage by default for data encryption / decryption in publish / subscribe / history API calls.
- 🌟️ User defined 'origin'(custom domain) value was not used in all required places within this SDK.
- ⭐️️ Support for Python 2.7 was removed, support for the contemporary versions of Python was added. Apart from bringing the whole SDK up to date, support for Tornado and Twisted was removed and dependencies were simplified.
- 🌟️ New v3 History endpoint allows to fetch 100 messages per channel.
- 🌟️ Objects v2 implementation added to the PythonSDK with additional improvements to the test isolation within whole test suite.
- 🐛 Within this release problems with double PAM calls encoding and Publish oriented bugs were fixed.
- 🐛 Passing uuid to the get_state endpoint call added.
- 🌟️ File Upload added to the Python SDK.
- ⭐️️ Fix spelling typos in
.pubnub.yml
file. Addresses the following PRs from @samiahmedsiddiqui: #92.
- 🌟️ Add
suppress_leave_events
configuration option which can be used to opt-out presence leave call on unsubscribe. - ⭐️️ Log out message decryption error and pass received message with
PNDecryptionErrorCategory
category to status listeners.
- ⭐️️ Allocating separate thread that basically waits certain amount of time to clean telemetry data is a waste of memory/OS data strucutres. Clening mentioned data can be incorporated into regular logic.
- 🐛 Fix bug with max message count parameter for Fetch Messages endpoint. Rename maximum_per_channel parameter to count for Fetch Messages, keeping the old name for compatibility.
- 🐛 Using SSL by default from the Python SDK to be more consistent and encourage best practices.
- 🌟 Implemented Objects Filtering API
- 🌟 Add support for APNS2 Push API
- 🌟 Implemented Message Actions API
- 🌟 Implemented Fetch Messages API
- 🌟 Added 'include_meta' to history()
- 🌟 Added 'include_meta' to fetch_messages()
- 🌟 Added 'include_message_actions' to fetch_messages()
- 🐛Excluded the tilde symbol from being encoded by the url_encode method to fix invalid PAM signature issue.
- 🌟 Introduced delete permission to Grant endpoint. Migrated to v2 enpdoints for old PAM methods.
- 🌟 Added TokenManager and GrantToken method.
- 🌟Resolved warnings caused by the use of deprecated methods.
- 🐛Removed Audit tests.
- 🐛Resolved incorrectly reported SDK version.
- 🌟Add users join, leave and timeout fields to interval event
- 🐛implement Objects API
- 🐛implement signal
- 🐛implement fire
- 🐛Implement history message counts
- 🐛Rename await to pn_await
- 🐛Rename async to pn_async
- 🐛Add telemetry manager
- 🌟Fix plugins versions and remove unused plugins
- 🌟Add history delete
- 🐛Fixed issues with managing push notifications
- 🐛Fix typo on announce_status.
- 🐛Fix aiohttp v1.x.x and v2.x.x compatibility
- 🐛Fix missing encoder for path elements
- 🌟
- 🌟Support log_verbosity in pnconfiguration to enable HTTP logging.
-
🐛Handle interval presence messages gracefully if they do not contain a UUID.
-
🌟Support custom cryptography module when using GAE
-
⭐designate the request thread as non-daemon to keep the SDK running.
- 🐛Fix on state object type definition.
-
⭐new pubnub domain
-
⭐native demo app
-
⭐fixed HTTPAdapter config
-
⭐add a new Python 3.6.0 config to travis builds
-
⭐fix blocking Ctrl+C bug
- ⭐Add reconnection managers
- ⭐do not strip plus sign when encoding message.
-
⭐Adjusting maximum pool size for requests installations
-
⭐Adding Publsher UUID
- ⭐Fixing up packaging configuration for py3
- ⭐Initial Release