Skip to content

Conversation

@unity-renovate
Copy link
Contributor

@unity-renovate unity-renovate bot commented Feb 8, 2025

This PR contains the following updates:

Package Type Update Editor Change
com.unity.transport dependencies major ❌ 2021.3.0a1 -> 2022.3.0a1 1.4.0 -> 2.4.0

❌ Editor bump required for com.unity.netcode.gameobjects/package.json❌

It is very likely that you should NOT merge this.


Release Notes

com.unity.transport (com.unity.transport)

v2.4.0

Compare Source

New features

  • Connections can now be made using strings representing domain names or IPs. Hostname resolution will be performed automatically as part of the connection process. (Requires Unity 6000.18f1 or later.)

Changes

  • ACKs for the ReliableSequencedPipelineStage will now be sent a little more aggressively, which should improve throughput of reliable traffic.

Fixes

  • Fixed MultiNetworkDriver not passing the connect payload to the NetworkDriver when calling MultiNetworkDriver.Connect()
  • Added a workaround for a burst compile error that caused iOS player builds not to function properly when burst compile was enabled.

v2.3.0

Compare Source

New features

  • The global network simulator (configurable through NetworkSettings.WithNetworkSimulatorParameters) now supports delay, jitter and packet duplication, but only in the send direction. Currently users are still recommended to use the SimulatorPipelineStage for their network simulation needs until the global network simulator gains in maturity.

Changes

  • Updated Burst dependency to 1.8.12.

Fixes

  • Fixed an issue where NetworkEndpoint.IsAny and NetworkEndpoint.IsLoopback would throw an exception for endpoints where the network family is NetworkFamily.Custom. These properties will now return false for custom endpoints.
  • Fixed an issue where an error about resetting the event queue with pending events could be logged even if the connection with pending events was closed.
  • Made the failure mode more obvious when there is a mismatch between the Relay configuration and the choice of network interface.
  • Fixed a rare issue where a sequence ID collision from ushort overflow in certain very specific conditions can result in an old packet being erroneously returned instead of waiting for a new one, causing corruption.

v2.2.1

Compare Source

Fixes

  • Fixed an issue where NetworkEndpoint.TryParse would leave the out parameter endpoint with a valid NetworkFamily, even if parsing of the address had failed.

v2.1.0

Compare Source

New features

  • It is now possible to configure the maximum message size that the transport will send through a new maxMessageSize parameter in NetworkSettings.WithNetworkConfigParameters. This is useful for environments where network equipment mishandles larger packets (like some mobile networks or VPNs). The value excludes IP and UDP headers, but includes headers added by the transport itself (e.g. reliability headers). The default value is 1400. Note that it is recommended that both client and server be configured to use the same value.
  • Added new values AuthenticationFailure and ProtocolError to the Error.DisconnectReason enum. These values are respectively returned when a connection fails to be established because of DTLS/TLS handshake failure, and for unexpected and unrecoverable errors encountered by the transport (e.g. unexpected socket errors or malformed WebSocket frames).
  • Added a new NetworkFamily.Custom value and proper support for it in NetworkEndpoint. This value is intended for usage with custom INetworkInterface implementations, where endpoints are not IP addresses.

Changes

  • Updated Collections dependency to 2.2.1.
  • Updated Burst dependency to 1.8.8.
  • Updated Mathematics dependency to 1.3.1.
  • NetworkDriver.GetRelayConnectionStatus will now return the new enum value RelayConnectionStatus.NotUsingRelay when called on a NetworkDriver that has not been configured to use Unity Relay. The previous behavior was to throw an exception. This can be used to safely determine if a driver is using Relay, even from Burst-compiled code.
  • RelayServerData now exposes a IsWebSocket field that can be used to determine if the server data will be using a WebSocket endpoint. This value is set automatically if constructing the RelayServerData from an allocation object, and can be set through a new optional isWebSocket parameter for low-level constructors.
  • NetworkEndpoint.RawPort is now obsolete. There is little use for this API since it basically only converts to/from network byte order. There are standard C# APIs to do this.

Fixes

  • Fixed a possible crash when using secure WebSockets that would occur if a connection was closed suddenly with pending packets waiting to be sent.
  • Fixed an issue where empty messages would not properly be received if sent on a non-default pipeline.
  • Fixed "Input string was not in a correct format" log when listening on a port already in use.

v2.0.2

Compare Source

Changes

  • When using Unity Relay, NetworkDriver.GetRemoteEndpoint will now always return the address of the Relay server, instead of returning the address until a connection is established, and then returning the allocation ID encoded as an endpoint (appearing as an invalid endpoint). This makes the behavior the same as it was in version 1.X of the package.
  • Updated Collections dependency to 2.1.2.
  • A warning will now be emitted if passing a connection type other than "wss" to the RelayServerData constructors on WebGL (other connection types are not supported on that platform).

Fixes

  • Fixed an issue where the reliable pipeline stage could end up writing past the end of its internal buffer and thrashing the buffers of other connections. This could result in packet corruption, but would most likely result in erroneous -7 (NetworkDriverParallelForErr) errors being reported when calling EndSend.
  • Fixed an issue where upon returning -7 (NetworkDriverParallelForErr), EndSend would leak the send handle. Over time, this would result in less send handles being available, resulting in more -5 (NetworkSendQueueFull) errors.
  • Fixed an issue where WebSocket connections would always take at least connectTimeoutMS milliseconds to be reported as established, even if the connection was actually established faster than that.
  • Fixed an issue where ArgumentOutOfRangeException could be thrown in situations where a new WebSocket connection is established while a previous connection is in the process of being closed.
  • If nothing is received from a Unity Relay server for a while, the transport will now attempt to rebind to it. This should improve the accuracy of GetRelayConnectionStatus in scenarios where the Relay allocation times out while communications with the server are out.
  • Fixed an issue where UDPNetworkInterface (the default one) would not bind to the correct address if the local IP address change and the socket needs to be recreated (e.g. because the app was backgrounded on a mobile device).
  • Fixed an issue where Disconnect events would fail to be reported correctly for WebSocket connections.
  • Fixed an issue where, when using Relay, heartbeats would be sent constantly when they are disabled by setting relayConnectionTimeMS to 0 in the Relay parameters.

v2.0.1

Compare Source

Changes

  • Updated Collections dependency to 2.1.1.

v1.5.0

Compare Source

Fixes

  • Fixed a rare issue where a sequence ID collision from ushort overflow in certain very specific conditions can result in an old packet being erroneously returned instead of waiting for a new one, causing corruption.

v1.4.1

Compare Source

Fixes

  • Fixed an issue where reliable packets could be resent even after they had been acknowledged, which would lead to wasted bandwidth.

v1.4.0

Compare Source

New features

  • Added a new GetUnsafeReadOnlyPtr method to DataStreamReader. This is meant as an escape hatch for use cases that require passing stream readers outside of a job (this not possible with DataStreamReader directly since the safety system will not allow it). As the name implies, this throws away many safety guarantees and is thus not recommended to use unless absolutely required.

Changes

  • NetworkDriver.GetRelayConnectionStatus will now return the new enum value RelayConnectionStatus.NotUsingRelay when called on a NetworkDriver that has not been configured to use Unity Relay. The previous behavior was to throw an exception.
  • It is now possible to configure the maximum message size that the transport will send through a new maxMessageSize parameter in NetworkSettings.WithNetworkConfigParameters. This is useful for environments where network equipment mishandles larger packets (like some mobile networks or VPNs). The value excludes IP and UDP headers, but includes headers added by the transport itself (e.g. reliability headers). The default value is 1400. Note that it is recommended that both client and server be configured to use the same value.

Configuration

📅 Schedule: Branch creation - "every weekend" (UTC), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Unity Renovate Bot.

@unity-cla-assistant
Copy link

unity-cla-assistant commented Feb 8, 2025

CLA assistant check
All committers have signed the CLA.

@unity-renovate unity-renovate bot force-pushed the renovate/develop-upm-pkg-com.unity.transport-2.x branch from 7e8ff30 to c393319 Compare February 10, 2025 18:25
@unity-renovate
Copy link
Contributor Author

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: undefined
MSBuild version 17.7.6+77d58ec69 for .NET
  Determining projects to restore...
/opt/containerbase/tools/dotnet/sdk/7.0.410/Sdks/Microsoft.NET.Sdk/targets/Microsoft.NET.TargetFrameworkInference.targets(160,5): error NETSDK1045: The current .NET SDK does not support targeting .NET 8.0.  Either target .NET 7.0 or lower, or use a version of the .NET SDK that supports .NET 8.0. Download the .NET SDK from https://aka.ms/dotnet/download [/tmp/renovate/repos/github/Unity-Technologies/com.unity.netcode.gameobjects/Tools/CI/NGO.Cookbook.csproj]

@unity-renovate unity-renovate bot force-pushed the renovate/develop-upm-pkg-com.unity.transport-2.x branch from c393319 to c415982 Compare February 11, 2025 18:24
@unity-renovate
Copy link
Contributor Author

Edited/Blocked Notification

Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.

You can manually request rebase by checking the rebase/retry box above.

⚠️ Warning: custom changes will be lost.

@unity-renovate unity-renovate bot changed the title chore(deps): update upm package dependency com.unity.transport to v2 (develop) chore(deps): update upm package dependency com.unity.transport to v2 (develop) - abandoned Feb 19, 2025
@unity-renovate
Copy link
Contributor Author

Autoclosing Skipped

This PR has been flagged for autoclosing. However, it is being skipped due to the branch being already modified. Please close/delete it manually or report a bug if you think this is in error.

@michalChrobot michalChrobot deleted the renovate/develop-upm-pkg-com.unity.transport-2.x branch February 19, 2025 08:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants