brpaz/ulauncher-jira

[Bug]: missing space in generated query for jira:assigned

durka opened this issue · 0 comments

durka commented

Description?

The plugin received a JiraError HTTP 400 when doing a search for "my assigned issues" because the query was invalid. There is a missing space between statusCategory != Done and AND summary ~ "$query".

Extension Logs

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/ulauncher/api/client/Client.py", line 54, in on_message
    self.extension.trigger_event(event)
  File "/usr/lib/python3/dist-packages/ulauncher/api/client/Extension.py", line 52, in trigger_event
    action = listener.on_event(event, self)
  File "/home/alex/.local/share/ulauncher/extensions/com.github.brpaz.ulauncher-jira/extension/listeners/query.py", line 31, in on_event
    return extension.assigned_issues(event)
  File "/home/alex/.local/share/ulauncher/extensions/com.github.brpaz.ulauncher-jira/extension/extension.py", line 86, in assigned_issues
    return self._search_with_jql(event, jql)
  File "/home/alex/.local/share/ulauncher/extensions/com.github.brpaz.ulauncher-jira/extension/extension.py", line 102, in _search_with_jql
    issues = self.jira_client.search_issues(jql_str=jql, maxResults=10)
  File "/home/alex/.local/lib/python3.10/site-packages/jira/client.py", line 2929, in search_issues
    issues = self._fetch_pages(
  File "/home/alex/.local/lib/python3.10/site-packages/jira/client.py", line 724, in _fetch_pages
    resource = self._get_json(request_path, params=page_params, base=base)
  File "/home/alex/.local/lib/python3.10/site-packages/jira/client.py", line 3624, in _get_json
    r = self._session.get(url, params=params)
  File "/home/alex/.local/lib/python3.10/site-packages/jira/resilientsession.py", line 195, in get
    return self.__verb("GET", str(url), **kwargs)
  File "/home/alex/.local/lib/python3.10/site-packages/jira/resilientsession.py", line 189, in __verb
    raise_on_error(response, verb=verb, **kwargs)
  File "/home/alex/.local/lib/python3.10/site-packages/jira/resilientsession.py", line 64, in raise_on_error
    raise JIRAError(
jira.exceptions.JIRAError: JiraError HTTP 400 url: https://<ON-SITE URL REDACTED>/rest/api/2/search?jql=assignee+%3D+currentUser%28%29+and+statusCategory+%21%3D+DoneAND+summary+~+%22<QUERY REDACTED>%22+order+by+priority+DESC%2Cupdated+DESC&startAt=0&validateQuery=True&maxResults=10
	text: Error in the JQL Query: Expecting either 'OR' or 'AND' but got 'summary'. (line 1, character 56)
	
	response headers = {'Date': 'Wed, 08 Mar 2023 17:59:59 GMT', 'Content-Type': 'application/json;charset=UTF-8', 'Server': 'AtlassianEdge', 'Timing-Allow-Origin': '*', 'X-Arequestid': 'e89d9febf62825ba5596ea5b26fb35d1', 'X-Aaccountid': '5da0ff12e881600dc8fd2699', 'Cache-Control': 'no-cache, no-store, no-transform', 'Expect-Ct': 'report-uri="https://web-security-reports.services.atlassian.com/expect-ct-report/atlassian-proxy", max-age=86400', 'X-Content-Type-Options': 'nosniff', 'X-Xss-Protection': '1; mode=block', 'Atl-Traceid': 'bdeda188dac51fcc', 'Report-To': '{"endpoints": [{"url": "https://dz8aopenkvv6s.cloudfront.net"}], "group": "endpoint-1", "include_subdomains": true, "max_age": 600}', 'Nel': '{"failure_fraction": 0.001, "include_subdomains": true, "max_age": 600, "report_to": "endpoint-1"}', 'Strict-Transport-Security': 'max-age=63072000; includeSubDomains; preload', 'Transfer-Encoding': 'chunked'}
	response text = {"errorMessages":["Error in the JQL Query: Expecting either 'OR' or 'AND' but got 'summary'. (line 1, character 56)"],"errors":{}}