Skip to content

Commit 0d7be65

Browse files
committed
Merge branch 'master' of github.com:getsentry/sentry into aliu/consol-fb
2 parents ba60b47 + eb33f8e commit 0d7be65

File tree

795 files changed

+22769
-13407
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

795 files changed

+22769
-13407
lines changed

.github/CODEOWNERS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -506,6 +506,9 @@ tests/sentry/api/endpoints/test_organization_dashboard_widget_details.py @ge
506506
*autofix*.py @getsentry/machine-learning-ai
507507
/static/app/components/events/autofix/ @getsentry/machine-learning-ai
508508
/src/sentry/seer/ @getsentry/machine-learning-ai
509+
*seer_explorer*.py @getsentry/machine-learning-ai
510+
*seerExplorer*.tsx @getsentry/machine-learning-ai
511+
*seerExplorer*.ts @getsentry/machine-learning-ai
509512
## End of ML & AI
510513

511514
## Issues

CHANGES

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,35 @@
1+
25.7.0
2+
------
3+
4+
### Various fixes & improvements
5+
6+
- ref(deletions): Remove unnecessary Seer calls in endpoint (#93541) by @armenzg
7+
- chore(detectors): Clean up detection settings (#95561) by @roggenkemper
8+
- ref(stories): rename sections (to core + product) (#95562) by @natemoo-re
9+
- fix(Jira-Server): Adds halts, better exceptions for failed syncs (#95281) by @GabeVillalobos
10+
- fix(stories): adjust routing (#95442) by @natemoo-re
11+
- feat(taskworker): Zstd compress process profile task (#95545) by @enochtangg
12+
- chore(relay): update VALID_PLATFORMS from relay location comment (#95510) by @cvxluo
13+
- ref(ecosystem): refactor link_all_repos to bulk update repositories (#95494) by @cathteng
14+
- build: fix storybook types (#95556) by @JonasBa
15+
- feat(replay): Unify the tooltips into one for replay details os/browser (#95558) by @ryan953
16+
- feat(otlp): Parse JSON-looking attributes in span attributes panel (#95544) by @gggritso
17+
- chore(aci): setup single processing flag for issue alerts in workflow engine (#95178) by @cathteng
18+
- feat(otlp): Register flag for displaying span links in the trace view UI (#95549) by @gggritso
19+
- ref(ui): make "md" the new buttonBar gap default (#95551) by @TkDodo
20+
- feat: Add dashboard widget snapshot model (#95236) by @shruthilayaj
21+
- [ft] Add a enable PR review + test gen setting at an org level (#95456) by @rohitvinnakota-codecov
22+
- fix(explore): Only permit span.duration for eap count (#95480) by @Zylphrex
23+
- ref: replace space function with p.theme.space in core/button (#95414) by @TkDodo
24+
- chore(nextjs-insights): remove feature flag registration (#95543) by @shellmayr
25+
- fix(taskworker) Add a short backoff when fetching tasks (#95346) by @markstory
26+
- chore(ui): Increase contrast on issues chart (#95349) by @leeandher
27+
- feat(tours): re-implement tour with inverse theme (#95530) by @TkDodo
28+
- fix(explore): Prettify aggregation in saved queries (#95479) by @Zylphrex
29+
- :wrench: chore(aci): update `send_activity_notification` to not send notifications for metric alert resolutions (#95476) by @iamrajjoshi
30+
31+
_Plus 670 more_
32+
133
25.6.2
234
------
335

CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ pnpm test
8989

9090
# Run specific test file
9191
pytest tests/sentry/api/test_base.py
92-
pnpm test components/avatar.spec.tsx
92+
CI=true pnpm test components/avatar.spec.tsx
9393
```
9494

9595
### Code Quality

babel.config.ts

Lines changed: 0 additions & 45 deletions
This file was deleted.

config/tsconfig.base.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,7 @@
9191
"esModuleInterop": true,
9292
"experimentalDecorators": true,
9393
"resolveJsonModule": true,
94+
"verbatimModuleSyntax": true,
9495

9596
"paths": {
9697
"sentry/*": ["../static/app/*"],

eslint.config.mjs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -480,7 +480,6 @@ export default typescript.config([
480480
? {
481481
'@typescript-eslint/await-thenable': 'error',
482482
'@typescript-eslint/consistent-type-exports': 'error',
483-
'@typescript-eslint/consistent-type-imports': 'error',
484483
'@typescript-eslint/no-array-delete': 'error',
485484
'@typescript-eslint/no-base-to-string': 'error',
486485
'@typescript-eslint/no-for-in-array': 'error',

jest.config.ts

Lines changed: 43 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,39 @@ import type {Config} from '@jest/types';
22
import path from 'node:path';
33
import process from 'node:process';
44
import {execFileSync} from 'node:child_process';
5+
import type {TransformOptions} from '@babel/core';
56

6-
import babelConfig from './babel.config';
7+
const babelConfig: TransformOptions = {
8+
presets: [
9+
[
10+
'@babel/preset-react',
11+
{
12+
runtime: 'automatic',
13+
importSource: '@emotion/react',
14+
},
15+
],
16+
[
17+
'@babel/preset-env',
18+
{
19+
useBuiltIns: 'usage',
20+
corejs: '3.41',
21+
targets: {
22+
node: 'current',
23+
},
24+
},
25+
],
26+
// TODO: Remove allowDeclareFields when we upgrade to Babel 8
27+
['@babel/preset-typescript', {allowDeclareFields: true, onlyRemoveTypeImports: true}],
28+
],
29+
plugins: [
30+
[
31+
'@emotion/babel-plugin',
32+
{
33+
sourceMap: false,
34+
},
35+
],
36+
],
37+
};
738

839
const {
940
CI,
@@ -18,14 +49,6 @@ const {
1849

1950
const IS_MASTER_BRANCH = GITHUB_PR_REF === 'refs/heads/master';
2051

21-
const BALANCE_RESULTS_PATH = path.resolve(
22-
__dirname,
23-
'tests',
24-
'js',
25-
'test-balancer',
26-
'jest-balance.json'
27-
);
28-
2952
const optionalTags: {
3053
balancer?: boolean;
3154
balancer_strategy?: string;
@@ -188,13 +211,22 @@ if (
188211
) {
189212
let balance: null | Record<string, number> = null;
190213

214+
const BALANCE_RESULTS_PATH = path.resolve(
215+
import.meta.dirname,
216+
'tests',
217+
'js',
218+
'test-balancer',
219+
'jest-balance.json'
220+
);
191221
try {
192222
balance = require(BALANCE_RESULTS_PATH);
193223
} catch (err) {
194224
// Just ignore if balance results doesn't exist
195225
}
196226
// Taken from https://github.com/facebook/jest/issues/6270#issue-326653779
197-
const envTestList: string[] = JEST_TESTS.map(file => file.replace(__dirname, ''));
227+
const envTestList: string[] = JEST_TESTS.map(file =>
228+
file.replace(import.meta.dirname, '')
229+
);
198230
const nodeTotal = Number(CI_NODE_TOTAL);
199231
const nodeIndex = Number(CI_NODE_INDEX);
200232

@@ -302,6 +334,7 @@ const config: Config.InitialOptions = {
302334
// To disable the sentry jest integration, set this to 'jsdom'
303335
testEnvironment: '@sentry/jest-environment/jsdom',
304336
testEnvironmentOptions: {
337+
globalsCleanup: 'on',
305338
sentryConfig: {
306339
init: {
307340
// jest project under Sentry organization (dev productivity team)

knip.config.ts

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ const config: KnipConfig = {
5959
},
6060
ignoreDependencies: [
6161
'core-js',
62-
'@babel/runtime', // used implicitly alongside @babel/plugin-transform-runtime
6362
'eslint-import-resolver-typescript', // used in eslint config
6463
'jest-environment-jsdom', // used as testEnvironment in jest config
6564
'swc-plugin-component-annotate', // used in rspack config, needs better knip plugin
@@ -69,7 +68,6 @@ const config: KnipConfig = {
6968
'@types/webpack-env', // needed to make require.context work
7069
'@types/stripe-v3', // needed for global `stripe` namespace typings
7170
'@types/gtag.js', // needed for global `gtag` namespace typings
72-
'@babel/plugin-transform-runtime', // Still used in jest
7371
'@babel/preset-env', // Still used in jest
7472
'@babel/preset-react', // Still used in jest
7573
'@babel/preset-typescript', // Still used in jest

migrations_lockfile.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,16 +23,16 @@ nodestore: 0001_squashed_0002_nodestore_no_dictfield
2323

2424
notifications: 0001_move_notifications_models
2525

26-
preprod: 0010_actual_drop_preprod_artifact_analysis_file_id_col
26+
preprod: 0011_add_preprod_artifact_app_name_and_app_id_fields
2727

2828
replays: 0006_add_bulk_delete_job
2929

30-
sentry: 0946_add_has_mcp_insights_flag
30+
sentry: 0950_safe_del_dswaiver
3131

3232
social_auth: 0003_social_auth_json_field
3333

3434
tempest: 0001_squashed_0002_make_message_type_nullable
3535

3636
uptime: 0001_squashed_0042_extra_uptime_indexes
3737

38-
workflow_engine: 0075_add_index_to_dcg_action
38+
workflow_engine: 0076_add_detector_group_table

package.json

Lines changed: 18 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,10 @@
99
},
1010
"dependencies": {
1111
"@amplitude/analytics-browser": "^1.5.3",
12-
"@babel/core": "~7.26.10",
13-
"@babel/plugin-transform-runtime": "~7.26.10",
14-
"@babel/preset-env": "~7.26.9",
15-
"@babel/preset-react": "^7.26.3",
16-
"@babel/preset-typescript": "^7.26.0",
17-
"@babel/runtime": "~7.26.10",
12+
"@babel/core": "~7.28.0",
13+
"@babel/preset-env": "~7.28.0",
14+
"@babel/preset-react": "^7.27.1",
15+
"@babel/preset-typescript": "^7.27.1",
1816
"@dnd-kit/core": "^6.1.0",
1917
"@dnd-kit/sortable": "^8.0.0",
2018
"@dnd-kit/utilities": "^3.2.2",
@@ -86,7 +84,7 @@
8684
"@types/gtag.js": "^0.0.12",
8785
"@types/history": "^3.2.5",
8886
"@types/invariant": "^2.2.35",
89-
"@types/jest": "29.5.14",
87+
"@types/jest": "30.0.0",
9088
"@types/js-beautify": "^1.14.3",
9189
"@types/js-cookie": "3.0.6",
9290
"@types/lodash": "^4.14.182",
@@ -184,7 +182,7 @@
184182
"@emotion/eslint-plugin": "^11.12.0",
185183
"@eslint/js": "^9.22.0",
186184
"@sentry-internal/rrweb-types": "2.34.0",
187-
"@sentry/jest-environment": "6.0.0",
185+
"@sentry/jest-environment": "6.1.0",
188186
"@sentry/profiling-node": "9.35.0",
189187
"@styled/typescript-styled-plugin": "^1.0.1",
190188
"@tanstack/eslint-plugin-query": "^5.66.1",
@@ -194,13 +192,13 @@
194192
"@testing-library/user-event": "14.6.1",
195193
"@types/gettext-parser": "8.0.0",
196194
"@types/node": "^22.9.1",
197-
"babel-jest": "29.7.0",
195+
"babel-jest": "30.0.4",
198196
"eslint": "^9.22.0",
199197
"eslint-config-prettier": "^10.1.2",
200198
"eslint-import-resolver-typescript": "^3.8.3",
201199
"eslint-plugin-boundaries": "^5.0.1",
202200
"eslint-plugin-import": "2.32.0",
203-
"eslint-plugin-jest": "^28.11.0",
201+
"eslint-plugin-jest": "29.0.1",
204202
"eslint-plugin-jest-dom": "^5.5.0",
205203
"eslint-plugin-mdx": "^3.4.2",
206204
"eslint-plugin-no-relative-import-paths": "^1.6.1",
@@ -213,10 +211,10 @@
213211
"eslint-plugin-unicorn": "^57.0.0",
214212
"expect-type": "1.2.1",
215213
"globals": "^15.14.0",
216-
"jest": "29.7.0",
214+
"jest": "30.0.4",
217215
"jest-canvas-mock": "^2.5.2",
218-
"jest-environment-jsdom": "29.7.0",
219-
"jest-fail-on-console": "3.3.0",
216+
"jest-environment-jsdom": "30.0.4",
217+
"jest-fail-on-console": "3.3.1",
220218
"jest-junit": "16.0.0",
221219
"knip": "^5.60.0",
222220
"postcss-styled-syntax": "0.7.0",
@@ -244,11 +242,11 @@
244242
"APIMethod": "stub",
245243
"proxyURL": "http://localhost:8000",
246244
"scripts": {
247-
"test": "node scripts/test.js --watch",
248-
"test-ci": "node scripts/test.js --ci --maxWorkers=100% --colors",
249-
"test-debug": "node --inspect-brk scripts/test.js --runInBand",
250-
"test-precommit": "node scripts/test.js --bail --findRelatedTests -u",
251-
"test-staged": "node scripts/test.js --findRelatedTests $(git diff --name-only --cached)",
245+
"test": "NODE_OPTIONS='--experimental-transform-types' node scripts/test.js --watch",
246+
"test-ci": "NODE_OPTIONS='--experimental-transform-types' node scripts/test.js --ci --maxWorkers=100% --colors",
247+
"test-debug": "NODE_OPTIONS='--experimental-transform-types' node --inspect-brk scripts/test.js --runInBand",
248+
"test-precommit": "NODE_OPTIONS='--experimental-transform-types' node scripts/test.js --bail --findRelatedTests -u",
249+
"test-staged": "NODE_OPTIONS='--experimental-transform-types' node scripts/test.js --findRelatedTests $(git diff --name-only --cached)",
252250
"lint": "pnpm run lint:prettier && pnpm run lint:js && pnpm run lint:css",
253251
"lint:js": "eslint",
254252
"lint:css": "stylelint '**/*.[jt]sx'",
@@ -266,7 +264,7 @@
266264
"diff-docs": "pnpm run install-api-docs && node --experimental-transform-types api-docs/openapi-diff.ts",
267265
"deref-api-docs": "node --experimental-transform-types api-docs/index.ts tests/apidocs/openapi-spectacular.json tests/apidocs/openapi-derefed.json",
268266
"build-chartcuterie-config": "node --experimental-transform-types config/build-chartcuterie.ts",
269-
"build-acceptance": "CODECOV_ENABLE_BA=false IS_ACCEPTANCE_TEST=1 NODE_ENV=production pnpm run build",
267+
"build-acceptance": "CODECOV_ENABLE_BA=false IS_ACCEPTANCE_TEST=1 STORYBOOK_TYPES=0 NODE_ENV=production pnpm run build",
270268
"build-production": "NODE_OPTIONS='--experimental-transform-types' NODE_ENV=production rspack --mode production --config ./rspack.config.ts",
271269
"build": "NODE_OPTIONS='--max-old-space-size=4096 --experimental-transform-types' rspack --config ./rspack.config.ts",
272270
"build-js-loader": "node --experimental-transform-types scripts/build-js-loader.ts",
@@ -275,7 +273,7 @@
275273
"validate-api-examples": "pnpm run --dir api-docs openapi-examples-validator ../tests/apidocs/openapi-derefed.json --no-additional-properties",
276274
"mkcert-localhost": "mkcert -key-file config/localhost-key.pem -cert-file config/localhost.pem localhost 127.0.0.1 dev.getsentry.net *.dev.getsentry.net && mkcert -install",
277275
"https-proxy": "caddy run --config - <<< '{\"apps\":{\"http\":{\"servers\":{\"srv0\":{\"listen\":[\":8003\"],\"routes\":[{\"handle\":[{\"handler\":\"reverse_proxy\",\"upstreams\":[{\"dial\":\"localhost:8000\"}]}]}],\"tls_connection_policies\":[{\"certificate_selection\":{\"any_tag\":[\"cert0\"]}}]}}},\"tls\":{\"certificates\":{\"load_files\":[{\"certificate\":\"./config/localhost.pem\",\"key\":\"./config/localhost-key.pem\",\"tags\":[\"cert0\"]}]}}}}'",
278-
"knip": "knip --treat-config-hints-as-errors",
276+
"knip": "NODE_OPTIONS='--experimental-transform-types' knip --treat-config-hints-as-errors",
279277
"knip:prod": "pnpm run knip --production --exclude exports,types,dependencies,unresolved"
280278
},
281279
"browserslist": {

0 commit comments

Comments
 (0)