aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-01-08clean up "compare thread ids" python testPatrick Totzke
This makes the test script open the database in READ_ONLY mode and use the libraries own sorting methods instead of "sort".
2012-01-05Update NEWS for Emacs changesThomas Jost
- A fair amount of conflict resolution by db.
2012-01-05NEWS: give a hint about using sort to achieve the old dump behavior.David Bremner
This is needed for a few applications, and actually is quite fast (relative to the actual dump).
2012-01-05NEWS: fix typos.David Bremner
Thanks to Xavier for one of these.
2012-01-05update NEWSJameson Graef Rollins
This change looks slightly larger than it actually is, since I moved the emacs section below the Performance and Memory Management sections.
2012-01-05emacs: fix notmuch-show-indent-messages-width customization variable nameJameson Graef Rollins
The name was originally notmuch-indent-messages-width, which is inconsistent with our variable naming convention.
2012-01-02python: str.decode() doesn't like kwargs in python 2.5Sebastian Spaeth
Recent changes introduced lots of unicodification of strings, mostly in the form of .decode('utf-8', errors='ignore'). However, python 2.5 does not like the errors keyword argument and complains. It does work when used as a simple arg though, so that's what this patch does. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
2012-01-02python: make the result of Message.get_replies() more pythonicJustus Winter
Formerly Message.get_replies() returned an iterator or None forcing users to check the result before iterating over it leading to strange looking code at the call site. Fix this flaw by adding an EmptyMessagesResult class that behaves like the Messages class but immediatly raises StopIteration if used as an iterator and returning objects of this type from Message.get_replies() to indicate that there are no replies.
2012-01-02python: refactor print_messages into format_messages and print_messagesJustus Winter
2012-01-02python: add missing conversions from and to utf-8Justus Winter
2012-01-02py3k: Add and use a mixin class that implements __str__Justus Winter
Amended by Sebastian Spaeth <Sebastian@SSpaeth.de> to include the required sys import in globals.py.
2012-01-02py3k: Rename .next() to __next__(), add python2.x compatibility aliasJustus Winter
2012-01-02py3k: All strings are unicode strings in py3kJustus Winter
2012-01-02py3k: The ConfigParser module has been renamed to configparserJustus Winter
2012-01-02py3k: The execfile built-in has been removed in python 3Justus Winter
2012-01-02debian: changelog stanza for 0.11~rc2-1debian/0.11_rc2-10.11_rc2David Bremner
Set dist=experimental the first time.
2012-01-02debian: fix typo in changelogDavid Bremner
Previous version was actually uploaded to experimental, not unstable
2012-01-02version: bump to 0.11~rc2David Bremner
This to "celebrate" pushing a bugfix in at the last minute.
2012-01-02lib: call g_mime_init() from notmuch_database_open()Kazuo Teramoto
As reported in id:"CAEbOPGyuHnz4BPtDutnTPUHcP3eYcRCRkXhYoJR43RUMw671+g@mail.gmail.com" sometimes gmime tries to access a NULL pointer, e.g. g_mime_iconv_open() tries to access iconv_cache that is NULL if g_mime_init() is not called. This causes notmuch to segfault when calling gmime functions. Calling g_mime_init() initializes iconv_cache and others variables needed by gmime, making sure they are initialized when notmuch calls gmime functions.
2011-12-31lib: call g_mime_init() from notmuch_database_open()Kazuo Teramoto
As reported in id:"CAEbOPGyuHnz4BPtDutnTPUHcP3eYcRCRkXhYoJR43RUMw671+g@mail.gmail.com" sometimes gmime tries to access a NULL pointer, e.g. g_mime_iconv_open() tries to access iconv_cache that is NULL if g_mime_init() is not called. This causes notmuch to segfault when calling gmime functions. Calling g_mime_init() initializes iconv_cache and others variables needed by gmime, making sure they are initialized when notmuch calls gmime functions. Test marked fix by db.
2011-12-31test: add two new messages to corpus with iso-8859-1 encodingDavid Bremner
One is quoted printable, the other users 8 bit encoding. The latter triggers a bug in the python bindings due to missing call to g_mime_init. The corresponding test is marked broken in this commit.
2011-12-31test: use file based comparison for search '*' testDavid Bremner
This seems a bit easier to maintain, and is more accurate since lines are not joined together.
2011-12-31notmuch: replace built-in help with exec of manDavid Bremner
"notmuch help" now relies on a working man installation, and a correct setting of MANPATH, for users that install in "unusual" places. This should probably noted in NEWS before shipping. There is still some small duplication of docs as the one line summaries are hard coded in the binary. This seems preferable to complicated script games, at least as long was we are using a presentation level markup like nroff.
2011-12-31force install notmuch-setup.1 symlinkJameson Graef Rollins
This will prevent the install from failing if the link already exists.
2011-12-31break up dump and restore man pages.Jameson Graef Rollins
These functions are enough different in their behavior that it's not really worth it to combine them. They overlap in the format of the dump file, but we can have a separate page that describes the dump format, and either reference it or include it. This also keeps things nice and clean with one page per command.
2011-12-31remove reference to notmuch-part.1 from Makefile.localJameson Graef Rollins
2011-12-31debian: install split man pages.David Bremner
We now have man pages in sections 5 and 7 as well, so we copy the whole /usr/share/man hierarchy.
2011-12-31build-system: update for split man pagesDavid Bremner
- We have to remove the installation of notmuch.1.gz from the top level Makefile.local. - Man pages with multiple names are handled by making relative symlinks in the install-man target. - update version tests and convenience rules for split man pages The man page version test still only checks notmuch.1, but the location is updated. update-man-versions is longer than the one-line previously in update-versions mainly because I decided to take the high road and stick to POSIX sed (thus, no sed -i). The sed regex itself is more complicated to cope with variations in the headers.
2011-12-31man/*: fixup page referencesDavid Bremner
- Replace references to section X below with page refences. - Add SEE ALSO to each page. This is a bit error prone, because each SEE ALSO section is different, i.e. a page does not refer to itself.
2011-12-31notmuch-config.1: fix typoDavid Bremner
2011-12-31notmuch.1: smooth wording.David Bremner
After most of the content was ripped out of the page, a few words were needed to glue things back togetehr.
2011-12-31man/*: formatting cleanupDavid Bremner
Fix some problems with indentation (controlled by markup) and whitespace. - notmuch.1: reformat Use .SS macro to make "notmuch setup" a subsection. Introduce another subsection for the remaining commands. - notmuch-config.1: reformat Put all the syntax in the synopsis. Supposedly this is the the UNIX way. - notmuch-reply.1: fix formatting issues. Give nicer formatting for synopsis. Insert missing SEE ALSO header. - notmuch-dump.1: reformat using subsections These seems more natural, although, as mentioned, it does require referring back to the synopsis. Or maybe copying parts of the synopsis
2011-12-31man: add symlinks for notmuch-restore.1 and notmuch-setup.1David Bremner
These are just for the convenience of testers using $src/man as an element of MANPATH. They are intentionally omitted from MAN1, so that they do not interfere with the install.
2011-12-31remove notmuch-part from documentation.David Bremner
This should have been done when "notmuch part" was deprecated and replaced by notmuch show --part, but it slipped through the cracks.
2011-12-31initial splitting of notmuch.1David Bremner
We mostly just cut and paste the command descriptions into individual files, with a short header added to each one. The splitting into subdirectories is to support the use of ./man as an element in MANPATH, e.g. for testing.
2011-12-31test/symbol-hiding: prepend new directory to LD_LIBRARY_PATHTomi Ollila
Tester may have set LD_LIBRARY_PATH to find libraries required by notmuch. Therefore add $TEST_DIRECTORY/../lib to the beginning of current list of library paths in $LD_LIBRARY_PATH before running symbol-test.
2011-12-30Update NEWS for change by Aaron EcayAaron Ecay
- text moved around within NEWS into existing Emacs section by committer
2011-12-30NEWS: add item for notmuch-deliverDavid Bremner
Ali mentioned he is very busy these days, so I just made something up rather than waiting for a NEWS item from him.
2011-12-29test: Remove #! line from test-lib.shAustin Clements
It makes no sense to run test-lib.sh, so it makes no sense to give it an interpreter. This is particularly annoying for Emacs users who have executable-insert set, since the presence of the #! line will cause Emacs to mark test-lib.sh executable when saving it, which will in turn case the 'basic' test to fail.
2011-12-29test: Make generated message date a real dateAustin Clements
January 5, 2001 was a Tuesday, not a Friday. Jameson fixed this exact problem for the multipart test in ec2b0a98cc, but not for generate_message itself. As Jameson pointed out in ec2b0a98cc, if we want to test date parsing, we should do it separately.
2011-12-29Ignore encrypted parts when indexing.Jameson Graef Rollins
It appears to be an oversight that encrypted parts were indexed previously. The terms generated from encrypted parts are meaningless and do nothing but add bloat to the database. It is not worth indexing the encrypted content, just as it's not worth indexing the signatures in signed parts.
2011-12-28NEWS: two memory leaks fixes for 0.11Tomi Ollila
2011-12-28test: allow user to choose which emacs to run tests with.David Bremner
As we start to pay more attention to emacs24, it helps to be able to select a different version of emacs to run the tests with to verify version specific bugs. A separate variable TEST_EMACS is needed to avoid being overwritten by the make variable EMACS in Makefile.config For what it's worth, the value of emacs is chosen at the time tmp.emacs/run_emacs is created, so is fixed for all subtests.
2011-12-28test: Updated the expected output to match the newly enabled text/plain hooks.David Edmondson
2011-12-28emacs: Enable more text/plain hook functions by default.David Edmondson
Users are missing out on various functions which usefully improve the display of text/plain message parts because they are not enabled by default. Enable a useful set. `notmuch-wash-convert-inline-patch-to-part' is _not_ enabled by default as it is based on a heuristic.
2011-12-28test: emacs: test notmuch-wash-subject-to-* functionsJani Nikula
Signed-off-by: Jani Nikula <jani@nikula.org>
2011-12-28emacs: create patch filename from subject for inline patch fake partsJani Nikula
Use the mail subject line for creating a descriptive filename for the wash generated inline patch fake parts. The names are similar to the ones created by 'git format-patch'. If the user has notmuch-wash-convert-inline-patch-to-part hook enabled in notmuch-show-insert-text/plain-hook, this will change the old default filename of "inline patch" in fake parts: [ inline patch: inline patch (as text/x-diff) ] into, for example: [ 0002-emacs-create-patch-filename-from-subject-for-inline.patch: inline patch (as text/x-diff) ] which is typically the same filename the sender had if he was using 'git format-patch' and 'git send-email'. Signed-off-by: Jani Nikula <jani@nikula.org>
2011-12-28emacs: add inline patch fake parts through a special handlerJani Nikula
Add wash generated inline patch fake parts through a special "inline-patch-fake-part" handler to distinguish them from real MIME parts. The fake parts are described as "inline patch (as text/x-diff)". Signed-off-by: Jani Nikula <jani@nikula.org>
2011-12-26NEWS: emacs: notmuch-poll-script and saved search news itemsJani Nikula
2011-12-25version: update version to 0.11~rc1debian/0.11_rc1-10.11_rc1David Bremner
and keep python, man page, and debian package in sync.