Skip to content

chore: merge develop 2.13.1 into develop 3.x.x#4082

Open
NoelStephensUnity wants to merge 27 commits into
develop-3.x.xfrom
chore/merge-develop-2-13-1-develop-3-x-x
Open

chore: merge develop 2.13.1 into develop 3.x.x#4082
NoelStephensUnity wants to merge 27 commits into
develop-3.x.xfrom
chore/merge-develop-2-13-1-develop-3-x-x

Conversation

@NoelStephensUnity

Copy link
Copy Markdown
Member

Purpose of this PR

Keeping v3.x.x up to date with develop-2.0.0.

Jira ticket

NA

Changelog

NA

Documentation

  • No documentation changes or additions were necessary.
  • Includes documentation for previously-undocumented public API entry points.
  • Includes edits to existing public API documentation.

Testing & QA (How your changes can be verified during release Playtest)

Functional Testing

Manual testing :

  • Manual testing done

Automated tests:

  • Covered by existing automated tests
  • Covered by new automated tests

Does the change require QA team to:

  • Review automated tests?
  • Execute manual tests?
  • Provide feedback about the PR?

If any boxes above are checked the QA team will be automatically added as a PR reviewer.

Backports

//: # (
No backport is required.

NoelStephensUnity and others added 26 commits May 11, 2026 14:44
* update

Updating the door example to provide a more recommended way of using OnValueChanged.

* style

removing trailing spaces.

* Update networkvariable.md

Fixes to the example script

* Update networkvariable.md

Did another pass over this script with some improvements.

* style

removing trailing whitespace

* Apply suggestions from code review

Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>

---------

Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>
* corrected Android issue

* Updated dependencies

* Updated XRAY_PROFILE param to account for latest checks

---------

Co-authored-by: Noel Stephens <noel.stephens@unity3d.com>
Co-authored-by: Emma <emma.mcmillan@unity3d.com>
fix

Fixing the issue with `UniversalRpcTests` failing on IL2CPP release builds using the "Method Name" stack trace information setting.
* feat: Make custom driver construction smoother

* Add PR number to CHANGELOG entries

* Update package version
* chore: Add obsolete warnings to unused or invalid methods

* Update CHANGELOG

* dotnet-fix

* remove duplication of GetRootParentTransform

* Remove unrelated change

* Leave the public modifiers in place

* Update xml doc
* chore: Replace IsSceneObject with InScenePlaced bool

* Add XML doc

* Update small files

* Fix findobjects complaints

* Fix tests

* Turn off logs

* ignore invalid scenes on the scene manager
* fix: Add more detailed logging around RPC messages
Update RigidbodyContactEventManager to use new logging system
* fix: reset static fields for Fast Enter Play Mode support
  - Added ResetStaticsOnLoad where possible
  - Applied [AutoStaticsCleanup] to generic classes when applicable
  - Promoted immutable statics to readonly or const
  - Added OnDisable to deregister event subscriptions
  - chore: disable domain reload and remove treat warnings as errors in test project settings
  - test: add NetworkManager singleton reset test for Fast Enter Play Mode

* fix: add missing message type registrations in MessageDelivery

* chore: cleanup
  - Remove unused m_ParentedChildren field and related loops in NetworkTransform
  - Remove unused m_DespawnedInSceneObjects field in SceneEventData
  - Replace static quaternion scratch buffer in QuaternionCompressor with local variables
  - Consolidate LogSerializationOrder and EnableSerializationLogs into LogConfiguration
  - Update summary comments

* docs: update CHANGELOG

---------

Co-authored-by: Noel Stephens <noel.stephens@unity3d.com>
Co-authored-by: Emma <emma.mcmillan@unity3d.com>
…EventHandler (#4005)

BeginSample was called at the top of ConnectEventHandler but two early
return paths (duplicate server transport ID and duplicate client connect
event) exited without calling EndSample, causing the 'Missing
Profiler.EndSample' error surfaced by the MultipleConnectMessagesNoop
playmode tests.
  refactor: cleanup and code quality improvements in NetworkAnimator
  - Add readonly to fields where applicable
  - Narrow internal fields and methods to private where applicable
  - Fix naming casing (TransitionStateinfo, m_DestinationStateToTransitioninfo, field prefixes)
  - Replace ContainsKey + Add/index lookups with TryAdd/TryGetValue
  - Remove unused variables and dead code
  - Improve XML summaries and comment clarity

---------

Co-authored-by: Emma <emma.mcmillan@unity3d.com>
* update

Replacing DEVELOPMENT_BUILD || UNITY_EDITOR with DEBUG.
Replacing niche DEVELOPMENT_BUILD uses with DEBUG.

* update

Removing extra files that didn't need to be included in this PR.

* update

Adding changelog entry

* update

Missed the codegen assembly.

* update

Upgrading our CI ubuntu image to: `package-ci/ubuntu-22.04:v4.86.0`.

* Revert "update"

This reverts commit 2b010d8.

* update

bumping ubuntu to use b1.large (segmentation fault was due to running out of memory).

* Revert "update"

This reverts commit bd1f004.

* Reapply "update"

This reverts commit 6a434bf.

* update

Switching PR triggers to use trunk as opposed to the pinned trunk.

* Revert "update"

This reverts commit 5ce1ef4.

* update

Moving pinned trunk up a bit.
* fix

Fixing issue where Rigidbody2D was not applying rotation correctly. (4009)
Fixing issue where `NetworkRigidbodyBase` was always checking the 3D rigid body's interpolation mode when determining if it is kinematic and needs to put the rigid body to sleep and then switch to interpolation. (3924)

* style

Removing static using directive (not used).

* update

Missed the return...

* test

Did a bit of an overhaul on the original NetworkRigidbodyTest. It should now run with distributed authority tests and includes a 2D rigidbody in the tests as well.

* stye

Removing trailing space on comment

* test

Updating the NetworkRigidbodyTest to do a 2nd spawn pass that swaps the session owner and non-session owner clients to validate it works when a non-session authority client is the spawn authority.

* update

Removing Rigidbody tests no longer used and already covered by `NetworkRigidbodyTests`.
Moving `RigidbodyContactEventManagerTests` into its own file.
* changelog correction

* Wrench and deps update and CI regeneration

* corrected editors

* Addressed Standards check complains
…#4029)

- Made list fields readonly
- Reduced method visibility from internal to private where applicable
- Replaced indexed for loops with foreach and inlined out variable declarations
- Replaced ContainsKey + indexer with TryGetValue
- Removed unused totalBytes variable
)

refactor: precalculate HasAuthority into cached m_HasAuthority field
- Replaced InternalHasAuthority() with private m_HasAuthority field
- Set m_HasAuthority on Spawn (before SpawnInternal), cleared on despawn, updated on ownership change
- Replaced all internal HasAuthority call sites with direct m_HasAuthority field access
- Updated public HasAuthority property to return cached value when spawned
- Moved network object setup from NetworkSpawnManager.SpawnNetworkObjectLocallyCommon to NetworkObject.SetupOnSpawn

* fix vettng test

---------

Co-authored-by: Emma <emma.mcmillan@unity3d.com>
* fix

This fixes an edge case scenario with string reading where if user code has caused the character count to have been already read prior to attempting to read a string value (safely or unsafely) and then reading the string can result in the signed integer size to roll over to a negative value and thus causing the reader to attempt to read into restricted memory outside of the application domain which results in the editor crashing.

The fix catches this scenario and throws an overflow exception prior to attempting to read into negative memory space relative to the application domain.

* test

This test validates the fix.

* update

Adding changelog entry.

* update

Making the reader use the already calculated readSize.

* test

Updating test to unsafely read a string under the same condition.

* fix

Fixing an issue where the unsafe string read needs to create an empty string based on the character count and not the byte count.

* refactor

Based on Paolo's suggestion on combining the string size, in bytes, validation script to a single in-lined method shared between the safe and unsafe string read methods.
Also combined the actual reading of the string data into a single in-lined method.

* style

Removing the auto-added (and not used) UnityEngine.UIElements using directive.

* style

updated comments and renamed CheckIfValidStringLength to ValidateStringByteCount.

* test

Removing the added 3 bytes used for earlier debugging purposes.

* style

spelling/typo fix.
whitespace after sentence in comment fix.

* refactor

Based on Emma's suggestion, removing the `SizeOfLengthField` method and `TryBeginReadInternal` check within the ReadValueSafe (string) method and replacing that with `ReadLengthSafe`.

* Update com.unity.netcode.gameobjects/Runtime/Serialization/FastBufferReader.cs

Co-authored-by: Emma <emma.mcmillan@unity3d.com>

* update

Based on suggestion from Emma, removing InBitwiseContext check since this is done in both ReadLengthSafe and TryBeginReadInternal.

---------

Co-authored-by: Emma <emma.mcmillan@unity3d.com>
fix: remove dead API doc links to internal scene event types (UUM-131558)

The NetworkSceneManager class summary and SceneEventDelegate XML docs
referenced the internal types SceneEventMessage and SceneEventData via
<see cref>, which generate hyperlinks in the DocFX-generated API docs.
Because those types are internal they have no public documentation
pages, so the links resolved to missing pages.

Convert the descriptive class-summary references to inline code (<c>)
and drop the internal SceneEventData entry from the SceneEventDelegate
'See also' list (a user cannot reference an internal type), keeping the
public SceneEvent link.
* fix: Serialization docs

* Apply suggestions from code review

Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>

* Apply suggestion from @jabbacakes

Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>

* small changes

* Fix pvp exceptions

* Fix pvp errors

* Fix formatting

* Use RuntimeInitializeOnLoad

* fix the tests

* Fix tests v2 electric boogaloo

* Add details in README files

---------

Co-authored-by: Amy Reeve <amy.reeve@unity3d.com>
* fix: NullReferenceExceptions in spawn path

* Update NetcodeIntegrationTest

* Update CHANGELOG.md

* put back serialization code
* Fix code coverage command in YAML configuration

Coverage reporting was not setup due to this

* Moving CodeCov check to daily trigger

---------

Co-authored-by: Michał Chrobot <michal.chrobot@unity3d.com>
…t as active (#4065)

* fix - NetworkObject null exception on warning log

If the NetworkObject was not found then use "null" as the name of the NetworkObject.

* fix - synchronizing clients should always load active scene first

This fixes the issue where the active scene could end up not being the 1st scene loaded which upon loading the active scene and previously SceneEventData relative loaded scenes would get unloaded when loading the active scene since this will can end up being loaded in SingleMode.

* fix - prevent marking dynamically spawned objects as in-scene

This fix just ignores any spawned objects when setting any just loaded InScenePlaced objects while running in the editor.

* style

finishing an incomplete comment

* update

Removing the changes as this will be fixed in a separate PR.

* update

Change log entry.
@NoelStephensUnity NoelStephensUnity requested review from a team, EmandM and jabbacakes as code owners July 12, 2026 21:33
Fixing some minor merge artifacts.
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.

8 participants