- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 62
feat: Xbox Native Support #2314
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 32 commits
336aff0
              ea69a0a
              66a3446
              7215207
              bab9820
              8aa0749
              0ee105b
              6709849
              a140455
              3bd571a
              33f224b
              6a24831
              907f119
              5ed1ea9
              259e0cd
              032b3b9
              49658c5
              f9792a7
              de31eca
              56b2e95
              4746d6c
              2f7e9e2
              3744cc9
              e737892
              ec1898d
              9494e10
              636249f
              5db4818
              856fe43
              29c05ab
              9bfeb9e
              fac0bd7
              01e0a0f
              File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
|  | @@ -18,7 +18,7 @@ public static class BuildPostProcess | |
| public static void OnPostProcessBuild(BuildTarget target, string executablePath) | ||
| { | ||
| var targetGroup = BuildPipeline.GetBuildTargetGroup(target); | ||
| if (targetGroup is not BuildTargetGroup.Standalone) | ||
| if (targetGroup is not BuildTargetGroup.Standalone and not BuildTargetGroup.GameCoreXboxSeries) | ||
| { | ||
| return; | ||
| } | ||
|  | @@ -77,6 +77,7 @@ public static void OnPostProcessBuild(BuildTarget target, string executablePath) | |
| BuildTarget.StandaloneWindows64 => options.WindowsNativeSupportEnabled, | ||
| BuildTarget.StandaloneOSX => options.MacosNativeSupportEnabled, | ||
| BuildTarget.StandaloneLinux64 => options.LinuxNativeSupportEnabled, | ||
| BuildTarget.GameCoreXboxSeries or BuildTarget.GameCoreXboxOne => options.XboxNativeSupportEnabled, | ||
| _ => false, | ||
| }; | ||
|  | ||
|  | @@ -94,6 +95,10 @@ private static void AddCrashHandler(IDiagnosticLogger logger, BuildTarget target | |
| case BuildTarget.StandaloneOSX: | ||
| // No standalone crash handler for Linux/macOS - uses built-in handlers. | ||
| return; | ||
| case BuildTarget.GameCoreXboxSeries: | ||
| case BuildTarget.GameCoreXboxOne: | ||
| // TODO: Figure out if we need to ship with a crash handler | ||
| There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can we test this before we ship it? Not sure how useful this is if we don't have a crash handler? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. xbox currently uses breakpad so there's no additional executable that needs to be copied. This shall change in https://github.com/getsentry/sentry-xbox/issues/5 | ||
| return; | ||
|         
                  bitsandfoxes marked this conversation as resolved.
              Show resolved
            Hide resolved         
                  bitsandfoxes marked this conversation as resolved.
              Show resolved
            Hide resolved | ||
| default: | ||
| throw new ArgumentException($"Unsupported build target: {target}"); | ||
| } | ||
|  | ||
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
|  | @@ -3,6 +3,7 @@ | |
| using Sentry.Reflection; | ||
| using Sentry.Integrations; | ||
| using Sentry.Unity.Integrations; | ||
| using UnityEngine; | ||
| using OperatingSystem = Sentry.Protocol.OperatingSystem; | ||
|  | ||
| namespace Sentry.Unity; | ||
|  | @@ -78,9 +79,18 @@ private void PopulateApp(App app) | |
| app.BuildType = isDebugBuild is null ? null : (isDebugBuild.Value ? "debug" : "release"); | ||
| } | ||
|  | ||
| private void PopulateOperatingSystem(OperatingSystem operatingSystem) | ||
| private void PopulateOperatingSystem(OperatingSystem operatingSystemContext) | ||
| { | ||
| operatingSystem.RawDescription = MainThreadData.OperatingSystem; | ||
| if (ApplicationAdapter.Instance.Platform | ||
| is RuntimePlatform.GameCoreXboxSeries | ||
| or RuntimePlatform.GameCoreXboxOne) | ||
| { | ||
| operatingSystemContext.Name = "Xbox"; | ||
| } | ||
| else | ||
| { | ||
| operatingSystemContext.RawDescription = MainThreadData.OperatingSystem; | ||
| } | ||
| There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Bug: Inconsistent OS Context PopulationThe  There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes. This needs to be followed up by fetching the OS from  | ||
| } | ||
|  | ||
| private void PopulateDevice(Device device) | ||
|  | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Bug: Duplicate Changelog Section Found
The
CHANGELOG.mdcontains a duplicate "Dependencies" section. The new section (lines 25-30) repeats the Cocoa SDK bump already present in the earlier section (lines 13-23), with minor formatting differences. This appears to be an accidental duplication.