v 1.9.6 (20 March 2012)
New: PhotonNetwork.InstantiateSceneObject to spawn scene based objects that persist even if the current master client drops (usefull for AI etc.)
Workaround: calling LeaveRoom in Disconnect to prevent a rare bug where players get stuck in room while being disconnected.
Improved: offline mode will now also fire OnJoinedRoom after calling CreateRoom
Fixed: No null playerName when using offline mode
Fixed: MC and ID's not set correctly after switching from offline mode to online


v1.9.5 (05 March 2012)
New: Delta compression has been added to the observe option of reliable PhotonViews. This greatly reduces the network bandwidth. 
Fixed: OnLeftRoom error.
Fixed: Stats timer didn't reset
Moved: OnPhotonSerializeView and OnPhotonInstantiate to enums.cs (PhotonNetworkingMessages)

v1.9 (27 February 2012)
Fixed: Bugfix for cleanup after a player left. (bug introduced in 1.8)
Fixed: PUN viewID assignment after conversion from Unity Networking
Added: More checks to validate PhotonViews (PhotonViewIDs are stripped from Prefabs but GOs in the Hierarchy must have one).
Removed: Removed TODO's from PhotonNetwork and made Destroy behaviour more consistent: Players can only destroy objects that they own, the master client can destroy everyones objects.
Changed: PhotonNetwork.Instantiate now requires a PhotonView at the root of a prefab
Changed: PhotonNetwork.Destroy(GameObject go) required the gameobject to be created via PhotonNetwork.Instantiate
Added: Summary and Example for each of the PhotonNetworkingMessage values (each names a "callback" method used by PUN)
Added: PhotonNetwork.Instantiate overloads which take a prefab's Name to instantiate. You no longer need to pass a GameObject for a asset that's in the Resouces anyways.
Changed: PhotonNetwork.GetRoomList() now returns RoomInfo[] instead of a Room[]. Simply change the type! RoomInfo a different class but behaves like the rooms did.
Added: RoomInfo class, as base for Room. The RoomInfo is what you get in room listing: PhotonNetwork.GetRoomList() and you can't modify RoomInfo (you're not yet in those rooms)
Added: Room.SetCustomProperties() and PhotonPlayer.SetCustomProperties() to add/update custom properties to players or rooms. The key of those must be string! You can't currently delete customProperties from the server (but set them null). This is likely to change.
Added: Room.customProperties and PhotonPlayer.customProperties as getter for the custom properties you set. These sync once set.
Changed: Custom room properties are no longer automatically listed in the lobby! see CreateRoom() note below.
Added: CreateRoom() overload that takes string[] propsToListInLobby as last parameter. This defines which custom properties of your room get into the lobby. By default no other props get listed. So if you want to set "map" and have that in the lobby, apply it by CreateRoom().
Added: Check if values are changed more than a minimum before they are sent. Floating point precision for positions and rotations cause many updates and messages, so these thresholds help skip updates that are too tiny to notice. See note below.
Added: PhotonNetwork precisionForVectorSynchronization, precisionForQuaternionSynchronization, precisionForFloatSynchronization properties. 
Added: Option to not join the lobby and respective callback. Use PhotonNetwork.autoJoinLobby to set and implement OnConnectedToMaster() instead of OnJoinedLobby(). You can join random games, create or join named games just fine, without the lobby.
Changed: PhotonNetwork.autoCleanUpPlayerObjects is now done by server and can be set per room. In a room, all clients adhere to the room's setting (as set when the first player calls create). This should solve some rare issues due to racing conditions. The Master is not doing extra work anymore for this.
Added: Room.autoCleanUp. This property tells each client if the room actually cleans up buffers for players that leave. Set when the room is created to the then current value of PhotonNetwork.autoCleanUpPlayerObjects.
Changed: PhotonNetwork.autoCleanUpPlayerObjects fires an error when changed while in a room
Fixed: isMasterClient and PhotonNetwork.masterClient for some rare conditions.
Fixed: PhotonPlayer.ToString() returned null, if no name was set. This now returns "".
Added: PhotonNetwork.unreliableCommandsLimit which could be used to fine tune how many of the most recent unreliable messages should be dispatched while the rest is skipped. This has a useful default, so you don't really have to care.
Added: Initial version of PhotonStatsGui script, which shows messages total and for a interval. This is giving a first impression of the message-usage of your games. This will be extended.
Added: Profiler samples to SendOutgoingCommands and DispatchIncomingCommands. These tell you how often they run (in some frames only) and how long.
Changed: Internally, SendOutgoingCommands() is now called as long as there are outgoing commands queued. This will produce UDP packets when absolutely needed but stabilizes the connection, especially when joining games and getting a lot of messages.
Changed: The connectionStateDetailed is now changed before PUN calls your OnFailedToConnectToPhoton(), so you could re-connect from inside of that method.
Updated: To Photon Unity3d client lib v3.0.1.1


v1.8 (25 January 2012)
Added: changelog tp PUN package
Fixed: a bug that occured when calling a PhotonNetwork.Instantiate in the same frame after calling a PhotonNetwork.Destroy.
Changed: InitializeSecurity made obselete. requestSecurity is now true per default, this will encrypt authenticate(the APPID etc.) All normal messages (RPC etc) are NOT encrypted ATM.
Removed: instances of GAME to ROOM inside PhotonNetwork.(Please mind isNonMasterClientInGame' -> 'isNonMasterClientInRoom')
Added: new statistic: PN.countOfPlayersInRooms
Changed: OnPhotonPlayerDisconnected is now called AFTER possible MasterClient switch
Changed: OnPhotonPlayerDisconnected is now called AFTER the playerList (and playercount) has been updated: The player is first removed from the playerlist.
Changed: OnPhotonRandomJoinFailed is now properly called after RandomJoin failed because an empty room was accidently joined. Previously OnPhotonJoinRoomFailed would be called instead.
Changed: PhotonNetwork won't generate a player name. Instead the Worker Demo does this when no name was applied yet. (player names are synced automatically when set)

v1.7:
Changed: renamed "Room" to "Game" in event/callback methods for OnPhotonCreateGameFailed and OnPhotonJoinGameFailed. This is important to adjust!
Changed: PhotonViews are now usable via Awake() on any script (previously they were setup between Awake and Start)
Fixed: No more broken connection if Join/Create/JoinRandom/LeaveRoom is called during connection or disconnection: an error is logged instead.
Changes: cacheInstantiationCount is ONLY reset in LeftRoomCleanup() if autoCleanUpPlayerObjects is true
Fixed: cacheInstantiationCount is now caompared to ushort.MaxValue (with u in ushort)
Added: New GameVersion argument to Connect*, plus new PUN version. These version strings make sure only clients that use the exact same game version AND PUN version will be able to play together.
Added: Information about versioning in documentation
Changed: Unregisters allocated viewIDs after PhotonNetwork.Destroy*
Fixed: Compatibility with Unity 3.5 (excluding Flash export for the time being)
Changed: Destroy was sent twice for views in some cases. Cleaned up. As this was no real bug, this is no fix.
Updated: to new client lib (v3.0.0.9)
Fixed: Relatively rare encryption issue which led to a disconnect.

v1.6:
Updated: Client library to v3.0.0.8 which brings important fixes and some Unity-targeted performance optimizations
Changed: Default update rate is 10/second now, which is a better standard (send-rate stays at 20/second)
Changed: During disconnect, operation responses are now ignored. Example: Join a random game, then disconnect before entering the room. This now disconnects you (instead of getting you in the room).
Changed: Internals how the PhotonStream works. This is now leaner and faster and is the first step to optimized syncing
Note: This is incompatible with previous PUN versions. Don't run separate PUN versions in one game

v1.5:
Fixed: Background thread now starts when message queue is paused (for loading something, by setting isMessageQueueRunning to false)
Fixed: Destroy(gameObject) now removes the instantiate from the server's cache
Fixed: Some of the Log output was not included in "more verbose" log levels
Updated: Client library to that of Photon Unity SDK v3.0.0.7 which uses less memory and gives you some performance if your game causes a lot of traffic
Removed: some obsolete values
Added: LoadbalancingPeer class and moved aroud some other classes. The goal is to extract some classes for general use in DotNet (without Unity, if needed)
Note: If you want to host your own Photon server please update to Photon 3 SDK RC7 (it has some memory fixes, too)
Note: Destroy() for views is not yet working for players who join late into existing games. This is not a buffered action. We're on it.

v1.4.1: 
Re-Submit same package to asset store.

v1.4:
Fixed: Caching of RPCs and Instantiates. This is a major fix, affecting all situations where players join a room where RPCs and Instantiations were done previously. This fix is "hidden" by the API, so no code changes are necessary in a game.
Changed: The new cache is no longer cleaned by the server if someone leaves. The "MasterClient" will delete another user's RPCs and Instantiations, when someone leaves (unless auto cleanup is turned off).
Changed: Internals of RPCs and Instantiates. Their events are streamlined and contain only data that's not a default value. This is incompatible with v1.3 clients.
Fixed: Position and rotation synchronization is now done local to the object. This helps with positions relative to ancestor objects.
Fixed: PhotonNetwork.Destroy().
Improved: If you disable the message queue (while loading levels), a thread will keep the connection alive. Timeouts are less frequent this way. Use isMessageQueueRunning.
Improved: The framework now discards older incoming unreliable updates. By default, everything past the newest 20 unreliable updates (like pos syncs) gets skipped. Reliable data is not affected.
Changed: RPC calls now can be called without any parameters (null), too.
Added: PhotonNetwork.SendOutgoingCommands() which is useful to send RPCs before the client will load (and suspend sending) for a while.
Updated: To new Photon client library v3.0.0.6.

v1.3:
Changed: MasterClient handover: When leaveing a room, the MasterClient becomes null. It only is available inside a room.
Changed: PhotonNetwork.time is now a double with millisecond precision and always positive. It's 0 at server-start and goes up to ~4294967, where it will overflow to 0 again. This happens every ~49 days.
Fixed: A call to Disconnect() while not being connected set a state that made it impossible to Connect() later on.
Changed: Connect() is only possible when disconnected. Disconnect() is only allowed when the client is connected. 
Added: enum PhotonNetworkingMessage now contains all method names that could be called by our framework (in no particular order). Check it's description.
Changed: A few internals to improve performance and reduce object creation (and save some GC calls). Example: SendMonoMessage().
Updated: client library is now from Photon Unity SDK v3.0.0.5
Changed: PhotonNetwork will now limit incoming unreliable messages to 20 instead of dispatching everything. This can cause gaps in updates but lets a client catch up much faster after loading a level (which pauses dispatching of incoming events).
Fixed: Converter will now make JS scripts extend Photon.MonoBehaviour after conversion.
Updated: PhotonView and inspector to also handle scene views on disabled objects. Before, these could collide easily. Please give feedback, if PhotonViews cause errors.

v1.2:
Fixed: DemoWorker, random double spawn bug fixed. Loading the same scene and scripts caused initialization errors
Fixed: LevelPrefix bug for newly spawned PhotonViews (after setting the prefix)
Fixed: OnDestroy message
Fixed: Suppressed error messages when setting a name when not connected.
Fixed: Master client handover fixed
Fixed: SetSendingEnabled() and SetReceivingEnabled() which was doing the opposite of what you expected.
Added: CreateRoom now has parameters for: maxplayers, visible and open
Added: Room.maxPlayers, .open and .visible will now be synced and affect the lobby
Added: PhotonView OnSerialize now only runs on scripts on active gameobjects
Added: PhotonVIew.isMine also returns true on scene objects for the masterclient
Added: Server setup wizard, which offers instant access to a cloud account 
Added: Server settings file

v1.1:
Fixed: Server "Access Denied" issue on start on XP machines.
Fixed: observing classes that inherit Monobehaviour, but not directly.
Fixed: scene view ID errors when using prefabs (APPLY from scene to project)