Skip to content

Commit 2dc72b0

Browse files
committed
Merge branch 'master' into update-context-icons
2 parents a295ada + 994690b commit 2dc72b0

Some content is hidden

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

65 files changed

+2302
-206
lines changed

CHANGES

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,27 @@ Version 8.11 (Unreleased)
1717
- Added support for recording symbols separately in frames independent of the function.
1818
- Reduce noisy Postgres logs from inserting duplicate onboarding rows.
1919
- Added device icons for Apple Watch and Apple TV
20+
- Added export action to group tag details.
21+
- Improved display of user tags.
22+
- Added 'transaction' tag which automatically populates from explicit culprits.
23+
- Added beginnings of repository management to UI (behind `organizations:repos` feature).
2024

2125
Schema Changes
2226
~~~~~~~~~~~~~~
2327

2428
- Added ``User.session_nonce`` column.
29+
- Added ``CommitFileChange`` model.
30+
- Added ``Repository.url`` column.
31+
- Added ``Repository.provider`` column.
32+
- Added ``Repository.config`` column.
33+
- Added ``Repository.external_id`` column.
34+
- Added ``Repository.status`` column.
35+
36+
API Changes
37+
~~~~~~~~~~~
38+
39+
- Added ``/organizations/{org}/config/repos/`` endpoint.
40+
- Added ``/organizations/{org}/repos/{repo}/`` endpoint.
2541

2642
Version 8.10
2743
------------
@@ -42,8 +58,8 @@ Version 8.10
4258
API Changes
4359
~~~~~~~~~~~
4460

45-
- Add ``/organizations/{org}/repositories/`` endpoint.
46-
- Add ``/organizations/{org}/repositories/{repo}/commits/`` endpoint.
61+
- Add ``/organizations/{org}/repos/`` endpoint.
62+
- Add ``/organizations/{org}/repos/{repo}/commits/`` endpoint.
4763
- Add ``/projects/{org}/{project}/releases/{version}/commits/`` endpoint.
4864
- SSO restrictions are now applied across session-based API authentication.
4965

Dangerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
# content changes within the diff
4141
@S_SECURITY_CONTENT_PATTERN ||= /auth|password|permission|token|secret|security|scope|api_key|apikey|sudo/
4242
# dont ever match against changes in these files
43-
@S_SECURITY_EXCLUDE_FILES ||= /test_.*\.py|south_migrations|CHANGES|tests/
43+
@S_SECURITY_EXCLUDE_FILES ||= /test_.*\.py|migrations|south_migrations|CHANGES|tests/
4444

4545
@S_BACKPORTED_FILES ||= [
4646
"src/sentry/auth/password_validation.py",

ISSUE_TEMPLATE.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
## General Support
2+
3+
If you're looking for general support, please utilize our [community forum](https://forum.sentry.io/) rather than GitHub Issues.
4+
5+
## Reporting Bugs
6+
7+
When reporting bugs, include details about your configuration, such as:
8+
9+
- The version of Sentry you're using
10+
- Whether you're using Docker or another installation method
11+
- Include a stacktrace or other logs when relevant
12+
- Include a redacted version of your configuration when relevant

docs/config.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,6 +265,15 @@ The following settings are available for the built-in webserver:
265265
'buffer-size': 32768,
266266
}
267267

268+
Additionally, if you're using SSL, you'll want to configure the following settings
269+
in ``sentry.conf.py``:
270+
271+
.. code-block:: python
272+
273+
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
274+
SESSION_COOKIE_SECURE = True
275+
CSRF_COOKIE_SECURE = True
276+
268277
.. _config-smtp-server:
269278

270279
SMTP Server

docs/installation/python/index.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ Some basic prerequisites which you'll need in order to run Sentry:
1414
* A UNIX-based operating system. We test on Ubuntu and this documentation
1515
assumes an ubuntu based system.
1616
* Python 2.7
17-
* ``python-setuptools``, ``python-pip``, ``python-dev``, ``libxslt1-dev``,
17+
* pip 8.1+
18+
* ``python-setuptools``, ``python-dev``, ``libxslt1-dev``,
1819
``gcc``, ``libffi-dev``, ``libjpeg-dev``, ``libxml2-dev``, ``libxslt-dev``,
1920
``libyaml-dev``, ``libpq-dev``
2021

docs/nginx.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,12 @@ Below is a sample production ready configuration for Nginx with Sentry::
7979
}
8080
}
8181

82+
If you're using SSL, you'll also need to set the following in ``sentry.conf.py``:
83+
84+
.. code-block:: python
85+
86+
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')
87+
8288
8389
Hosting Sentry at a Subpath
8490
----------------------------

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@
141141
'ua-parser>=0.6.1,<0.8.0',
142142
'urllib3>=1.14,<1.17',
143143
'uwsgi>2.0.0,<2.1.0',
144-
'rb>=1.5.0,<2.0.0',
144+
'rb>=1.6.0,<2.0.0',
145145
'qrcode>=5.2.2,<6.0.0',
146146
'python-u2flib-server>=4.0.1,<4.1.0',
147147
]

src/sentry/api/endpoints/group_tagkey_values.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
from sentry.api.exceptions import ResourceDoesNotExist
66
from sentry.api.paginator import DateTimePaginator, OffsetPaginator, Paginator
77
from sentry.api.serializers import serialize
8+
from sentry.api.serializers.models.tagvalue import UserTagValueSerializer
89
from sentry.models import GroupTagValue, TagKey, TagKeyStatus, Group
910
from sentry.utils.apidocs import scenario
1011

@@ -68,10 +69,15 @@ def get(self, request, group, key):
6869
order_by = '-id'
6970
paginator_cls = Paginator
7071

72+
if key == 'user':
73+
serializer_cls = UserTagValueSerializer()
74+
else:
75+
serializer_cls = None
76+
7177
return self.paginate(
7278
request=request,
7379
queryset=queryset,
7480
order_by=order_by,
7581
paginator_cls=paginator_cls,
76-
on_results=lambda x: serialize(x, request.user),
82+
on_results=lambda x: serialize(x, request.user, serializer_cls),
7783
)
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
from __future__ import absolute_import
2+
3+
from rest_framework.response import Response
4+
5+
from sentry.api.bases.organization import OrganizationEndpoint
6+
from sentry.plugins import bindings
7+
8+
9+
class OrganizationConfigRepositoriesEndpoint(OrganizationEndpoint):
10+
def get(self, request, organization):
11+
provider_bindings = bindings.get('repository.provider')
12+
13+
providers = []
14+
for provider_id in provider_bindings:
15+
provider = provider_bindings.get(provider_id)(id=provider_id)
16+
providers.append({
17+
'id': provider_id,
18+
'name': provider.name,
19+
'config': provider.get_config(),
20+
})
21+
22+
return Response({
23+
'providers': providers,
24+
})

src/sentry/api/endpoints/organization_onboarding_tasks.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ def post(self, request, organization):
3737
}
3838
)
3939
if rows_affected or created:
40-
check_for_onboarding_complete(organization)
40+
check_for_onboarding_complete(organization.id)
4141
return Response(status=204)
4242

4343
return Response(status=404)

0 commit comments

Comments
 (0)