Commit graph

5948 commits

Author SHA1 Message Date
Sebastian Spaeth
cd19699e0d Implement Database.count_messages() 2010-03-19 08:32:29 +01:00
Sebastian Spaeth
350a6884de notmuch: implement dump to file. Fake notmuch new by calling the real notmuch to enable running the testsuite 2010-03-18 19:11:22 +01:00
Sebastian Spaeth
dd8cdd9b66 add original notmuch testsuite 2010-03-18 19:04:49 +01:00
Sebastian Spaeth
5c936f9135 mention NOTMUCH_CONFIG in the notmuch docstring 2010-03-18 18:51:25 +01:00
Sebastian Spaeth
d566ae643c Database(): honor NOTMUCH_CONFIG env variable for reading the standard database location.
Also replaces all Database.MODE.* defaults in the keyword arguments with their numeric replacement, they do not seem to be available yet at that time, so the python parser complained about them as being unknown.
2010-03-18 18:48:36 +01:00
Sebastian Spaeth
4ed01d055a Implement Message.freeze(), thaw(), and remove_all_tags() 2010-03-18 09:34:10 +01:00
Sebastian Spaeth
144953116e docs: stub out remaining missing bindings to get a reminder 2010-03-18 09:02:59 +01:00
Sebastian Spaeth
8345aab10c implement Database.get_version() and Database.needs_upgrade() 2010-03-18 08:50:48 +01:00
Sebastian Spaeth
23b32a7dfd notmuch: implement tag command 2010-03-17 17:32:37 +01:00
Sebastian Spaeth
99880b7dbe notmuch: fix to use new Query.SORT enum 2010-03-17 17:11:58 +01:00
Sebastian Spaeth
350509028b Implement Message.add|remove_tag() and documentation 2010-03-17 17:09:58 +01:00
Sebastian Spaeth
d2b4307851 docs: doc improvements 2010-03-17 15:14:44 +01:00
Sebastian Spaeth
61bef71a12 many doc improvements, fixed at least one bug due to parameter renaming 2010-03-17 12:32:22 +01:00
Sebastian Spaeth
06f627df92 Improve source documentation 2010-03-17 11:45:13 +01:00
Sebastian Spaeth
b00c892c65 Implement an Enum class and make the STATUS object one 2010-03-17 11:44:36 +01:00
Sebastian Spaeth
6506175648 README: add link to static docs 2010-03-17 09:28:39 +01:00
Sebastian Spaeth
422ba4beca update documentation so it makes sense
--HG--
extra : transplant_source : %3F%E9%23%2B%2A%83%06g%10R%CA%CD%27N5%3E%22g%1E%AD
2010-03-16 20:54:43 +01:00
Sebastian Spaeth
9182b97e26 add sphinx docs stubs (they don't make sense yet)
--HG--
extra : transplant_source : %F3A%2C%D95%02%BF%1B%A1%D7%17%07%EDqh%23l8%93%20
2010-03-16 20:36:04 +01:00
Sebastian Spaeth
5bcd897253 hgignore: update to ignore static documentation
--HG--
extra : transplant_source : %9C%CCh%60z%FE%7B1%AC%E6%88%DF7%00%22%7D%09i%EDL
2010-03-16 20:35:34 +01:00
Sebastian Spaeth
ee66e0f52c implement Message.get_date() and Message.get_header()
--HG--
extra : transplant_source : %90%E9%A5Z%D1%E6%26%1F%D3%8B%CCsbb%E9%17%FA%5CD%9F
2010-03-16 17:10:57 +01:00
Sebastian Spaeth
7b032b6f87 implement stub for notmuch show. Remove finished ToDo items
--HG--
extra : transplant_source : 2%0B%97h%40Af%07%DD%F2%5ESX%20%05%3D%C0%C5v%F8
2010-03-16 16:41:33 +01:00
Sebastian Spaeth
95f259409e implement Query.set_sort() and sort notmuch dump by message id
--HG--
extra : transplant_source : 1%BC%F3%ED%3C%C7c%0EFh%06%B6L%7C%8E%8F%EF%A2%8E%A8
2010-03-16 16:20:47 +01:00
Sebastian Spaeth
4081ed75b5 implement notmuch dump and Messages.len()
--HG--
extra : transplant_source : %03_%C7%99L%16%7E%A8%B1p%11%11%A0%E3h%A3%AB%B6%FB%86
2010-03-16 16:09:42 +01:00
Sebastian Spaeth
3b2d73c684 implement message counting
--HG--
extra : transplant_source : %8E%83%C2%83%FA%F8X%B6%16%1D%D3X%C4o%A2%A8%28%11G%AF
2010-03-16 15:53:54 +01:00
Sebastian Spaeth
d099b79fd1 implement quoatation mangling in the notmuch binary
--HG--
extra : transplant_source : %E2I%C6%0A%05%3B%F3%27%07%96%DC%D6%91%C3%FA%8E%1B%5B%2B%3D
2010-03-16 15:40:13 +01:00
Sebastian Spaeth
e026813bcb Fix iterator classes to not skip the first element when iterating
--HG--
extra : transplant_source : %19wvB%19A%0A%CD%E7%28-%F0%12j%7FG%0DD%16%F4
2010-03-16 15:00:42 +01:00
Sebastian Spaeth
bb5870b9af use logging.debug for debug output. Implement notmuch search-tags
--HG--
extra : transplant_source : %BAn%2B%93B%1EkU8%A6-I%5D%E1%E4%2B%D6E%0C%F5
2010-03-16 14:57:07 +01:00
Sebastian Spaeth
c54b2683cd Fixing the crashes that I was seeing
--HG--
extra : transplant_source : %3E%B1%BB%DF%3C%22%A6%CC%90Z%E8v%95%962%DD%B2%A1%11%CC
2010-03-16 14:45:01 +01:00
Sebastian Spaeth
92d3c24bc8 implement Query() and search_messages()
However, this is still brittle and often segfaults for unknown reasons

--HG--
extra : transplant_source : %D1%FB%2B%FC%EA%E9%EB%3E%D2%13%DFV.o%D6%A6%CE%81%00%8C
2010-03-16 14:28:05 +01:00
Sebastian Spaeth
9ed5e8a0e3 remove useless tags struct
--HG--
extra : transplant_source : %EF%CD%D8K%E5%E1F%95%1E%F9%F3%88%E7%B0%600%21Wwp
2010-03-16 12:40:20 +01:00
Sebastian Spaeth
0e90d656fc Query() stub
--HG--
extra : transplant_source : %1E%14%7B%E7J%DD%96O%C7%E6%B5%FB%D8V%7B%0F%7C%25ot
2010-03-16 12:39:47 +01:00
Sebastian Spaeth
7b9ddcb6a6 some more stubs
--HG--
extra : transplant_source : %2A%C5%3C%C0u%B8%0DLx%3Eg%A2%06%F6%1E%B8%99C7%B3
2010-03-16 12:28:05 +01:00
Sebastian Spaeth
5cb8dbeab5 nonfunctional changes in notmuch stub
--HG--
extra : transplant_source : %F2%28%18m%91%F5%DA%08%17%AC/%9E%C2%AE%95%91%92%C4%A3%7F
2010-03-16 12:24:52 +01:00
Sebastian Spaeth
ce50b33cf0 add notmuch stub that will allow me to run the notmuch testsuite over the python bindings.
--HG--
extra : transplant_source : %E4%EF%29%A3%9BA%C57%7C%EC%B0%7BF%FB%00%F0%EB%97%92%E3
2010-03-16 12:21:18 +01:00
Sebastian Spaeth
338e68e545 Find the notmuch shared lib rather than hardode a location
--HG--
extra : transplant_source : %DEOdF%80%83%3A%3D%98%5C%AE%81%FE%BA%EF%1A%16%82u%E8
2010-03-16 11:52:56 +01:00
Sebastian Spaeth
55f1971437 Implement Message(), Database.find_message(), Database.create()
Message() basically has get_message_id get_filename get_tags
Plus various bullet proofing and bug fixing.

--HG--
extra : transplant_source : O%3B1%EB%E0%D4pYrEY_%E3%0E%BA%C23%11a%B0
2010-03-16 11:27:31 +01:00
Sebastian Spaeth
90c47567f4 improve README example session to reflect reality
--HG--
extra : transplant_source : %15P%B8E%1A%CE%0D%DE%CEB%E0/%E04%2B%3F%255%A1%F9
2010-03-15 17:12:52 +01:00
Sebastian Spaeth
632762cd1a Tags: clarify documentation: we can only iterate once over Tags, and free underlying tags once we iterated through.
--HG--
extra : transplant_source : %0BI%C9%899k%80%8C4j%07%85%038%86%04%2A%FE%A6%A3
2010-03-15 16:00:11 +01:00
Sebastian Spaeth
b4fdf0ae30 initial revision. See README for what works
--HG--
extra : transplant_source : %FBQ%B3%C5%0E%85%E8%0B%154%F5t%19%2A%C6p%A5%1Dd%F1
2010-03-15 15:47:15 +01:00
Sebastian Spaeth
9286296f46 COPYING: add GPL v3+ 2010-03-16 22:48:35 +01:00
Sebastian Spaeth
d30049d2b9 notmuch-show: add tags to json output
The previous json patches forgot to add the notmuch tags to the json
output. This is inconsistent to the text output so here they are. We
just output a 'tags' field that sends notmuch tags as a json array.

Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2010-03-11 04:30:46 -08:00
Carl Worth
bb61755afe emacs: Fix search refresh when on the last line of a search buffer.
We currently allow the cursor to be positioned on the "End of search
results" line after the last thread in a search buffer. When
refreshing on this line, there's no thread ID to be used as the
target.

Previously, a refresh from this case would result in a nil thread
target, but we were also using nil to indicate that the target thread
had been found. This caused the position to be lost during refresh,
(the cursor would move from the last line in the buffer to the first).

We fix this by using a magic string of "found" rather than nil to
clearly indicate whether the target thread has actually been found.
2010-03-10 11:07:58 -08:00
Carl Worth
70ef8de798 emacs: Adjust search refresh to use a target line not a target position.
It doesn't make sense to move the cursor to some random point in the
middle of a line. We always want the refresh to leave the cursor at
the beginning of some line instead.
2010-03-10 11:07:51 -08:00
Carl Worth
86232e62ab Makefile: Fix Makefiles to depend on all child Makefile fragments.
We were previously maintaining two lists of the child Makefile
fragments---one for the includes and another for the dependencies. So,
of course, they drifted and the dependency list wasn't up to date.

We fix this by adding a single subdirs variable, and then using GNU
Makefile substitution to generate both the include and the dependency
lists.

Some side effect of this change caused the '=' assignment of the dir
variable to not work anymore. I'm not sure why that is, but using ':='
makes sense here and fixes the problem.
2010-03-10 10:59:57 -08:00
Carl Worth
f47bec55bd Makefile: Use 'emacs --quick' for a less noisy build of "make install-emacs".
I don't really notice if it goes any quicker, but it's sure nice to have
less spew now.
2010-03-10 10:58:46 -08:00
Carl Worth
ce6cfd6408 Makefile: Add a message after "make install-emacs"
More help to guide the new user here. Tell the user how to actually
invoke the emacs client now that it's installed.
2010-03-10 10:50:20 -08:00
Carl Worth
b6df83bef0 Makefile: Conditionalize the "make install" message.
This is the same approach as with the 'all' target previously.
2010-03-10 10:48:47 -08:00
Carl Worth
985263cf51 Makefile: Simplify the conditional message of the all target.
We wamt a simple "make" to call the 'all' target and then print a
message when done, but we don't want "make install" which depends on
that same 'all' target to print the message.

We previously did this with a separate 'all-without-message' target,
which was inelegant because it caused all users of the target to
carefully depend on 'all-without-message' rather than 'all'.

Instead, we now use a single 'all' target but with a Makefile
conditional that examines the MAKECMDGOALS variable to determine
whether to print the message.
2010-03-10 10:44:44 -08:00
Carl Worth
adf5c5ec35 Makefile: Add message to make install listing the other install targets.
Otherwise, it's hard for the user to know that things like install-emacs,
install-bash, and install-zsh even exist.
2010-03-10 10:07:34 -08:00
Carl Worth
2b8131f079 Makefile: Add a meesage after "make" telling the user to run "make install"
As one command completes, it's kind of the tool to indicate which
command the user should execute next.
2010-03-09 17:03:11 -08:00