@sentry/ember 8.0.0-beta.4 → 8.0.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/addon/index.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { getOwnConfig, isDevelopingApp, macroCondition } from '@embroider/macros
|
|
|
5
5
|
import { startSpan } from '@sentry/browser';
|
|
6
6
|
import type { BrowserOptions } from '@sentry/browser';
|
|
7
7
|
import * as Sentry from '@sentry/browser';
|
|
8
|
-
import { SEMANTIC_ATTRIBUTE_SENTRY_SOURCE, applySdkMetadata } from '@sentry/core';
|
|
8
|
+
import { SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN, SEMANTIC_ATTRIBUTE_SENTRY_SOURCE, applySdkMetadata } from '@sentry/core';
|
|
9
9
|
import { GLOBAL_OBJ } from '@sentry/utils';
|
|
10
10
|
import Ember from 'ember';
|
|
11
11
|
|
|
@@ -75,9 +75,11 @@ export const instrumentRoutePerformance = <T extends RouteConstructor>(BaseRoute
|
|
|
75
75
|
{
|
|
76
76
|
attributes: {
|
|
77
77
|
[SEMANTIC_ATTRIBUTE_SENTRY_SOURCE]: source,
|
|
78
|
+
[SEMANTIC_ATTRIBUTE_SENTRY_ORIGIN]: 'auto.ui.ember',
|
|
78
79
|
},
|
|
79
80
|
op,
|
|
80
81
|
name,
|
|
82
|
+
onlyIfParent: true,
|
|
81
83
|
},
|
|
82
84
|
() => {
|
|
83
85
|
return fn(...args);
|
|
@@ -145,6 +145,12 @@ export function _instrumentEmberRouter(
|
|
|
145
145
|
|
|
146
146
|
routerService.on('routeWillChange', (transition: Transition) => {
|
|
147
147
|
const { fromRoute, toRoute } = getTransitionInformation(transition, routerService);
|
|
148
|
+
|
|
149
|
+
// We want to ignore loading && error routes
|
|
150
|
+
if (transitionIsIntermediate(transition)) {
|
|
151
|
+
return;
|
|
152
|
+
}
|
|
153
|
+
|
|
148
154
|
activeRootSpan?.end();
|
|
149
155
|
|
|
150
156
|
activeRootSpan = startBrowserTracingNavigationSpan(client, {
|
|
@@ -167,8 +173,8 @@ export function _instrumentEmberRouter(
|
|
|
167
173
|
});
|
|
168
174
|
});
|
|
169
175
|
|
|
170
|
-
routerService.on('routeDidChange',
|
|
171
|
-
if (!transitionSpan || !activeRootSpan) {
|
|
176
|
+
routerService.on('routeDidChange', transition => {
|
|
177
|
+
if (!transitionSpan || !activeRootSpan || transitionIsIntermediate(transition)) {
|
|
172
178
|
return;
|
|
173
179
|
}
|
|
174
180
|
transitionSpan.end();
|
|
@@ -492,3 +498,18 @@ function _instrumentNavigation(
|
|
|
492
498
|
export default {
|
|
493
499
|
initialize,
|
|
494
500
|
};
|
|
501
|
+
|
|
502
|
+
function transitionIsIntermediate(transition: Transition): boolean {
|
|
503
|
+
// We want to use ignore, as this may actually be defined on new versions
|
|
504
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
505
|
+
// @ts-ignore This actually exists on newer versions
|
|
506
|
+
const isIntermediate: boolean | undefined = transition.isIntermediate;
|
|
507
|
+
|
|
508
|
+
if (typeof isIntermediate === 'boolean') {
|
|
509
|
+
return isIntermediate;
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
// For versions without this, we look if the route is a `.loading` or `.error` route
|
|
513
|
+
// This is not perfect and may false-positive in some cases, but it's the best we can do
|
|
514
|
+
return transition.to?.localName === 'loading' || transition.to?.localName === 'error';
|
|
515
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sentry/ember",
|
|
3
|
-
"version": "8.0.0-beta.
|
|
3
|
+
"version": "8.0.0-beta.6",
|
|
4
4
|
"description": "Official Sentry SDK for Ember.js",
|
|
5
5
|
"repository": "git://github.com/getsentry/sentry-javascript.git",
|
|
6
6
|
"homepage": "https://github.com/getsentry/sentry-javascript/tree/master/packages/ember",
|
|
@@ -25,26 +25,27 @@
|
|
|
25
25
|
"lint:ts": "tsc",
|
|
26
26
|
"fix": "eslint . --format stylish --fix",
|
|
27
27
|
"start": "ember serve",
|
|
28
|
-
"test": "ember b --prod && ember test",
|
|
28
|
+
"test": "ember b --prod && yarn ember test",
|
|
29
29
|
"test:all": "ember try:each",
|
|
30
30
|
"prepack": "ember ts:precompile",
|
|
31
31
|
"postpack": "ember ts:clean"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@
|
|
35
|
-
"@
|
|
36
|
-
"@sentry/
|
|
37
|
-
"@sentry/
|
|
38
|
-
"@sentry/
|
|
39
|
-
"
|
|
40
|
-
"ember-
|
|
34
|
+
"@babel/core": "^7.24.4",
|
|
35
|
+
"@embroider/macros": "^1.16.0",
|
|
36
|
+
"@sentry/browser": "8.0.0-beta.6",
|
|
37
|
+
"@sentry/core": "8.0.0-beta.6",
|
|
38
|
+
"@sentry/types": "8.0.0-beta.6",
|
|
39
|
+
"@sentry/utils": "8.0.0-beta.6",
|
|
40
|
+
"ember-auto-import": "^2.7.2",
|
|
41
|
+
"ember-cli-babel": "^8.2.0",
|
|
41
42
|
"ember-cli-htmlbars": "^6.1.1",
|
|
42
|
-
"ember-cli-typescript": "^5.
|
|
43
|
+
"ember-cli-typescript": "^5.3.0"
|
|
43
44
|
},
|
|
44
45
|
"devDependencies": {
|
|
45
46
|
"@ember/optional-features": "~1.3.0",
|
|
46
47
|
"@ember/test-helpers": "2.9.4",
|
|
47
|
-
"@embroider/test-setup": "~
|
|
48
|
+
"@embroider/test-setup": "~4.0.0",
|
|
48
49
|
"@glimmer/component": "~1.1.2",
|
|
49
50
|
"@glimmer/tracking": "~1.1.2",
|
|
50
51
|
"@types/ember": "~3.16.5",
|
|
@@ -63,14 +64,13 @@
|
|
|
63
64
|
"ember-cli-typescript-blueprints": "~3.0.0",
|
|
64
65
|
"ember-disable-prototype-extensions": "~1.1.3",
|
|
65
66
|
"ember-load-initializers": "~2.1.1",
|
|
66
|
-
"ember-maybe-import-regenerator": "
|
|
67
|
+
"ember-maybe-import-regenerator": "1.0.0",
|
|
67
68
|
"ember-qunit": "~6.0.0",
|
|
68
69
|
"ember-resolver": "11.0.0",
|
|
69
70
|
"ember-sinon-qunit": "7.1.4",
|
|
70
71
|
"ember-source": "~4.8.0",
|
|
71
72
|
"ember-source-channel-url": "~2.0.1",
|
|
72
73
|
"ember-template-lint": "~4.16.1",
|
|
73
|
-
"ember-test-selectors": "~6.0.0",
|
|
74
74
|
"ember-try": "~2.0.0",
|
|
75
75
|
"ember-window-mock": "~0.8.1",
|
|
76
76
|
"eslint-plugin-ember": "11.9.0",
|