profile
viewpoint
Armin Ronacher mitsuhiko Sentry Austria http://lucumr.pocoo.org/ Software developer and Open Source nut. Creator of the Flask framework. Engineering at @getsentry. Other things of interest: @pallets and @rust-lang

getlogbook/logbook 1393

A cool logging replacement for Python.

mitsuhiko/better-panic 299

A python inspired panic handler for rust

austrianredcross/stopp-corona-android 269

Android Source Code

austrianredcross/stopp-corona-ios 161

iOS Source Code

getsentry/rust-sourcemap 129

A library for rust that implements basic sourcemap handling

lektor/lektor-archive 125

A flat file content management system. Archived repository.

ericflo/hurricane 97

Hurricane is a project for easily creating Comet web applications.

mitsuhiko/bf3-aggregator 84

Sourcecode for the bf3 developer news aggregator.

mitsuhiko/badideas 61

Examples from my europython talk

fijal/quill 32

An attempt to create a better language

push eventgetsentry/sentry

k-fish

commit sha 3f9823b6f89c4420b0547ac190d04031cd0b428a

feat(perf): Add vitals overview and details (#22202) * feat(perf): Add vitals overview and details This adds cards to the landing page to show a quick overview of your vitals pass rate, and clicking on them brings you to a detail page for that vital.

view details

push time in 15 minutes

delete branch getsentry/sentry

delete branch : feat/perf-vital-overview-and-details

delete time in 15 minutes

PR merged getsentry/sentry

feat(perf): Add vitals overview and details

Summary

This adds cards to the landing page to show a quick overview of your vitals pass rate, and clicking on them brings you to a new detail page for that vital.

Todo

  • Additional tests
+1884 -27

1 comment

18 changed files

k-fish

pr closed time in 15 minutes

push eventgetsentry/sentry

k-fish

commit sha 6f48b60f5c4191fab3de085b5dd1832e58c77a3b

fix(test): Fix trends test timeout (#22337) * fix(test): Fix trends test timeout Occasionally during pre-commit the trends test will timeout, going to fix tick/update for these tests to see if it happens, will open up another ticket later if it is still not fixed

view details

push time in 17 minutes

delete branch getsentry/sentry

delete branch : fix/trends-test-timeout

delete time in 17 minutes

PR merged getsentry/sentry

fix(test): Fix trends test timeout

Summary

Occasionally during pre-commit the trends test will timeout, going to fix tick/update for these tests to see if it happens, will open up another ticket later if it is still not fixed

+10 -0

0 comment

1 changed file

k-fish

pr closed time in 17 minutes

pull request commentgetsentry/sentry

feat(ui): Tidy up design of first/last seen

@robinrendle Design-wise, it's not very intuitive that you can get a tooltip for the absolute date. I also suspect you'll get some complaints about not being able to see both the relative and absolute times for these. I love the "releases not configured" section though, the repeated strings that we previously had did not look great

@billyvg 👍 We’ve started using this pattern throughout the app, like in Releases and I’d prefer to stay consistent everywhere so we teach folks that this is how to see the absolute date. Plus that right hand side of the issue details page is extremely loud and I want to make it easier for users to focus and scan the page.

mikellykels

comment created time in 19 minutes

push eventgetsentry/sentry

Priscila Oliveira

commit sha 605e478c4ca281740822f8414307753d58e018b2

applied cr feedback

view details

push time in 30 minutes

Pull request review commentgetsentry/sentry

feat(plugins): adds tag for JiraUIWidgetView result

 def get_response(self, template, context=None): class JiraUIWidgetView(BaseJiraWidgetView):     @transaction_start("JiraUIWidgetView.get")     def get(self, request, *args, **kwargs):

I would recommend ignoring white space changes to see the diff

scefali

comment created time in 35 minutes

PR opened getsentry/sentry

feat(plugins): adds tag for JiraUIWidgetView result

This is a follow up to https://github.com/getsentry/sentry/pull/22336. Since we are seeing a lot of activity with JiraUIWidgetView, we want to know if the requests are succeeding or not.

+33 -28

0 comment

1 changed file

pr created time in 36 minutes

create barnchgetsentry/sentry

branch : feat/track-JiraUIWidgetView-response

created branch time in 38 minutes

Pull request review commentgetsentry/sentry

fix(metric_alerts): Implement subscription check and repair task.

 def _delete_from_snuba(dataset, subscription_id):     )     if response.status != 202:         raise SnubaError("HTTP %s response from Snuba!" % response.status)+++@instrumented_task(+    name="sentry.snuba.tasks.subscription_checker", queue="subscriptions",+)+def subscription_checker(**kwargs):

We fire off a separate task to create the subscription in snuba. I'm not totally sure why they fail, but I suspect it's likely due to a failure on the call to snuba, maybe a network burp or something along those lines. This happens pretty rarely in general.

wedamija

comment created time in 39 minutes

push eventgetsentry/sentry

Billy Vong

commit sha a0078e3eb5b8108ef133cbe25738319e22a44ba9

debug

view details

push time in 40 minutes

push eventgetsentry/sentry

Stephen Cefali

commit sha 8083a1637d24d91e050f5d1afd14b54190846e9d

remvoe work item type filter for results (#22331)

view details

push time in 44 minutes

delete branch getsentry/sentry

delete branch : fix/link-work-item/API-1467

delete time in 44 minutes

PR merged getsentry/sentry

fix(vsts): remove work item type filter for results

This PR fixes a bug where you couldn't link a work item if it wasn't of a particular type. Because the work item types can be different for different Azure DevOps projects, the easiest solution is to remove the filter about the work item type. Now, we will show the list of all work items that match the search query regardless of the type.

+1 -5

0 comment

1 changed file

scefali

pr closed time in 44 minutes

pull request commentgetsentry/sentry

feat(workflow): Present suggested assignees to user in issue stream

size-limit report

Path Size
public/app.js 278.25 KB (+0.32% 🔺)
public/vendor.js 594.45 KB (-0.01% 🔽)
public/sentry.css 33.49 KB (0%)
davidenwang

comment created time in an hour

PR opened getsentry/sentry

feat(workflow): Present suggested assignees to user in issue stream

Utilizes the suggested avatar stack from https://github.com/getsentry/sentry/pull/22291 to present the user with suggested assignees. Also breaks up the assigneeselector options into sections (suggested, teams, people).

These suggestions are retrieved using the ?expand=owners query parameter

image

+146 -14

0 comment

3 changed files

pr created time in an hour

Pull request review commentgetsentry/sentry

chore(ts): Convert settingsBreadcrumb/teamCrumb

+import React from 'react';+import {browserHistory, RouteComponentProps} from 'react-router';++import IdBadge from 'app/components/idBadge';+import {Team} from 'app/types';+import recreateRoute from 'app/utils/recreateRoute';+import withTeams from 'app/utils/withTeams';+import BreadcrumbDropdown from 'app/views/settings/components/settingsBreadcrumb/breadcrumbDropdown';+import MenuItem from 'app/views/settings/components/settingsBreadcrumb/menuItem';++import {RouteWithName} from './types';

Blocked by #22357 ?

EvanPurkhiser

comment created time in an hour

push eventgetsentry/sentry

k-fish

commit sha 52e87cd85e99680a307b9a1ef0503ff6034bae55

Add tick and update before and after

view details

push time in an hour

create barnchgetsentry/sentry

branch : feat/suggested_owner_assignee

created branch time in an hour

Pull request review commentgetsentry/sentry

fix(test): Fix trends test timeout

 describe('Performance > Trends', function () {     );      for (const confidenceLevel of CONFIDENCE_LEVELS) {-      selectConfidenceLevel(wrapper, confidenceLevel.label);       await tick();+      wrapper.update();++      selectConfidenceLevel(wrapper, confidenceLevel.label);

Ditto

k-fish

comment created time in an hour

Pull request review commentgetsentry/sentry

fix(test): Fix trends test timeout

 describe('Performance > Trends', function () {     );      for (const trendFunction of TRENDS_FUNCTIONS) {-      selectTrendFunction(wrapper, trendFunction.field);       await tick();+      wrapper.update();++      selectTrendFunction(wrapper, trendFunction.field);

Actually I should do both to be safe, I had the one above for first run...

k-fish

comment created time in an hour

push eventgetsentry/sentry

k-fish

commit sha 16ab6cb58ee9792a28322bad9446438056eb27da

Fix another instance of default vital

view details

push time in an hour

pull request commentpallets/jinja

fix AttributeError in property being swallowed

This, and similar fixes, all add an amount of overhead for every attribute access that ends up using getitem instead. That can be very common when rendering database rows, for example. Now if x.y fails, it requires a call to type, getattr, and isinstance every time. Individually this might not be much overhead, but if it happens for ten attributes on 1000 rows, it starts to matter. I'm not sure the overhead is worth it. In general, you should not be writing properties that can raise AttributeError.

laundmo

comment created time in an hour

pull request commentgetsentry/sentry

fix(releases): Add missing performance-view feature flags

Can we also enable these features by default and gate them over at getsentry side so this is available on dev and self-hosted by default?

The performance-view feature flag are already handled appropriately in dev and I believe in self-hosted. The release-performance-views feature flag will be removed once the feature is made available so that should not be a problem.

Zylphrex

comment created time in an hour

Pull request review commentgetsentry/sentry

chore(ts): Convert settingsBreadcrumb/index

+import {RouteProps} from 'react-router';++// TODO(ts): The `name` attribute doesn't appear on any of the react router route types

It comes from our routes.jsx, no? Is name an actual prop there or will we need to fix those when we convert that file to ts?

EvanPurkhiser

comment created time in an hour

push eventgetsentry/sentry

Tony

commit sha b37c05ed461ab9d3e3cfae12b459fcfc2a2bc97d

ref(releases): Clean up transactions list to be more generic (#22310) This change cleans up the transactions list component so that it can be reused in transaction summary. It is still missing the ability to add a compare to baseline column, but is otherwise functionally equivalent now.

view details

k-fish

commit sha 3803c7e56ed4d3d9725ce8d1db6bd3ed5fdaf319

ref(ts): Convert eventsTable components to typescript (#22162) Convert eventsTable and eventsTableRow to typescript

view details

Marcos Gaeta

commit sha e03682179b7fc1dcd57b62bc595143bbe84e4495

fix(integrations): Fix requests assertions (#22251) Co-authored-by: Colleen O'Rourke <colleen@sentry.io>

view details

k-fish

commit sha 0da3509f49a4055fd2533c6a5e7aff818abb966b

ref(ts): Convert u2f components to typescript (#22157) * ref(ts): Convert u2f components to typescript This converts the remaining u2f components to typescript

view details

Burak Yigit Kaya

commit sha 8706bbafc5b3339ead42d39a1bd3eccb3bf5dbc1

test: Align test init with normal app init (#22322) Instead of doing custom and repeated initialization code that creates unexpected divergence w/ normal app init, just use the regular initializer. Needed for #22283.

view details

Marcos Gaeta

commit sha 44cfaeb55de747465ccf0f3705f8bd7b83a706b6

ref(integrations): DRY Integration EventActions (#21646)

view details

Burak Yigit Kaya

commit sha f0f477759b14b2e391975e7778c7c430e6b30d4a

ref(settings): Move single-org special case for github to init (#22292)

view details

k-fish

commit sha 46f14ab3435c0f82a1eba339d9c8e96d8867edd1

ref(ts): Convert worldMapChart to typescript (#22148) Convert worldMapChart to typescript

view details

Burak Yigit Kaya

commit sha b6afd4a3353793a9219a006d136d01e14d0e6fff

ref(py3): Add default cache key prefix for PY3 (#22283) Supercedes getsentry/getsentry#4711, depends on #22322. getsentry/getsentry#4711 needs to be reverted after this lands.

view details

Evan Purkhiser

commit sha 118ff501a8a586ee58b7c0da55018f25b2231293

build(js): Bump fork-ts-checker to match getsentry (#22335)

view details

Adam McKerlie

commit sha cf8d66a1cada8bb55403cb367c180a8f23c5082a

Clarify text around errors and transactions during new project creation (#21884) * Clarify text around errors and transactions during new project creation We’ve had customer feedback that they don’t understand the difference between events, errors and transactions. This makes it clearer by being more explicit in the project creation flow. Refs VIS-301

view details

Mark Story

commit sha f10fdf39ff4128227f3b7728b1af4f43bf02b868

feat(dashboards) Add a widget validation endpoint (#22328) We currently don't have a good way to ensure success when a dashboard is saved. If the user makes an error in a widget they don't find out until much later and it is very hard for us to present validation errors for multiple widgets. The frontend could use this new endpoint to get a higher degree of confidence that the widget is valid before the widget is added to the dashboard. It will also enable us to show error messages in the modal window while the user still has it open.

view details

Alberto Leal

commit sha ed04809f5dad84ef51d86df29b83ca088d734aec

ref(dashboards): Be able to create widgets when creating a new dashboard (#22314)

view details

Stephen Cefali

commit sha d0ae46228158f7d3d5434aade2977807753a23a6

adds transactions for jira-ac (#22336)

view details

Stephen Cefali

commit sha 7d36ffa98147b0380dea1a7a203487384ea3d5ac

feat(stacktrace-linking): creates endpoint for parsing repo paths and finding the roots (#22277)

view details

Billy Vong

commit sha 03c8c0b321cec6a634247c15d68e9a312cb28ecb

test(jest): Use `jest-circus` and instrument jest tests (#22237) This changes to use the new [jest test runner: jest-circus](https://github.com/facebook/jest/tree/master/packages/jest-circus) and adds Sentry instrumentation to our test runs. You can view the transactions here: https://sentry.io/organizations/sentry/performance/?project=4857230

view details

Billy Vong

commit sha 998eece3126150923bc5f55fa3bc01178e99ca84

build(ci): git patch --> github review suggestion (#22253) This runs `git diff` in the current repo and applies any git patches as code review comments on github. This allows authors to batch apply any auto lint/formatting suggestions and allow GH workflows to run after applying them. The previous method had the GitHub Actions token commit the changes, which does not allow workflows to trigger. See https://github.com/getsentry/action-git-diff-suggestions for the action

view details

Evan Purkhiser

commit sha 98573e7120aa4806151862407797a6fe44892291

fix(py3): Don't open backup CLI in binary mode (#22341)

view details

Scott Cooper

commit sha c2d2d45000af9586fa8f736fd2cace33353c0ff4

docs: Remove em from dropdown stories (#22339)

view details

Taylan Gocmen

commit sha d34fb730691ecdae0a5e6944a4ac8fd25b26bc9e

fix(ui): Tooltip hover hide delay issues in issue stream (#22324)

view details

push time in an hour

Pull request review commentgetsentry/sentry

fix(ui): Fix MissingProjectMembership Error

 import React from 'react'; import styled from '@emotion/styled'; -import {addErrorMessage} from 'app/actionCreators/indicator';+import {addErrorMessage, addSuccessMessage} from 'app/actionCreators/indicator'; import {joinTeam} from 'app/actionCreators/teams'; import {Client} from 'app/api';-import Well from 'app/components/well';+import Button from 'app/components/button';+import {Panel} from 'app/components/panels';+import Tooltip from 'app/components/tooltip'; import {IconFlag} from 'app/icons'; import {t} from 'app/locale';+import TeamStore from 'app/stores/teamStore'; import space from 'app/styles/space';-import {Organization, Project, Team} from 'app/types';+import {Organization, Project} from 'app/types'; import withApi from 'app/utils/withApi'; import EmptyMessage from 'app/views/settings/components/emptyMessage';+import Form from 'app/views/settings/components/forms/form';+import SelectField from 'app/views/settings/components/forms/selectField';  type Props = {   api: Client;   organization: Organization;   projectId?: string;+  groupId: string;

@mikellykels Yeah, I would make the error message more generic since we use it in other places. Also, just showing the issue id is not helpful for the user anyway, they won't be able to do anything with it.

mikellykels

comment created time in an hour

Pull request review commentgetsentry/sentry

feat(workflow): Store GroupOwner based on suspect commits

+from __future__ import absolute_import, print_function++import logging++from datetime import timedelta++from django.core.cache import cache+from django.utils import timezone++from sentry.eventstore.models import Event+from sentry.eventstore.processing import event_processing_store+from sentry.models import Project, Release+from sentry.models.groupowner import GroupOwner, GroupOwnerType+from sentry.tasks.base import instrumented_task+from sentry.utils.committers import get_serialized_event_file_committers++PREFERRED_GROUP_OWNERS = 3+PREFERRED_GROUP_OWNER_AGE = timedelta(days=1)++logger = logging.getLogger("tasks.groupowner")+++@instrumented_task(+    name="sentry.tasks.process_suspect_commits", default_retry_delay=5, max_retries=5+)+def process_suspect_commits(group_id, cache_key, **kwargs):

Added some metrics, sentry.tasks.process_suspect_commits.start and sentry.tasks.process_suspect_commits.skipped

iProgramStuff

comment created time in an hour

more