@@ -24,14 +24,11 @@ class NewIssueForm(forms.Form):
24
24
class IssueTrackingPlugin (Plugin ):
25
25
# project_conf_form = BaseIssueOptionsForm
26
26
new_issue_form : type [forms .Form ] = NewIssueForm
27
- link_issue_form = None
28
27
29
28
create_issue_template = "sentry/plugins/bases/issue/create_issue.html"
30
29
not_configured_template = "sentry/plugins/bases/issue/not_configured.html"
31
30
needs_auth_template = "sentry/plugins/bases/issue/needs_auth.html"
32
31
auth_provider : str | None = None
33
- can_unlink_issues = False
34
- can_link_existing_issues = False
35
32
36
33
def get_plugin_type (self ):
37
34
return "issue-tracking"
@@ -58,7 +55,7 @@ def _get_group_title(self, request: Request, group, event):
58
55
def is_configured (self , project ) -> bool :
59
56
raise NotImplementedError
60
57
61
- def get_auth_for_user (self , user , ** kwargs ) -> RpcUserSocialAuth :
58
+ def get_auth_for_user (self , user , ** kwargs ) -> RpcUserSocialAuth | None :
62
59
"""
63
60
Return a ``RpcUserSocialAuth`` object for the given user based on this plugins ``auth_provider``.
64
61
"""
@@ -115,13 +112,6 @@ def get_new_issue_read_only_fields(self, *args, **kwargs):
115
112
"""
116
113
return []
117
114
118
- def get_link_existing_issue_form (self , request : Request , group , event , ** kwargs ):
119
- if not self .link_issue_form :
120
- return None
121
- return self .link_issue_form (
122
- request .POST or None , initial = self .get_initial_link_form_data (request , group , event )
123
- )
124
-
125
115
def get_issue_url (self , group , issue_id : str ) -> str :
126
116
"""
127
117
Given an issue_id (string) return an absolute URL to the issue's details
@@ -161,9 +151,6 @@ def get_initial_form_data(self, request: Request, group, event, **kwargs):
161
151
"title" : self ._get_group_title (request , group , event ),
162
152
}
163
153
164
- def get_initial_link_form_data (self , request : Request , group , event , ** kwargs ):
165
- return {}
166
-
167
154
def has_auth_configured (self , ** kwargs ):
168
155
if not self .auth_provider :
169
156
return True
@@ -201,8 +188,6 @@ def view(self, request: Request, group, **kwargs):
201
188
)
202
189
203
190
if GroupMeta .objects .get_value (group , "%s:tid" % self .get_conf_key (), None ):
204
- if self .can_unlink_issues and request .GET .get ("unlink" ):
205
- return self .handle_unlink_issue (request , group , ** kwargs )
206
191
return None
207
192
208
193
prefix = self .get_conf_key ()
@@ -211,70 +196,40 @@ def view(self, request: Request, group, **kwargs):
211
196
op = request .POST .get ("op" , "create" )
212
197
213
198
create_form = self .get_new_issue_form (request , group , event )
214
- link_form = None
215
- if self .can_link_existing_issues :
216
- link_form = self .get_link_existing_issue_form (request , group , event )
217
199
218
200
if op == "create" :
219
- issue_id = None
220
201
if create_form .is_valid ():
221
202
try :
222
203
issue_id = self .create_issue (
223
204
group = group , form_data = create_form .cleaned_data , request = request
224
205
)
225
206
except forms .ValidationError as e :
226
207
create_form .errors ["__all__" ] = ["Error creating issue: %s" % e ]
227
-
228
- if create_form .is_valid ():
229
- GroupMeta .objects .set_value (group , "%s:tid" % prefix , issue_id )
230
-
231
- issue_information = {
232
- "title" : create_form .cleaned_data ["title" ],
233
- "provider" : self .get_title (),
234
- "location" : self .get_issue_url (group , issue_id ),
235
- "label" : self .get_issue_label (group = group , issue_id = issue_id ),
236
- }
237
- Activity .objects .create (
238
- project = group .project ,
239
- group = group ,
240
- type = ActivityType .CREATE_ISSUE .value ,
241
- user_id = request .user .id ,
242
- data = issue_information ,
243
- )
244
-
245
- issue_tracker_used .send_robust (
246
- plugin = self ,
247
- project = group .project ,
248
- user = request .user ,
249
- sender = IssueTrackingPlugin ,
250
- )
251
- return self .redirect (group .get_absolute_url ())
252
-
253
- elif op == "link" :
254
- if link_form .is_valid ():
255
- try :
256
- self .link_issue (group = group , form_data = link_form .cleaned_data , request = request )
257
- except forms .ValidationError as e :
258
- link_form .errors ["__all__" ] = ["Error creating issue: %s" % e ]
259
-
260
- if link_form .is_valid ():
261
- issue_id = int (link_form .cleaned_data ["issue_id" ])
262
- GroupMeta .objects .set_value (group , "%s:tid" % prefix , issue_id )
263
- issue_information = {
264
- "title" : self .get_issue_title_by_id (request , group , issue_id ),
265
- "provider" : self .get_title (),
266
- "location" : self .get_issue_url (group , issue_id ),
267
- "label" : self .get_issue_label (group = group , issue_id = issue_id ),
268
- }
269
- Activity .objects .create (
270
- project = group .project ,
271
- group = group ,
272
- type = ActivityType .CREATE_ISSUE .value ,
273
- user_id = request .user .id ,
274
- data = issue_information ,
275
- )
276
-
277
- return self .redirect (group .get_absolute_url ())
208
+ else :
209
+ if create_form .is_valid ():
210
+ GroupMeta .objects .set_value (group , "%s:tid" % prefix , issue_id )
211
+
212
+ issue_information = {
213
+ "title" : create_form .cleaned_data ["title" ],
214
+ "provider" : self .get_title (),
215
+ "location" : self .get_issue_url (group , issue_id ),
216
+ "label" : self .get_issue_label (group = group , issue_id = issue_id ),
217
+ }
218
+ Activity .objects .create (
219
+ project = group .project ,
220
+ group = group ,
221
+ type = ActivityType .CREATE_ISSUE .value ,
222
+ user_id = request .user .id ,
223
+ data = issue_information ,
224
+ )
225
+
226
+ issue_tracker_used .send_robust (
227
+ plugin = self ,
228
+ project = group .project ,
229
+ user = request .user ,
230
+ sender = IssueTrackingPlugin ,
231
+ )
232
+ return self .redirect (group .get_absolute_url ())
278
233
279
234
context = {
280
235
"create_form" : create_form ,
@@ -283,7 +238,6 @@ def view(self, request: Request, group, **kwargs):
283
238
"title" : self .get_new_issue_title (),
284
239
"read_only_fields" : self .get_new_issue_read_only_fields (group = group ),
285
240
"can_link_existing_issues" : self .can_link_existing_issues ,
286
- "link_form" : link_form ,
287
241
"op" : op ,
288
242
}
289
243
@@ -295,10 +249,6 @@ def actions(self, request: Request, group, action_list, **kwargs):
295
249
prefix = self .get_conf_key ()
296
250
if not GroupMeta .objects .get_value (group , "%s:tid" % prefix , None ):
297
251
action_list .append ((self .get_new_issue_title (), self .get_url (group )))
298
- elif self .can_unlink_issues :
299
- action_list .append (
300
- (self .get_unlink_issue_title (), "%s?unlink=1" % self .get_url (group ).rstrip ("/" ))
301
- )
302
252
return action_list
303
253
304
254
def tags (self , request : Request , group , tag_list , ** kwargs ):
0 commit comments