Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account


shiny opened this issue Jun 5, 2019 · 4 comments


shiny opened this issue Jun 5, 2019 · 4 comments


Copy link

@shiny shiny commented Jun 5, 2019


I've noticed that was block by the following code so I can't Invite that mail address.

# block domains which are generally used by spammers -- keep this configurable in case an onpremise
# install wants to allow it
INVALID_EMAIL_ADDRESS_PATTERN = re.compile(r'\@qq\.com$', re.I)

Related to #10152

But it's the most popular email service in China for personal usage.
Is it possible to disable this settings?


This comment has been minimized.

Copy link

@markstory markstory commented Jun 5, 2019

If you're running sentry on-premise you can modify the code and restart the web process.

markstory added a commit that referenced this issue Jun 5, 2019
Call out that you have to be a maintainer/owner in GitLab in order to
finish the integration. This is mentioned in the docs, but having it
here will help folks who didn't know about the docs.

Fixes #13541

This comment has been minimized.

Copy link

@shiny shiny commented Jun 5, 2019

If you're running sentry on-premise you can modify the code and restart the web process.

Thanks, I'm running sentry in the Docker container, modification can solves my problem.

Another point that the strategy is unfair for hundred million qq mail users, there are large amount developers, not all of them are spammer, please consider.


This comment has been minimized.

Copy link

@markstory markstory commented Jun 5, 2019

While there are lots of legitimate users using, we've received significant volumes of abusive traffic in the past from those addresses as well, which is what resulted in the domain ban in the first place.

@markstory markstory closed this in c387279 Jun 7, 2019
Kiku-Reise added a commit to Kiku-Reise/sentry that referenced this issue Jun 18, 2019
fix (#1)
* ref: Remove old interface validation code (getsentry#13332)

cont getsentry#12375

* ref(events-v2) Remove group prop from many interface components (getsentry#13422)

Many of the event interface ui components had `group` as a required prop
but it isn't used other than to pass onto EventDataSection which also
doesn't use the prop. By removing all these redundant props I can fix
numerous prop type warnings that are blocking the modal for events-v2.

Refs SEN-697

* ref: Remove context normalization (getsentry#13420)

Follow-up to getsentry#13419 and related to getsentry#13332

* fix: Normalize minidumps after processing (getsentry#13358)

I want to try this out because processing plugins might create too old timestamps or too big data.

This will possibly enable us to disable trimming in renormalization again.

* feat(ui): Change `<DropdownMenu>` to expose open/close actions in render func (getsentry#13443)

This allows components that use `<DropdownMenu>` to be able to control the menu visibility

* feat(ui): Refresh Incidents activities and chart when status changes [SEN-683] (getsentry#13430)

Also adds some render optimizations when changing status

Fixes SEN-683

* feat(ui): Fix Incidents list status filters [SEN-687] (getsentry#13433)

This implements the status filters on the Incidents list. Change the order so that "All" is default and added "Closed"

Fixes SEN-687

* fix(ui): Fix date for create incident activity (getsentry#13441)

The date that the chart was using for the red "incident started" date, was the activity date instead of the actual incident started date.

This also fixes the activity bubble with (chart was not re-rendering when resizing window).

* feat(api): Add author when creating incident activity [SEN-700] (getsentry#13440)

When using the endpoint to create an incident, we should attach an author to the created activity item.

Fixes SEN-700

* ref(app-platform): Use event_id (getsentry#13437)

* feat(ui): Add message in Incidents list for creating an incident [SEN-694] (getsentry#13436)

This adds a notice (that links to the Issues stream) for creating a new incident. Early user testing indicated that people would expect UI in the incidents view to create a new Incident.

Fixes SEN-694

* chore: Make exports and imports match (getsentry#13449)

Make the exports and default imports match for EventDataSection.

Refs SEN-697

* chore(SDK's): Update various SDK versions/urls (getsentry#13225)

... so that the UI will correctly report when the SDK used to capture an event is out of date.

This is a band-aid on the real problem, which is that ideally these would get updated automatically. Working on that in a separate PR. (Will update this commit's PR with a link to it once it's up.)

* fix(api): Fix task error on incident creation

We try to send a notification on incident creation, but we don't need to because no one will be
subscribed to receive it. At the moment it errors due to us not expecting it, just no-op in this

* fix(api): Fix bug when creating incident comments while logged in as another user.


* fix(integrations) Fix missing identity link on re-install (getsentry#13450)

In a previous change I was trying to be careful and avoid
overwriting `default_auth_id` when it wasn't required. I missed
a scenario where a user:

1. Builds an integration.
2. Disconnects the integration, but keeps their Identity record
    & Integration records.
3. Reconnects the integration.

In this flow the new OrganizationIntegration would lack an
`default_auth_id` attribute as the Identity was not new.

Refs SEN-703
Fixes SENTRY-8Y9

* misc(metrics): First pass at un-sampled single metric paths. (getsentry#13434)

* misc(metrics): First pass at un-sampled single metric paths.

* Add integrations metrics production.

* feat(onboarding): Add warning for when docs are missing examples (getsentry#13445)

* dx(notion): Upgrade from `notion` to `volta` (getsentry#13452)

`notion` recently changed their name to `volta` (as to ease confusion with ``). volta yells at you if you have the old `toolchain` key defined, so let us upgrade.

* test(events-v2): Fix dynamic values in Percy (getsentry#13463)

* chore: Vendor JSONField to fix runtime warnings and reduce future upgrade pain (getsentry#13397)

The packaged version of this library contains metaclass warnings in
Django1.8. We could upgrade but newer versions of the library are
unwilling to serialize datetimes and decimal objects. Vendoring the
library will allow us to maintain compatibility for our use cases and
upgrade django at the same time.

We can't yet remove the jsonfield dependency as getsentry is using it.
Capture the intended behavior from the point we forked off.

Refs SEN-686

* fix(events-v2): Fix search filter (getsentry#13454)

Prevent double translation of tag keys in search queries

* chore(south) Update south state to use new jsonfield (getsentry#13466)

Update all the south snapshots to reference the new JSONField
implementation. This makes it possible to remove jsonfield library in
the future and removes the effected tables from being caught in the next
south diff.

Refs SEN-686

* feat(events-v2) Add rough sketch of event modal (getsentry#13415)

This is a rough sketch of how the single event view could work. There
are numerous prop-type warnings that I plan on addressing before merging

The styling is not perfect either as I wasn't sure on how the scrolling
should be handled as the modal could be taller or shorter than the
viewport and I will revisit that later.

Extract title/message/location generation logic into util functions
making it easier to reuse and less coupled to the specific styling.

Refs SEN-648

* chore: New SDK versions (getsentry#13465)

* ref(onboarding): Improve platform picker hover color (getsentry#13468)

Fixes an issue where the hover background was the same as the onboarding
background, making it hard to see what you were hovering over.

* feat(app-platform): integration feature models, serializer, endpoints (getsentry#13377)

* integration feature models, serializer, endpoints

* ref(onboarding): Improve alerts from wizard docs (getsentry#13469)

* ref(events-v2) Use an object target instead building URLs (getsentry#13471)

Use `Link` feature to generate a URL from `pathname` and `query` instead
of cooking up string URLs.

Refs SEN-648

* ref(ui): Avoid full-page load indicator after project creation (getsentry#12842)

* feat(ui): Disable "create new incident" when bulk selecting issues [SEN-689] (getsentry#13456)

This will disable the "Create new incident" button on issues stream when you bulk select issues. It does not really make sense to have an incident consisting of this many issues.

Fixes SEN-689

* feat(event-search): event-tags/heatmap api (getsentry#13350)

* saving place

* got events-tag working for a single key.

* removed changes to unrelated tags tests.

* start and end dates

* revised to work for multiple keys.

* Added changes that mark suggested and found a bug.

* Added **kwargs to base tagstore method.

* fixed typo."

* ref: Remove usage of getOrganizationState function (getsentry#13474)

We were using this function to check access/features in a very small
number of places, removed to improve consistency with the rest of the

* fix(onboarding): Update routes hook name (getsentry#13476)

* feat(releases): Add an endpoint for artifact bundles (getsentry#13448)

Creates an assemble-like endpoint for uploading artifact bundles

* fix(native): Pass scope correctly to DIF assemble (getsentry#13480)

* fix(native): Assemble files with duplicate chunks correctly (getsentry#13481)

This fixes an issue where files are assembled incorrectly when they contain duplicate chunks. Previously, only the first occurrence of a duplicate chunks was assembled.

* ref(events-v2) Split up the EventDetails view better  (getsentry#13473)

Split the logic up so that there is only one stateful component and
several controlled components that focus on presentation only.

Refs SEN-648

* feat(ui): Remove custom font size in `<SubscribeButton>` (getsentry#13460)

Add "size" prop that passes down to `<Button>`

* fix(metrics): Fix recording wrong http status on API successes (getsentry#13472)

This was mistakenly trying to access the `status` key from the response data instead of the xhr response object.

* fix(ui): Fix `<DatePickerField>` closing on click (getsentry#13467)

The calendar component was closing on any click, this would cause issues when trying to change months. Instead it should stay open until a day is selected.

* feat(search): Added error handling to issue search. (getsentry#13457)

* Added error handling to issue search.

* Added Enclose any text in double quotes.

* found unchanged test case

* feat(ui): Remove identifier from Incident details header [SEN-693] (getsentry#13439)

This changes the identifier used in the header to use the date when the incident first started.

Fixes SEN-693

* feat(api): Implement unsubscribe links for incident notifications (SEN-656)

This process is basically the same as for unsubscribing from group notifications. Abstracted the
group code to handle both cases.

* chore(sentry10): Move all users to Sentry 10 (getsentry#13022)

This PR forces all users onto Sentry 10 and turns off support for the
deprecated single project based views. It will be merged and take effect
on May 17th.

It removes the "disable new visibility features" option for hosted

From that point on, open source users who are not running the Snuba service
should use the releases/9.1.x branch until the next major version of Sentry
version is released.

Needs to be deployed together with

* feat(api): Make sure user still has access to an incident when sending notifications (SEN-656)

Ensure that the user has access to at least one project on the incident before sending. If not,
unsubscribe them and don't send.

* ref(ui): Smaller tab size in highlight blocks (getsentry#13486)

* feat(settings): Add setting for builtin DIF sources (getsentry#13493)

Moves builtin DIF sources for native symbolication to 
settings so that they can be overridden.

* ref(minidump): Remove setting to cache minidump uploads (getsentry#13491)

* feat(ui): Load builtin symbol sources from API (getsentry#13495)

Instead of hard-coding builtin symbol sources in the UI, load them from an API endpoint. The endpoint only exposes information relevant to the UI.

* feat(minidump): Support raw upload of minidump files (getsentry#13498)

Allows to upload minidumps as raw request body in addition to multipart formdata requests.

* feat(events-v2) Make tag values interactive in event modal (getsentry#13470)

Upon clicking tag values should update dismiss the modal and update the
current search query with the key/value.

Refs SEN-648

* fix(owners) Fix failure when ownership rules have bad owners (getsentry#13482)

Ownership rules have no relational links to actual users in an
organization. This means they can reference teams/users that are no
longer are assigned to the project or no longer exist in the


* fix(store) Don't explode on garbage ignore patterns (getsentry#13483)

Users make mistakes on their ignore patterns, we shouldn't fail to store
events just because they are bad at filter patterns.

Fixes SENTRY-9H7

* feat(native): Enable ios and microsoft symbols (getsentry#13501)

*  ref(native): Remove the legacy stacktrace processor (getsentry#13500)

Removes the native stacktrace processor as it is no longer needed. Symbolication is now completely performed by symbolicator.

This drops all `raw_stacktrace`s from minidumps since this concept does not make sense in this case.

* feat(events-v2): Add rough version of Error and CSP tables (getsentry#13453)

Ref: SEN-665

* ref: Remove mixin and createReactClass usage in StacktraceContent (getsentry#13475)

The OrganizationState mixin was being included but wasn't used in any way.

* feat(ui): Disable pin when there is no query (getsentry#13489)

Disable pinning a search and creating a new org search when there is no query


* fix(ui): Change button border on focus to only change border color (getsentry#13484)

This was forcing the button borders to be 1px and solid when focused/active, we should only apply the color

* fix(ui): Fix `handleXhrErrorResponse` when `response.detail` does not exist (getsentry#13485)


* ref(ui): Refactor dropdown menus into `<DropdownBubble>` (getsentry#13464)

This is the presentational menu that appears when you click something.

* feat(event-search): Organization Event Json endpoint (getsentry#13459)

* first pass at org event json

* Saving place

* moved the event json class to project because project was included in the url.

* Removed changes to

* fix(api) Update serializer max length to match database (getsentry#13499)

`` is 200 bytes long. We should allow that same
length when specifying refs during release creation or repositories with
long names cannot have releases made.

Refs getsentry#13487

* fix(api): Do not error for missing minidumps (getsentry#13507)

* ref(ui): Remove Project User feedback (getsentry#13503)

This is no longer used since sentry10 is now default

* ref(ui): Remove project saved searches (getsentry#13502)

This was only available for legacy "sentry9" users, which is no longer supported

* ref(getting-started): Fix fetchData retry (getsentry#13512)

* feat(api): Add endpoint to return suspect causes of an incident (SEN-578)

Initial version of this endpoint. Returns a list of suspects in format
{'type': '<type>', 'data': <arbitrary json blob for each type>}

At the moment we only return commits. The blob in `data` is similar to what we return for each
commit on the suspect commits endpoint, but we also embed the author into the commit info:
{'type': 'commit', 'data': <commit_data>, 'author': <author>}

Will be slow for the moment since we just calculate these for each group sequentially. Will follow
up with speed improvements (either caching or making the calculations fast).

* fix(ui): Preserve query string when going to the events page from the # of events link (getsentry#13506)

* Also added query string to the # of distinct affected users

* ref(store): CORS pre-flight cleanup (getsentry#13421)

* fix(native): Use correct URL for Unity symbol server (getsentry#13519)

* ref(issues) Extra group times into a reusable component (getsentry#13488)

I need this exact same logic and presentation in the events-v2 modal.
Having a separate display component will help with that.

Refs SEN-708

* feat(api): Add searching for org projects by slug(s) (getsentry#13513)

This allows the organization projects API to search for projects by slug(s).

* fix(releases): Fix empty state (getsentry#13517)

Fixes a bug where the set up releases landing page was being shown
incorrectly when "All projects" was selected. In this case we now look
through all member projects and check for a non-null latest release
value before displaying the setup CTA.

* feat(events-v2): Do not reload events page on modal open/close (getsentry#13514)

* ref(ui): Remove most sentry10 feature gates (getsentry#13504)

This removes the sentry10 feature gates that controls logic around what URL to link to and feature gates that do not involve cleaning up deprecated components that need to be cleaned up.

* feat(events-v2): Implement tag distribution / heatmaps UI (getsentry#13478)


* ref(app-platform): Add ErrorBoundary for Sentry App Components (getsentry#13511)

* add error boundaries

* feat(events-v2): Update columns to match mockup (getsentry#13515)

Minor fixes to table column names

* feat(events-v2): Pass props to avoid withRouter (getsentry#13525)

According to @billyvg withRouter can lead to double render issues.

* ref(sentry10): Clean up non-Sentry 10 code in app sidebar (getsentry#13526)

* fix(ui) Make the close button and margins more like the mockup (getsentry#13509)

Make the close button and margins more like the mockup

Refs SEN-708

* feat(grouping): Added basic grouping update button (getsentry#13388)

* feat(events-v2) Add linked issue preview on event modal (getsentry#13505)

Display a linked-issue preview panel on event details modal. I've had to
do some refactoring in GroupChart and SeenByList to make them reusable
in this context.

The group details endpoint is better at ensuring that seenBy is always
a list now.

Refs SEN-708

* feat(events-v2): Use 'orderby' instead of 'sort' to match API (getsentry#13531)

* fix(api): Fix unsubscribe link in incident emails

Currently this unsubscribes the creator of the activity from the incident, rather than the email

* fix(ui): Fix tag distribution meter bg color (getsentry#13532)

This component should inherit its background color, rather than be
explicitly set to white.

* ref: Bump sentry-sdk (getsentry#13496)

* fix(jira) Improve logging when jira has problems (getsentry#13521)

Improve logging when jira integrations have trouble getting project or
issue create metadata. My hope is this lets us diagnose what is
happening to a few customers in production.

Refs SEN-714

* chore: Remove sentry10 conditional in python code (getsentry#13523)

Remove conditional logic for the sentry10 feature flag from emails, link
generation and API endpoints.

Refs SEN-708

* feat(events-v2) Add raw JSON event URL (getsentry#13520)

I also fixed the doubly encoded JSON response in the endpoint.

Refs SEN-708

* fix(app-platform): Allow removal of Internal Apps (getsentry#13534)

* fix(events-v2): Revert query element from button to link (getsentry#13537)

This was introduced in getsentry#13515,
however is causing problems with alignment/overflow.

* feat(events-v2): Update results per-page to 50 (getsentry#13535)

Align per page value on events with releases and other resources.
Ref: SEN-721

* feat(ui): Move calculating other category into TagDistributionMeter (getsentry#13530)

We'll use the same logic for events-v2 as well for group details

* meta(propTypes): Relax requirements for badges (getsentry#13522)

Our proptypes for our main models (e.g. Org, Project, Team) require an `id` - Our badges/avatars can render without an `id` and just require a slug at the minimum. Change propTypes to allow a simple object with `slug`

* fix(ui) Fix z-index stacking of modals and assistant cues (getsentry#13544)

Assistant cues should stack *under* modal windows as modal windows
should be focusing the user on the current task. Having an assistant
overlay on top only distracts and confuses people.

* feat(2fa): Expose TOTP secret in the enrollment UI (getsentry#13547)

* fix(saved-searches): line length limits (getsentry#13516)

* line length limits for saved searches

* use a tooltip

* linter

* feat(api): per-endpoint metric tags (getsentry#13374)

This allows endpoints to add tags to the resulting `view.response`
metric that gets recorded in middleware.

The immediate use for this is to tag all Integration Platform endpoints
with a corresponding tag so that we can split them out downstream.

* ref(sentry10): Remove sentry 9 stream components (getsentry#13528)

* fix(API docs): Fix typos in header (getsentry#13558)

Also, specify that the generator file is in sentry (since the doc files themselves live in the docs repo).

* fix(ui): Fix column title to be "Issue" instead of "Event" (getsentry#13546)

Since the table is actually displaying the list of groups/issues.

* feat(events-v2): Respect project and environment filter on events page (getsentry#13562)

* feat(events-v2): Match existing events ordering criteria (getsentry#13545)

Events with the same timestamp are sorted in order of event id

* fix(events-v2): Fix a proptypes warning with DynamicWrapper (getsentry#13557)

* ref: Move pagination styles into component (getsentry#13560)

* ref(ui): Refactor GroupSidebar to not rely on old stores (getsentry#13549)

This simplifies `<GroupSidebar>` and `<GroupReleaseStats>` a bit so that they take an environments prop (instead of state and a combination of different stores). This also removes the use of mixins.

* feat(ui): Add "Projects Affected" section in Incidents (getsentry#13401)

Introduces a `<Projects>` utility component that looks for project summaries from different sources: ProjectsStore (which uses `organization.projects`) and the organization's projects API.

Use this utility component to then list projects affected inside of an Incident.

* feat(event-search): Add projects in heatmaps. (getsentry#13490)

* First draft of project in heatmaps.

* made suggested changes.

* ref(stream): Remove unused styles and classes from project stream (getsentry#13559)

We can remove a number of styles from the old project based stream now.

* feat(events-v2): Add the events-v2 feature to the Snuba feature list (getsentry#13571)

This feature is dependent on the Snuba service.

* ref(sentry10): Remove sentry9 group details code (getsentry#13533)

* fix(make): Add additional setup steps to `make bootstrap` (getsentry#13518)

* ref(sentry10): Remove Sentry 9 releases code (getsentry#13527)

* build(enzyme): Upgrade to enzyme@3.10.0 (getsentry#13556)

Lots of changes, but one that sticks out is that you can call setState on "not the root". See changelog here:

* unique constraint (getsentry#13573)

* feat(upgrade): Upgrade to react@16.7.0 (getsentry#13555)

This upgrades react to 16.7.0. This is the latest version before hooks. It looks like most changes in 16.8.x are related to hooks and since we currently do not have any plans surround hooks, lets just upgrade to 16.7 until we do.

Summary of changes:
- `React.memo()`
- `React.lazy()` for code splitting


* fix(ui): Update GroupReleaseStats.propTypes.environments to be required (getsentry#13570)

* ref(sentry10): Remove old assigned/bookmarked/viewed views (getsentry#13576)

These were part of Sentry 9 but are no longer used.

* ref: Remove unused ProjectState mixin (getsentry#13579)

* ref(sentry10): Remove old project dashboard (aka Overview tab) (getsentry#13577)

Not used since Sentry 9

* fix(event-search): Ensure that project and issue are collections (getsentry#13574)

`filter_keys` should always be a collection

* fix(sentry10): Fix dashboard redirect (getsentry#13584)

* feat(events-v2) Fix 500 when group parameter is not an integer (getsentry#13567)

Don't respond with a 500 error that occurred when the `group` query
parameter was empty or a non-integer value.

Refs SEN-716

* fix(gitlab) Be clearer in requirements for GitLab (getsentry#13543)

Call out that you have to be a maintainer/owner in GitLab in order to
finish the integration. This is mentioned in the docs, but having it
here will help folks who didn't know about the docs.

Fixes getsentry#13541

* ref(sentry10): Remove util functions related to project environments (getsentry#13580)

* feat(api): Add type column to Incidents

The current status column is overloaded and keeps track of how the Incident was created as well as
the current open/closed state. Splitting this out into a separate column to avoid confusion, and
issues with reopening issues down the line.

* feat(ui): Add/connect Incident Suspects to API [SEN-579] (getsentry#13575)

This fetches suspects from API and renders in sidebar

Fixes SEN-579

* feat(event-search): Add aggregate comparisons to events v2 endpoint (getsentry#13510)

* Added having functionality for events v2 endpoint

* reverted change to org events v1

* changed test to show that both conditions apply

* caught assertion error.

* Changed format of aggregate comparison queries

* removed malformed input test

* Added test to check that non field aggregate is added to the aggregations

* Added additional tests to aggregation comparisions

* fixed spelling error.

* fix(app-platform): Render unpublished integrations (getsentry#13524)

A bug was causing Issue pages in Orgs that had an unpublished
Integration installed to error out. This was only case for one or two
Orgs, as far as I can tell (our test Orgs).

This fixes that bug and refactors some related things:

- Retrieve SentryAppInstallations from Store instead of passing down
through components
- Handle when the "give me all SentryApps" and "give me all MY
SentryApps" endpoints return the same records

* feat(events-v2): Add API validations (getsentry#13589)

Return a validation error if:
- an invalid groupby value is provided
- no field or grouping is provided

* fix(api) Don't 500 on invalid data (getsentry#13587)

Our API shouldn't fail when given poorly formatted data.


* feat(app-platform): Add SHA to Internal slugs (getsentry#13552)

In order to prevent Internal Integrations from polluting the global
namespace for Integrations, we add a suffix to the slug. The suffix is
the first six digits of the SHA1 of the Org's name.

* ref(sentry10): Clean up releases links (getsentry#13596)

* ref(sentry10): Clean up user feedback links (getsentry#13595)

Remove code that conditionally linked to old project routes

* ref: Fix invalid jsdoc syntax (getsentry#13598)

* fix(ui) Forward projectId prop into CrashContent (getsentry#13599)

The threads component was not forwarding its projectId prop which was
causing raw dumps to fail for ios.

Refs ISSUE-493

* feat(ui): Add `size` prop to `<EventOrGroupHeader>` (getsentry#13588)

This adds a `size` prop to `<EventOrGroupHeader>` to change margins for text. Supports an additional `small` size.

* build(babel): Add file and line #s to React JSX warnings (getsentry#13607)

* fix(ui): Change Issue details to not force global selection values [SEN-658] (getsentry#13554)

We save last selected projects + envs (+ dates) in local storage. High up in the component tree, we initialize our global selection store with these values from local storage. This means when we view issue details with a direct URL that does not contain a project or environment, it will load values from the store. So you could end up in a weird state if it tries to load last used environment.

This makes sure that 1) the component tree for GroupDetails prop drills `environments` so that it does not directly read from the store and
2) does not pass down the environments value from the store for the component that uses `withGlobalSelection` (controlled by a prop).

This will maintain the current behavior for components that do not specify the `disableLoadFromStore` prop on the `withGlobalSelection` HoC. So if you were to navigate from issue details back to issue stream, it will have values from store.

Another issue this fixes is that when GlobalSelectionHeader changed params, it would update ALL url params (e.g. projects, envs, dates) - which was not a problem before because these values would usually be synced, but because we initially do not use values from store, it is a bit out of sync so if you were to change environments, it would also incorrectly overwrite projects and dates as well.

* ref(sentry10): Remove unused project layout files (getsentry#13593)

* feat(events-v2): Add an organization event details endpoint (getsentry#13553)

This is a prototype of an organization event details endpoint
which adds support for finding a next and previous event based
on a custom list of conditions provided via the events v2 format.

* ref(events-v2): Remove redundant zoom code (getsentry#13601)

This doesn't seem to do anything

* chore: Clean up release-related constants (getsentry#13604)

Clean up in prep for fixing a releases endpoint bug:

- `VERSION_LENGTH` -> `MAX_VERSION_LENGTH` for clarity and consistency with other max constants

* fix: Properly wrap components in traditional HoC pattern (getsentry#13605)

* fix(api): Don't error if releases/commits don't exist when attempting to fetch incident suspects.

No need to error here, just don't return anything

* fix(api): Don't error if releases/commits don't exist when attempting to fetch incident suspects.

No need to error here, just don't return anything

* Revert "feat(events-v2): Add an organization event details endpoint (getsentry#13553)" (getsentry#13616)

This reverts commit 822f85f.

* Add more crawlers to the filter list (getsentry#13592)

* fix(ui) Forward projectId prop (getsentry#13614)

I missed another projectId prop forward related to thread components.

Refs ISSUE-493

* chore(build) Only run safety once during lint stage. (getsentry#13609)

Instead or running safety 5 times we can run it once during the lint
stage. While we do have to install a few more dependencies in the lint
stage we might end up saving time overall.

* ref(sentry10): Remove Sentry 10 references from tests (getsentry#13615)

This behavior has been mainlined, we no longer need to explicitly turn
on the sentry10 flag in tests

* ref(sentry10): Refactor event or group components (getsentry#13594)

We previously relied on checking for the presence of a projectId in the URL
to determine whether to show the Sentry 10 paths in these components. We
don't want to link to these old routes anymore.

* feat(events-v2): Add better looking reloading states (getsentry#13602)

* fix(sentry10): Remove project result from search (getsentry#13597)

This view doesn't exist anymore, remove it from search results

* ref: Use strict equality everywhere (getsentry#13590)

* ref(ui): Move file into correct view folder (getsentry#13625)

Since this component is not used outside the releases view and is not
designed to be a highly reusable component, it should be under views not

* Revert "fix(ui): Change Issue details to not force global selection values [SEN-658] (getsentry#13554)" (getsentry#13630)

This reverts commit 15f98ba.

* ref(js): Remove `Raven` deprecation stubs (getsentry#13611)

We no longer attempt to call `Raven` anywhere (including getsentry). No reason to have this anymore

* test(incidents): Add initial acceptance tests [SEN-734] (getsentry#13623)

Adds initial acceptance tests. Adds snapshots for empty list, list, and details

* feat(ui): Remove "beta" tags from Dashboards and Discover [SEN-713] (getsentry#13632)

This removes the "Beta" pill from the Discover and Dashboards headers. Additionally removes the dashboard index that re-exports a container.

Fixes SEN-731

* test(events-v2): The query parameter is a string, not a list (getsentry#13628)

* ref(sentry10): Remove project environments code from tag distributions

* ref(sentry10): Remove the withEnvironment helper

* ref(sentry10): Remove unused withEnvironmentInQueryString helper

* ref(sentry10): Remove ProjectLink and ProjectState (getsentry#13626)

Remove project related helpers that aren't needed in Sentry 10

* feat(ui) Improve event modal loader experience (getsentry#13621)

Show the modal loader *inside* the modal instead of underneath the

Refs SEN-732

* fix: Don't re-throw error in a setTimeout() (getsentry#13613)

* feat(events-v2): Add organization event details endpoint (getsentry#13620)

Attempt number two

* Revert "Revert "feat(events-v2): Add an organization event details endpoint (getsentry#13553)" (getsentry#13616)"
* Move org events validation code into endpoint so it's only triggered on the index pasge
* Update flaky tests and groupby message

* feat(ui): Adds related issues to Incidents sidebar [SEN-695] (getsentry#13617)

Adds related issues to sidebar

Fixes SEN-695

* feat(api): Allow passing group_ids to `OrganizationGroupIndexEndpoint` for bulk fetching groups (SEN-701)

For use in incidents to bulk fetch groups

* build(yarn): Upgrade yarn to 1.16.0, embed in repo (getsentry#13569)

The best way to install yarn in repos like this is to use the single
JS file version from GitHub instead of installing it via npm. An
even better way is to embed this file in the repo and add a yarn-path
directive to the `.yarnrc` file to ensure everyone always uses the same
yarn version for this repo at all times.

This patch does all this, removes all references to npm too.

* feat(api): Add url unfurls for incidents to slack integration (SEN-566)

Abstracted the unfurling code a little so that we can handle different types.

* feat(sentry10): Remove the ability to set a default environment (getsentry#13637)

As far as I know this isn't useful in the Sentry 10 world since we now
only use your local preferences to determine project/env defaults.

* ref(utils): Remove default / reexports from utils.jsx (getsentry#13581)

- The defaults export was not used by getsentry (as the comment
   mentioned), in fact, it is not even exported in the SentryApp global
   at all.

 - The re-exports were not used.

* ref(app-platform): Backfill IntegrationFeature table (getsentry#13548)

* ref(app-platform): Backfill integrationfeature table

* ref(sentry10): Clean up action creators (getsentry#13636)

Remove setting active environment by project as this is now handled by the
global selection store.

* tests(percy): Fix Incident status item dynamic time (getsentry#13640)

Causes issues in percy because of time

* perf(snuba): Limit SnubaEvent.get_event to return the first result only. (getsentry#13644)

* fix(store): Check project.status is VISIBLE before attempting to process

* feat(events-v2) Add a event graph to the event modal (getsentry#13568)

Show an event graph for grouped views. The grouped view mode requires
showing a single event + grouped data above the single event view. I've
implemented a stripped down line graph as we don't need release markers
or previous period markers on this graph. Additionally we'll need
special click handling that navigates to other events in the series.

Use the new /latest endpoint in the grouped modal view. This pushes the
complexity of finding the most recent event into the API where it should

By creating a combined query parameter we have fewer state bits we need
to manage together. Instead we can focus on the valid/invalid value

In grouped views we want to show pagination buttons to navigate between
the events that match the current search filters including the query
string. By creating URLs that use eventSlug and the current search
criteria we'll end up at the right events.

Refs SEN-716
Refs SEN-715

* fix(ui): remove rate-limited values from graph when no events are present (getsentry#13624)

* feat(ui): update incidents icon (getsentry#13622)

* fix: Query the right set of issues when given no set of envs for a given first release (getsentry#13551)

Fixes SEN-571
Fixes ISSUE-432

* feat(events-v2): Page loader improvements (getsentry#13645)

- Show a nicer loading state when switching tabs
- Move min height requirement into events component to make
loadingContainer more generic

* ref(ui): Remove crufty global exports (getsentry#13578)

These are from a time when getsentry could not import sentry modules
itself and we needed to explicitly export things from sentry, which we
would do here.

 - Removes window globals that are NOT used in sentry-plugins OR in
   django HTML templates

 - Removes many `SentryApp` exports that are not used in sentry-plugins
   OR django HTML templates.

 - Comments existing items to describe where they are used

* ref(ui): Remove OrganizationState from a bunch of places (getsentry#13646)

We'll want to remove the OrganizationState mixin completely in favor of
the withOrganization higher order component. This PR removes usage from
a handful of components as well as converts those components from
using `createReactClass` to ES6 style class where possible.

* fix(yarn): Fix yarn path in distutils (getsentry#13647)

* fix(symbolicator): Tests are no longer allowed failures (getsentry#13566)

Clear global buckets, strip snapshots of unrelated data and make tests mandatory in Travis.

Most of the input data will also be tested by symbolicator in getsentry/symbolicator#81

* feat: Annotate empty request bodies (getsentry#13606)

* ref: Remove sampling option, remove trimming from renormalization (getsentry#13563)

cont. getsentry#13358

* fix(grouping): Store original in_app for idempotent regrouping (getsentry#13540)

Fixes grouping enhancement display to always operate on the original value of the `in_app` flag. Eventually, this will allow to regroup events based on their original payload.

* fix(ui) Fix overflowing tag values (getsentry#13648)

Tags with longer values were causing the tag table to break out of the
modal and overflow out of the viewport. Using `table-layout:fixed`
solves this along with overflowEllipsis.

Refs SEN-716

* fix: Re-export createReactClass to window as django templates rely on this variable (getsentry#13651)

* ref(store): Create relay configuration (getsentry#13564)

* feat: Add flag to run under debuggable wsgi server

* feat(config): WIP relay config

* feat(config): WIP relay config

Removed code for getting Rate Limit (it is complicated and needs to
be redone at a latter stage)

* WIP before merging master in

* WIP remove access to project from Store and EventManager

* Get the project options upfront (preparation for relay)

* Get the project options upfront (preparation for relay)

* ref: Fetch SDK versions from release registry (getsentry#13608)

Sentry now polls a registry service that holds all information on current versions.

* feat(events-v2): Support ordering by a list of fields (getsentry#13627)

* ref(sentry10): Remove non Sentry 10 paths from group details (getsentry#13635)

* fix(events-v2) Improve scroll handling for event modal (getsentry#13634)

Make the modal take up the entire viewport and have scrollable content.
The style modifications to `document.body` are a bit hacky but I don't
know of an alternate way to do this.

Refs SEN-718

* feat(events-v2) Add responsive views for events modal (getsentry#13643)

Adjust layout at our breakpoints so that the modal is readable in each
layout mode.

Refs SEN-729

* feat(ui): Fix OrganizationContext sometimes double fetching for org details (getsentry#13655)

Fixes the race condition where `OrganizationContext` gets loaded twice if `OrganizationStore` finishes loading *after* `OrganizationDetails.fetchData` finishes.

* ref(ui): Move components to more logical folders (getsentry#13656)

Also codesplits the ProjectEnvironments view

* fix(events-v2): Fix tab change detection logic (getsentry#13658)

This is a little verbose but I can't think of a better way to detect a
changing tab within this component so that we can show the correct
loading state depending on the type of change. Since
componentWillReceiveProps is deprecated, I think it's ok to do setState
in componentDidUpdate like this.

* fix(API): Allow range in `commit` parameter of org releases endpoint as per docs (getsentry#13618)

We say in the docs that the `commit` parameter sent to the `/organizations/{organization_slug}/releases/` endpoint can be a range of the form `startSHA..endSHA` but in reality we were limiting the length to that of a single commit SHA.

This fixes that and adds tests.

* fix(UI): Fix typo when no issues are found (getsentry#13652)

* feat(ui): Add disabled state to CheckboxFancy (getsentry#13649)

- Makes CheckboxFancy a styled component.

 - Gives CheckboxFancy a disabled prop and appearance

 - Disables the checkboxes when the item is not a multi selector.

 - Makes the appearance of the checkbox consistent with the rest of the
   icons in the GlobalSelectionHeaderRow.

* feat(ui) Add a placeholder component (getsentry#13654)

We have a couple places right now that use placeholders (incidents,
events v2). Refactor the placeholders used in both these places into
a shared component that covers our current use cases. I've opted to not
include a spinner as we don't currently have a situation where we need

Refs SEN-716

* feat(events-v2): Add proper links to elements in event table (getsentry#13660)

Add proper links to URLs rather than passing the handleSearch click

* ref(analytics): Replace amplitude with analytics:track-event (getsentry#13536)

* feat(global-header): Adds DisabledFeature to mutli selectors (getsentry#13663)

* ref(global-header): CheckboxFancy styling take two (getsentry#13668)

Gives the disabled checkboxes a better look and feel to differentiate
checked and unchecked read only checkboxes.

* fix: Typo in sdk version fetching (getsentry#13671)

cont. getsentry#13608


* feat(events-v2) Display the current event indicator  (getsentry#13661)

Add the line mark for the current event to the grouped event chart.
The custom icon still needs to be added in a subsequent pull request.

Refs SEN-733

* feat(events-v2): Add filtering to heatmaps (getsentry#13650)

Filters heatmaps by project, environment, time and query

* fix(ui): Fix tag distribution meter styles (getsentry#13666)

- Updated to use flex instead of inline/inline-block
- Fixes border radius by handling on parent element - previously this
wouldn't be correct if the first or last element had width < border radius

* ref(features): Add extended-data-retention (getsentry#13572)

* chore: Fix typo (getsentry#13672)

* fix(app-platform): Only build internal slug once (getsentry#13657)

Previously, every time you saved a `SentryApp`, it'd append the Org's
hashed slug to end of the SentryApp's slug.

We only actually want to do this once, when creating the SentryApp the
first time. This change does that.


* feat(api): Prefix incident slack unfurl titles with "INCIDENT: "

Request from product to have this as part of the title

* ref(mixins): Remove the OrganizationState mixin (getsentry#13670)

* feat(app-platform): Add error.created hook event (getsentry#13462)

* feat(app-platform): Add error.created hook event

* feat(api): Support user/team mentions in incident comments (SEN-652)

This follows the same general pattern from issue comments. Users in comments should be sent like
`**@<name>**`, and a list of mentions should be passed in format `user:1234` or `team:1234`. When a
user is mentioned they're automatically subscribed to the incident, and receive notifications like
other subscribers.

* fix(environments): Fix project environment data not being loaded (getsentry#13676)

The project environments component is now disconnected from the
EnvironmentStore. Since we no longer need to load environments when we
bootstrap the app, this component is now responsible for fetching its
own data. This PR fixes a bug that caused the environment list to
sometimes display as empty.

* fix(ui): Handle portal clicks in DropdownMenu (getsentry#13662)

* fix(tag-distribution-meter): Fix truncating long values (getsentry#13678)

Need to put inline-block back on these elements so they respect overflow
/ truncation rules. These lines were previously removed in

* fix(environments): Fix environments list loading on alert rules pages (getsentry#13681)

Fixes loading of environment lists on the alert rules pages. Also
completely removes the EnvironmentStore as we don't need this throughout
the app anymore.

* fix(ui) Add spacing between button groups in crash header (getsentry#13688)

Without this space the buttons are vertically adjacent and look bad.

* tests: Add tags to python sample data (getsentry#13154)

Add a few tags to the sample python data. This will populate the tag
meters in percy and allow us catch issues similar to the tag bar
problems yesterday.

* feat(events-v2) Enable clicking on graph markers (getsentry#13675)

* feat(events-v2) Enable clicking on graph markers

Clicking on a graph marker will now take you to an event in the selected
timeslice. This requires an extra request to find an event in the slice.
I've opted to use the `/latest` endpoint so that I don't have to deal
with getting more a single result back, and we bias towards newer data
in other event views.

Refs SEN-733

* Move util function to live with other date functions.

* Move util function to live with other date functions

* Add tests for parsePeriodToHours

* Add pin marker to chart

* feat(ui): Add Incident start date to list [SEN-690] (getsentry#13633)

Add a new column for incident start date in incidents table

Fixes SEN-690

* fix(api): In incident details endpoint return group ids as strings

* test(events-v2): Fix flaky tests (getsentry#13698)

* feat(upgrade): Default to superuser for first user  (getsentry#13706)

Right now this is breaking docker-sentry git builds. Guessing it will
cause more issues in the future and was reported here on the forums:

* meta(vscode): Fix VS Code settings file (getsentry#13686)

Renames old settings to new ones (`python.unitTest` -> `python.testing`)
Removes obsolete `prettier-eslint` setting
Makes `python.pythonPath` platform independent

* fix(gitlab) When gitlab requests fail respond with a 400 (getsentry#13691)

Don't fail and create sentry issues when GitLab instances cannot be
reached, timeout or otherwise behave poorly.


* fix(ui) Fix graph flicker on tab change (getsentry#13696)

Because the activeTab state was held higher up in the render tree, when
tabs were changed the graph would re-render causing it to flicker.
Extracting a stateful component closer to the tree that changes fixes
that problem.

* fix: Fix tooltip if either release commits has no author, or if an author's name/email of a commit contains just whitespace. (getsentry#13707)

* feat(ui): Add better loading state for Incidents list (getsentry#13695)

Moves the loading indicator inside of the table so that the panel header is visible.

* fix(ui): Fix Incidents chart proptypes (getsentry#13693)

* fix(releases): Fix resolve in release (getsentry#13701)

This is a fix for the resolve in release feature. This feature is
currently not working (since Sentry 10) when "all projects" or more
than one project is selected in the top bar.

The proposed longer term solution for this is outlined in SEN-771

* fix(events-v2): Add error/csp conditions to tabs (getsentry#13697)

This adds the error/csp filtering to those tabs. Previously the data on
these two tabs was exactly the same.

* ci(yarn): Fix TravisCI not using the checked-in yarn binary (getsentry#13713)

Follow up to getsentry#13569. Normally, any recent Yarn version (>1.0.0) should
read the `yarn-path` value from the `.yarnrc` file but some TravisCI
machines seem to be using an ancient version (`0.27.0`) that doesn't
support this and causing build failures.

This diff will ensure the correct binary is being used.

* fix(app-platform): ApiToken Cleanup Fix (getsentry#13712)

Cleanup was failing due to foreign key constraints on ApiTokens that
were associated with a SentryAppInstallation.

It's okay if they stick around, so this just excludes them from the
query to find all ApiTokens to delete.

* feat(events-v2) Improve scrolling for event modal (getsentry#13710)

Make the event modal scroll like other modals in the application.
Instead of scrolling the contents of the modal, the modal scrolls on-top
of a scroll locked element. I've separated the modal dialog into component
for a few reasons:

* It was making EventDetails pretty chunky.
* Having a separate component makes it easier to change over to
  reach-ui/dialog down the road or to add scroll locking & accessibility
  features if we don't want to pull reach in.

Refs SEN-733

* feat(events-v2): Support custom column widths for each view (getsentry#13714)

Allow each view to define custom column widths for each field

* feat(ui): Add spark lines to Incidents List [SEN-702] (getsentry#13692)

Adds spark lines to each Incident item in the list view.

Fixes SEN-702

* feat(releases): Parse for colon in group references (getsentry#13715)

* fix(ui) Fix proptype warning when modal is a loading state (getsentry#13717)

Forgot to set the onDismiss prop after I made it required.

This comment has been minimized.

Copy link

@xiaotian45123 xiaotian45123 commented Jun 18, 2019



INVALID_EMAIL_ADDRESS_PATTERN  = re.compile( [R “ \ @ QQ 。\ COM $ ”,如re.I)



你处理好这个问题没有 ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants
You can’t perform that action at this time.