v2.7 (13th February 2019)
Fixed: Offline mode. Custom properties are now set properly.
Renamed: PhotonNetwork.BackgroundTimeout is now PhotonNetwork.KeepAliveInBackground.
Fixed: PhotonNetwork.KeepAliveInBackground now sets the ConnectionHandler.KeepAliveInBackground, which actually affects the background keep-alive.
Fixed: A crash problem on Nintendo Switch. Setting a Thread.Name caused a crash in some Unity exports. We work around this by simply not naming internal threads.
Updated: Photon3Unity3d.dll library to 184.108.40.206, rev4985.
Added: Client API for Max Subscribers and Publish Subscribers features inside public channels.
v2.6 (25th January 2019)
Fixed: Offline custom properties are now set even if ExpectedProperties is set, as there is only one source for setting properties when in offline mode.
Fixed: Switching Offline mode off now properly cleans up room content.
Fixed: Infinite for-loop when enabling all Interest Groups by using new byte as parameter for the SetInterestGroups function.
Fixed: The PhotonView attribute AddComponentMenu could not have a shortcut (in 2018.3) for unknown reasons. It was causing compile errors in some cases, so the shortcut (&v) is gone.
Fixed: Rpc list was not showing in the ServerSettings Inspector.
Fixed: Inspector for ServerSettings no longer closes due to recompile.
Added: Tooltips for all fields in the Photon Server Settings. Each entry is now at least somewhat explained. More in the docs.
Changed: PhotonNetwork.WebRPC can set AuthCookie webflag, which is used for WebHooks.
Changed: PhotonNetwork.CurrentLobby and LoadBalancingClient.CurrentLobby are now readonly. The lobby must be defined by joining one or via the parameter when creating rooms. As before: You don't have to join a lobby to do matchmaking via a lobby.
Changed: SupportLogger now makes use of the new ServerIpAddress value in the PhotonPeer.
Changed: Added a local timestamp to the SupportLogger: it now logs [Time.unscaledTime] in front of each log.
Changed: SupportLogger will also log the "basics" when it got the RegionsList from the Name Server (and it now logs the NS IP-address).
Changed: The log output when Join/Create failed. Now it also logs the State (which is the primary value for IsConnectedAndReady). Better for debugging.
Changed: PhotonNetwork.time is now cached per frame (based on Unity's frameCount value). This applies the same time-value for the whole frame, no matter when Update() gets called on a specific object. This might avoid some judder when syncing objects.
Changed: The property "timestamp" is obsolete (as name) in PhotonMessageInfo. There is now a SentServerTimestamp integer and a SentServerTime double. It makes sense to use the integer to calculate delta-times in milliseconds.
Added: Callback OnDisconnected() to connection-exception handling for "Exception in Receive". Also for: "Max CCU Reached" (probably not used).
Added: Note in reference doc, that "Exception" for receive is typical if you connect a local Photon on Windows but the server isn't running/available.
Fixed: SetInterestGroup() for Offline mode. If offline, it can simply skip the call to OpChangeGroups and avoid some log spamming.
Added: ServerSettings now let you open the dashboard directly for each types of ids, and let you open the whiteList region editor as well.
Fixed: PhotonEditorUtils.IsPrefab() is fixed for 2018.3 onwards, it now takes in consideration both assets and prefab editing stage when checking.
Changed: Setting PhotonNetwork.PrefabPool to null now logs a warning and default to the DefaultPool class.
Fixed: Problems with "Best Region" selection on Nintendo Switch. Best Region now works, even if all available Photon Cloud regions need to be pinged.
Internal: PingMono class now keeps one Socket instance until discarded.
Internal: PingMono uses Socket.Poll() now, instead of .Available (which might also be the cause why this is Switch compatible now).
Internal: PUN now sends PhotonView-updates via a re-used List