From 5fc1acf650d40a6fbc643372140e685ff2c4d4d2 Mon Sep 17 00:00:00 2001 From: jguz-pubnub Date: Mon, 26 Jan 2026 10:15:24 +0100 Subject: [PATCH 1/4] feat: Add optional parameters to PNConfiguration.__init__ Add optional parameters to PNConfiguration.__init__ allowing developers to set subscriber_key, publish_key, and uuid during initialization. --- pubnub/pnconfiguration.py | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/pubnub/pnconfiguration.py b/pubnub/pnconfiguration.py index 73c8aa81..8b3310ad 100644 --- a/pubnub/pnconfiguration.py +++ b/pubnub/pnconfiguration.py @@ -14,16 +14,19 @@ class PNConfiguration(object): DEFAULT_CRYPTO_MODULE = LegacyCryptoModule _locked = False - def __init__(self): + def __init__(self, + subscriber_key: str | None = None, + publish_key: str | None = None, + uuid: str | None = None): # TODO: add validation - self._uuid = None + self._uuid = uuid self.origin = "ps.pndsn.com" self.ssl = True self.non_subscribe_request_timeout = 10 self.subscribe_request_timeout = 310 self.connect_timeout = 10 - self.subscribe_key = None - self.publish_key = None + self.subscribe_key = subscriber_key + self.publish_key = publish_key self.secret_key = None self.cipher_key = None self._cipher_mode = AES.MODE_CBC From 208cc98bd29cca0ce933ab28d5a80d6261467d63 Mon Sep 17 00:00:00 2001 From: jguz-pubnub Date: Mon, 26 Jan 2026 13:07:58 +0100 Subject: [PATCH 2/4] fix: Rename subscriber_key parameter to subscribe_key for consistency --- pubnub/pnconfiguration.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pubnub/pnconfiguration.py b/pubnub/pnconfiguration.py index 8b3310ad..b34e7687 100644 --- a/pubnub/pnconfiguration.py +++ b/pubnub/pnconfiguration.py @@ -15,7 +15,7 @@ class PNConfiguration(object): _locked = False def __init__(self, - subscriber_key: str | None = None, + subscribe_key: str | None = None, publish_key: str | None = None, uuid: str | None = None): # TODO: add validation @@ -25,7 +25,7 @@ def __init__(self, self.non_subscribe_request_timeout = 10 self.subscribe_request_timeout = 310 self.connect_timeout = 10 - self.subscribe_key = subscriber_key + self.subscribe_key = subscribe_key self.publish_key = publish_key self.secret_key = None self.cipher_key = None From f97858aadbaeb21367c1e3a0d4162afdf29490d9 Mon Sep 17 00:00:00 2001 From: jguz-pubnub Date: Mon, 26 Jan 2026 14:44:13 +0100 Subject: [PATCH 3/4] chore: Update CODEOWNERS list --- .github/CODEOWNERS | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 845e69d1..d1a035d2 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,2 +1,2 @@ -* @seba-aln @jguz-pubnub @wkal-pubnub -README.md @techwritermat @kazydek @seba-aln @jguz-pubnub +* @parfeon @jguz-pubnub +README.md @techwritermat @kazydek @parfeon @jguz-pubnub From fe2e6bf5829434f03868da2b80bd5a8224787097 Mon Sep 17 00:00:00 2001 From: jguz-pubnub Date: Mon, 26 Jan 2026 14:49:42 +0100 Subject: [PATCH 4/4] fix: Use Optional type hint for Python 3.9 compatibility --- pubnub/pnconfiguration.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pubnub/pnconfiguration.py b/pubnub/pnconfiguration.py index b34e7687..4e1d0d3d 100644 --- a/pubnub/pnconfiguration.py +++ b/pubnub/pnconfiguration.py @@ -1,5 +1,5 @@ import warnings -from typing import Any +from typing import Any, Optional from copy import deepcopy from Cryptodome.Cipher import AES from pubnub.enums import PNHeartbeatNotificationOptions, PNReconnectionPolicy @@ -15,9 +15,9 @@ class PNConfiguration(object): _locked = False def __init__(self, - subscribe_key: str | None = None, - publish_key: str | None = None, - uuid: str | None = None): + subscribe_key: Optional[str] = None, + publish_key: Optional[str] = None, + uuid: Optional[str] = None): # TODO: add validation self._uuid = uuid self.origin = "ps.pndsn.com"