summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-11-03debian: refinalize changelogdebian/0.34.1-1archive/debian/0.34.1-10.34.1David Bremner
2021-11-03NEWS: finalize release dateDavid Bremner
2021-10-31debian: changelog for 0.34.1-1David Bremner
2021-10-31NEWS: start news for 0.34.1David Bremner
2021-10-31version: bump to 0.34.1David Bremner
2021-10-30lib/load_config: deallocate / NULL database on fatal errorDavid Bremner
This fixes a potential memory leak, and makes the behaviour of notmuch_database_load_config (somewhat) consistent with n_d_{open,create} with config.
2021-10-30lib/load_config: document expectations for db on error, add testsDavid Bremner
This is a bit different than n_d_{open,create}_with_config, since there are several non-zero status codes where we do want to return a non-NULL database structure.
2021-10-30lib/create: fix memory leak, ensure *database=NULL on errorDavid Bremner
This code previously relied on _finish_open to free the notmuch struct on errors (except for the case of database == NULL, which was a potential double free). When we removed those frees from _finish_open, we introduced a (small) memory leak. In this commit, fix the memory leak, and harmonize the on-error behaviour with n_d_open_with_config.
2021-10-30lib/create: document expectations for db on error, add testsDavid Bremner
It seems sensible to harmonize the behaviour with n_d_open_with_config. In this commit we just assert the desired behaviour.
2021-10-30lib/open: fix potential double-free, ensure *database=NULL on errorDavid Bremner
During refactoring for 0.32, the code that set notmuch=NULL on various errors was moved into _finish_open. This meant that the the code which relied on that to set *database to NULL on error was no longer correct. It also introduced a potential double free, since the notmuch struct was deallocated inside _finish_open (via n_d_destroy). In this commit we revert to "allocator frees", and leave any cleanup to the caller of _finish_open. This allows us to get back the behaviour of setting *database to NULL with a small change. Other callers of _finish_open will need free notmuch on errors.
2021-10-30test: add two known broken tests for missing config filesDavid Bremner
The documentation claims that the database will be set to NULL in this case, but it is currently not happening. Based on a reproducer [1] from Austin Ray. [1]: id:20211021190401.imirxau2ewke6e2m@athena
2021-10-30lib: document n_o_w_config can return NOTMUCH_STATUS_NO_CONFIGDavid Bremner
This should be treated as fatal by callers, since we didn't succeed in opening a Xapian database.
2021-10-27NEWS: fix typo in 0.34 news.David Bremner
Thanks to jrm on IRC for finding the typo.
2021-10-27test/libconfig: use 'export' when restoring NOTMUCH_CONFIGDavid Bremner
This is required when NOTMUCH_CONFIG has been unset, and is harmless otherwise.
2021-10-20NEWS: set datedebian/0.34-1archive/debian/0.34-10.34David Bremner
2021-10-20debian: changelog for 0.34David Bremner
2021-10-20add NEWS for remaining changesDavid Bremner
2021-10-20version: bump to 0.34David Bremner
2021-10-20NEWS: update sexp-query newsDavid Bremner
2021-10-19emacs: fix call to nonexistent notmuch--call-process-shell-commandDoug Woos
Looks like a find/replace error in e722b4f4
2021-10-15debian: add dependency on libsexp-devdebian/0.34_rc0-1archive/debian/0.34_rc0-10.34_rc0David Bremner
Enable the s-expression query parser in Debian.
2021-10-15debian: add changelog for 0.34~rc0David Bremner
2021-10-15INSTALL: document optional dependency on libsfsexpDavid Bremner
For now putting it in the apt-get line will cause complaints about missing packages for too many people.
2021-10-15NEWS: stub news for 0.34~rc0David Bremner
This is mostly to pacify the release checks. NEWS will be filled in during the release process.
2021-10-15lib: bump lib minor version to 5David Bremner
One new function (and an enum) was added to the API/ABI.
2021-10-15debian: add new function to symbols fileDavid Bremner
2021-10-15version: bump to 0.34~0David Bremner
Start release process for 0.34.
2021-10-12debian: install notmuch-sexp-queries man pageDavid Bremner
This was missed in the series that added the sexp-query parser and docs.
2021-10-10configure: whitespace cleanupDavid Bremner
In order to make it easier to keep the whitespace consistent in the configure script, use the same style defined in devel/STYLE for C/C++. Specifically, a line should begin with zero or more tabs followed by fewer than eight spaces. Presumably this will be no more difficult for people editing configure than for people editing the C and C++ code.
2021-10-10devel: script for checking a commit (series)David Bremner
'check-notmuch-commit' is an updated version of a script I have been using (although not always as consistently as I should) before sending patches to the list. Although it requires a bit more tooling, encouraging people to use check-notmuch-commit might reduce the number of round trips to the list for style nitpicks.
2021-10-09configure: check explicitely for python dev (include) filesDavid Bremner
As discussed at [1] we have received reports that the implicit check using cffi.FFI().verify() is not reliable in all environments. Since we already use pkg-config, and the python dev package should include a .pc file [2], add an extra check using pkg-config. On at least Debian, we have to know which version of python dev files with are looking for, so calculate that first. [1]: id:87im1g35ey.fsf@tethera.netid:87im1g35ey.fsf@tethera.net, [2]: checked on Debian and Fedora
2021-09-30Merge tag '0.33.2'David Bremner
notmuch 0.33.2 release
2021-09-30version: bump to 0.33.20.33.2David Bremner
2021-09-30debian: changelog for 0.33.2-1David Bremner
2021-09-30NEWS: update for 0.33.2David Bremner
2021-09-29test/T355-smime: Use key as exported by gpgsmDavid Bremner
As reported in id:87h7pxiek3.fsf@tethera.net, the previous version of the test is flaky. There is some so-far undebugged interaction between openssl and gpgsm that causes the keys to fail to import. As a potential workaround, use the key as exported by gpgsm, and eliminate openssl from this particular pipeline.
2021-09-20emacs: notmuch-tree: customizable strings for drawing treesjao
New customizable variable, notmuch-tree-thread-symbols, that allows tweaking of how trees in a forest are represented. For instance, one can now choose to use an hyphen rather than a white space as a prefix, or replace the character(s) used to draw arrows. Amended-By: db; delete errant '3'
2021-09-11test/emacs: tests for notmuch-{tree,unthreaded} with bad CWDDavid Bremner
These work thanks to the previous wrapping of process creation primitives.
2021-09-11emacs: wrap call-processDavid Bremner
Provide safe working directory
2021-09-11test/emacs: test for notmuch-show with nonexistent CWDDavid Bremner
Somewhat predictably, the other code path in notmuch-call-notmuch--helper also needs to be fixed.
2021-09-11emacs: wrap make-processDavid Bremner
Provide a safe working directory.
2021-09-11test/emacs: test for notmuch-search with nonexistent CWDDavid Bremner
(At least) notmuch-start-notmuch needs to be updated to set a safe working directory.
2021-09-11emacs: wrap call-process-regionDavid Bremner
As with notmuch--process-lines, initial purpose is to provide a safe binding for default-directory. This is enough to make notmuch-hello robust against non-existent or corrupt values default-directory, but probably not other views.
2021-09-11emacs: wrap process-linesDavid Bremner
Initially just set the working directory, to avoid (the implicit) call-process crashing when the default-directory points to a non-existent location. Use of a macro here is over-engineering for this change, but the same change needs to be applied to several other process creation primitives.
2021-09-11test/emacs: run notmuch-hello with a nonexisting default dirDavid Bremner
This replicates the problem reported in Debian bug #922536.
2021-09-11test/emacs: provide macro test-log-errorDavid Bremner
Because of the way emacs reports errors, a test form can crash and not change the main buffer. To work around this, capture both signalled errors and any other messages.
2021-09-10Merge tag '0.33.1'David Bremner
notmuch 0.33.1 release
2021-09-10debian: drop debian specific test exclusiondebian/0.33.1-1archive/debian/0.33.1-10.33.1David Bremner
In principle these tests should pass now.
2021-09-10debian: changelog for 0.33.1-1David Bremner
2021-09-10NEWS: update for 0.33.1David Bremner