Conversation
Merged
…rkflow, null check, separate exceptions Co-authored-by: mrdav30 <11547347+mrdav30@users.noreply.github.com>
Copilot
AI
changed the title
[WIP] Update FixedMathSharp to support netstandard2.1 and MemoryPack
Fix review feedback: MemoryPack test names, BoundingBox.Union version, CI internal PRs, nullable deserialization, per-arg quaternion exceptions
Mar 4, 2026
There was a problem hiding this comment.
Pull request overview
This PR addresses accumulated review feedback from the FixedMathSharp modernization work by aligning test naming with the active serializer, tightening validation error reporting, fixing a BoundingBox.Union initialization inconsistency, and restoring CI coverage for internal PRs.
Changes:
- Renamed serialization tests from
*_MsgPack*to*_MemoryPack*across the test suite. - Updated
BoundingBox.Unionto carry forward a non-zeroVersionconsistent with constructor-initialized instances. - Improved
FixedQuaternion.FromEulerAnglesvalidation by throwing per-argumentArgumentOutOfRangeExceptionwith correctparamName/actualValue, and added a null assertion after JSON deserialization inFixedCurveTests. - Removed a workflow guard that prevented CI from running on non-fork internal PRs.
Reviewed changes
Copilot reviewed 14 out of 14 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tests/FixedMathSharp.Tests/Vector3d.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/Vector2d.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/FixedRange.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/FixedQuanternion.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/FixedCurveTests.cs | Adds Assert.NotNull after JSON deserialize; renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/Fixed64.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/Fixed4x4.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/Fixed3x3.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/Bounds/BoundingSphere.Tests.cs | Renames MemoryPack serialization test method. |
| tests/FixedMathSharp.Tests/Bounds/BoundingBox.Tests.cs | Renames MemoryPack serialization tests (including mutability test). |
| tests/FixedMathSharp.Tests/Bounds/BoundingArea.Tests.cs | Renames MemoryPack serialization test method. |
| src/FixedMathSharp/Numerics/FixedQuaternion.cs | Splits Euler angle range validation into per-argument ArgumentOutOfRangeExceptions. |
| src/FixedMathSharp/Bounds/BoundingBox.cs | Sets Version in Union result initializer. |
| .github/workflows/dotnet.yml | Restores CI runs for internal PRs by removing the job if guard. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Addresses a batch of review comments on the FixedMathSharp modernization PR.
Changes
*_MsgPack*renamed to*_MemoryPack*to match the actual serializer in useBoundingBox.Unionversion field —Versionwas left as0in the object initializer; now set toMath.Max(a.Version, b.Version)to keep instances consistent with constructor-initialized boxesFixedQuaternion.FromEulerAnglesvalidation — Replaced single combined check (always blamingpitch) with three separateArgumentOutOfRangeExceptionthrows, each with the correctparamNameandactualValue:FixedCurveTestsnull safety — AddedAssert.NotNullafterJsonSerializer.Deserialize<FixedCurve>()to handle the nullable return and give a clearer failure messageifguard that was skippingpull_requestruns for branches within the same repo, restoring CI coverage on internal PRs🔒 GitHub Advanced Security automatically protects Copilot coding agent pull requests. You can protect all pull requests by enabling Advanced Security for your repositories. Learn more about Advanced Security.