Documentation Release Notes - October 2025
October brought significant SDK modernization, comprehensive logging documentation, and powerful moderation features to help you build more robust real-time applications.
We released Go SDK 8.0 with modernized push notifications and pagination support, documented unified logging practices across all SDKs, and added client-side mute capabilities to Chat SDKs. We also completed our migration from deprecated Google Cloud Messaging (GCM) to Firebase Cloud Messaging (FCM) across documentation and SDKs.
The biggest update this month was comprehensive logging documentation. We created unified logging guidance that applies across all PubNub SDKs, plus detailed platform-specific implementation guides for JavaScript, Java, Kotlin, and Objective-C. This makes debugging, monitoring, and maintaining your applications significantly easier.
General 🛠️
Unified logging practices documentation
Type: New feature
We created comprehensive logging documentation that covers unified logging practices across all PubNub SDKs, giving you consistent, actionable information for debugging and monitoring your applications.
The new logging documentation covers:
- Log levels - Standard levels (TRACE, DEBUG, INFO, WARN, ERROR) with clear guidance on when to use each one
- What gets logged - Configuration at initialization, API call parameters, network requests and responses, subscription lifecycle events, and errors
- Integration options - How to connect PubNub SDK logs with popular logging frameworks and third-party services
- Production best practices - Performance considerations and security warnings about logging sensitive data
- Platform-specific guides - Links to implementation details for each SDK
Each log level captures increasingly detailed information:
| Log Level | When to use | What it captures |
|---|---|---|
TRACE | Deep troubleshooting for complex issues | All internal operations: serialization, encryption, and detailed execution flow. Generates high volume output. |
DEBUG | Development and bug investigation | User inputs, API channel parameters, HTTP request and response details, and configuration values. |
INFO | Monitor significant events | Important operational events: successful initialization and configuration changes. |
WARN | Identify potential issues | Deprecated features, unusual conditions, and non-breaking validation warnings. |
ERROR | Troubleshoot failures | Errors, exceptions with stack traces, and failed operations. |
Logging sensitive information
DEBUG and TRACE levels may log sensitive information including API keys, user identifiers, and message content. Use these levels only in development environments. Never enable DEBUG or TRACE logging in production with sensitive data.
This unified approach ensures you get consistent logging behavior whether you're working with JavaScript, Swift, Java, Python, or any other PubNub SDK.
GCM to FCM terminology migration complete
Type: Enhancement
We completed the migration from Google Cloud Messaging (GCM) terminology to Firebase Cloud Messaging (FCM) across all documentation and SDK references.
Google deprecated GCM in 2018 and removed it completely in 2019. This update ensures our documentation accurately reflects current push notification technologies and helps developers avoid deprecated services.
The changes affect:
- Mobile push notification setup guides
- SDK configuration examples for Android, Java, and Kotlin
- Chat SDK configuration documentation for Kotlin and Swift
- Code snippets and parameter descriptions
If you're still using GCM references in your code, update them to FCM. All PubNub SDKs now use PNPushTypeFCM (or equivalent) instead of the deprecated PNPushTypeGCM.
SDKs 📦
Go SDK 8.0 release and migration guide
Type: New feature
We released Go SDK version 8.0.0 with modernized push notification support, enhanced file messaging capabilities, and pagination for presence operations. This release removes deprecated features and fixes API inconsistencies.
The new Go SDK 8.0.0 migration guide provides complete upgrade instructions and covers all breaking changes.
Key changes in Go SDK 8.0:
- Push notification modernization - Removed
PNPushTypeMPNS(Microsoft Push Notification Service), deprecatedPNPushTypeGCMin favor ofPNPushTypeFCM, and deprecatedPNPushTypeAPNSin favor ofPNPushTypeAPNS2 - HereNow pagination - The
HereNowmethod now limits occupants to 1,000 per request with pagination support usingLimitandOffsetparameters - File messaging fix -
SendFilenow correctly defaultsShouldStoretofalse(previously alwaystrue) but remains configurable - Removed non-functional parameter - The
Reverseparameter inFetchhas been removed (it was supported but non-functional) - Message type flexibility -
PNPublishMessage.Texttype changed fromstringtointerface{}for better flexibility
Using FCM (v8.0.0):
1
Using APNs2 (v8.0.0):
1
The migration guide includes complete examples for push notifications, file messaging, presence operations, and App Context updates. Go SDK 7.x.x continues to work but receives only critical security fixes. We recommend migrating to 8.0.0 to access new features and improvements.
Logging documentation for JavaScript, Java, Kotlin, and Objective-C SDKs
Type: Enhancement
We added comprehensive platform-specific logging documentation for four major SDKs, complementing the general logging guidance.
JavaScript SDK logging:
The JavaScript SDK logging guide covers browser and Node.js environments with detailed integration examples for popular logging frameworks including Winston, Bunyan, Pino, log4js, and browser console logging, plus advanced filtering and formatting techniques.
You can enable logging at initialization by setting logVerbosity to true in your configuration.
Java and Kotlin SDK logging:
The Java SDK and Kotlin SDK logging guides explain how to integrate with SLF4J (Simple Logging Facade for Java) and popular logging frameworks including Logback, Log4j2, and java.util.logging. Configure logging at SDK initialization by setting logVerbosity to control the detail level.
Objective-C SDK logging:
The Objective-C SDK logging guide covers integration with CocoaLumberjack and Unified Logging System (os_log), plus custom logger implementation. Enable logging in your configuration by setting the logLevel property.
All four SDK logging guides include:
- How to enable and configure log levels
- Integration with popular logging frameworks
- Performance considerations
- Security best practices for production environments
- Custom logger implementation examples
HereNow improvements in Dart and C# SDKs
Type: Enhancement
We updated the Dart SDK and C# SDK presence documentation to reflect improvements in the HereNow method.
Both SDKs now include clearer parameter descriptions, improved examples, and better handling of occupancy information. The Dart SDK also added a complete code snippet example in the subscribe documentation showing how to handle subscription lifecycle events.
These updates make it easier to track channel occupancy and user presence in your real-time applications.
PHP SDK dynamic code snippets
Type: Enhancement
We added missing dynamic code snippets to the PHP SDK documentation, continuing our effort to source examples directly from SDK repositories.
These repository-sourced snippets stay synchronized with SDK changes, ensuring you always see tested, up-to-date examples. This improves reliability and reduces documentation drift as the SDK evolves.
Client-side mute in Swift Chat SDK
Type: New feature
We documented client-side mute capabilities in the Swift Chat SDK, giving you more control over user moderation in chat applications.
Client-side mute lets users hide content from specific users or channels on their device without requiring server-side moderation. This improves user experience by letting individuals customize what content they see.
The new documentation covers:
- User moderation methods -
setRestriction()to mute users,getChannelRestrictions()andgetUserRestrictions()to retrieve current restrictions - Channel-level restrictions - Users can mute other users on specific channels
- User-level restrictions - Users can mute other users globally across all channels
- Restriction retrieval - Check which users or channels are currently muted
The Swift Chat SDK now supports muting users on specific channels or globally across all channels, with methods to retrieve current restrictions. Client-side mute complements server-side moderation features, giving you flexible options for content moderation in your Swift chat applications.
Client-side mute and restore in Unity Chat SDK
Type: New feature
We documented client-side mute and restore capabilities for both channels and users in the Unity Chat SDK, providing comprehensive moderation features for Unity-based chat applications.
User moderation:
The user moderation documentation covers how users can mute other users or channels on their device:
1
Channel and user restore:
We also documented channel restore and user restore methods, allowing you to recover soft-deleted chat entities. Both Channel and User entities now include a Restore() method that recovers previously deleted instances.
These features give Unity developers complete control over content moderation and entity lifecycle management in their chat applications.
Illuminate 💡
Export chart data to CSV
Type: New feature
You can now download chart data from Illuminate dashboards in CSV format using the export button in the upper-right corner of each chart.

This feature lets you:
- Export metric data for offline analysis
- Create custom reports in spreadsheet applications
- Share data with stakeholders who don't have Admin Portal access
- Archive historical data for compliance or record-keeping
The exported CSV includes all data points visible in the current chart view, respecting your selected time range and filters. You can use this data with external business intelligence tools, create custom visualizations, or perform statistical analysis.
For more information, refer to the Dashboards documentation.
Other 🌟
Markdown button labels for accessibility
Type: Enhancement
We added descriptive labels to the Markdown copy and open buttons that appear at the top of each documentation page, improving accessibility for screen readers and assistive technologies.
These buttons let you access the machine-readable Markdown version of any docs page, which is useful for AI tools, automation scripts, and content processing workflows. The improved labels make it clearer what each button does for all users.
Functions documentation improvements
Type: Enhancement
We fixed missing Function URLs and resolved Spectral validation issues in the Functions documentation, ensuring all links work correctly and code examples validate properly.
These improvements make the Functions documentation more reliable and easier to navigate, helping you build serverless logic for your PubNub applications.