The b versions of this look good to me.
Best wishes
Mark
On Sat, 15 Dec 2012, David Bremner da...@tethera.net wrote:
Peter Wang noval...@gmail.com writes:
On Sat, 15 Dec 2012 08:45:33 +, Mark Walters markwalters1...@gmail.com
wrote:
This version looks good to me with one very minor
We add a hook to the show buffer in the message window to close the
message window when that buffer quits. It checks that the
message-window is still displaying the show-message buffer and then
closes it.
---
This is (probably) a rather better version than the previous
attempt. It uses hooks
On Sun, 09 Dec 2012, Jani Nikula j...@nikula.org wrote:
---
test/text | 29 +
1 file changed, 29 insertions(+)
diff --git a/test/text b/test/text
index 428c89b..e003a66 100755
--- a/test/text
+++ b/test/text
@@ -52,4 +52,33 @@ output=$(notmuch search
These are slightly rough around the edges, but I think they are useful.
They already helped me track down a memory leak in notmuch new
(id:1355234087-6886-1-git-send-email-da...@tethera.net,
id:1355196820-29734-1-git-send-email-da...@tethera.net)
They also would have caught the restore leak Jani
From: David Bremner brem...@debian.org
The initial notmuch-new and caching are now done automatically by
time_start
---
performance-test/00-new |4
1 file changed, 4 deletions(-)
diff --git a/performance-test/00-new b/performance-test/00-new
index 6f0b50c..553bb8b 100755
---
From: David Bremner brem...@debian.org
The idea is run some code under valgrind --leak-check=full and report
a summary, leaving the user to peruse the log file if they want.
We go to some lengths to preserve the log files from accidental
overwriting; the full corpus takes about 3 hours to run
From: David Bremner brem...@debian.org
In id:87vcc2q5n2@nikula.org, Jani points out a memory leak in the
current version of the sup restore code. Among other things, this test
is intended to verify a fix for that leak.
---
performance-test/M01-dump-restore | 15 +++
1 file
Quoth da...@tethera.net on Dec 16 at 2:23 pm:
From: David Bremner brem...@debian.org
The idea is run some code under valgrind --leak-check=full and report
a summary, leaving the user to peruse the log file if they want.
We go to some lengths to preserve the log files from accidental
In id:87vcc2q5n2@nikula.org, Jani points out a memory leak in the
new restore code. This series is a proposed fix, namely do any
allocation on a temporary talloc context that is destroyed after each
line is processed.
___
notmuch mailing list
From: David Bremner brem...@debian.org
This lets the high level code in notmuch restore be ignorant about
what the lower level code is doing as far as allocating memory.
---
notmuch-restore.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/notmuch-restore.c
From: David Bremner brem...@debian.org
This code is no less correct than the previous version, since it does
not make sense for the array to live longer than the wrapping struct.
By not relying on the context passed into tag_parse_line, we can allow
tag_op_list_t structures to live longer than
On Mon, 03 Dec 2012, Jani Nikula j...@nikula.org wrote:
Add --remove-all option to notmuch tag to remove all tags matching
query before applying the tag changes. This allows removal and
unconditional setting of the tags of a message:
$ notmuch tag --remove-all id:f...@example.com
$ notmuch
On Sat, Dec 15, 2012 at 11:41 AM, Patrick Totzke patricktot...@gmail.comwrote:
Well, thats not the point.. the script shouldn't die like this.
I think it's be better if the script caught that exception, deleted the
file
and continued..
Probably, but I suspect it's related to whatever
Hi all, v3 of id:cover.1355064714.git.j...@nikula.org
Changes since v2:
* add new patch 1/5 to clarify sprinter documentation
* fix the test patch 4/5 according to id:8738z6wguj@qmul.ac.uk and
id:87y5gyvvv7@awakening.csail.mit.edu
Diff to v2 at the end of the cover letter.
BR,
For text printers, the separator is a syntactic element.
---
sprinter.h |9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/sprinter.h b/sprinter.h
index 59776a9..f43a844 100644
--- a/sprinter.h
+++ b/sprinter.h
@@ -42,10 +42,11 @@ typedef struct sprinter {
*/
Same as the text formatter, but with each field separated by a null
character rather than a newline character.
---
sprinter-text.c | 22 ++
sprinter.h |6 ++
2 files changed, 28 insertions(+)
diff --git a/sprinter-text.c b/sprinter-text.c
index 10343be..7779488
Add new format text0, which is otherwise the same as text, but use the
null character as separator instead of the newline character. This is
similar to find(1) -print0 option, and works together with the
xargs(1) -0 option.
---
notmuch-search.c | 16 ++--
1 file changed, 14
---
test/text | 33 +
1 file changed, 33 insertions(+)
diff --git a/test/text b/test/text
index 428c89b..b5ccefc 100755
--- a/test/text
+++ b/test/text
@@ -52,4 +52,37 @@ output=$(notmuch search --format=text tëxt-search-méssage
| notmuch_search_s
---
man/man1/notmuch-search.1 | 26 --
1 file changed, 16 insertions(+), 10 deletions(-)
diff --git a/man/man1/notmuch-search.1 b/man/man1/notmuch-search.1
index 0aff348..22bcd0a 100644
--- a/man/man1/notmuch-search.1
+++ b/man/man1/notmuch-search.1
@@ -25,9 +25,11 @@
On Sun, 16 Dec 2012, Jani Nikula j...@nikula.org wrote:
Hi all, v3 of id:cover.1355064714.git.j...@nikula.org
Changes since v2:
* add new patch 1/5 to clarify sprinter documentation
* fix the test patch 4/5 according to id:8738z6wguj@qmul.ac.uk and
On Sun, 16 Dec 2012, Jani Nikula j...@nikula.org wrote:
Hi all, v3 of id:cover.1355064714.git.j...@nikula.org
Changes since v2:
* add new patch 1/5 to clarify sprinter documentation
* fix the test patch 4/5 according to id:8738z6wguj@qmul.ac.uk and
Austin Clements amdra...@mit.edu writes:
This provides library functions for unified handling of errors from
the notmuch CLI. Follow-up patches will convert some scattered error
handling to use this and add error handling where we currently ignore
errors.
pushed,
d
On Sun, 16 Dec 2012, Mark Walters markwalters1...@gmail.com wrote:
On Mon, 03 Dec 2012, Jani Nikula j...@nikula.org wrote:
Add --remove-all option to notmuch tag to remove all tags matching
query before applying the tag changes. This allows removal and
unconditional setting of the tags of a
Hi all, a quick rebase of id:cover.1355691124.git.j...@nikula.org to fix
a tiny conflict in patch context of 3/5.
BR,
Jani.
Jani Nikula (5):
sprinter: clarify separator documentation
sprinter: add text0 formatter for null character separated text
cli: add --format=text0 to notmuch search
For text printers, the separator is a syntactic element.
---
sprinter.h |9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/sprinter.h b/sprinter.h
index 59776a9..f43a844 100644
--- a/sprinter.h
+++ b/sprinter.h
@@ -42,10 +42,11 @@ typedef struct sprinter {
*/
Same as the text formatter, but with each field separated by a null
character rather than a newline character.
---
sprinter-text.c | 22 ++
sprinter.h |6 ++
2 files changed, 28 insertions(+)
diff --git a/sprinter-text.c b/sprinter-text.c
index 10343be..7779488
Add new format text0, which is otherwise the same as text, but use the
null character as separator instead of the newline character. This is
similar to find(1) -print0 option, and works together with the
xargs(1) -0 option.
---
notmuch-search.c | 16 ++--
1 file changed, 14
---
test/text | 33 +
1 file changed, 33 insertions(+)
diff --git a/test/text b/test/text
index 428c89b..b5ccefc 100755
--- a/test/text
+++ b/test/text
@@ -52,4 +52,37 @@ output=$(notmuch search --format=text tëxt-search-méssage
| notmuch_search_s
---
man/man1/notmuch-search.1 | 26 --
1 file changed, 16 insertions(+), 10 deletions(-)
diff --git a/man/man1/notmuch-search.1 b/man/man1/notmuch-search.1
index 5c771fa..12f6719 100644
--- a/man/man1/notmuch-search.1
+++ b/man/man1/notmuch-search.1
@@ -25,9 +25,11 @@
da...@tethera.net writes:
+
+memory_run 'load nmbug tags' 'notmuch restore --accumulate
--input=corpus.tags/nmbug.sup-dump'
+memory_run 'dump *' 'notmuch dump --output=tags.sup'
+memory_run 'restore *' 'notmuch restore --input=tags.sup'
+memory_run 'dump --format=batch-tag *' 'notmuch dump
Quoting Jason A. Donenfeld (2012-12-16 20:44:04)
On Sat, Dec 15, 2012 at 11:41 AM, Patrick Totzke patricktot...@gmail.com
wrote:
Well, thats not the point.. the script shouldn't die like this.
I think it's be better if the script caught that exception, deleted the
file
and
On Sun, 16 Dec 2012, da...@tethera.net wrote:
From: David Bremner brem...@debian.org
This lets the high level code in notmuch restore be ignorant about
what the lower level code is doing as far as allocating memory.
---
notmuch-restore.c | 12 ++--
1 file changed, 10
If understand correctly, your concern is with the second copy of a
message with the same message-id not showing up in your inbox? If so, this is
more or less a feature (although in the case where the duplicated
message id's are because of malice or stupidity on the sender's part,
and not
On Mon, Dec 17 2012, Jani Nikula j...@nikula.org wrote:
Hi all, a quick rebase of id:cover.1355691124.git.j...@nikula.org to fix
a tiny conflict in patch context of 3/5.
BR,
Jani.
As Mark Austin (also) gave +1 to v3 added notmuch::patch (only).
Tomi
Jani Nikula (5):
sprinter:
On Mon, Dec 17 2012, Tomi Ollila tomi.oll...@iki.fi wrote:
On Mon, Dec 17 2012, Jani Nikula j...@nikula.org wrote:
Hi all, a quick rebase of id:cover.1355691124.git.j...@nikula.org to fix
a tiny conflict in patch context of 3/5.
BR,
Jani.
As Mark Austin (also) gave +1 to v3 added
From: David Bremner brem...@debian.org
The argument handling in notmuch.c seems due for an overhaul, but
until then use an environment variable to specify a location to write
the talloc leak report to. This is only enabled for the (interesting)
case where some notmuch subcommand is invoked.
---
From: David Bremner brem...@debian.org
This gives line numbers for better debugging.
---
notmuch-restore.c |7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/notmuch-restore.c b/notmuch-restore.c
index 40596a8..0cc9c9f 100644
--- a/notmuch-restore.c
+++
From: David Bremner brem...@debian.org
These are intended to be simple wrappers to provide slightly better
debugging information than what talloc currently provides natively.
---
notmuch-client.h|2 +-
util/Makefile.local |2 +-
util/xtalloc.c | 15 +++
This obsoletes
id:1355688997-19164-1-git-send-email-da...@tethera.net
Actually the first patch in the series is now an unrelated bug fix,
since it isn't needed anymore for 2 and 3.
___
notmuch mailing list
notmuch@notmuchmail.org
From: David Bremner brem...@debian.org
Previously notmuch_restore_command returned 0 if tag_message returned
a non-zero (failure) value. This is wrong, since non-zero status
indicates something mysterious went wrong with retrieving the message,
or applying it.
There was also a failure to check
From: David Bremner brem...@debian.org
This lets the high level code in notmuch restore be ignorant about
what the lower level code is doing as far as allocating memory.
---
notmuch-restore.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/notmuch-restore.c
From: David Bremner brem...@debian.org
This code is no less correct than the previous version, since it does
not make sense for the array to live longer than the wrapping struct.
By not relying on the context passed into tag_parse_line, we can allow
tag_op_list_t structures to live longer than
On Fri, 14 Dec 2012, david at tethera.net wrote:
> From: David Bremner
>
> This could live in tag-util as well, but it is really nothing specific
> to tags (although the conventions are arguable specific to Xapian).
>
> The API is changed from "caller-allocates" to "readline-like". The scan for
>
On Fri, 14 Dec 2012, david at tethera.net wrote:
> From: David Bremner
>
> We are able to detect more errors by looking at the string before it
> is hex-decoded. We also need this to avoid the query quoting for more
> general queries (to be written) that will mess up raw message-ids.
> ---
>
On Sat, 15 Dec 2012, david at tethera.net wrote:
> From: David Bremner
>
> ---
> and here is the updated description.
>
> man/man1/notmuch-tag.1 | 19 ++-
> 1 file changed, 14 insertions(+), 5 deletions(-)
>
> diff --git a/man/man1/notmuch-tag.1 b/man/man1/notmuch-tag.1
> index
On Fri, 14 Dec 2012, david at tethera.net wrote:
> From: Jani Nikula
>
> Add support for batch tagging operations through stdin to "notmuch
> tag". This can be enabled with the new --batch command line option to
> "notmuch tag". The input must consist of lines of the format:
>
> +|- [...] [--]
On Fri, 14 Dec 2012, david at tethera.net wrote:
> From: David Bremner
>
> The query is split into tokens, with ' ' and ':' as delimiters. Any
> token containing some hex-escaped character is quoted according to
> Xapian rules. This maps id:foo%20%22bar to id:"foo ""bar".
> This intentionally
Write a "charset" field for all omitted parts for which it is applicable,
not only text/html parts. Factor out the code to a separate function.
It will be extended with more fields next.
---
notmuch-show.c | 24
1 file changed, 16 insertions(+), 8 deletions(-)
diff --git
If a leaf part's body content is omitted, return the encoded length and
transfer encoding in --format=json output. This information may be used
by the consumer, e.g. to decide whether to download a large attachment
over a slow link.
Returning the _encoded_ content length is more efficient than
On Sat, Dec 15 2012, Austin Clements wrote:
> This obsoletes id:1355548513-10085-1-git-send-email-amdragon at mit.edu
> and fixes the things Mark and Tomi commented on. The interdiff is
> below.
Ok, new error messages appear at the end. Good.
+1
Tomi
>
> diff --git a/emacs/notmuch-lib.el
LGTM +1
Best wishes
Mark
On Sun, 16 Dec 2012, Austin Clements wrote:
> This series obsoletes [0] and must be applied on top of the Emacs CLI
> error handling series [1]. This is much simpler than the original
> series because it no longer includes the Emacs CLI error handling.
> This also
The b versions of this look good to me.
Best wishes
Mark
On Sat, 15 Dec 2012, David Bremner wrote:
> Peter Wang writes:
>
>> On Sat, 15 Dec 2012 08:45:33 +, Mark Walters > gmail.com> wrote:
>>>
>>> This version looks good to me with one very minor comments:
>>>
>>> Perhaps the name
On Sun, 09 Dec 2012, Jani Nikula wrote:
> ---
> test/text | 29 +
> 1 file changed, 29 insertions(+)
>
> diff --git a/test/text b/test/text
> index 428c89b..e003a66 100755
> --- a/test/text
> +++ b/test/text
> @@ -52,4 +52,33 @@ output=$(notmuch search
We add a hook to the show buffer in the message window to close the
message window when that buffer quits. It checks that the
message-window is still displaying the show-message buffer and then
closes it.
---
This is (probably) a rather better version than the previous
attempt. It uses hooks
On Sun, 09 Dec 2012, Jani Nikula wrote:
> ---
> test/text | 29 +
> 1 file changed, 29 insertions(+)
>
> diff --git a/test/text b/test/text
> index 428c89b..e003a66 100755
> --- a/test/text
> +++ b/test/text
> @@ -52,4 +52,33 @@ output=$(notmuch search --format=text
These are slightly rough around the edges, but I think they are useful.
They already helped me track down a memory leak in notmuch new
(id:1355234087-6886-1-git-send-email-david at tethera.net,
id:1355196820-29734-1-git-send-email-david at tethera.net)
They also would have caught the restore
From: David Bremner
The initial notmuch-new and caching are now done automatically by
time_start
---
performance-test/00-new |4
1 file changed, 4 deletions(-)
diff --git a/performance-test/00-new b/performance-test/00-new
index 6f0b50c..553bb8b 100755
---
From: David Bremner
This is almost entirely renaming files, except for updating a few
references to those file names, and changing the makefile target.
A new set of memory tests will be run separately because they take
much longer.
---
performance-test/00-new|
From: David Bremner
The idea is run some code under valgrind --leak-check=full and report
a summary, leaving the user to peruse the log file if they want.
We go to some lengths to preserve the log files from accidental
overwriting; the full corpus takes about 3 hours to run
From: David Bremner
In id:87vcc2q5n2.fsf at nikula.org, Jani points out a memory leak in the
current version of the sup restore code. Among other things, this test
is intended to verify a fix for that leak.
---
performance-test/M01-dump-restore | 15 +++
1 file
In id:87vcc2q5n2.fsf at nikula.org, Jani points out a memory leak in the
new restore code. This series is a proposed fix, namely do any
allocation on a temporary talloc context that is destroyed after each
line is processed.
From: David Bremner
This lets the high level code in notmuch restore be ignorant about
what the lower level code is doing as far as allocating memory.
---
notmuch-restore.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/notmuch-restore.c
From: David Bremner
This code is no less correct than the previous version, since it does
not make sense for the array to live longer than the wrapping struct.
By not relying on the context passed into tag_parse_line, we can allow
tag_op_list_t structures to live longer than
From: David Bremner
It is maybe a bit counter-intuitive with the condition reversed like
this, but it makes the memory handling fix in the next patch easier.
---
notmuch-restore.c | 15 +--
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git
On Mon, 03 Dec 2012, Jani Nikula wrote:
> Add --remove-all option to "notmuch tag" to remove all tags matching
> query before applying the tag changes. This allows removal and
> unconditional setting of the tags of a message:
>
> $ notmuch tag --remove-all id:foo at example.com
> $ notmuch tag
- next part --
An HTML attachment was scrubbed...
URL:
<http://notmuchmail.org/pipermail/notmuch/attachments/20121216/e36a1be9/attachment-0001.html>
For text printers, the separator is a syntactic element.
---
sprinter.h |9 +
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/sprinter.h b/sprinter.h
index 59776a9..f43a844 100644
--- a/sprinter.h
+++ b/sprinter.h
@@ -42,10 +42,11 @@ typedef struct sprinter {
*/
Same as the text formatter, but with each field separated by a null
character rather than a newline character.
---
sprinter-text.c | 22 ++
sprinter.h |6 ++
2 files changed, 28 insertions(+)
diff --git a/sprinter-text.c b/sprinter-text.c
index 10343be..7779488
Add new format text0, which is otherwise the same as text, but use the
null character as separator instead of the newline character. This is
similar to find(1) -print0 option, and works together with the
xargs(1) -0 option.
---
notmuch-search.c | 16 ++--
1 file changed, 14
---
test/text | 33 +
1 file changed, 33 insertions(+)
diff --git a/test/text b/test/text
index 428c89b..b5ccefc 100755
--- a/test/text
+++ b/test/text
@@ -52,4 +52,37 @@ output=$(notmuch search --format=text "t?xt-search-m?ssage"
| notmuch_search_s
---
man/man1/notmuch-search.1 | 26 --
1 file changed, 16 insertions(+), 10 deletions(-)
diff --git a/man/man1/notmuch-search.1 b/man/man1/notmuch-search.1
index 0aff348..22bcd0a 100644
--- a/man/man1/notmuch-search.1
+++ b/man/man1/notmuch-search.1
@@ -25,9 +25,11 @@
On Sun, 16 Dec 2012, Jani Nikula wrote:
> Hi all, v3 of id:cover.1355064714.git.jani at nikula.org
>
> Changes since v2:
> * add new patch 1/5 to clarify sprinter documentation
> * fix the test patch 4/5 according to id:8738z6wguj.fsf at qmul.ac.uk and
>id:87y5gyvvv7.fsf at
On Sun, 16 Dec 2012, Jani Nikula wrote:
> Hi all, v3 of id:cover.1355064714.git.jani at nikula.org
>
> Changes since v2:
> * add new patch 1/5 to clarify sprinter documentation
> * fix the test patch 4/5 according to id:8738z6wguj.fsf at qmul.ac.uk and
>id:87y5gyvvv7.fsf at
Austin Clements writes:
>
> This series of patches introduces a way for CLI callers to request a
> specific format version on the command line and to determine if the
> CLI does not supported the requested version
pushed,
d
Austin Clements writes:
> This provides library functions for unified handling of errors from
> the notmuch CLI. Follow-up patches will convert some scattered error
> handling to use this and add error handling where we currently ignore
> errors.
pushed,
d
On Sun, 16 Dec 2012, Mark Walters wrote:
> On Mon, 03 Dec 2012, Jani Nikula wrote:
>> Add --remove-all option to "notmuch tag" to remove all tags matching
>> query before applying the tag changes. This allows removal and
>> unconditional setting of the tags of a message:
>>
>> $ notmuch tag
david at tethera.net writes:
> +
> +memory_run 'load nmbug tags' 'notmuch restore --accumulate
> --input=corpus.tags/nmbug.sup-dump'
> +memory_run 'dump *' 'notmuch dump --output=tags.sup'
> +memory_run 'restore *' 'notmuch restore --input=tags.sup'
> +memory_run 'dump --format=batch-tag *'
text parameter..
best,
/p
-- next part --
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: signature
URL:
<http://notmuchmail.org/pipermail/notmuch/attachments/20121216/62774cac/attachment.pgp>
I was playing a bit with adding talloc leak debugging to notmuch
(since it seems to be essentially free, performance-wise). I got a bit
discouraged about modifying the argument handling in notmuch.c, so I
hacked it in via an environment variable.
From: David Bremner
The argument handling in notmuch.c seems due for an overhaul, but
until then use an environment variable to specify a location to write
the talloc leak report to. This is only enabled for the (interesting)
case where some notmuch subcommand is invoked.
From: David Bremner
This gives line numbers for better debugging.
---
notmuch-restore.c |7 ---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/notmuch-restore.c b/notmuch-restore.c
index 40596a8..0cc9c9f 100644
--- a/notmuch-restore.c
+++
From: David Bremner
These are intended to be simple wrappers to provide slightly better
debugging information than what talloc currently provides natively.
---
notmuch-client.h|2 +-
util/Makefile.local |2 +-
util/xtalloc.c | 15 +++
This obsoletes
id:1355688997-19164-1-git-send-email-david at tethera.net
Actually the first patch in the series is now an unrelated bug fix,
since it isn't needed anymore for 2 and 3.
From: David Bremner
Previously notmuch_restore_command returned 0 if tag_message returned
a non-zero (failure) value. This is wrong, since non-zero status
indicates something mysterious went wrong with retrieving the message,
or applying it.
There was also a failure to check
From: David Bremner
This lets the high level code in notmuch restore be ignorant about
what the lower level code is doing as far as allocating memory.
---
notmuch-restore.c | 12 ++--
1 file changed, 10 insertions(+), 2 deletions(-)
diff --git a/notmuch-restore.c
From: David Bremner
This code is no less correct than the previous version, since it does
not make sense for the array to live longer than the wrapping struct.
By not relying on the context passed into tag_parse_line, we can allow
tag_op_list_t structures to live longer than
86 matches
Mail list logo