unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH 0/4] ruby: quick update before the freeze!
       [not found] <87txzsgs4g.fsf@zancas.localnet>
@ 2012-05-07 15:02 ` Ali Polatel
  2012-05-07 15:02   ` [PATCH 1/4] ruby: Add wrapper for notmuch_query_count_messages Ali Polatel
                     ` (3 more replies)
  0 siblings, 4 replies; 10+ messages in thread
From: Ali Polatel @ 2012-05-07 15:02 UTC (permalink / raw)
  To: David Bremner; +Cc: Ali Polatel, notmuch

Hey David,

I've polished the small patch series I had lying around.
I believe I've covered all the lacking API changes.

In addition, the third patch fixes a long-standing bug about the build.

I've decided to send these to you and the list instead of committing right away
in case someone notices any quick errors. Otherwise, please commit these before
the freeze and make rubyists happy.

Ali Polatel (4):
  ruby: Add wrapper for notmuch_query_count_messages
  ruby: Add wrapper for notmuch_query_add_tag_exclude
  ruby: Add workarounds to use in-tree build not the installed one
  ruby: Add wrapper for notmuch_query_set_omit_excluded()

 bindings/ruby/defs.h     |   13 +++++++++--
 bindings/ruby/extconf.rb |   26 +++++++++++++++++----
 bindings/ruby/init.c     |   11 ++++++++-
 bindings/ruby/query.c    |   57 +++++++++++++++++++++++++++++++++++++++++++++-
 4 files changed, 99 insertions(+), 8 deletions(-)

-- 
1.7.10.1

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/4] ruby: Add wrapper for notmuch_query_count_messages
  2012-05-07 15:02 ` [PATCH 0/4] ruby: quick update before the freeze! Ali Polatel
@ 2012-05-07 15:02   ` Ali Polatel
  2012-05-07 15:02   ` [PATCH 2/4] ruby: Add wrapper for notmuch_query_add_tag_exclude Ali Polatel
                     ` (2 subsequent siblings)
  3 siblings, 0 replies; 10+ messages in thread
From: Ali Polatel @ 2012-05-07 15:02 UTC (permalink / raw)
  To: David Bremner; +Cc: Ali Polatel, notmuch

---
 bindings/ruby/defs.h  |    3 +++
 bindings/ruby/init.c  |    3 ++-
 bindings/ruby/query.c |   21 ++++++++++++++++++++-
 3 files changed, 25 insertions(+), 2 deletions(-)

diff --git a/bindings/ruby/defs.h b/bindings/ruby/defs.h
index 81f652f..25222a6 100644
--- a/bindings/ruby/defs.h
+++ b/bindings/ruby/defs.h
@@ -222,6 +222,9 @@ notmuch_rb_query_search_threads (VALUE self);
 VALUE
 notmuch_rb_query_search_messages (VALUE self);
 
+VALUE
+notmuch_rb_query_count_messages (VALUE self);
+
 /* threads.c */
 VALUE
 notmuch_rb_threads_destroy (VALUE self);
diff --git a/bindings/ruby/init.c b/bindings/ruby/init.c
index 4405f19..7ad0ecf 100644
--- a/bindings/ruby/init.c
+++ b/bindings/ruby/init.c
@@ -1,6 +1,6 @@
 /* The Ruby interface to the notmuch mail library
  *
- * Copyright © 2010, 2011 Ali Polatel
+ * Copyright © 2010, 2011, 2012 Ali Polatel
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -236,6 +236,7 @@ Init_notmuch (void)
     rb_define_method (notmuch_rb_cQuery, "to_s", notmuch_rb_query_get_string, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "search_threads", notmuch_rb_query_search_threads, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "search_messages", notmuch_rb_query_search_messages, 0); /* in query.c */
+    rb_define_method (notmuch_rb_cQuery, "count_messages", notmuch_rb_query_count_messages, 0); /* in query.c */
 
     /*
      * Document-class: Notmuch::Threads
diff --git a/bindings/ruby/query.c b/bindings/ruby/query.c
index 74fd585..02b7819 100644
--- a/bindings/ruby/query.c
+++ b/bindings/ruby/query.c
@@ -1,6 +1,6 @@
 /* The Ruby interface to the notmuch mail library
  *
- * Copyright © 2010, 2011 Ali Polatel
+ * Copyright © 2010, 2011, 2012 Ali Polatel
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -127,3 +127,22 @@ notmuch_rb_query_search_messages (VALUE self)
 
     return Data_Wrap_Struct (notmuch_rb_cMessages, NULL, NULL, messages);
 }
+
+/*
+ * call-seq: QUERY.count_messages => Fixnum
+ *
+ * Return an estimate of the number of messages matching a search
+ */
+VALUE
+notmuch_rb_query_count_messages (VALUE self)
+{
+    notmuch_query_t *query;
+
+    Data_Get_Notmuch_Query (self, query);
+
+    /* Xapian exceptions are not handled properly.
+     * (function may return 0 after printing a message)
+     * Thus there is nothing we can do here...
+     */
+    return UINT2FIX(notmuch_query_count_messages(query));
+}
-- 
1.7.10.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/4] ruby: Add wrapper for notmuch_query_add_tag_exclude
  2012-05-07 15:02 ` [PATCH 0/4] ruby: quick update before the freeze! Ali Polatel
  2012-05-07 15:02   ` [PATCH 1/4] ruby: Add wrapper for notmuch_query_count_messages Ali Polatel
@ 2012-05-07 15:02   ` Ali Polatel
  2012-05-07 15:02   ` [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one Ali Polatel
  2012-05-07 15:02   ` [PATCH 4/4] ruby: Add wrapper for notmuch_query_set_omit_excluded() Ali Polatel
  3 siblings, 0 replies; 10+ messages in thread
From: Ali Polatel @ 2012-05-07 15:02 UTC (permalink / raw)
  To: David Bremner; +Cc: Ali Polatel, notmuch

---
 bindings/ruby/defs.h  |    3 +++
 bindings/ruby/init.c  |    1 +
 bindings/ruby/query.c |   18 ++++++++++++++++++
 3 files changed, 22 insertions(+)

diff --git a/bindings/ruby/defs.h b/bindings/ruby/defs.h
index 25222a6..a41cf10 100644
--- a/bindings/ruby/defs.h
+++ b/bindings/ruby/defs.h
@@ -217,6 +217,9 @@ VALUE
 notmuch_rb_query_get_string (VALUE self);
 
 VALUE
+notmuch_rb_query_add_tag_exclude (VALUE self, VALUE tagv);
+
+VALUE
 notmuch_rb_query_search_threads (VALUE self);
 
 VALUE
diff --git a/bindings/ruby/init.c b/bindings/ruby/init.c
index 7ad0ecf..edcf101 100644
--- a/bindings/ruby/init.c
+++ b/bindings/ruby/init.c
@@ -234,6 +234,7 @@ Init_notmuch (void)
     rb_define_method (notmuch_rb_cQuery, "sort", notmuch_rb_query_get_sort, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "sort=", notmuch_rb_query_set_sort, 1); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "to_s", notmuch_rb_query_get_string, 0); /* in query.c */
+    rb_define_method (notmuch_rb_cQuery, "add_tag_exclude", notmuch_rb_query_add_tag_exclude, 1); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "search_threads", notmuch_rb_query_search_threads, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "search_messages", notmuch_rb_query_search_messages, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "count_messages", notmuch_rb_query_count_messages, 0); /* in query.c */
diff --git a/bindings/ruby/query.c b/bindings/ruby/query.c
index 02b7819..2a80008 100644
--- a/bindings/ruby/query.c
+++ b/bindings/ruby/query.c
@@ -89,6 +89,24 @@ notmuch_rb_query_get_string (VALUE self)
 }
 
 /*
+ * call-seq: QUERY.add_tag_exclude(tag) => nil
+ *
+ * Add a tag that will be excluded from the query results by default.
+ */
+VALUE
+notmuch_rb_query_add_tag_exclude (VALUE self, VALUE tagv)
+{
+    notmuch_query_t *query;
+    const char *tag;
+
+    Data_Get_Notmuch_Query (self, query);
+    tag = RSTRING_PTR(tagv);
+
+    notmuch_query_add_tag_exclude(query, tag);
+    return Qnil;
+}
+
+/*
  * call-seq: QUERY.search_threads => THREADS
  *
  * Search for threads
-- 
1.7.10.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one
  2012-05-07 15:02 ` [PATCH 0/4] ruby: quick update before the freeze! Ali Polatel
  2012-05-07 15:02   ` [PATCH 1/4] ruby: Add wrapper for notmuch_query_count_messages Ali Polatel
  2012-05-07 15:02   ` [PATCH 2/4] ruby: Add wrapper for notmuch_query_add_tag_exclude Ali Polatel
@ 2012-05-07 15:02   ` Ali Polatel
  2012-05-23 22:02     ` Felipe Contreras
  2012-05-07 15:02   ` [PATCH 4/4] ruby: Add wrapper for notmuch_query_set_omit_excluded() Ali Polatel
  3 siblings, 1 reply; 10+ messages in thread
From: Ali Polatel @ 2012-05-07 15:02 UTC (permalink / raw)
  To: David Bremner; +Cc: Ali Polatel, notmuch

- Make mkmf use the notmuch.h under ../../lib
- Use libnotmuch.a instead of linking to the installed libnotmuch.so
---
 bindings/ruby/defs.h     |    4 ++--
 bindings/ruby/extconf.rb |   26 ++++++++++++++++++++++----
 2 files changed, 24 insertions(+), 6 deletions(-)

diff --git a/bindings/ruby/defs.h b/bindings/ruby/defs.h
index a41cf10..6fe5787 100644
--- a/bindings/ruby/defs.h
+++ b/bindings/ruby/defs.h
@@ -1,6 +1,6 @@
 /* The Ruby interface to the notmuch mail library
  *
- * Copyright © 2010, 2011 Ali Polatel
+ * Copyright © 2010, 2011, 2012 Ali Polatel
  *
  * This program is free software: you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
@@ -21,8 +21,8 @@
 #ifndef DEFS_H
 #define DEFS_H
 
-#include <notmuch.h>
 #include <ruby.h>
+#include "notmuch.h"
 
 VALUE notmuch_rb_cDatabase;
 VALUE notmuch_rb_cDirectory;
diff --git a/bindings/ruby/extconf.rb b/bindings/ruby/extconf.rb
index ccac609..933f34a 100644
--- a/bindings/ruby/extconf.rb
+++ b/bindings/ruby/extconf.rb
@@ -1,13 +1,31 @@
 #!/usr/bin/env ruby
 # coding: utf-8
-# Copyright 2010, 2011 Ali Polatel <alip@exherbo.org>
+# Copyright 2010, 2011, 2012 Ali Polatel <alip@exherbo.org>
 # Distributed under the terms of the GNU General Public License v3
 
 require 'mkmf'
 
-# Notmuch Library
-find_header('notmuch.h', '../../lib')
-find_library('notmuch', 'notmuch_database_create', '../../lib')
+NOTDIR = File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib'))
+NOTHDR = File.join(NOTDIR, 'notmuch.h')
+NOTLIB = File.join(NOTDIR, 'libnotmuch.a')
+
+unless File.exists? NOTHDR
+  $stderr.puts "notmuch.h is missing under #{NOTDIR}"
+  exit 1
+end
+
+unless File.exists? NOTLIB
+  $stderr.puts "libnotmuch.a is missing under #{NOTDIR}"
+  exit 1
+end
+
+# Small hack to build with in-tree version not the installed one.
+# find_header() and friends use standard include/library paths first.
+$stderr.puts "Added -I#{NOTDIR} to $INCFLAGS"
+$INCFLAGS = "-I#{NOTDIR}".quote + " " + $INCFLAGS
+find_header('notmuch.h', NOTDIR)
+
+$LOCAL_LIBS += NOTLIB
 
 # Create Makefile
 dir_config('notmuch')
-- 
1.7.10.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 4/4] ruby: Add wrapper for notmuch_query_set_omit_excluded()
  2012-05-07 15:02 ` [PATCH 0/4] ruby: quick update before the freeze! Ali Polatel
                     ` (2 preceding siblings ...)
  2012-05-07 15:02   ` [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one Ali Polatel
@ 2012-05-07 15:02   ` Ali Polatel
  3 siblings, 0 replies; 10+ messages in thread
From: Ali Polatel @ 2012-05-07 15:02 UTC (permalink / raw)
  To: David Bremner; +Cc: Ali Polatel, notmuch

---
 bindings/ruby/defs.h  |    3 +++
 bindings/ruby/init.c  |    7 +++++++
 bindings/ruby/query.c |   18 ++++++++++++++++++
 3 files changed, 28 insertions(+)

diff --git a/bindings/ruby/defs.h b/bindings/ruby/defs.h
index 6fe5787..85d8205 100644
--- a/bindings/ruby/defs.h
+++ b/bindings/ruby/defs.h
@@ -220,6 +220,9 @@ VALUE
 notmuch_rb_query_add_tag_exclude (VALUE self, VALUE tagv);
 
 VALUE
+notmuch_rb_query_set_omit_excluded (VALUE self, VALUE omitv);
+
+VALUE
 notmuch_rb_query_search_threads (VALUE self);
 
 VALUE
diff --git a/bindings/ruby/init.c b/bindings/ruby/init.c
index edcf101..3fe60fb 100644
--- a/bindings/ruby/init.c
+++ b/bindings/ruby/init.c
@@ -96,6 +96,12 @@ Init_notmuch (void)
      */
     rb_define_const (mod, "MESSAGE_FLAG_MATCH", INT2FIX (NOTMUCH_MESSAGE_FLAG_MATCH));
     /*
+     * Document-const: Notmuch::MESSAGE_FLAG_EXCLUDED
+     *
+     * Message flag "excluded"
+     */
+    rb_define_const (mod, "MESSAGE_FLAG_EXCLUDED", INT2FIX (NOTMUCH_MESSAGE_FLAG_EXCLUDED));
+    /*
      * Document-const: Notmuch::TAG_MAX
      *
      * Maximum allowed length of a tag
@@ -235,6 +241,7 @@ Init_notmuch (void)
     rb_define_method (notmuch_rb_cQuery, "sort=", notmuch_rb_query_set_sort, 1); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "to_s", notmuch_rb_query_get_string, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "add_tag_exclude", notmuch_rb_query_add_tag_exclude, 1); /* in query.c */
+    rb_define_method (notmuch_rb_cQuery, "omit_excluded=", notmuch_rb_query_set_omit_excluded, 1); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "search_threads", notmuch_rb_query_search_threads, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "search_messages", notmuch_rb_query_search_messages, 0); /* in query.c */
     rb_define_method (notmuch_rb_cQuery, "count_messages", notmuch_rb_query_count_messages, 0); /* in query.c */
diff --git a/bindings/ruby/query.c b/bindings/ruby/query.c
index 2a80008..e5ba1b7 100644
--- a/bindings/ruby/query.c
+++ b/bindings/ruby/query.c
@@ -107,6 +107,24 @@ notmuch_rb_query_add_tag_exclude (VALUE self, VALUE tagv)
 }
 
 /*
+ * call-seq: QUERY.omit_excluded=(boolean) => nil
+ *
+ * Specify whether to omit excluded results or simply flag them.
+ * By default, this is set to +true+.
+ */
+VALUE
+notmuch_rb_query_set_omit_excluded (VALUE self, VALUE omitv)
+{
+    notmuch_query_t *query;
+
+    Data_Get_Notmuch_Query (self, query);
+
+    notmuch_query_set_omit_excluded (query, RTEST (omitv));
+
+    return Qnil;
+}
+
+/*
  * call-seq: QUERY.search_threads => THREADS
  *
  * Search for threads
-- 
1.7.10.1

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one
  2012-05-07 15:02   ` [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one Ali Polatel
@ 2012-05-23 22:02     ` Felipe Contreras
  2012-05-24  1:22       ` David Bremner
  0 siblings, 1 reply; 10+ messages in thread
From: Felipe Contreras @ 2012-05-23 22:02 UTC (permalink / raw)
  To: Ali Polatel; +Cc: David Bremner, notmuch

On Mon, May 7, 2012 at 5:02 PM, Ali Polatel <alip@exherbo.org> wrote:
> - Make mkmf use the notmuch.h under ../../lib
> - Use libnotmuch.a instead of linking to the installed libnotmuch.so

How has this ever worked?

libnotmuch.so links to many things, fortunately when linking Ruby's
notmuch.so binding to libnotmuch.so.3 all those dependencies are
resolved for us, but when you link to libnotmuch.a you need notmuch.so
to link against all those dependencies.

This is triggering cryptic errors such as:

/usr/lib/ruby/1.9.1/rubygems/custom_require.rb:36:in `require':
foo/notmuch.so: undefined symbol:
_ZTVN10__cxxabiv117__class_type_infoE - foo/notmuch.so (LoadError)

Presumably because not even libstdc++.so is linked.

I don't see how this patch could be fixed properly easily, and it was
labeled as a hack, and I didn't like it in the first place anyway, so
I'm going to revert it by tomorrow if I don't hear any good reason not
to.

I also suggest making a brown-paper-bag release 0.13.1 because 0.13
has completely unusable Ruby bindings; there's just no way to compile
them and make them work.

Cheers.

-- 
Felipe Contreras

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one
  2012-05-23 22:02     ` Felipe Contreras
@ 2012-05-24  1:22       ` David Bremner
  2012-05-24  8:56         ` Felipe Contreras
  0 siblings, 1 reply; 10+ messages in thread
From: David Bremner @ 2012-05-24  1:22 UTC (permalink / raw)
  To: Felipe Contreras, Ali Polatel; +Cc: notmuch

Felipe Contreras <felipe.contreras@gmail.com> writes:


> I don't see how this patch could be fixed properly easily, and it was
> labeled as a hack, and I didn't like it in the first place anyway, so
> I'm going to revert it by tomorrow if I don't hear any good reason not
> to.

I think this highlights the need for at least a minimal test suite for
the ruby 

I do plan on a bug fix release, to fix an annoying emacs interface bug
if nothing else. I'd rather see a fix/revert coordinated with Ali in his
role as ruby bindings maintainer.

FWIW, the previous situation of linking with the installed version of
notmuch sounds somewhat broken as well, although obviously preferable to
not working at all.

d

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one
  2012-05-24  1:22       ` David Bremner
@ 2012-05-24  8:56         ` Felipe Contreras
  2012-05-25 13:13           ` Felipe Contreras
  0 siblings, 1 reply; 10+ messages in thread
From: Felipe Contreras @ 2012-05-24  8:56 UTC (permalink / raw)
  To: David Bremner; +Cc: Ali Polatel, notmuch

On Thu, May 24, 2012 at 3:22 AM, David Bremner <david@tethera.net> wrote:
> Felipe Contreras <felipe.contreras@gmail.com> writes:
>
>
>> I don't see how this patch could be fixed properly easily, and it was
>> labeled as a hack, and I didn't like it in the first place anyway, so
>> I'm going to revert it by tomorrow if I don't hear any good reason not
>> to.
>
> I think this highlights the need for at least a minimal test suite for
> the ruby

Yeap, I thought the same.

> I do plan on a bug fix release, to fix an annoying emacs interface bug
> if nothing else. I'd rather see a fix/revert coordinated with Ali in his
> role as ruby bindings maintainer.

Well, sure, if possible that would be best. But I doubt the ruby
bindings maintainer would complain about making the Ruby bindings work
again :)

Worst-case scenario we would end up with what we had before.

> FWIW, the previous situation of linking with the installed version of
> notmuch sounds somewhat broken as well, although obviously preferable to
> not working at all.

That would be only if there was installed version of notmuch, which
some people don't have (e.g. me).

Either way, to fix that particular problem we don't need to link to
the static library, we can just the right CFLAGS and LDFLAGS, in fact,
I wonder how is it that it's not working properly; AFAIK the linker
and compiler would use first the headers and libraries found in these
flags, and only as a fallback use the system ones, so if anybody has
managed to compile before (I have) the headers and libraries would be
in some -I/-L path.

I could try to investigate, but at the moment I still see no reason
not to revert.

Cheers.

-- 
Felipe Contreras

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one
  2012-05-24  8:56         ` Felipe Contreras
@ 2012-05-25 13:13           ` Felipe Contreras
  2012-05-26  0:38             ` David Bremner
  0 siblings, 1 reply; 10+ messages in thread
From: Felipe Contreras @ 2012-05-25 13:13 UTC (permalink / raw)
  To: David Bremner; +Cc: Ali Polatel, notmuch

On Thu, May 24, 2012 at 10:56 AM, Felipe Contreras
<felipe.contreras@gmail.com> wrote:
> On Thu, May 24, 2012 at 3:22 AM, David Bremner <david@tethera.net> wrote:

>> I do plan on a bug fix release, to fix an annoying emacs interface bug
>> if nothing else. I'd rather see a fix/revert coordinated with Ali in his
>> role as ruby bindings maintainer.
>
> Well, sure, if possible that would be best. But I doubt the ruby
> bindings maintainer would complain about making the Ruby bindings work
> again :)
>
> Worst-case scenario we would end up with what we had before.

Since I've seen no better alternatives to fix the problem, I've
reverted the patch and pushed to 'master'. Would be nice to pick it
for 'release'.

Cheers.

-- 
Felipe Contreras

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one
  2012-05-25 13:13           ` Felipe Contreras
@ 2012-05-26  0:38             ` David Bremner
  0 siblings, 0 replies; 10+ messages in thread
From: David Bremner @ 2012-05-26  0:38 UTC (permalink / raw)
  To: Felipe Contreras; +Cc: Ali Polatel, notmuch

Felipe Contreras <felipe.contreras@gmail.com> writes:

> Since I've seen no better alternatives to fix the problem, I've
> reverted the patch and pushed to 'master'. Would be nice to pick it
> for 'release'.

If I don't hear any objections over the weekend, I'll cherry-pick it on
monday, for a planned tuesday release of 0.13.1

Could you write a short announcement for NEWS? ideally as a patch
against release:NEWS

d

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2012-05-26  0:39 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <87txzsgs4g.fsf@zancas.localnet>
2012-05-07 15:02 ` [PATCH 0/4] ruby: quick update before the freeze! Ali Polatel
2012-05-07 15:02   ` [PATCH 1/4] ruby: Add wrapper for notmuch_query_count_messages Ali Polatel
2012-05-07 15:02   ` [PATCH 2/4] ruby: Add wrapper for notmuch_query_add_tag_exclude Ali Polatel
2012-05-07 15:02   ` [PATCH 3/4] ruby: Add workarounds to use in-tree build not the installed one Ali Polatel
2012-05-23 22:02     ` Felipe Contreras
2012-05-24  1:22       ` David Bremner
2012-05-24  8:56         ` Felipe Contreras
2012-05-25 13:13           ` Felipe Contreras
2012-05-26  0:38             ` David Bremner
2012-05-07 15:02   ` [PATCH 4/4] ruby: Add wrapper for notmuch_query_set_omit_excluded() Ali Polatel

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).