github getsentry/sentry 21.10.0

latest releases: 24.10.0, 24.9.0, 24.8.0...
3 years ago

Frontend Deploys (ongoing)

PRs: #28878

Python: Add support for Apple arm64 development (ongoing)

Apple started moving away from their Intel based chipset to arm64 chipsets (aka as Apple Silicon).
In order to do Sentry development on this new architecture we need to do various changes to Sentry's development environment. Some of these changes include using a different Python version (arm64 support was added on Python 3.8.10), upgrading Python packages and hosting some Python wheels that third-party maintainers are not yet releasing.

PRs: #28769, #28607

Docker: Add support for Apple arm64 development (ongoing)

In order to do development for Sentry, we need to spin up various Docker containers.
Apple is moving away from Intel based chipset to arm64 chipsets (aka Apple Silicon).

This milestones track all work required to make sure we can still use these development services on Apple's arm64 architecture.

PRs: #29293, #29284, #29157, #29081, #29117, #29084, #28672, #28724

Connecting Dashboards and Discover (ongoing)

Open a Dashboard widget in Discover. Add a Discover Query to a Dashboard.

PRs: #28699, #28827, #28745, #28637

Various fixes & improvements

  • feat(workflow): Enable issue-percent-filters flag by default (#29325)
  • feat(post-process-forwarder) Allow different types of post process forwarders (#29225)
  • ref(search): Enable search without waiting for search groups to load (#29336)
  • adds experiment for trial label (#29305)
  • fix(discover): Various snql discover fixes (#29219)
  • chore(deletion) Drop aborted column (#29323)
  • fix(snapshots): Fixes datetime comparison with str issue (#29349)
  • fix(ui): Handle empty alert chart (#29348)
  • feat(dev): Run dev env workflow when .pre-commit-config.yaml changes (#29331)
  • ref(tests): Use screen for querying in RTL (#29312)
  • fix(alerts): Fix logic that creates snapshots for crash rate alerts (#29320)
  • ref(grouprelease): Buffer GroupRelease.last_seen update per minute (#29328)
  • ref(minichart): Add extra empty space on the top - [INGEST-495] (#29321)
  • ref(js): Remove unused withProjects on incidentRules/triggers (#29335)
  • test(js): Always use our exported act (#29340)
  • ref(js): Rewrite Sidebar as a functional component (#29278)
  • test(js): Refactor useLegacyStore test to use testing-library/react-hooks (#29338)
  • fix(workflow): Filter team release counts by teams projects (#29341)
  • feat(team-insights): Add Number of Releases section (#29101)
  • Temporarily disable pyright pre-commit checks. (#29326)
  • build(deps): bump nth-check from 2.0.0 to 2.0.1 (#29000)
  • fix(growth): Select the correct project when showing sample transaction banner (#29324)
  • fix(visibility): Unbound errors for visibility files (#29330)
  • fix(js): Links should not receive router attributes (#29279)
  • ref: Set defaults for potential unbound errors (#29327)
  • feat(workflow): Remove alert issue redesign flag (#29061)
  • feat(symbolicator): Record metrics for projects being assigned and unassigned to the LPQ (#29229)
  • ref(grouprelease): Buffer updates to GroupRelease.last_seen (#29311)
  • fix(typo): 'set up' has a space (#29322)
  • feat(discover): Added analytics for connecting Discover and Dashboards (#29286)
  • fix(ui): Add optional chaining to releases adoption chart (#29317)
  • chore(deletion) Remove aborted field from the model (#29297)
  • feat(suspect-spans): Add new spans columns to transactions dataset (#29287)
  • ref(appconnect): Do not sample metrics for app store connect (#29310)
  • test: Stabilize release comparison snapshot (#29313)
  • feat(consumer): Add batch timeout for offset commit (#29285)
  • fix: Use counters instead of gauges (#29291)
  • feat(ui): Add related issues to crash rate alerts (#29283)
  • type comparisonDelta can be null in saved incidents (#29308)
  • fix(cmp_alerts): Set type when comparison delta default value when null or undefined (#29306)
  • ref(misc): Fix copy and formatting (#29304)
  • feat(workflow): Adding 'this week' totals, dynamic average, and merging into one query (#29301)
  • ref(teams): Alert team filter now uses team slug instead of team name (#29296)
  • feat(cmp_alerts): Show change alert status in the metric alert builder chart (#29201)
  • ref(tests) Move tests for withTags() HOC off of enzyme (#29300)
  • feat(metric-alerts): Fire webhook to Alert Rule UI Component trigger action (#29298)
  • ref(Alert Rules): Only pass inputChannelId for Slack (#29295)
  • fix(migration) Fix exception in data migration 0233 (#29271)
  • dev: Add pyright as a pre-commit hook (#29280)
  • fix(deletions) Fix blocked organization integration deletions (#29269)
  • ref(releasehealth): Implement get_num_sessions_per_project on metrics backend [INGEST-249] (#29208)
  • ref(ui): Refactor releases adoption request (#29253)
  • feat: Move events in the wrong queue to the right one [NATIVE-203] (#29207)
  • ref(ui): Rename project session request (#29254)
  • ref(ui): Rename release health request (#29255)
  • test: Update flakey releaes snapshot (#29281)
  • ref(ui): Replace releaseDetailsRequest with SessionsRequest (#29252)
  • feat(ui): Format alert incident tooltip (#29257)
  • ref(ui): Remove legacy release details codepaths (#29150)
  • ref(stores): Make ProjectsStore useLegacyStore compatible (#29247)
  • ref(js): Swap withConfig HoC to useLegacyStore(ConfigStore) (#29277)
  • ref(release): Use bulk insert for CommitFileChange in set_commits (#29256)
  • ref(ui): Convert metric rule create to functional component (#29274)
  • feat(alert-rules): Add validation for schema fields attached to alert rules (#29226)
  • fix(ui): Update localstorage when project is deleted (#29104)
  • feat(metric-alerts): Create/update Alert Rule UI Components (#29236)
  • fix(ui): Disable scroll hijack with cursor over zoomable charts (#29234)
  • chore(suspect-spans): Add metric for span grouping calculation (#29266)
  • ref(teams): Switch TeamCrumb to utilize useTeams (#29242)
  • feat(workflow): Add team label to team insights dropdown (#29243)
  • ref(js): Small condition refactor (guards) in EditableText (#29267)
  • ref(js): Make SidebarPanelStore useLegacyStore compatible (#29268)
  • feat(activity): Disable note input when no text is entered (#29264)
  • fix(test): Fix flaky test for useTeams (#29214)
  • ref(js): Convert ActivityNote to a functional component (#29250)
  • fix(authenticator): Allow superusers to override 2fa-required org removal (#29089)
  • ref(stores): Rename OrganizationActions.{fetchOrg -> reset} (#29246)
  • fix(ui): Handle Adoption Stage if project slug invalid (#29227)
  • feat(snql): Add support for array combinator in snql (#29047)
  • fix(ui): Release comparison performance view for smaller screens (#29228)
  • feat(discover): Beta Badges on Add to Dashboard buttons (#29262)
  • feat(cmp_alerts): Return current and comparison count from stats api, instead of percent (#29245)
  • feat(workflow): 'Team' Release Count API (#28836)
  • ref(js): useLegacyStore for DemoHeader sidebar collapsed (#29251)
  • feat(dev): On Apple arm64 install hosted confluent-kafka wheel (#29013)
  • fix(discover): Check yAxis list contains equation functions when adding widget from discover (#29153)
  • fix(ui) Fix issue stats chart colours in dark mode (#29162)
  • fix(tests) Add a sleep to /issues test (#29259)
  • fix(metrics): Fix some bugs in metrics-based release health [INGEST-249] (#29233)
  • ref(ui): Refactor sessions existence checks (#29205)
  • fix(ui): Block quote was ugly af (#29249)
  • style(webpack): Don't use flag style comments for blocks (#29238)
  • ref(js): Use localeCompare for sort in projectsStore#getAll (#29244)
  • feat(jobs): Come struggle at react code with us (#29241)
  • ref(js): Remove unused react-keydown (#29240)
  • ref(js): Convert a number of withApi's -> useApi's (#29239)
  • ref(slack): Indicate recipient in referrer (#29235)
  • fix(activity): check that user exists when seeing if we can edit comment (#29156)
  • feat(alert-rule): Render Alert Rule UI Component in Metric Alerts (#29103)
  • fix(ui): install docs line height (#28998)
  • feat(workflow): Collapse team misery on more than 8 results (#29199)
  • fix(itunes): sms auth [NATIVE-265] (#28987)
  • fix(appstore): Not all pages have includes (#28721)
  • feat(symbolicator): Add a backoff timer when projects move in/out of the LPQ (#29100)
  • feat(notifications): Format Crash Rate alert notifications [WOR-1412] (#29107)
  • ref(releasehealth): Implement get_project_sessions_count on metrics backend [INGEST-249] (#29148)
  • fix(ui): Do not show threshold type on session alerts (#29206)
  • ref(ui): Refactor triggers chart to use SessionsRequest (#29204)
  • feat(growth): Adding targeted upsell modal experiment (#29222)
  • ref(sentry-metrics): Add basic caching layer to indexer (#29115)
  • ref(sentry apps): Remove Zepel (#29218)
  • ref(symbolicator): Add tests for LPQ tasks (#29088)
  • fix(scim): fix error when member on team doesnt exist (#29217)
  • fix(workflow): Fix issues reviewed when switching teams (#29200)
  • feat(discover): enable multi y axis for previous period view (#28951)
  • feat(discover): Previous period on charts (#29211)
  • fix(snql): Orderby duplicate column should work (#29121)
  • chore(performance): Drop legacy key transactions table (#29074)
  • ref(vsts): Shadow deprecate VSTS plugin (#29202)
  • feat(sentry apps): Add TaskCall to integration directory (#29164)
  • feat(post-process-forwarder) Add header for transaction processing (#28908)
  • feat(workflow) rate limit ProjectKeyStats endpoint (#29210)
  • fix(ui) Improve Darkmode for ownership assignments (#29161)
  • fix(api): Cast all api log values to string (#29213)
  • fix: Return correct data in get_*_for_project methods (#29037)
  • feat(internal-metrics): Add gauge support (#29091)
  • ref(js): useTheme in DropdownLink (#29176)
  • ref(js): Convert VitalChart to a functional component (#29168)
  • ref(js): useTheme in BaseChart (#29175)
  • ref(js): Convert performance/trends/chart to a functional component (#29172)
  • ref(js): Convert CommandPalette to a functional component (#29174)
  • ref(js): Convert RulesPanel to a functional component (#29197)
  • ref(js): useTheme in doc-ui components (#29198)
  • ref(js): Convert performance/charts/Chart to a functional component (#29171)
  • ref(js): Convert DurationChart to functional component (#29166)
  • ref(js): Convert TrendChart to functional component (#29165)
  • ref(js): useTheme in the other IntegrationStatus (#29185)
  • ref(js): Convert VitalsChart to a functional component (#29163)
  • ref(js): useTheme in ActivityPlaceholder (#29182)
  • ref(js): useTheme for TransactionRuleModal (#29195)
  • ref(js): useTheme in HelpSearchModal (#29178)
  • ref(js): useTheme for customRepositories/Status (#29196)
  • ref(js): use{Api,Theme} for ReleaseEventsChart (#29193)
  • ref(js): useTheme for ReleaseComparisonChart (#29192)
  • ref(js): useTheme for SelectControl (#29191)
  • ref(js): useTheme for projectsDashboard/Chart (#29190)
  • ref(js): useTheme in ProjectBaseSessionsChart (#29189)
  • ref(js): use{Api,Theme} in SidebarCharts (#29188)
  • ref(js): useTheme in DurationPercentileChart (#29187)
  • ref(js): useTheme in HistogramChart (#29186)
  • ref(js): useTheme in IntegrationStatus (#29184)
  • ref(js): useTheme in MetricWidgetChart (#29183)
  • ref(js): useTheme in SvgIcon (#29181)
  • ref(js): useTheme in IconBusiness (#29180)
  • ref(js): useTheme in ProgressHeader (#29179)
  • ref(js): useTheme in FeatureBadge (#29177)
  • ref(js): Convert HealthStatsChart to a functional component (#29173)
  • ref(js): Remove unused withTheme from TagsDisplay (#29170)
  • ref(js): Remove unused withTheme from TagsHeatMap (#29169)
  • ref(js): useTheme for ReleaseAdoption (#29194)
  • feat(workflow): Add ratelimit to project stats endpoint (#29160)
  • ref(integrations): sync helper (#29158)
  • fix(dev): Install Python 3.6.x with --patch on Big Sur (#29149)
  • ref(Slack): Allow users to enter a channel ID for alert rules on the front end (#29125)
  • fix(deletion) Fix another failing organization (#29035)
  • fix(ui): Revert change to disabled button tooltip (#29139)
  • feat(discover): Added analytics to track widget visualization changes (#29126)
  • fix(discover): fixed discover chart component forced to area on all multi series charts (#29075)
  • feat(discover): Sort Add to Dashboard dashboards by My Dashboards (#29110)
  • feat(dashboards): Add Aggregate Equations to y-axis (#29087)
  • fix(discover): Pass referrer to bulk query (#29132)
  • ref(models): Split up Models and Managers (#29114)
  • fix(ui): Fix incomplete list of member's teams (#29134)
  • ref(clubhouse): Shadow deprecate clubhouse plugin (#29082)
  • fix(snql): Array join is not an aggregate (#29120)
  • fix(chart-unfurls): Fix unfurls with top events (#29119)
  • fix(appconnect): Improve unauthorized handling (#29108)
  • ref(js): useLegacyStore for SystemAlerts (#29140)
  • Revert "ref(js): Properly type hooks in HookStore (#29141)" (#29147)
  • apply cr feedback (#29077)
  • ref(js): Move logic for modal closing on browser history to a hook (#29146)
  • ref(ts): Fix discrepency on ModalActions.openModal (#29145)
  • ref(ts): Adjust how Modal{Options,RenderProps} are imported (#29144)
  • ref(js): Correct useEffect dependencies in AppRoot (#29143)
  • style(js): setHaspasswordAuth -> setHasPasswordAuth (#29142)
  • ref(js): useLegacyStore for config in ThemeAndStyleProvider (#29137)
  • ref(js): useLegacyStore for config in App (#29136)
  • ref(js): Properly type hooks in HookStore (#29141)
  • ref(js): useLegacyStore for config in AppRoot (#29138)
  • ref(ts): Introduce CommonStoreInterface for useLegacyStore (#29131)
  • fix(teams): useTeams now correctly sets initiallyLoaded (#29133)
  • fix(workflow): Adjust insights padding, wrap controls on mobile (#29130)
  • ref(integration): Split Tasks into Files (#28888)
  • ref(js): Consistent naming for storeConfig objects (#29129)
  • feat(workflow): Add team issues and time to resolution (#29095)
  • feat(idp-migration): redirection for account confirmation link (#29003)
  • ref(js): Convert Indicators to a function component (#29062)
  • ref(ts): Store type definition consistency (#29097)
  • style(js): Move components to the end of ToastIndicators file (#29122)
  • ref(discover): Reduce the cardinality of this error (#29112)
  • ref(js): Minor cleanup in dropdownAutoComplete/menu (#29123)
  • ref(discover): Tagging when the viewed dashboard is prebuilt or not (#29124)
  • feat(ui): Add searchbar to team settings (#29098)
  • fix(ui): Revert change to disabled button tooltips (#29085)
  • feat(js): adds id for sidebar item (#29113)
  • py38: upgrade boto3 (#28693)
  • feat(discover): Allow custom topEvents in chartcuterie (#29056)
  • feat(dashboards): Re-introduce lazy-loading (#29060)
  • build(ci): Fix check migration job (#29118)
  • feat(comparison_alerts): Change alert threshold selector in metric alerts (#29027)
  • devenv: allow for python 3.8, and prepare CI configuration for dual 3.6/3.8 (#29058)
  • fix(ui) Add id attributes to org create form (#29111)
  • ref(lint): Fix typos (#29102)
  • ref(slack): Utils Directory (#28781)
  • ref(teamwork): Shadow deprecate teamwork plugin (#29052)
  • ref(discover): Run the top-events queries in parallel (#29055)
  • feat(discover): Add beta feature badge to limit (#29050)
  • feat(discover-snql): Use the snql query builder for events-meta (#29096)
  • remove client discards from totals on orgstats projects (#29079)
  • ref(discover): Change the colour of the others series to gray (#28929)
  • fix(discover): Update the top-5 label regardless of flag (#29093)
  • feat(suspect-spans): Change ingestion to project scope flag (#29076)
  • fix: Remove clone annotations during function trimming (NATIVE-110) (#29105)
  • ref(releasehealth): Implement get_project_releases_count on metrics backend [INGEST-249] (#29044)
  • feat(metrics): Build sessions_v2 with metrics [INGEST-249] (#28870)
  • feat(ui): Remove session alert 30m window (#29070)
  • ref(releasehealth): Refactor session count calculation before implementing the metrics backend (#29078)
  • feat(ui): Conditionally display filter on session alert (#29073)
  • feat(ui): Distinguish sessions/users in alert summary heading (#29072)
  • feat(ui): Scale alert rule chart (#29069)
  • feat(ui): Remove discover button from session alerts (#29071)
  • fix(ui): Add empty dependency array to useLegacyStore (#29086)
  • ref(ts): Remove unused validHookNames (#29094)
  • feat(ui-components): Get Alert Rule UI Components in Metric Alerts (#29008)
  • feat(team): Allow useTeams to provide user teams or teams by slug (#28970)
  • ref(sentry-metrics): Add MetricsKeyIndexer table (#28914)
  • feat(release-comparison): Add performance section on release details (#28948)
  • fix(symbolicator): Correctly start tasks asynchronously (#29048)
  • feat(snql): Support array_join in snql (#29019)
  • feat(discover): discover add to dashboard button uses y axis from query (#29046)
  • ref(utils): Split email utils into files (#28614)
  • ref(releasehealth): Rewrite get_release_health_data_overview to run on metrics [INGEST-249] (#28892)
  • feat(discover): multi y axis support for discover landing page query previews (#29016)
  • fix(discover): fixed cell actions dropping multi y axis (#29051)
  • fix(ui): Firefox font smoothing (#29020)
  • fix(workflow): Inactive alerts should not have a red arrow (#29054)
  • feat(snql): Support limit by clause (#28746)
  • chore(performance): Remove legacy key transactions (#29015)
  • feat: Query realtime_metrics for low priority selection [NATIVE-203] (#28950)
  • fix(reprocessing2): Import celery module correctly (#29066)
  • ref(perf): Update AuthIdentity in smaller chunks (#29067)
  • fix(ui): Format alert rule details chart axis and value (#29036)
  • feat(ui): Add session chart to alert rule details page (#29034)
  • ref(js): Convert PipelineView to a functional component (#28978)
  • feat(workflow): Issue Status Breakdown API (#28979)
  • ref(workflow): Alerts Triggered start/end improvement and dict key cleanup (#28981)
  • fix(discover): Add a default for count_unique (#28952)
  • chore(dashboards): Add a comment explaining widget limit (#29053)
  • ref(ui) Update more deprecated forms including ones in manage (#28991)
  • fix(growth): Create sample event btn redirect with project id (#29049)
  • feat(growth): Alert Bar on issue page for sample events (#28864)
  • fix(ui): Merged Issues fill color in dark mode (#28966)
  • ref(debug-files): Buffer updates to reprocessing revision project option (#29041)
  • feat(releases): Clear the commits associated to a release (#28831)
  • feat(alert-rules): Append new alert rule payload for issue alerts w/ ui components (#28764)
  • feat(discover): Allow saving queries with topEvents (#28927)
  • feat(discover): Allow more options for the topEvents (#28926)
  • feat(workflow): Group team alerts triggered by week (WOR-1407) (#29026)
  • feat(integrations): Make sync_status_inbound a Task (#28906)
  • feat(notifications): Parsed Versions (#28971)
  • feat(dashboards): Add max widget limit (#28917)
  • fix(discover): Actually set referrer on event-stats (#28962)
  • Revert "fix: Erroneous apply_async call (#29032)" (#29038)
  • build: Fix defining env var for webpack (#29030)
  • Feat(metrics): Crash free breakdown on metrics backend [INGEST-249] (#28945)
  • fix: Erroneous apply_async call (#29032)
  • feat(cmp_alerts): Support comparisonDelta parameter in OrganizationEventsStatsEndpoint (#29028)
  • feat(cmp_alerts): Allow timeseries_query to make comparison queries (#29018)
  • ref(ui): Prepare alert metricsChart for sessions (#28992)
  • feat(alerts): Adds Crash Rate Alerts to Metric Alerts (#28526)
  • ci: Add native as code owners to LPQ-related files (#28972)
  • ref(typing): Typing for the low priority symbolication queue (#29017)
  • feat(symbolicator): Automatically add and remove projects to the LPQ based on their historical perf (#28714)
  • feat(symbolicator): Add the ability to manipulate the automatic killswitch for the LPQ (#28757)
  • fix(discover): Fix a bug with top events and issues (#28961)
  • feat(workflow): Sort group tags alphabetically (#29005)
  • feat(alert-rules): Properly save alert rules with UI components (#28659)
  • feat(post-process-forwarder) Different errors and transaction forwarders (#28954)
  • ref(integrations): Don't fetch done statuses twice (#28884)
  • feat(team-insights): Update team selector to use TeamSelector (#28989)
  • ref(select): Choices -> options accountNotificationFineTuning (#28810)
  • chore(api): Add type hinting to organization events and organization events stats (#29006)
  • feat(workflow): Handle insights users with zero projects/teams (#28923)
  • feat(workflow): Time To Resolution API (#28910)
  • feat(dynamic-sampling): Add autocomplete - INGEST-434 (#28947)
  • fix: take lpq into account when determining from_reprocessing (#29009)
  • ref(ui): Remove LightWeightNoProjectMessage (#28988)
  • feat(appconnect): Some metrics about project refreshes (#28990)
  • fix(symbolSources): Deal better with missing hidden secrets (#28996)
  • ref(js): Mark exports in sentryTypes as deprecated (#28976)
  • ref(js): Improve app boot ordering (#28980)
  • perf(ui): Prevent unnecessary endpoint requests (#28924)
  • fix(codeowners): Return missing member's email (#28907)
  • docs(js): Add README explaining how the app boots (#28982)
  • feat(auth): Add copy for account-linking verification (#28931)
  • fix(deletions) Improve AlertRule deletions (#28999)
  • fix(post_process_group): Fix bug where has_reappared can be undefined (#29004)
  • fix(workflow): Update triggered alerts copy (#28965)
  • build(deps): bump fork-ts-checker-webpack-plugin from 6.2.12 to 6.3.3 (#28394)
  • feat(ui): Storybook Changelog page (#28995)
  • build(ui): Upgrade size-limit to v5 (#28974)
  • feat(idp-migration): Verified one-time-key and stored key in django sessions (#28775)
  • fix(growth): Change sample transaction button text (#28997)
  • ref(js): Rewrite ThemeAndStyleProvider as a functional component (#28977)
  • fix(issue_alerts): Fix bug in event_attribute where we use the wrong attribute for message search (#28967)
  • ref(releasehealth): Implement get_oldest_health_data_for_releases on metrics backend [INGEST-249] (#28943)
  • ref(tasks): Safeguard post_process_group with try/except (#28986)
  • fix(ui): Fix alerts supported search tags (#28985)
  • perf(js): Avoid rebuilding routes w/ memoization (#28975)
  • ref(js): Minor cleanup to InstallWizard (#28968)
  • ref(ts): Add some missing typing (#28983)
  • fix(semver): Set semver cols on pre_save (#28946)
  • feat(ui): Add 30 minutes window to crash rate alerts (#28938)
  • fix(ui): Refetch alert chart total when project changes (#28940)
  • build(sdk): Bump Python SDK to 1.4.3 (#28984)
  • ref(js): Convert App to a functional component (#28936)
  • ref(js): Fix link to projects install from settings (#28969)
  • ref(js): Replace react-keydown with react-hotkeys-hook (#28933)
  • test(ui): Convert checkbox fancy to RTL (#28959)
  • fix(deletion) Fix snuba query deletion problem (#28953)
  • fix(slack): Unlink Identity (#28811)
  • ref(js): Remove context usage from monitors (#28935)
  • feat(team-store): Support user teams state in TeamStore (#28957)
  • feat(ui): Move to Roboto Mono (#28956)
  • feat(workflow): Team alerts triggered graph (#28845)
  • ref(slack): Clean up tests (#28846)
  • fix(integrations): User is None (#28955)
  • feat(post-process-forwarder) Functioning batching batching_kafka_consumer (#28801)
  • ref(integrations): f-strings (#28887)
  • feat(workflow): GroupHistory model (#28691)
  • feat(docs) Add docs for deletions subsystem (#28915)
  • ref(deletion) Remove unused deletion tasks (#28799)
  • ref(db): Explicitly use replica for platform stats task (#28897)
  • Revert "ref(sdk): Testing default idleTimeout (#28868)" (#28949)
  • fix(integrations): Integration ID TypeError (#28916)
  • fix(ui): Force refresh projects/teams on project creation (#28886)
  • test(ui): Convert clipboard tooltip component to RTL (#28930)
  • feat(workflow): Team Alerts Triggered API (#28816)
  • test(alert-rules): Add a barebones spec test for the RuleNode component (#28834)
  • ref(integrations): Move functions to Model Managers (#28885)
  • ref(snql) Add a migration to recreate subscriptions in SnQL (#28835)
  • feat(perf): Generic landing widgets (all transactions tab) (#28861)
  • feat(ci): python-deps workflow to install specific packages (#28901)
  • ref: Bump symbolic version (#28911)
  • ref(sdk): Testing default idleTimeout (#28868)
  • ref(releasehealth): Implement get_changed_project_release_model_adoptions on metrics backend [INGEST-249] (#28895)
  • fix: Properly export increment_project_duration_counter (#28941)
  • feat(ui): Scale the alert creation chart (#28896)
  • fix(interface-breadcrumb): Disable linked events (#28939)
  • feat(interface-breadcrumb): Add breadcrumb eventlink (#28889)
  • ref(js): Remove unused location context (#28928)
  • ref(js): Wrap all route names in translations (#28934)
  • ref(js): Convert AppRoot to a functional component (#28925)
  • ref(hooks): Remove routes:organization-root hook (#28913)
  • ref(js): Remove keydown usage in PlatformPicker (#28932)
  • ref(js): Convert OrganizationDetails* to functional components (#28921)
  • ref(routes): Fix legacy /:orgId redirects (#28918)
  • feat(comparison_alerts): Change alert condition selector for issue alerts (#28733)
  • feat(suspect-spans): Add group hashes to spans (#28184)
  • feat(ui): Teams render props component (#28909)
  • ref(discover): Update timeout message to include transaction (#28883)
  • feat(discover): allow up to 10 top events (#28862)
  • fix(ui): Trace navigator nodes with errors misaligned (#28903)
  • ref(js): Convert DashboardsV2Container to a functional component (#28873)
  • style(routes): Organize frontend routes.tsx (#28875)
  • feat(idp-migrations): one-time account validation keys (#28732)
  • fix(dashboards): skip renderTag when data.value is undefined (#28899)
  • ref(api-logging): Added user agent to api logging (#28881)
  • fix(ui): made event issue look like a link (#28880)
  • fix(interface-breadcrumb): Fix missing html element for grid (#28904)
  • ref(ui) Update org create to new form library (#28773)
  • fix(discover): only disable y axis checkbox if at maximum selected (#28877)
  • fix(dependencies): Add typing_extensions as dependency (#28894)
  • fix(breadcrumbs): Fix missing html element in the grid (#28900)
  • feat: Add metric for durations of symbolicate_event requests [NATIVE-185] (#28791)
  • ref(sessions): Remove unused get_adjacent_releases_based_on_adoption (#28860)
  • feat: Add metric for the rate of symbolicate_event requests [NATIVE-185] (#28565)
  • fix(typing): Fix typing in master (#28893)
  • fix(metrics): Tag reprocessing in time_to_process metric (#28891)
  • ref(releasehealth): Implement get_release_sessions_time_bounds in metrics backend [INGEST-249] (#28824)
  • fix(metrics): Remove UseCase from indexer calls (#28890)
  • fix(ui): Fix alert threshold validation (#28857)
  • feat(ui): Format alert session chart percentage (#28856)
  • feat(ui): Do not show event type filter on sessions alert page (#28855)
  • feat(js): Handle in_app detection for webpack namespace output (#28859)
  • ref(test): Conver avatar.spec to RTL (#28852)
  • chore: update cbtemulator image source (#28872)
  • style(js): Spacing between conditions (#28874)
  • fix(semver): Fix bug when negating a semver build filter (#28882)
  • fix(discover): Allow invalid rollups (#28778)
  • feat(discover): Add referrers to the events-stats endpoint (#28848)
  • ref(discover): Add a deprecated list to discover (#28830)
  • feat(ui): Use tabular figures in tables and charts (#28871)
  • fix(ui): LayoutTitle is now a h1 (#28876)
  • ref(js): Simplify performance routes (#28869)
  • ref(js): Remove LightWeightOrganization type (#28838)
  • fix(workflow): Remove color from 0% change in team user misery (#28865)
  • fix(discover): saved queries without y axis default to count() when comparing for changes (#28863)
  • ref(routes): Remove SettingsProjectProvider (#28842)
  • fix(api-logging): leverage getattrs to reduce errors (#28866)
  • ref(api-logging): Added several more metrics (#28844)
  • feat(workflow): Switch project reports date range to weeks (#28847)
  • ref(ui) Convert Saved Issue Search to new forms (#28839)
  • (sentry-metrics): Metrics indexer consumer (#28431)
  • ref(discover): Introduce some order to discover columns (#28832)
  • feat(ui) Add a checkbox field to new forms (#28809)
  • (discover): Remove user id from url query params (#28840)
  • ref(release_health): Rename module to be consistent with function name conventions (#28829)
  • ref(breadcrumbs): Rename breadcrumbs types (#28853)
  • feat(deletions) Move organizationintegration deletes to ScheduledDeletion (#28803)
  • fix(semver): Backfill missed semver releases (#28798)
  • feat(ui): Add session chart to alert creation page (#28826)
  • ref(releasehealth): Implement check_releases_have_health_data on metrics backend [INGEST-249] (#28823)
  • ref(select): Remove useState in teamSelector (#28738)
  • ref(js): Remove heavyweight organization (#28783)
  • feat(comparison_alerts): Update subscription processor to perform comparison alerts (#28814)
  • feat(comparison_alerts): Update issue alert api to support comparison values (#28661)
  • feat(ui): Storybook DocsLinks (#28786)
  • fix(cdc_search): Fix bug with groups that have no users when sorting by unique users (#28618)
  • fix: safe_urlencode (#28812)
  • chore(analytics): Add some analytics around chart unfurls (#28807)
  • fix(alert-rules): Force the RuleNode select values to be strings (#28828)
  • feat(dashboards): Add top n events support (#28734)
  • feat(perf): Add tables to all tabs in landing v3 (#28806)
  • fix(python3): Remove itertools.ifilter use (#28822)
  • ref(releasehealth): Implement check_has_health_data on metrics backend [INGEST-249] (#28729)
  • ref(ui) Convert newsletter form to new form components (#28785)
  • fix(release-archives): Do not attempt to cache large ZIP files (#28818)
  • feat(release-archives): Max. archive size option for disk caching (#28821)
  • fix(dynamic-sampling): Fix minor bugs on mobile (#28820)
  • fix(dynamic-sampling): Fix sampling rule not remembering trace flag - INGEST-411 (#28795)
  • fix(semver): Fix failed semver search in issue search/discover when negative search returns too many results (#28813)
  • feat(comparison_alerts): Translate delta percents into comparison percents in the api layer. (#28787)
  • ref(select): Choices -> options monitorForm (#28755)
  • ref(select): Choices -> options integrationListDirectory (#28756)
  • fix(test): Preserve default feature flag values when patching in tests (#28686)
  • fix(alert-rules): Set the correct default value for new SelectControl (#28804)
  • feat(perf): Add page error context (#28805)
  • feat(workflow): Save selected insights team in localstorage (#28774)
  • chore(chart-unfurl): Revert Project permissions warning (#28802)
  • feat(auth): Stub for automatically migrating to new SSO provider (#28621)
  • test: Fix setup in test_flow_authenticated_without_verified_without_password (#28784)
  • fix(semver): Handle NOT operator for releases list (#28713)
  • fix(ui): Remove % from failure rate alert threshold (#28800)
  • fix(discover): Fix a colour mismatch issue with other results (#28736)
  • fix(workflow): Add alpha badge to project reports, add title (#28770)
  • fix(discover): Handle field aliases with others correctly (#28751)
  • fix(features): Skip the entity handler after batch checking (#28611)
  • fix(webhook): Weird JSON array (#28545)
  • Revert "ref(deletion) Remove unused deletion tasks (#28463)" (b8003f2)
  • feat(snql): Use aliased expression instead of function hack (#28740)
  • ref(deletion) Remove unused deletion tasks (#28463)
  • feat: Add similarity.index queue (#28793)
  • fix(discover): Should reload when payload changes while loading (#28653)
  • feat(release-archives): Add spans to fetch_release_archive_for_url (#28790)
  • feat(alerts): Add project incident aler to proj/issue stream page - NATIVE-216 & NATIVE-217 (#28726)
  • fix(notifications): Include experiment fallback in the serializer (#28772)
  • fix(codeowners): String split (#28780)
  • feat(comparison_alerts): Return comparison delta in the metric alert rule apis. (#28711)
  • feat(growth): CTA Performance Upsell in Issue Alert Email (#28752)
  • ref(js): Remove organization.projects usage from getOnboardingTasks (#28747)
  • ref(js): Remove organization.projects from noProjectMessage (#28767)
  • bug(api): Fix logging so that it shows properly on stackdriver (#28777)
  • fix(workflow): Move insights description on smaller screens (#28776)
  • ref(select): Choices -> options metricSelectField (#28754)
  • ref(select): Choices -> options metricWidget (#28753)
  • feat(comparison_alerts): Add comparison_delta to metric alerts api. (WOR-1219) (#28707)
  • fix(orgstats): remove client discards from timeseries (#28763)
  • feat(alert-rules): Add rule settings modal to alert-rule-actions (#28548)
  • ref(ui): Adjust idleTimeout back to 5000 (#28768)
  • fix(ui): Adjust platform lists for mobile (#28766)
  • fix(discover): Treat spans breakdowns as duration in filter (#28141)
  • feat(ui): Storybook – more global components & content for typography page (#28680)
  • fix(discover): Escape backslash when matching wildcards (#28372)
  • feat(chart-unfurl): Prompt user to link Slack identity (#28630)
  • ref(api): Initial attempt at api access logging (#28741)
  • feat(discover): Turn tags into external links if they're urls (#28765)
  • feat(plugins): Upgradable plugins to SentryApps don't have configurations (#28744)
  • feat(workflow): Team misery table (#28758)
  • feat(post-process-forwarder) Create batch worker (#28666)
  • fix(api) Don't 500 on invalid broadcast id values (#28760)
  • feat(discover): Rename series that match the other series (#28703)
  • fix(discover): Handle existing queries correctly for other (#28742)
  • feat(workflow): Restyle team insights page with cards (#28749)
  • build(sdk): Update to Python SDK 1.4.1 and enable Client Reports (#28759)
  • feat(ui): Add correct filters to crash rate alerts (#28720)
  • feat(ui): Add correct intervals to crash rate alerts (#28717)
  • ref(releasehealth): Implement get_release_adoption with metrics [INGEST-249] (#28725)
  • fix(semver): Populate semver cols when get_or_create is called (#28722)
  • ref(js): Remove usage of organization.projects from SidebarOrgSummary (#28705)
  • ref(js): Remove organization.projects from MissingProjectMembership (#28750)
  • ref(notifications): Clean up Team Notifications for Issue Owners (#28624)
  • test(js): Remove organization.projects from projectSelector.spec (#28748)
  • ref(js): Add missing type to EventWaitingIndicator (#28743)
  • ref(kafka): Make batching_kafka_consumer work with existing consumer (#28677)
  • py38: import conversions to collections.abc where applicable (#28432)
  • py38: cannot set_result more than once (#28700)
  • ref(js): Remove organization.projects usage in GroupDetails (#28735)
  • test: stop relying on slash to replace since % is no longer escaped to \% in python 3.7+ (#28698)
  • ref(js): Remove organization.projects usage from IntegrationCodeMappings (#28708)
  • fix: killswitches (#28739)
  • feat(workflow): Team insights crash free table (#28600)
  • ref(select): Choices -> options RuleNode (#28712)
  • ref(select): Choices -> options IssueRuleEditor (#28710)
  • fixing uncaught exception when project is misisng (#28690)
  • fix(ui): Show adoption stats on releases list (#28715)
  • ref(js): Remove organization.project usage from MonitorForm (#28706)
  • fix(icon): replaced Clubhouse logo (#28612)
  • fix(ui) Stack sidebar panels on top of global-selection (#28728)
  • build(sdk): Lock Python SDK to 1.3.0 (#28727)
  • build(sdk): Update to Python SDK 1.14.0 and enable Client Reports (#28671)
  • fix(deletions) Fix servicehooks blocking project deletion (#28697)
  • fix: Move captured variable before closure (#28627)
  • feat(ui): Rename project details search placeholder (#28719)
  • fix(intergace-breadcrumbs): Fix data overlap (#28718)
  • fix(interface-crumbs): Fix grid column size on filter (#28687)
  • feat(ui): Crash rate alert creation - part 1 (#28673)
  • ref(js): Refactor OrganizationGeneralSettings (#28704)
  • ref(js): Remove usage of organization.projects from ReleasesList (#28709)
  • Fix: recursively match nested folders rule for Flutter grouping (#28669)
  • ref(ui): Rename RuleConditionsFormForWizard and change legacy choices to options (#28662)
  • ref(select): Choices -> options SentryAppExternalInstallation (#28619)
  • ref(select): Choices -> options adminQueue (#28660)
  • feat(codeowners): CodeOwners header CTA hook (#28602)
  • fix(plugin): Clubhouse plugin upgrades to Shortcut (#28701)
  • feat(deploy): Use full commit SHA for Sentry releases (#28688)
  • py38: replace invalid assertRaises kwargs with simpler assertRaisesMessage (#28696)
  • feat(growth): Sending analytics for admin requests (#28676)
  • ref(js): Remove teams list from Organization type (#28692)
  • meta: Add core-ui as owners of all components (#28682)
  • fix(notifications): Do not truncate version string (#28695)
  • fix(js): Make confirm prop of SelectField less complex (#28681)
  • fix(jira): More explicitly excise itemKey in removeRow (#28664)
  • fix(slack): Catch bad or expired tokens (#28689)
  • fix(semver): Fix bug when sorting by unique users on the release page. (#28663)
  • meta: Add prettierignore to stop package.json fights (#28685)
  • style(js): Fix more "inline" style code-block comments (#28684)
  • ref(js): Make ParentLabel a functional component (#28683)
  • ref(ui): Move dashboards nav next to discover (#28678)
  • feat(comparison_alerts): Add comparison_delta field to AlertRule. (WOR-1218) (#28665)
  • ref(js): Cleanup notification/utils.tsx (#28679)
  • ref(js): Remove unused constant (#28640)
  • feat(discover): multi y axis checkbox dropdown (#28509)
  • ref(sdk) Add ThreadingIntegration to sentry_sdk (#28632)
  • ref(ui) Convert another batch of components to FCs (#28658)
  • ref(interface-breadcrumbs): Apply feedback & fix minor issue (#28674)
  • feat(suspect-spans): Add empty spans tab (#28315)
  • allow orgs to modify/delete existing sso regardless of feature flag (#28648)
  • ref(interface-breadcrumbs): Make it responsive - INGEST-306 (#28646)
  • build(sdk): Update to JS SDK 6.13.0 (#28670)
  • test(metrics): Write all session metrics in test [INGEST-386] (#28667)
  • ref(appconnect): remove feature flag (NATIVE-241) (#28588)
  • ref(metrics): Release health service INGEST-376 (#28598)
  • feat(symbolicator): Check manual low priority queue kill switch when pre-processing events (#28586)
  • feat(discover): Allow other to be toggled in discover (#28351)
  • fix(ui): Resolved rule status (#28625)
  • fix(discover): Negate conditions correctly for other (#28642)
  • feat(comparison_alerts): Modify BaseEventFrequencyCondition to be able to perform comparison alerts (#28644)
  • fix(trends): Removed feature check that was breaking ops on trends (#28657)
  • ref(snql) Remove legacy API code (#28631)
  • fix(symbolicator): Fix unit tests that were failing due to a missing decorator (#28645)
  • chore(performance): Delete is-key-transaction endpoint (#28656)
  • chore(api) Reduce spammy queries in ProjectSerializer (#28641)
  • feat(snql): Support offsets in event builder (#28635)
  • chore(flag): Remove last references to threshold flags (#28650)
  • fix(dashboards): Add y-axis selections to new search filter (#28652)
  • feat: Use semantic versioning for Sentry releases (#28638)
  • chore(integrations): More diagnostic logging for inconsistent sentry apps (#28578)
  • fix(grouping): Hide tree labels for non-mobile/native platforms [INGEST-337] (#28591)
  • feat(ui): Add new session category to the alert wizard (#28590)
  • fix(releases): Create dist in db if necessary [INGEST-240] (#28647)
  • feat(store): Projects util now updates render-props projects when store emits updates (#28610)
  • ref(teams): Update teamSelect to use useTeams hook (#28615)
  • feat(alert-rule): Created an alert rule mediator (#28639)
  • ref(select): Choices -> options AppStoreConnect (#28616)
  • ref(deletion) Consolidate group deletion and improve logging (#28475)
  • fix(deletions) Handle organizations with orphaned commits (#28636)
  • chore: upgrade grpcio (#28623)
  • audit log related stuff for project quotas (#28620)
  • ref(ui): Add performance event view hook (#28572)
  • fix(semver): Fix autocomplete tag functionality to use string prefixes rather than semver cols (#28622)
  • feat(growth): Add default business for all experiment (#28633)
  • feat(chart-unfurl): Add multi y-axis for chart unfurl (#28604)
  • chore(performance): Remove legacy key transactions endpoint (#28383)
  • feat: Add option for low priority metrics submission rate [NATIVE-185] (#28629)
  • feat(symbolication): Add symbolication status to project details (NATIVE-209) (#28593)
  • fix: Type error (#28628)
  • ref(interface-breadcrumb): Convert main file to func & cleanups (#28594)
  • feat: Add symbolicate_event_low_priority queue and task [NATIVE-184] (#28561)
  • build(sdk): Update to JS SDK 6.13.0-beta.3 (#28626)
  • feat(notification settings): Read team settings issueowners (#28617)
  • ref(select): Change choices to options in http custom repositories modal (#28557)
  • fix(deletions) Fix more stuck deletion (#28599)
  • style(js): Correct comment on useTeams (#28609)
  • fix(feature-flag): Lookup notification-slack-automatic less often (#28601)
  • feat(team-selector): Implement useTeams hook for searching (#28547)
  • fix(snql) Forgot queries are immutable (#28608)
  • ref(ui) Improve docs for Form component (#28605)
  • chore(cdc_search): Make sample_rate configurable in callback_timing function (#28583)
  • build(sdk): Update to JS SDK 6.13.0-beta.2 (#28603)
  • fix(notification platform): Remove hardcoded email provider (#28577)
  • feat(spans): Display missing instrumentation docs for react-native (#28537)
  • fix(ui): Dont show a dash when alert activity date is missing (#28584)
  • meta: Bump new development version (6f11235)

Don't miss a new sentry release

NewReleases is sending notifications on new releases.