summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* ui: Convert apply_command to a coroutineDylan Baker2018-07-26
| | | | | | This is a pretty invasive patch, since the ui code is used so extensively, it requires going into a lot of other code and converting those to coroutines, since before they returned deferred's.
* ui: convert the loop_hook to asyncioDylan Baker2018-07-26
| | | | | | asyncio doesn't have a loopingCall helper, so I've implemented a coroutine that does the same thing, it takes a callable, a period, and then forwards all other arguments. This is tested and working.
* command/envelope: Don't use a deferred, use awaitDylan Baker2018-07-26
|
* account: Convert send_mail function to coroutineDylan Baker2018-07-26
|
* tests/commands/global: use utilities.async_testDylan Baker2018-07-26
|
* tests/commands/envelope: use utilities.async_testDylan Baker2018-07-26
|
* tests/commands/utils: use utilities.async_testDylan Baker2018-07-26
|
* helper: use asyncio.subprocess instead of twistedDylan Baker2018-07-26
|
* utilities: Add a decorator for asyncio testsDylan Baker2018-07-26
| | | | | This decorator works to allow tests for pure asyncio coroutines to operate synchronously.
* db/manager: use threads instead of reactor.callInThreadDylan Baker2018-07-26
| | | | | This is the obvious thing to do, and it works, but it does introduce some latency into starting alot.
* buffers/search: add missing NotmuchErrorDylan Baker2018-07-26
| | | | Found due to another bug :)
* commands/globals: implement ExternalCommand.apply as coroutineDylan Baker2018-07-26
| | | | | | Rather than returning a deferred in some cases, this makes the function a coroutine, in some cases it calls regular subprocess, in other cases it uses asyncio subprocess.
* commands/thread: Use asyncio coroutines instead of twisted deferredsDylan Baker2018-07-26
|
* commands/globals: Use asyncio coroutines instead of twisted deferredsDylan Baker2018-07-26
|
* command/envelope: use asyncio coroutines instead of twisted inlineCallbacksDylan Baker2018-07-26
|
* ui: Handle asyncio coroutines in call_cmdDylan Baker2018-07-26
| | | | | | This allows twisted deferred's (which is all an inlineCallback actually is) to be mixed with asyncio coroutines (async def), by wrapping them in a special twisted function for handling asyncio coroutines.
* Use twisted reactor as asyncio event loopDylan Baker2018-07-26
| | | | | | | | This puts the twisted event loop into the asyncio framework. This means that we're currently running all over our twisted.defered's and twisted.inlineCallbacks through asyncio, using the twisted loop. This will allow incremental updates from twisted's event loop to a standard asyncio event loop.
* commands/envelope: check that self.envelope is not NoneDylan Baker2018-07-26
| | | | | | If the mail is passed a string then envelope will always be None. There is one case in the final callback where self.envelope is assumed set, but it isn't guaranteed to be, so guard that properly.
* Merge pull request #1276 from alexshpilkin/copyeditDylan Baker2018-07-25
|\ | | | | Copyedit documentation
| * Describe options the same way in help and manualAlexander Shpilkin2018-07-25
| | | | | | | | | | The descriptions of --help and --version are the same as used in e.g. GNU coreutils (different from the Python default).
| * Fix typo in documentationAlexander Shpilkin2018-07-25
| |
| * Reword description of options -C and colourmodeAlexander Shpilkin2018-07-25
| |
| * Avoid abbreviations in documentationAlexander Shpilkin2018-07-25
| |
| * Capitalize option and command descriptions consistentlyAlexander Shpilkin2018-07-25
| |
| * Fix typo in description of option -dAlexander Shpilkin2018-07-25
| |
| * Rewrap option descriptions in the manualAlexander Shpilkin2018-07-25
| |
| * Fix typesetting of option arguments in the manualAlexander Shpilkin2018-07-25
| | | | | | | | | | | | Sphinx appears to not typeset an option properly when only the long version lists an argument. Add the arguments to the short versions as well.
* | Merge pull request #1278 from dcbaker/fix-1277Dylan Baker2018-07-25
|\ \ | |/ |/| commands/globals: Convert Address to string for email.utils
| * commands/globals: Convert Address to string for email.utilsDylan Baker2018-07-25
|/ | | | | | | | Email utils apparently assumes it's getting a string, and calls encode directly. This can only be hit if you have a single account configured, not with multiple accounts. Fixes #1277
* Merge pull request #1256 from pazz/namedqueriesDylan Baker2018-07-24
|\ | | | | New buffer type for notmuch's named query strings
| * add completion for named queriesPatrick Totzke2018-07-24
| | | | | | | | | | | | | | | | This adds a Completer which looks up and completes the alias strings of named queries. Also in this commit the QueryCompleter (which helps building valid query strings in prompts) is extended to make use of the new Completer.
| * tests for alot.db.managerPatrick Totzke2018-07-24
| | | | | | | | | | This adds a new TestCase for the database manager and adds a test for saving/reading named query strings to the database.
| * update NEWSPatrick Totzke2018-07-24
| |
| * update docsPatrick Totzke2018-07-24
| |
| * add global command 'removequery'Patrick Totzke2018-07-24
| | | | | | | | that removes a named query string from the notmuch index
| * new command "savequery"Patrick Totzke2018-07-24
| | | | | | | | | | | | ...that stores a query string as named search. in Search buffers, this will fall back on the current search string unless a full query string is provided as (second) argument.
| * add setter for (notmuch) configs to database managerPatrick Totzke2018-07-24
| | | | | | | | these can be used to define/remove new named query strings
| * update extra theme filesPatrick Totzke2018-07-24
| | | | | | | | | | this just adds theming attributes for the new namedqueries buffer, copied from those for the taglist buffer.
| * add default binding for namedqueries bufferPatrick Totzke2018-07-24
| |
| * add config option to configure the statusbarPatrick Totzke2018-07-24
| | | | | | | | ... in new namedqueries buffer
| * update theme spec, default theme and testsPatrick Totzke2018-07-24
| | | | | | | | | | | | | | | | | | | | This patchseries adds a new buffer type for displaying notmuch's saved querystrings. This commit adds the respective theming attributes used in the new buffer. They are just copies of the taglist buffer really. THIS BREAKS COMPATIBILITY WITH USER THEMES! The theme files need to be updated to also have these new attributes in order to conform with the updated spec.
| * add new buffer type NamedQueriesBufferPatrick Totzke2018-07-24
| | | | | | | | that displays the named query strings stored in the notmuch database
| * add text widget used in namedqueries buffersPatrick Totzke2018-07-24
| |
| * add select command for namedqueries bufferPatrick Totzke2018-07-24
| |
| * add global namedqueries commandPatrick Totzke2018-07-24
| | | | | | | | ... that opens a new namedqueries buffer
| * expose namedquery command to CLIPatrick Totzke2018-07-24
| |
| * add getter for named queries to DB managerPatrick Totzke2018-07-24
| |
| * bump dependencyPatrick Totzke2018-07-24
| | | | | | | | the named-queries feature relies on notmuch >= v0.26
| * update docsPatrick Totzke2018-07-24
| |
* | Merge pull request #1264 from pazz/refactor-threadlineDylan Baker2018-07-24
|\ \ | |/ |/| refactor threadline widget