* Bare start on CSV support
* Move core of CSV importer to operations
* More validations, break out validation function
* Validate dates and TaskList; convert errors to list of dictionaries
* Finish upsert code, and documentation
* Print msgs from the mgmt command, not the operations module
* Handle BOM marks
* Handle both in-memory and local file objects
* Update readme
* Working browser-upload view
* Bail on incorrect headers
* Fix default values and finish example spreadsheet
* Change column order, update docs
* Update index.md for RTD
* First round of responses to PR feedback
* Restore independent summaries/errors/upserts properties
* PR responses
* Split off reusable date validator into separate function
* Fix URLs append
* General test suite for CSV importer
* Implement mail tracking
Signed-off-by: Victor "multun" Collod <victor.collod@prologin.org>
* Implement task merging
* Add a mail tracker title format pattern
* Autocomplete task names
* Fix comment display
* Track notification answers
* Add a socket timeout for the mail worker
A mail worker is a long running application. And sometimes, the IMAP server
just hangs for hours for no apparent reason. imaplib doesn't enable setting
a timeout, and setting it globally seems fine.
* Only validate the merge form when submitted
* Redirect to the new form when merging
* Prettier task edit UI
* Make task merging optional
* Test mail tracking
* Update documentation for mail tracking
* Update dependencies
* Add the TODO_COMMENT_CLASSES setting
* Fix dependencies install order
* Remove debug leftovers, improve documentation
* Fail on missing from_address