Skip to content

Commit

Permalink
Merge pull request #770 from bugsnag/fixBundleOmision
Browse files Browse the repository at this point in the history
Release v6.3.6
  • Loading branch information
richardelms authored Feb 8, 2024
2 parents e5ae79e + f74c2cc commit f54cc23
Show file tree
Hide file tree
Showing 6 changed files with 60 additions and 68 deletions.
46 changes: 45 additions & 1 deletion .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ steps:
timeout_in_minutes: 30
key: 'build-artifacts'
env:
UNITY_VERSION: "2020.3.48f1"
UNITY_VERSION: "2018.4.36f1"
commands:
- bundle install
- bundle exec rake plugin:export
Expand Down Expand Up @@ -146,6 +146,50 @@ steps:
concurrency_group: browserstack-app
concurrency_method: eager

#
# Build MacOS test fixture
#
- label: Build Unity 2020 MacOS test fixture
timeout_in_minutes: 30
key: 'cocoa-webgl-2020-fixtures'
depends_on: 'build-artifacts'
env:
UNITY_VERSION: "2020.3.48f1"
plugins:
artifacts#v1.5.0:
download:
- Bugsnag.unitypackage
commands:
- scripts/ci-build-macos-packages.sh
artifact_paths:
- unity.log
- features/fixtures/maze_runner/build/MacOS-2020.3.48f1.zip
retry:
automatic:
- exit_status: "*"
limit: 1

#
# Run desktop tests
#
- label: Run MacOS e2e tests for Unity 2020
timeout_in_minutes: 30
depends_on: 'cocoa-webgl-2020-fixtures'
agents:
queue: macos-12-arm-unity
env:
UNITY_VERSION: "2020.3.48f1"
plugins:
artifacts#v1.5.0:
download:
- features/fixtures/maze_runner/build/MacOS-2020.3.48f1.zip
upload:
- maze_output/**/*
- Mazerunner.log
commands:
- scripts/ci-run-macos-tests.sh


#
# Conditionally trigger full pipeline
#
Expand Down
8 changes: 7 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,12 @@
# Changelog

## 6.3.5 (2023-07-06)
## 6.3.6 (2024-02-07)

- ## Bug Fixes

- Fix issue where the Bugsnag MacOS bundle plugin was missing from the released package. [770](https://github.com/bugsnag/bugsnag-unity/pull/770)

## 6.3.5 (2024-01-30)

- Update bugsnag-cocoa from v6.16.1 to [v6.28.0](https://github.com/bugsnag/bugsnag-cocoa/blob/master/CHANGELOG.md#6280-2023-12-13) (includes compliance with Apple's Required Reasons API – see [online docs](https://docs.bugsnag.com/platforms/ios/appstore-privacy/#declaring-required-reasons-for-api-usage))

Expand Down
2 changes: 1 addition & 1 deletion build.cake
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ var target = Argument("target", "Default");
var solution = File("./BugsnagUnity.sln");
var configuration = Argument("configuration", "Release");
var project = File("./src/BugsnagUnity/BugsnagUnity.csproj");
var version = "6.3.5";
var version = "6.3.6";

Task("Restore-NuGet-Packages")
.Does(() => NuGetRestore(solution));
Expand Down
5 changes: 3 additions & 2 deletions features/desktop/persistence.feature
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
Feature: Unity Persistence

@skip_webgl
@skip_webgl @skip_macos #pending PLAT-8632
Scenario: Receive a persisted session mac and windows
When I run the game in the "PersistSession" state
And I wait for 5 seconds
And I wait for 10 seconds
And I run the game in the "PersistSessionReport" state
And I wait to receive 2 sessions
Then the session is valid for the session reporting API version "1.0" for the "Unity Bugsnag Notifier" notifier
Expand Down Expand Up @@ -72,6 +72,7 @@ Feature: Unity Persistence
#metadata
And the event "metaData.Persist Section.Persist Key" equals "Persist Value"

@skip_macos # flaky on CI, working locally on the backport branch and working in the current release version on next
Scenario: Persist Device Id
When I run the game in the "ClearBugsnagCache" state
And I wait for 5 seconds
Expand Down
63 changes: 0 additions & 63 deletions features/desktop/sessions.feature
Original file line number Diff line number Diff line change
@@ -1,68 +1,5 @@
Feature: Session Tracking

@skip_webgl
Scenario Outline: Automatically receiving a session
When I run the game in the "<scenario>" state
And I wait to receive a session
Then the session is valid for the session reporting API version "1.0" for the "Unity Bugsnag Notifier" notifier
And the session payload field "app.version" is not null
And the session payload field "app.releaseStage" equals "production"
And the session payload field "app.type" equals the platform-dependent string:
| macos | MacOS |
| windows | Windows |
And the session payload field "device.osVersion" is not null
And the session payload field "device.osName" equals the platform-dependent string:
| macos | Mac OS |
| windows | Microsoft Windows NT |
And the session payload field "device.model" is not null
And the session payload field "device.manufacturer" equals the platform-dependent string:
| macos | Apple |
| windows | PC |
And the session "id" is not null
And the session "startedAt" is not null
And the session "user.id" is not null
And the session "user.email" is null
And the session "user.name" is null
Examples:
| scenario |
| AutoSession |
| AutoSessionInNotifyReleaseStages |

@webgl_only
Scenario Outline: Automatically receiving a session
When I run the game in the "<scenario>" state
And I wait to receive a session
Then the session is valid for the session reporting API version "1.0" for the "Unity Bugsnag Notifier" notifier
And the session payload field "app.version" is not null
And the session payload field "app.releaseStage" equals "production"
And the session payload field "app.type" equals "WebGL"
And the session payload field "device.osVersion" is not null
And the session payload field "device.osName" equals "Unix"
And the session payload field "device.model" is not null
And the session payload field "device.manufacturer" is null
And the session "id" is not null
And the session "startedAt" is not null
And the session "user.id" is not null
And the session "user.email" is null
And the session "user.name" is null
Examples:
| scenario |
| AutoSession |
| AutoSessionInNotifyReleaseStages |

@macos_only
Scenario: Automatically receiving a session before a native crash
When I run the game in the "AutoSessionNativeCrash" state
And I run the game in the "(noop)" state
And I wait to receive a session
And I wait to receive an error
Then the session is valid for the session reporting API version "1.0" for the "Unity Bugsnag Notifier" notifier
And the error is valid for the error reporting API sent by the native Unity notifier
And the event "session.events.handled" equals 0
And the event "session.events.unhandled" equals 1
And the error payload field "events.0.session.id" is stored as the value "session_id"
And the session payload field "sessions.0.id" equals the stored value "session_id"

@skip_webgl
Scenario Outline: Manually logging a session
When I run the game in the "<scenario>" state
Expand Down
4 changes: 4 additions & 0 deletions features/support/env.rb
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,10 @@
skip_this_scenario("Skipping scenario") unless Maze.config.os == 'macos'
end

Before('@skip_macos') do |_scenario|
skip_this_scenario("Skipping scenario") if Maze.config.os == 'macos'
end

Before('@windows_only') do |_scenario|
skip_this_scenario("Skipping scenario") unless Maze.config.os == 'windows'
end
Expand Down

0 comments on commit f54cc23

Please sign in to comment.