Skip to content
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

v5.15.0 #1483

Merged
merged 16 commits into from
Nov 4, 2021
Merged

v5.15.0 #1483

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
65 changes: 50 additions & 15 deletions .buildkite/pipeline.full.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ steps:
MINIMAL_FIXTURE: true
TEST_FIXTURE_NDK_VERSION: "17.2.4988734"
TEST_FIXTURE_NAME: "fixture-minimal.apk"
BUILD_TASK: "assembleRelease"

- label: ':android: Build Example App'
depends_on: "android-ci"
Expand All @@ -21,6 +22,21 @@ steps:
docker-compose#v3.7.0:
run: android-ci

- label: ':android: Build debug fixture APK'
key: "fixture-debug"
depends_on: "android-ci"
timeout_in_minutes: 30
artifact_paths: build/debug/fixture-debug.apk
plugins:
- docker-compose#v3.7.0:
run: android-builder
env:
MAVEN_VERSION: "3.6.1"
MINIMAL_FIXTURE: false
TEST_FIXTURE_NDK_VERSION: "17.2.4988734"
TEST_FIXTURE_NAME: "fixture-debug.apk"
BUILD_TASK: "assembleDebug"

- label: ':android: Build Scan'
depends_on: "android-ci"
timeout_in_minutes: 10
Expand All @@ -47,6 +63,28 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Debug fixture smoke tests'
depends_on: "fixture-debug"
timeout_in_minutes: 30
plugins:
artifacts#v1.2.0:
download: "build/debug/fixture-debug.apk"
upload: "maze_output/failed/**/*"
docker-compose#v3.7.0:
pull: android-maze-runner
run: android-maze-runner
command:
- "features/smoke_tests"
- "--tags=debug-safe"
- "--app=/app/build/debug/fixture-debug.apk"
- "--farm=bs"
- "--device=ANDROID_9_0"
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android size reporting'
depends_on: "android-ci"
Expand All @@ -55,21 +93,6 @@ steps:
- docker-compose#v3.7.0:
run: android-sizer

- label: ':android: Android 9 Instrumentation tests'
depends_on:
- "android-ci"
timeout_in_minutes: 60
command: ./scripts/build-instrumentation-tests.sh && ./scripts/run-instrumentation-test.sh
plugins:
- docker-compose#v3.7.0:
run: android-ci
env:
SINGLE_RUNNER: "true"
INSTRUMENTATION_DEVICES: '["Google Pixel 3-9.0"]'
TEST_APK_LOCATION: 'bugsnag-android-core/build/outputs/apk/androidTest/debug/bugsnag-android-core-debug-androidTest.apk'
concurrency: 9
concurrency_group: 'browserstack-app'

- label: ':android: Android 5 NDK r16 end-to-end tests - batch 1'
depends_on:
- "fixture-r16"
Expand All @@ -90,6 +113,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager
soft_fail:
- exit_status: "*"

Expand All @@ -113,6 +137,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager
soft_fail:
- exit_status: "*"

Expand All @@ -136,6 +161,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 6 NDK r16 end-to-end tests - batch 2'
depends_on:
Expand All @@ -157,6 +183,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 7 NDK r19 end-to-end tests - batch 1'
depends_on:
Expand All @@ -178,6 +205,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 7 NDK r19 end-to-end tests - batch 2'
depends_on:
Expand All @@ -199,6 +227,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 8.1 NDK r19 end-to-end tests - batch 1'
depends_on:
Expand All @@ -220,6 +249,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 8.1 NDK r19 end-to-end tests - batch 2'
depends_on:
Expand All @@ -241,6 +271,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 10 NDK r21 end-to-end tests - batch 1'
depends_on:
Expand All @@ -262,6 +293,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 10 NDK r21 end-to-end tests - batch 2'
depends_on:
Expand All @@ -283,6 +315,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

# Android 11+ devices have the GWP-ASAN tool enabled which randomly samples native memory to
# to detect misuse (such as use-after-free, buffer overflow). If a failure is detected then
Expand All @@ -308,6 +341,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 11 NDK r21 end-to-end tests - batch 2'
depends_on:
Expand All @@ -329,6 +363,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

# If there is a tag present activate a manual publishing step

Expand Down
8 changes: 8 additions & 0 deletions .buildkite/pipeline.quick.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager
soft_fail:
- exit_status: "*"

Expand All @@ -40,6 +41,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 7 NDK r19 smoke tests'
key: 'android-7-smoke'
Expand All @@ -60,6 +62,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 8.1 NDK r19 smoke tests'
key: 'android-8-1-smoke'
Expand All @@ -80,6 +83,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 9 NDK r21 smoke tests'
key: 'android-9-smoke'
Expand All @@ -100,6 +104,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 9 NDK r21 end-to-end tests - batch 1'
depends_on:
Expand All @@ -120,6 +125,7 @@ steps:
- "--device=ANDROID_9_0"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 9 NDK r21 end-to-end tests - batch 2'
depends_on:
Expand All @@ -140,6 +146,7 @@ steps:
- "--device=ANDROID_9_0"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: ':android: Android 10 NDK r21 smoke tests'
key: 'android-10-smoke'
Expand All @@ -160,3 +167,4 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager
53 changes: 5 additions & 48 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
Expand Up @@ -63,6 +63,7 @@ steps:
TEST_FIXTURE_NDK_VERSION: "17.2.4988734"
TEST_FIXTURE_NAME: "fixture-r16.apk"
USE_LEGACY_OKHTTP: "true"
BUILD_TASK: "assembleRelease"

- label: ':android: Build fixture APK r19'
key: "fixture-r19"
Expand All @@ -76,6 +77,7 @@ steps:
MAVEN_VERSION: "3.6.1"
TEST_FIXTURE_NDK_VERSION: "19.2.5345600"
TEST_FIXTURE_NAME: "fixture-r19.apk"
BUILD_TASK: "assembleRelease"

- label: ':android: Build fixture APK r21'
key: "fixture-r21"
Expand All @@ -89,6 +91,7 @@ steps:
MAVEN_VERSION: "3.6.1"
TEST_FIXTURE_NDK_VERSION: "21.3.6528147"
TEST_FIXTURE_NAME: "fixture-r21.apk"
BUILD_TASK: "assembleRelease"

- label: ':android: Lint'
depends_on: "android-ci"
Expand Down Expand Up @@ -154,54 +157,6 @@ steps:
run: android-ci
command: './gradlew test'

- label: ':android: Android 7 Instrumentation tests'
key: 'core-instrumentation-tests'
depends_on:
- "android-ci"
timeout_in_minutes: 60
command: ./scripts/build-instrumentation-tests.sh && ./scripts/run-instrumentation-test.sh
plugins:
- docker-compose#v3.7.0:
run: android-ci
env:
SINGLE_RUNNER: "true"
INSTRUMENTATION_DEVICES: '["Google Pixel-7.1"]'
TEST_APK_LOCATION: 'bugsnag-android-core/build/outputs/apk/androidTest/debug/bugsnag-android-core-debug-androidTest.apk'
concurrency: 9
concurrency_group: 'browserstack-app'

- label: ':android: NDK Instrumentation tests'
key: 'ndk-instrumentation-tests'
depends_on:
- "android-ci"
timeout_in_minutes: 60
command: ./scripts/build-instrumentation-tests.sh && ./scripts/run-instrumentation-test.sh
plugins:
- docker-compose#v3.7.0:
run: android-ci
env:
SINGLE_RUNNER: "true"
INSTRUMENTATION_DEVICES: '["Google Pixel-7.1"]'
TEST_APK_LOCATION: 'bugsnag-plugin-android-ndk/build/outputs/apk/androidTest/debug/bugsnag-plugin-android-ndk-debug-androidTest.apk'
concurrency: 9
concurrency_group: 'browserstack-app'

- label: ':android: Performance benchmarks'
key: 'perf-benchmarks'
depends_on:
- "android-ci"
timeout_in_minutes: 60
command: ./scripts/build-instrumentation-tests.sh && ./scripts/run-instrumentation-test.sh
plugins:
- docker-compose#v3.7.0:
run: android-ci
env:
SINGLE_RUNNER: "false"
INSTRUMENTATION_DEVICES: '["Google Pixel-7.1"]'
TEST_APK_LOCATION: 'bugsnag-benchmarks/build/outputs/apk/androidTest/release/bugsnag-benchmarks-release-androidTest.apk'
concurrency: 9
concurrency_group: 'browserstack-app'

- label: ':android: Android 4.4 NDK r16 smoke tests'
key: 'android-4-4-smoke'
depends_on: "fixture-r16"
Expand All @@ -221,6 +176,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

# Android 11+ devices have the GWP-ASAN tool enabled which randomly samples native memory to
# to detect misuse (such as use-after-free, buffer overflow). If a failure is detected then
Expand All @@ -247,6 +203,7 @@ steps:
- "--fail-fast"
concurrency: 9
concurrency_group: 'browserstack-app'
concurrency_method: eager

- label: 'Conditionally trigger full set of tests'
command: sh -c .buildkite/pipeline_trigger.sh
35 changes: 35 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: instrumentation_tests

on: [push, pull_request]

env:
GRADLE_OPTS: "-Dorg.gradle.jvmargs=-Xmx4g -Dorg.gradle.daemon=false -Dkotlin.incremental=false -Dorg.gradle.parallel=true"

jobs:
android:
runs-on: macos-latest

strategy:
fail-fast: true
matrix:
api-level:
- 29

steps:
- uses: actions/[email protected]
with:
submodules: recursive
- uses: gradle/[email protected]

- uses: actions/setup-java@v2
with:
distribution: 'zulu'
java-version: 11

- name: Run Tests
uses: reactivecircus/android-emulator-runner@v2
with:
api-level: ${{ matrix.api-level }}
script: ./gradlew connectedCheck -x :bugsnag-benchmarks:connectedCheck
env:
API_LEVEL: ${{ matrix.api-level }}
13 changes: 13 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,18 @@
# Changelog

## 5.15.0 (2021-11-04)

### Bug fixes

* Avoid reporting false-positive background ANRs with improved foreground detection
[#1429](https://github.com/bugsnag/bugsnag-android/pull/1429)

* Prevent events being attached to phantom sessions when they are blocked by an `OnSessionCallback`
[#1434](https://github.com/bugsnag/bugsnag-android/pull/1434)

* Plugins will correctly mirror metadata added using `addMetadata(String, Map)`
[#1454](https://github.com/bugsnag/bugsnag-android/pull/1454)

## 5.14.0 (2021-09-29)

### Enhancements
Expand Down
2 changes: 1 addition & 1 deletion Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ source "https://rubygems.org"
#gem 'bugsnag-maze-runner', path: '../maze-runner'

# Or a specific release:
gem 'bugsnag-maze-runner', git: 'https://github.com/bugsnag/maze-runner', tag: 'v5.0.1'
gem 'bugsnag-maze-runner', git: 'https://github.com/bugsnag/maze-runner', tag: 'v6.0.1'


# Or follow master:
Expand Down
Loading