[PATCH 2/2] lib: introduce notmuch_database_new for initializing a database handle

Tomi Ollila tomi.ollila at iki.fi
Tue Dec 3 06:11:36 PST 2013


On Tue, Dec 03 2013, David Bremner <david at tethera.net> wrote:

> The first patch looks ok. I like the new API overall.
>
> As far as breaking contrib/notmuch-deliver, I'd rather fix
> notmuch-insert than put effort into notmuch-deliver at this point. I
> guess it could be a rough transition for people running notmuch-deliver
> from git.
>
> Jani Nikula <jani at nikula.org> writes:
>
>> +/*
>> + * XXX: error handling should clean up *all* state created!
>> + */
> is this a warning to future hackers or some current problem?
>
>>  notmuch_status_t
>> -notmuch_database_open (const char *path,
>> -		       notmuch_database_mode_t mode,
>> -		       notmuch_database_t **database)
>> +notmuch_database_open (notmuch_database_t *notmuch, const char *path,
>> +		       notmuch_database_mode_t mode)
>>  
>> +/* Initialize a new, empty database handle.
>> + *
>
> I wondered about making the new documentation adhere to doxygen?
>
>
>> +    if (notmuch_database_open (notmuch,
>> +			       notmuch_config_get_database_path (config),
>> +			       NOTMUCH_DATABASE_MODE_READ_ONLY))
>
> Would it make any sense to migrate the mode argument to an option
> setting while we're messing with the API?  

if that, then also database_path to options ?

I also like this suggestion best of all seen so far, but what if:

  #define NOTMUCH_MAJOR_VERSION	0
  #define NOTMUCH_MINOR_VERSION	17
 -#define NOTMUCH_MICRO_VERSION	0
 +#define NOTMUCH_MICRO_VERSION	90

until changed API/ABI is set into stone (i.e. 0.18.0 at freeze time).


Tomi


More information about the notmuch mailing list