Traceback (most recent call last):
File "/usr/bin/bugwarrior", line 8, in <module>
sys.exit(cli())
~~~^^
File "/usr/lib/python3.14/site-packages/click/core.py", line 1485, in __call__
return self.main(*args, **kwargs)
~~~~~~~~~^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/click/core.py", line 1406, in main
rv = self.invoke(ctx)
File "/usr/lib/python3.14/site-packages/click/core.py", line 1873, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^
File "/usr/lib/python3.14/site-packages/click/core.py", line 1269, in invoke
return ctx.invoke(self.callback, **ctx.params)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/click/core.py", line 824, in invoke
return callback(*args, **kwargs)
File "/usr/lib/python3.14/site-packages/click/decorators.py", line 34, in new_func
return f(get_current_context(), *args, **kwargs)
File "/usr/lib/python3.14/site-packages/bugwarrior/command.py", line 57, in wrapped_subcommand_callback
return ctx.invoke(subcommand_callback, *args, **kwargs)
~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/click/core.py", line 824, in invoke
return callback(*args, **kwargs)
File "/usr/lib/python3.14/site-packages/bugwarrior/command.py", line 112, in pull
synchronize(issue_generator, config, main_section, dry_run)
~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/bugwarrior/db.py", line 270, in synchronize
for issue in issue_generator:
^^^^^^^^^^^^^^^
File "/usr/lib/python3.14/site-packages/bugwarrior/collect.py", line 101, in aggregate_issues
record = TaskConstructor(issue).get_taskwarrior_record()
File "/usr/lib/python3.14/site-packages/bugwarrior/collect.py", line 134, in get_taskwarrior_record
self._taskwarrior_record = self.issue.to_taskwarrior()
~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/usr/lib/python3.14/site-packages/bugwarrior/services/jira.py", line 196, in to_taskwarrior
'due': self.get_due(),
~~~~~~~~~~~~^^
File "/usr/lib/python3.14/site-packages/bugwarrior/services/jira.py", line 247, in get_due
endDate = sprint['endDate']
~~~~~~^^^^^^^^^^^
KeyError: 'endDate'
bugwarrior pullcrashes withKeyError: 'endDAte'when a Jira sprint returned by the API is a dict that does not include theendDatefield.Traceback
Expected behavior
bugwarrior pullcompletes successfully, treating the missingendDateas no due date.Environment