Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
79 commits
Select commit Hold shift + click to select a range
00e9040
ref(ios): Extract Cocoa SDK init into standalone file (#4442)
krystofwoldrich Jan 21, 2025
4c0b8f4
Merge branch 'main' into capture-app-start-errors
krystofwoldrich Jan 21, 2025
2cb7eb2
ref(android): Extracts Android native initialization to standalone st…
antonis Jan 22, 2025
7144a64
feat(experimental): Add native `startWithConfigureOptions` for Apple …
krystofwoldrich Jan 22, 2025
7850677
feat: Read `sentry.options.json` during cocoa init (#4447)
krystofwoldrich Jan 22, 2025
1e5dbde
Adds utility class for converting `JsonObject` to `WritableMap` (#4479)
antonis Jan 23, 2025
22a5f81
feat: Automatically load `sentry.options.json` file (#4476)
krystofwoldrich Feb 3, 2025
a1cb36d
feat(experimental): Initialize Android SDK from json configuration (#…
antonis Feb 4, 2025
95c36ef
Merge branch 'main' into capture-app-start-errors
krystofwoldrich Feb 5, 2025
14fe05d
misc: Add `sentry.options.json` example to the changelog (#4509)
krystofwoldrich Feb 5, 2025
15a7e6d
feat(init): Load options from `sentry.options.json` in JS (#4510)
krystofwoldrich Feb 6, 2025
b9ec093
release: 6.7.0-alpha.0
getsentry-bot Feb 6, 2025
dbdd4b5
Merge branch 'release/6.7.0-alpha.0' into capture-app-start-errors
Feb 6, 2025
b947d7f
misc(sample): Change RN Sample to use native file init by default (#4…
krystofwoldrich Feb 13, 2025
6b08b9a
chore(sample-rn): Remove duplicate init options from code (#4532)
krystofwoldrich Feb 13, 2025
a7ffa1f
chore(sample-rn): Always use fhe file option (including auto init) (#…
krystofwoldrich Feb 13, 2025
28cf7b4
internal(sample-rn): Add Detox for integration/e2e tests of the rn sa…
krystofwoldrich Feb 14, 2025
cf00d4d
internal(sample-rn): Add header and message envelope tests (#4536)
krystofwoldrich Feb 17, 2025
b754aa3
Merge remote-tracking branch 'origin/main' into capture-app-start-errors
krystofwoldrich Feb 18, 2025
0bf6636
fix(sample-e2e): Fix type errors missing sentry/core and afterAll (#4…
krystofwoldrich Feb 20, 2025
0f5cd7d
Merge remote-tracking branch 'origin/main' into capture-app-start-errors
krystofwoldrich Feb 20, 2025
e935360
chore(samples): Add package scripts for native builds, dsn and testin…
krystofwoldrich Feb 21, 2025
952dd05
Merge branch 'main' into capture-app-start-errors
krystofwoldrich Feb 24, 2025
ae342a3
test(e2e): Verify captured Errors Screen transaction (#4584)
krystofwoldrich Feb 25, 2025
770f9fb
test(e2e): Add auto init from JS tests (#4588)
krystofwoldrich Feb 25, 2025
cbb85b2
test(e2e): Add app start crash test for iOS (#4593)
krystofwoldrich Feb 25, 2025
b4ee16b
test(e2e): Avoid race conditions when waiting for captured message (#…
krystofwoldrich Feb 26, 2025
ee11f58
chore(sample-e2e): Move Detox related files to e2e-detox dir
krystofwoldrich Jun 11, 2025
588ba6d
Merge branch 'main' into capture-app-start-errors
krystofwoldrich Jun 11, 2025
cc98f49
Merge main (v7) into capture-app-start-errors-v7
antonis Dec 15, 2025
1e01928
fix: remove unused SentryPackage import
antonis Dec 15, 2025
50ff76a
fix: update RNSentryStartTest for Sentry Android SDK v7 API changes
antonis Dec 15, 2025
0efb3bf
fix: remove unused addPackages method to fix PMD lint error
antonis Dec 15, 2025
013f560
fix: update RNSentrySDKTest for Sentry Android SDK v7 API changes
antonis Dec 15, 2025
d93c1b9
fix: use relative path for RNSentrySDK+Test.h import in bridging header
antonis Dec 15, 2025
b25688f
fix: remove deprecated enableTracing property in iOS RNSentryStart
antonis Dec 15, 2025
86d2829
fix: remove enableTracing assertions from iOS tests
antonis Dec 15, 2025
d0f1987
Update Podspec
antonis Dec 15, 2025
032f74a
Fix lint issue
antonis Dec 15, 2025
23c6824
Merge branch 'main' into capture-app-start-errors-v7
antonis Dec 16, 2025
37325ad
Merge branch 'main' into capture-app-start-errors-v7
antonis Dec 16, 2025
232bf39
Merge branch 'main' into capture-app-start-errors-v7
antonis Dec 17, 2025
f1e4ec4
Merge branch 'main' into capture-app-start-errors-v7
antonis Dec 18, 2025
db91022
Merge branch 'main' into capture-app-start-errors-v7
antonis Dec 19, 2025
84390fb
Merge branch 'main' into capture-app-start-errors-v7
antonis Dec 22, 2025
33d1129
ref(sample-e2e): v7: Migrate from Detox to Maestro (#5473)
antonis Dec 22, 2025
410ff43
Merge branch 'main' into capture-app-start-errors-v7
antonis Dec 23, 2025
1e2baca
Merge branch 'main' into capture-app-start-errors-v7
antonis Jan 12, 2026
093a889
Merge branch 'main' into capture-app-start-errors-v7
antonis Jan 15, 2026
fe4edc7
chore: Merge Android UI profiling on the capture startup crashes bran…
antonis Jan 16, 2026
3662a66
Merge branch 'main' into capture-app-start-errors-v7
antonis Jan 16, 2026
7c7a53e
Merge branch 'main' into capture-app-start-errors-v7
antonis Jan 20, 2026
ad19701
fix SR iOS issue (#5560)
antonis Jan 21, 2026
72546e6
Remove duplicate changelog entry
antonis Jan 21, 2026
db88ae9
Merge branch 'main' into capture-app-start-errors-v7
antonis Jan 22, 2026
db7585c
feat(expo): Add RNSentrySDK APIs support to @sentry/react-native/expo…
antonis Jan 23, 2026
67dec90
Merge branch 'main' into capture-app-start-errors-v7
antonis Jan 23, 2026
bcf3fb6
Merge remote-tracking branch 'origin/capture-app-start-errors-v7' int…
antonis Jan 26, 2026
e6505b7
Fix native ios tests
antonis Jan 27, 2026
40f0d2f
test(e2e): Add auto init from JS tests for Android
antonis Jan 27, 2026
5bf59f4
fix(e2e): Add scrolling to find crash control buttons in Android test
antonis Jan 27, 2026
9870761
fix(e2e): Make Android crash flag auto-expire after one crash
antonis Jan 27, 2026
f4584c5
Mark area
antonis Jan 27, 2026
181c4ba
fix(e2e): Handle wrapped exceptions in Android crash test
antonis Jan 27, 2026
8db2547
Merge branch 'antonis/capture-app-start-errors-v8' into antonis/test-…
antonis Jan 27, 2026
44282b5
Merge branch 'v8' into antonis/capture-app-start-errors-v8
antonis Jan 27, 2026
be3fb84
Merge branch 'antonis/capture-app-start-errors-v8' into antonis/test-…
antonis Jan 27, 2026
25331c7
Clean up notes for now
antonis Jan 27, 2026
35aae51
fix(android): Fix ConcurrentModificationException (#5588)
antonis Jan 28, 2026
28b4cb0
Merge branch 'antonis/capture-app-start-errors-v8' into antonis/test-…
antonis Jan 28, 2026
ed126ab
fix(android): Fix crash when spotlight is enabled without defaultSide…
antonis Jan 28, 2026
112bfc6
Merge branch 'antonis/capture-app-start-errors-v8' into antonis/test-…
antonis Jan 28, 2026
39391a8
refactor(e2e): Consolidate Android build scripts per review feedback
antonis Jan 29, 2026
1ad8373
test(e2e): Add auto init from JS tests for Android (#5583)
antonis Jan 29, 2026
8e730e8
Merge branch 'antonis/capture-app-start-errors-v8' into antonis/test-…
antonis Jan 29, 2026
8aa1902
Merge branch 'v8' into antonis/capture-app-start-errors-v8
antonis Jan 29, 2026
ea4c613
fix(android): Fix crash when dsn or devServerUrl are missing from opt…
antonis Jan 29, 2026
18e013c
Merge branch 'antonis/capture-app-start-errors-v8' into antonis/test-…
antonis Jan 29, 2026
9b4d37f
Merge branch 'v8' into antonis/test-capture-app-start-errors-android-…
antonis Jan 29, 2026
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
2 changes: 1 addition & 1 deletion lerna.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@
"performance-tests/*"
],
"npmClient": "yarn"
}
}
4 changes: 2 additions & 2 deletions samples/react-native/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@
"build-android-release-legacy": "scripts/build-android-release-legacy.sh",
"build-android-debug": "scripts/build-android-debug.sh",
"build-android-debug-legacy": "scripts/build-android-debug-legacy.sh",
"build-android-debug-auto": "scripts/build-android-debug-auto.sh",
"build-android-debug-manual": "scripts/build-android-debug-manual.sh",
"build-android-debug-auto": "SENTRY_DISABLE_NATIVE_START=true scripts/build-android-debug-init.sh",
"build-android-debug-manual": "SENTRY_DISABLE_NATIVE_START=false scripts/build-android-debug-init.sh",
"build-ios-release": "scripts/build-ios-release.sh",
"build-ios-debug": "scripts/build-ios-debug.sh",
"test": "jest",
Expand Down
47 changes: 47 additions & 0 deletions samples/react-native/scripts/build-android-debug-init.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
#!/bin/bash

# Exit on error
set -e

thisFilePath=$(dirname "$0")

# Validate SENTRY_DISABLE_NATIVE_START is set
if [ -z "${SENTRY_DISABLE_NATIVE_START}" ]; then
echo "Error: SENTRY_DISABLE_NATIVE_START environment variable is not set."
Comment on lines +1 to +10
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bug: The build script doesn't export the SENTRY_DISABLE_NATIVE_START variable, so the Gradle daemon may use a stale value from a previous build, leading to an incorrect build configuration.
Severity: MEDIUM

Suggested Fix

In build-android-debug-init.sh, add export SENTRY_DISABLE_NATIVE_START after the variable is validated and before the build-android.sh script is invoked. This will ensure the environment variable is correctly propagated to the Gradle daemon process.

Prompt for AI Agent
Review the code at the location below. A potential bug has been identified by an AI
agent.
Verify if this is a real issue. If it is, propose a fix; if not, explain why it's not
valid.

Location: samples/react-native/scripts/build-android-debug-init.sh#L1-L10

Potential issue: The `build-android-debug-init.sh` script sets the
`SENTRY_DISABLE_NATIVE_START` environment variable inline but does not `export` it. The
Android build process uses a long-running Gradle daemon which may not pick up this
inline variable if the daemon is already running. The daemon could then use a stale
value for `SENTRY_DISABLE_NATIVE_START` from a previous build. This can lead to the
application being built with the incorrect Sentry initialization mode (auto vs. manual),
causing E2E tests or local development builds to behave incorrectly.

Did we get this right? 👍 / 👎 to inform future reviews.

echo "Usage: SENTRY_DISABLE_NATIVE_START=true|false $0"
echo ""
echo " true - Build for auto init from JS (native SDK disabled)"
echo " false - Build for manual native init (native SDK enabled)"
exit 1
fi

# Map SENTRY_DISABLE_NATIVE_START to build mode
if [ "${SENTRY_DISABLE_NATIVE_START}" = "true" ]; then
BUILD_MODE="auto"
INIT_DESCRIPTION="initialize Sentry from JavaScript (auto init)"
elif [ "${SENTRY_DISABLE_NATIVE_START}" = "false" ]; then
BUILD_MODE="manual"
INIT_DESCRIPTION="initialize Sentry natively before JS (manual init)"
else
echo "Error: Invalid value for SENTRY_DISABLE_NATIVE_START: '${SENTRY_DISABLE_NATIVE_START}'"
echo "Expected 'true' or 'false'"
exit 1
fi

export RN_ARCHITECTURE="new"
export CONFIG="debug"

echo "Building Android with SENTRY_DISABLE_NATIVE_START=${SENTRY_DISABLE_NATIVE_START}"
echo "This build will ${INIT_DESCRIPTION}"

"${thisFilePath}/build-android.sh"

# Rename the output APK based on build mode
cd "${thisFilePath}/.."
if [ -f "app.apk" ]; then
mv app.apk "app-${BUILD_MODE}.apk"
echo "Build complete: app-${BUILD_MODE}.apk"
else
echo "Error: Expected output file 'app.apk' not found"
exit 1
fi
Loading